|
|
This class defines the packet format for the simple audio encoder.
See also: SimpleAudioEncoder, SimpleAudioDecoder
SimpleAudioPacket () |
Constructor.
void translate () |
Translate byte order.
void reset () |
Reset report.
static const card16 SimpleAudioTypeID |
Type ID for Simple Audio Encoding.
static const char [] SimpleAudioTypeName |
Name for Simple Audio Encoding.
static const card32 SimpleAudioFormatID |
Simple Audio Encoding package format ID.
static const cardinal SimpleAudioMediaInfoPacketsPerSecond |
Simple Audio MediaInfo packets per second.
static const cardinal SimpleAudioFramesPerSecond |
Simple Audio frames per second.
static const cardinal SimpleAudioFrameSize |
Simple Audio frame size.
static const cardinal SimpleAudioMaxTransferDelay |
Simple Audio maximum transfer delay.
static const cardinal SimpleAudioQualityLevels |
Simple Audio number of quality levels.
static const double SimpleAudioUpperLossThreshold |
Simple Audio loss threshold for quality decrement.
static const double SimpleAudioLowerLossThreshold |
Simple Audio loss threshold for quality increment.
void getTransportInfoConstants (TransportInfo& transportInfo, const cardinal headerSize, const cardinal maxPacketSize, const AudioQualityInterface& lastTransmissionQuality, const bool calculateLevels = true) |
Get TransportInfo constants for given header size and maximum packet size.
Parameters:
transportInfo | Memory to store TransportInfo. |
headerSize | Size of packet header (e.g. RTP header). |
maxPacketSize | Maximum size of a packet. |
lastTransmissionQuality | Quality of last transmission. |
calculateLevels | true to calculate all level constants; false otherwise. |
void getTransportInfo (TransportInfo& transportInfo, const cardinal headerSize, const cardinal maxPacketSize, const AudioQualityInterface& qualitySetting, const AudioQualityInterface& lastTransmissionQuality, const bool calculateLevels = true) |
Get TransportInfo for given header size and maximum packet size.
Parameters:
transportInfo | Memory to store TransportInfo. |
headerSize | Size of packet header (e.g. RTP header). |
maxPacketSize | Maximum size of a packet. |
qualitySetting | Current quality setting. |
lastTransmissionQuality | Quality of last transmission. |
calculateLevels | true to calculate all level constants; false otherwise. |
void calculateLevelForQuality (TransportInfoLevel& level, const cardinal headerSize, const cardinal maxPacketSize, const AudioQualityInterface& quality) |
Calculate TransportInfoLevel for given quality and given header size and maximum packet size.
Parameters:
level | Memory to store calculated TransportInfoLevel. |
headerSize | Size of packet header (e.g. RTP header). |
maxPacketSize | Maximum size of a packet. |
quality | Quality to calculate level for. |
AudioQuality calculateQualityForLimits ( const AudioQualityInterface& userSetting, const AudioQualityInterface& inputQuality, const card64 totalByteRateLimit, const cardinal networkQualityDecrement, const cardinal headerSize, const cardinal maxPacketSize) |
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. |
networkQualityDecrement | Number of steps for decrement of user's quality. |
headerSize | Header size (eg. IP + UDP + RTP). SimpleAudioPacket size is added automatically. |
maxPacketSize | Maximum packet size. |
Returns: The calculated quality.
cardinal calculateFrameSize (const cardinal inputBytesPerSecond, const cardinal inputFrameSize) |
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.
card32 FormatID |
Packet format ID.
card16 SamplingRate |
Audio sampling rate.
card8 Channels |
Number of audio channels.
card8 Bits |
Number of audio bits.
card64 Position |
Current position in nanoseconds.
card64 MaxPosition |
Maximum position in nanoseconds.
card8 ErrorCode |
Error code.
card8 Flags |
Flags.
enum SimpleAudioFlags {SAF_Data = 0, SAF_MediaInfo = 1, } |
Emumeration of Flags.
char [0] Data |
Packet data.