#include "tdsystem.h"
#include "mediainfo.h"
#include "audioquality.h"
Go to the source code of this file.
Classes |
struct | AdvancedAudioPacket |
| Advanced Audio Packet. More...
|
Enumerations |
enum | AdvancedAudioFlags {
AAF_ChannelLeft = (1 << 0),
AAF_ChannelRight = (1 << 1),
AAF_ByteUpper = (1 << 2),
AAF_ByteLower = (1 << 3),
AAF_MediaInfo = (1 << 4)
} |
Functions |
struct AdvancedAudioPacket | __attribute__ ((packed)) |
| AdvancedAudioPacket () |
void | translate () |
void | reset () |
static AudioQuality | calculateQualityForLimits (const AudioQualityInterface &userSetting, const AudioQualityInterface &inputQuality, const card64 totalByteRateLimit, const card64 byteRateLimitL1, const card64 byteRateLimitL2, const card64 byteRateLimitL3, const cardinal networkQualityDecrement, const cardinal headerSize, const cardinal maxPacketSize) |
static cardinal | calculateFrameSize (const cardinal inputBytesPerSecond, const cardinal inputFrameSize) |
static cardinal | calculateLayers (const AudioQualityInterface &quality) |
Variables |
static const card16 | AdvancedAudioTypeID = 0x2961 |
static const char | AdvancedAudioTypeName [] |
static const card32 | AdvancedAudioFormatID = 0x74660000 | AdvancedAudioTypeID |
static const cardinal | AdvancedAudioMediaInfoPacketsPerSecond = 2 |
static const cardinal | AdvancedAudioFramesPerSecond = 35 |
static const cardinal | AdvancedAudioFrameSize |
static const cardinal | AdvancedAudioMaxTransferDelay = 100 * 16 |
static const cardinal | AdvancedAudioMaxQualityLayers = 3 |
static const cardinal | AdvancedAudioQualityLevels = AudioQuality::QualityLevels |
card32 | FormatID |
card16 | SamplingRate |
card8 | Channels |
card8 | Bits |
card64 | Position |
card64 | MaxPosition |
card8 | ErrorCode |
card8 | Flags |
card16 | Fragment |
char | Data [0] |
Enumeration Type Documentation
Emumeration of Flags.
- Enumerator:
AAF_ChannelLeft |
|
AAF_ChannelRight |
|
AAF_ByteUpper |
|
AAF_ByteLower |
|
AAF_MediaInfo |
|
Function Documentation
Calculate output frame size from given input bytes per second and input frame size.
- Parameters:
-
inputBytesPerSecond | Input source's bytes per second. |
inputFrameSize | Input source's frame size. |
- Returns:
- The calculated frame size.
Calculate number of layers for given quality.
- Parameters:
-
- Returns:
- Number of layers.
Quality calculation for given user quality limited by input quality, byte rate and network quality decrement with given header size (eg. IP + UDP + RTP) and maximum packet size.
- Parameters:
-
userSetting | User's quality setting. |
inputQuality | Input source's quality. |
byteRateLimit | Byte rate limit. |
byteRateLimitL1 | Layer #0 byte rate limit. |
byteRateLimitL2 | Layer #1 byte rate limit. |
byteRateLimitL3 | Layer #2 byte rate limit. |
networkQualityDecrement | Number of steps for decrement of user's quality. |
headerSize | Header size (eg. IP + UDP + RTP). AdvancedAudioPacket size is added automatically. |
maxPacketSize | Maximum packet size. |
- Returns:
- The calculated quality.
Variable Documentation
Advanced Audio Encoding package format ID.
Initial value:Advanced Audio frame size.
Advanced Audio frames per second.
Advanced Audio maximum quality layers.
Advanced Audio maximum transfer delay.
Advanced Audio quality levels.
Type ID for Advanced Audio Encoding.
Name for Advanced Audio Encoding.
Number of audio channels.
Advanced Audio Encoding Flags.
Maximum position in nanoseconds.
Current position in nanoseconds.