CMccCodecInformation Class Reference

class CMccCodecInformation : public CBase

Container class for the codec information.

mmccinterface.dll

Inherits from

  • CMccCodecInformation
Public Member Functions
~CMccCodecInformation()
TAlgoUsed Algo()
TUint AllowedBitrates()
TUint AverageBitrate()
TUint Bitrate()
CMccCodecInformation *CloneDefaultsL()
CMccCodecInformation *CloneDetailedL()
TCodecMode CodecMode()
TUint8 ComfortNoiseGeneration()
HBufC8 *ConfigKeyL()
voidCreateFmtpAttrListL()
voidCreateFmtpAttrListL(const RArray< TUint > &)
TInt EnableVAD(TBool)
TUint32 FourCC()
TUint FrameHeight()
TInt FrameSize()
TInt FrameTime()
TUint FrameWidth()
TReal Framerate()
TInt GetChannels(TInt &)
TDesC8 &GetFmtpL()
voidGetValues(TMccCodecInfo &)
TUint JitterBufBufferLength()
TUint JitterBufInactivityTimeOut()
TUint JitterBufThreshold()
const TDesC8 &KeepAliveData()
TUint8 KeepAlivePT()
TUint8 KeepAliveTimer()
TUint MaxBitrate()
TInt MaxPTime()
TInt MaxRed()
TInt PTime()
TBool ParseFmtpAttrL(const TDesC8 &)
TUint8 PayloadType()
TUid PreferredEncodingDecodingDevice()
TInt Priority()
TInt PriorityPreference()
TUint RedCount()
voidRedPayloadsL(RArray< TUint > &)
TUint8 RedundancyPT()
TBool RequireSignalling(const CMccCodecInformation &)
TUint32 SamplingFreq()
const TDesC8 &SdpName()
TInt SetAlgo(TAlgoUsed)
TInt SetAllowedBitrates(TUint)
TInt SetAverageBitrate(TUint)
TInt SetBitrate(TUint)
TInt SetChannels(TInt)
TInt SetCodecMode(TCodecMode)
TInt SetComfortNoiseGeneration(TUint8)
voidSetConfigKeyL(const TDesC8 &)
voidSetFmtpAttrL(const TDesC8 &, TBool)
TInt SetFrameHeight(TUint)
TInt SetFrameWidth(TUint)
TInt SetFramerate(TReal)
TInt SetJitterBufBufferLength(TUint)
TInt SetJitterBufInactivityTimeOut(TUint)
TInt SetJitterBufThreshold(TUint)
TInt SetKeepAliveData(const TDesC8 &)
TInt SetKeepAlivePT(TUint8)
TInt SetKeepAliveTimer(TUint8)
TInt SetMaxBitrate(TUint)
TInt SetMaxPTime(TUint)
TInt SetMaxRed(TInt)
TInt SetPTime(TUint)
TInt SetPayloadType(TUint8)
voidSetPreferredEncodingDecodingDevice(TUid)
voidSetPriority(TInt)
voidSetPriorityPreference(TInt)
TInt SetRedCount(TUint)
TInt SetRedundancyPT(TUint8)
TInt SetSamplingFreq(TUint32)
TInt SetSdpName(const TDesC8 &)
voidSetValues(TMccCodecInfo)
TUid Type()
TBool VAD()
Protected Member Functions
CMccCodecInformation()
Private Member Functions
TBool GetCrc()
TInt GetInterleaving()
TBool GetRobustSorting()
TBool ModeChangeNeighbor()
TInt ModeChangePeriod()
TInt SetCrc(const TBool)
TInt SetInterleaving(const TInt)
TInt SetModeChangeNeighbor(const TBool)
TInt SetModeChangePeriod(const TInt)
TInt SetRobustSorting(const TBool)
Inherited Functions
CBase::CBase()
CBase::Delete(CBase *)
CBase::Extension_(TUint,TAny *&,TAny *)
CBase::operator new(TUint)
CBase::operator new(TUint,TAny *)
CBase::operator new(TUint,TLeave)
CBase::operator new(TUint,TLeave,TUint)
CBase::operator new(TUint,TUint)
CBase::~CBase()
Protected Attributes
TAlgoUsed iAlgoUsed
TUint iAverageBitrate
TUint iBitrate
TUint iBitrateMask
TCodecMode iCodecMode
TUint8 iComfortNoiseGenerationPt
HBufC8 *iConfigKey
TBool iCrc
TBool iEnableVAD
TUid iEncodingDecodingDevice
HBufC8 *iFmtpAttr
TUint32 iFourCC
TInt iFrameBlockCount
TInt iFrameSize
TReal iFramerate
TInt iHwFrameTime
TUint iJitterBufBufferLength
TUint iJitterBufInactivityTimeOut
TUint iJitterBufThreshold
TBuf8< KMaxKeepAliveDataLen >iKeepAliveData
TUint8 iKeepAlivePT
TUint8 iKeepAliveTimer
TUint iMaxBitrate
TUint iMaxPTime
TInt iMaxRed
TInt iModeChangePeriod
TBool iNeighbor
TInt iNumOfChannels
TUint iPTime
TUint iParsedFmtp
TUint32 iPayloadFormatDecoder
TUint32 iPayloadFormatEncoder
TUint8 iPayloadType
TInt iPriority
TInt iPriorityPreference
TUint iRedCount
TUint8 iRedundancyPT
TBool iRobust
TUint32 iSamplingFreq
TBuf8< KMaxSdpNameLength >iSdpName
TUint iStartMediaPort
TUid iType
TUint iVideoHeight
TUint iVideoWidth

Constructor & Destructor Documentation

CMccCodecInformation()

CMccCodecInformation()[protected]

C++ default constructor.

~CMccCodecInformation()

~CMccCodecInformation()[virtual]

Destructor.

Member Functions Documentation

Algo()

TAlgoUsed Algo()const [virtual]

Get Algorithm used.

AllowedBitrates()

TUint AllowedBitrates()const [virtual]

Gets the bitrate mask

AverageBitrate()

TUint AverageBitrate()const [virtual]

Gets average bitrate

Bitrate()

TUint Bitrate()const [virtual]

Gets bitrate value used currently.

CloneDefaultsL()

CMccCodecInformation *CloneDefaultsL()[pure virtual]

Constructs a clone from this codec object. Note that the clone falls back to given codec's default settings.

CloneDetailedL()

CMccCodecInformation *CloneDetailedL()[pure virtual]

Constructs a clone from this codec object and copies the original object's current settings to the newly created clone.

CodecMode()

TCodecMode CodecMode()const [virtual]

Gets the codec mode

ComfortNoiseGeneration()

TUint8 ComfortNoiseGeneration()const [virtual]

Get Comfort noise payload type value.

ConfigKeyL()

HBufC8 *ConfigKeyL()const [virtual]

Get encoder/decoder configuration key

CreateFmtpAttrListL()

voidCreateFmtpAttrListL()[virtual]

Creates the fmtp string from internal values

CreateFmtpAttrListL(const RArray< TUint > &)

voidCreateFmtpAttrListL(const RArray< TUint > &aBitrates)[virtual]

Creates the fmtp string from internal values and the given bitrates

Parameters

const RArray< TUint > & aBitrates

EnableVAD(TBool)

TInt EnableVAD(TBoolaEnableVAD)[pure virtual]

Enable / Disable Voice Activity Detection.

Parameters

TBool aEnableVADBoolean indicating whether to enable Voice Activity Detection

FourCC()

TUint32 FourCC()const [virtual]

Codec FourCC.

FrameHeight()

TUint FrameHeight()const [virtual]

Gets height of the frame

FrameSize()

TInt FrameSize()const [virtual]

Get FrameSize.

FrameTime()

TInt FrameTime()const [virtual]

Get HW FrameTime.

FrameWidth()

TUint FrameWidth()const [virtual]

Gets width of the frame

Framerate()

TReal Framerate()const [virtual]

Gets framerate

GetChannels(TInt &)

TInt GetChannels(TInt &aNumOfChannels)const [virtual]

Get number of channels.

Parameters

TInt & aNumOfChannels

GetCrc()

TBool GetCrc()const [private, virtual]

Get boolean type CRC value.

GetFmtpL()

TDesC8 &GetFmtpL()[virtual]

Gets the codec specific fmtp value for SDP.

GetInterleaving()

TInt GetInterleaving()const [private, virtual]

Get Interleaving value

GetRobustSorting()

TBool GetRobustSorting()const [private, virtual]

Get boolean type robust sorting value

GetValues(TMccCodecInfo &)

voidGetValues(TMccCodecInfo &codecInfo)const [virtual]

Parameters

TMccCodecInfo & codecInfo

JitterBufBufferLength()

TUint JitterBufBufferLength()const [virtual]

Get JitterBuffer Buffer length

JitterBufInactivityTimeOut()

TUint JitterBufInactivityTimeOut()const [virtual]

Get JitterBuffer inactivity timeout

JitterBufThreshold()

TUint JitterBufThreshold()const [virtual]

Get JitterBuffer threshold

KeepAliveData()

const TDesC8 &KeepAliveData()const [virtual]

Get keep alive packets payload data.

KeepAlivePT()

TUint8 KeepAlivePT()const [virtual]

Get keep alive packets payload type.

KeepAliveTimer()

TUint8 KeepAliveTimer()const [virtual]

Get keep alive packets send timer value.

MaxBitrate()

TUint MaxBitrate()const [virtual]

Gets max bitrate

MaxPTime()

TInt MaxPTime()const [virtual]

Gets max packet time.

MaxRed()

TInt MaxRed()const [virtual]

Returns the maximum redundancy

ModeChangeNeighbor()

TBool ModeChangeNeighbor()const [private, virtual]

Get boolean variable, which indicates change between two modes.

ModeChangePeriod()

TInt ModeChangePeriod()const [private, virtual]

Get specified number of frame blocks

PTime()

TInt PTime()const [virtual]

Gets the packet time.

ParseFmtpAttrL(const TDesC8 &)

TBool ParseFmtpAttrL(const TDesC8 &aFmtp)[virtual]

Parses the fmtp attributes, and updates the internal values except the iFmtpAttr attribute

Parameters

const TDesC8 & aFmtpFmtp attribute

PayloadType()

TUint8 PayloadType()const [virtual]

Gets the payload type.

PreferredEncodingDecodingDevice()

TUid PreferredEncodingDecodingDevice()const [virtual]

Get preferred encoding device for uplink stream and preferred decoding device for downlink stream.

Priority()

TInt Priority()const [virtual]

Gets media priority

PriorityPreference()

TInt PriorityPreference()const [virtual]

Gets media priority preference

RedCount()

TUint RedCount()const [virtual]

Get Redundancy Count.

RedPayloadsL(RArray< TUint > &)

voidRedPayloadsL(RArray< TUint > &aRedPayloads)const [virtual]

Fills array with red payload types.

Parameters

RArray< TUint > & aRedPayloads

RedundancyPT()

TUint8 RedundancyPT()const [virtual]

Get Redundancy PayloadType.

RequireSignalling(const CMccCodecInformation &)

TBool RequireSignalling(const CMccCodecInformation &aCandidate)const [virtual]

Checks the codec values if signalling is needed.

Parameters

const CMccCodecInformation & aCandidatenew codec to be checked

SamplingFreq()

TUint32 SamplingFreq()const [virtual]

Gets sampling frequency used currently.

SdpName()

const TDesC8 &SdpName()const [virtual]

Gets the sdp name.

SetAlgo(TAlgoUsed)

TInt SetAlgo(TAlgoUsedaAlgo)[virtual]

Set algorithm.

Parameters

TAlgoUsed aAlgocodec specific algorithm to be used

SetAllowedBitrates(TUint)

TInt SetAllowedBitrates(TUintaBitrateMask)[virtual]

Sets the allowed bitrates for the codec.

Parameters

TUint aBitrateMaskbitrate mask.

SetAverageBitrate(TUint)

TInt SetAverageBitrate(TUintaAverageBitrate)[virtual]

Sets average bitrate

Parameters

TUint aAverageBitrateaverage bitrate

SetBitrate(TUint)

TInt SetBitrate(TUintaBitrate)[pure virtual]

Sets bitrate used with codec.

Parameters

TUint aBitrateNew bitrate value

SetChannels(TInt)

TInt SetChannels(TIntaNumOfChannels)[virtual]

Set number of channels. Range between 1 to 8. Refer to RFC3551 4.1 for interpretation of channels value. Default value is 1.

Parameters

TInt aNumOfChannels

SetCodecMode(TCodecMode)

TInt SetCodecMode(TCodecModeaCodecMode)[pure virtual]

Sets the codec mode.

Parameters

TCodecMode aCodecMode

SetComfortNoiseGeneration(TUint8)

TInt SetComfortNoiseGeneration(TUint8aComfortNoisePT)[virtual]

Enable / Disable Comfort noise generation.

Parameters

TUint8 aComfortNoisePTPayloadtype value indicating what payload type should be used for comfort noise. KPayloadTypeUndefined can be used to turn comfor noise generation off.

SetConfigKeyL(const TDesC8 &)

voidSetConfigKeyL(const TDesC8 &aConfigKey)[virtual]

Set encoder/decoder configuration key

Parameters

const TDesC8 & aConfigKey

SetCrc(const TBool)

TInt SetCrc(const TBoolaCrc)[private, virtual]

Set boolean type frame CRC value. With value 1 CRC shall be included in the payload, otherwise not. 1 also implies that octet-alignet operation shall be used for the session.

Parameters

const TBool aCrc

SetFmtpAttrL(const TDesC8 &, TBool)

voidSetFmtpAttrL(const TDesC8 &aFmtp,
TBoolparseFmtp = ETrue
)[virtual]

Sets the fmtp attribute, i.e. iFmtpAttr == aFmtp

Parameters

const TDesC8 & aFmtpFmtp attribute
TBool parseFmtp = ETrue

SetFrameHeight(TUint)

TInt SetFrameHeight(TUintaFrameHeight)[virtual]

Sets height of the frame

Parameters

TUint aFrameHeightheight of the frame

SetFrameWidth(TUint)

TInt SetFrameWidth(TUintaFrameWidth)[virtual]

Sets width of the frame

Parameters

TUint aFrameWidthwidth of the frame

SetFramerate(TReal)

TInt SetFramerate(TRealaFramerate)[virtual]

Sets framerate

Parameters

TReal aFramerateframe rate

SetInterleaving(const TInt)

TInt SetInterleaving(const TIntaFrameBlockCount)[private, virtual]

Set interleaving as unsigned integer. Number range is 0-63. Indicates that frame-block level interleaving SHALL be used for the session and it's value defines the max number of frame-blocks allowed in interleaving group. Implies automatically that octet-aligned operation SHALL be used.

Parameters

const TInt aFrameBlockCount

SetJitterBufBufferLength(TUint)

TInt SetJitterBufBufferLength(TUintaJitterBufBufferLength)[virtual]

Set JitterBuffer Buffer length

Parameters

TUint aJitterBufBufferLengthlength for buffer

SetJitterBufInactivityTimeOut(TUint)

TInt SetJitterBufInactivityTimeOut(TUintaJitterBufInactivityTimeOut)[virtual]

Set JitterBuffer inactivity timeout in millisecounds

Parameters

TUint aJitterBufInactivityTimeOuttimeout value for RTP inactivity

SetJitterBufThreshold(TUint)

TInt SetJitterBufThreshold(TUintaJitterBufThreshold)[virtual]

Set JitterBuffer threshold

Parameters

TUint aJitterBufThresholdthreshold value for buffer before playout starts

SetKeepAliveData(const TDesC8 &)

TInt SetKeepAliveData(const TDesC8 &aData)[virtual]

Set keep alive packets payload data.

Parameters

const TDesC8 & aDatapayload data for keep alive packets

SetKeepAlivePT(TUint8)

TInt SetKeepAlivePT(TUint8aKeepAlivePT)[virtual]

Set keep alive packets payload type.

Parameters

TUint8 aKeepAlivePTpayload type for keep alive packets

SetKeepAliveTimer(TUint8)

TInt SetKeepAliveTimer(TUint8aTimerValue)[virtual]

Set keep alive packets send timer value.

Parameters

TUint8 aTimerValuetimer value in seconds for keep alive packets

SetMaxBitrate(TUint)

TInt SetMaxBitrate(TUintaMaxBitrate)[virtual]

Sets max bitrate

Parameters

TUint aMaxBitrateMaximum bitrate

SetMaxPTime(TUint)

TInt SetMaxPTime(TUintaMaxPTime)[pure virtual]

Sets max packet time

Parameters

TUint aMaxPTimeMaximum PacketTime

SetMaxRed(TInt)

TInt SetMaxRed(TIntaMaxRed)[virtual]

Sets the upper limit on the usage of redundancy in milliseconds.

Parameters

TInt aMaxRedmaximum redundancy

SetModeChangeNeighbor(const TBool)

TInt SetModeChangeNeighbor(const TBoolaNeighbor)[private, virtual]

Set boolean variable, which indicates change between two modes. With default value 1 changes are only allowed to the neighboring mode.

Parameters

const TBool aNeighbor

SetModeChangePeriod(const TInt)

TInt SetModeChangePeriod(const TIntaPeriod)[private, virtual]

Specifies the number of frame blocks, that is the interval at which codec mode changes are allowed

Parameters

const TInt aPeriod

SetPTime(TUint)

TInt SetPTime(TUintaPTime)[pure virtual]

Sets the packet time

Parameters

TUint aPTimePacketTime.

SetPayloadType(TUint8)

TInt SetPayloadType(TUint8aPayloadType)[pure virtual]

Sets the payload type.

Parameters

TUint8 aPayloadTypetype identifier to be used for payload.

SetPreferredEncodingDecodingDevice(TUid)

voidSetPreferredEncodingDecodingDevice(TUidaEncodingDecodingDevice)[virtual]

Sets preferred encoding device for uplink stream and preferred decoding device for downlink stream.

Parameters

TUid aEncodingDecodingDevice

SetPriority(TInt)

voidSetPriority(TIntaPriority)[virtual]

Set priority for media resource.

Parameters

TInt aPrioritypriority for media resource

SetPriorityPreference(TInt)

voidSetPriorityPreference(TIntaPreference)[virtual]

Set priority preference for media resource.

Parameters

TInt aPreferencepriority preference for media resource

SetRedCount(TUint)

TInt SetRedCount(TUintaRedCount)[virtual]

Set redundancy count.

Parameters

TUint aRedCountcount for redundancy

SetRedundancyPT(TUint8)

TInt SetRedundancyPT(TUint8aRedPT)[virtual]

Set redundancy payload type.

Parameters

TUint8 aRedPTpayload type for redundancy

SetRobustSorting(const TBool)

TInt SetRobustSorting(const TBoolaRobust)[private, virtual]

Set robust sorting on/off with boolean value. With value 1 the payload SHALL employ robust sorting. Implies automatically that octet-aligned operation SHALL be used for the session.

Parameters

const TBool aRobust

SetSamplingFreq(TUint32)

TInt SetSamplingFreq(TUint32aSamplingFreq)[pure virtual]

Sets the sampling frequency.

Parameters

TUint32 aSamplingFreqSampling frequency to be used

SetSdpName(const TDesC8 &)

TInt SetSdpName(const TDesC8 &aSdpName)[pure virtual]

Sets the sdp name of the codec.

Parameters

const TDesC8 & aSdpNamesdp name of the codec.

SetValues(TMccCodecInfo)

voidSetValues(TMccCodecInfocodecInfo)[virtual]

Parameters

TMccCodecInfo codecInfo

Type()

TUid Type()const [virtual]

Type of the codec, like KUidMediaTypeAudio or KUidMediaTypeVideo.

VAD()

TBool VAD()const [virtual]

Get VAD status.

Member Data Documentation

TAlgoUsed iAlgoUsed

TAlgoUsed iAlgoUsed[protected]

Algorithm used

TUint iAverageBitrate

TUint iAverageBitrate[protected]

Average bitrate used in codec

TUint iBitrate

TUint iBitrate[protected]

Stream's bit rate

TUint iBitrateMask

TUint iBitrateMask[protected]

Bitrate mask, allowed modes

TCodecMode iCodecMode

TCodecMode iCodecMode[protected]

Codec mode ( e.g. PCMU, PCMA, Bandwidth efficient, octet aligned )

TUint8 iComfortNoiseGenerationPt

TUint8 iComfortNoiseGenerationPt[protected]

Payload type for comfort noise generation

HBufC8 * iConfigKey

HBufC8 *iConfigKey[protected]

Encoder/decoder configuration key

TBool iCrc

TBool iCrc[protected]

Crc value

TBool iEnableVAD

TBool iEnableVAD[protected]

Enables or disables VAD (Voice Activity Detection)

TUid iEncodingDecodingDevice

TUid iEncodingDecodingDevice[protected]

Encoder/decoder uid

HBufC8 * iFmtpAttr

HBufC8 *iFmtpAttr[protected]

Fmtp attribute

TUint32 iFourCC

TUint32 iFourCC[protected]

Codec FourCC

TInt iFrameBlockCount

TInt iFrameBlockCount[protected]

Interleaving value

TInt iFrameSize

TInt iFrameSize[protected]

FrameSize

TReal iFramerate

TReal iFramerate[protected]

Frame rate for video

TInt iHwFrameTime

TInt iHwFrameTime[protected]

FrameTime

TUint iJitterBufBufferLength

TUint iJitterBufBufferLength[protected]

JitterBuffer threshold

How many packets the jitter buffer can hold

TUint iJitterBufInactivityTimeOut

TUint iJitterBufInactivityTimeOut[protected]

JitterBuffer InactivityTimeOut

Used for talkburst In millisecound when the sequence number should be zerod after a talkburst ( iJitterBufInactivityTimeOut / iHwFrameTime ) == InactivityEvent

TUint iJitterBufThreshold

TUint iJitterBufThreshold[protected]

JitterBuffer threshold

How many packets should be in the buffer before they are played

TBuf8< KMaxKeepAliveDataLen > iKeepAliveData

TBuf8< KMaxKeepAliveDataLen >iKeepAliveData[protected]

Data for keep alive

TUint8 iKeepAlivePT

TUint8 iKeepAlivePT[protected]

Payload type value for keep alive data

TUint8 iKeepAliveTimer

TUint8 iKeepAliveTimer[protected]

Timer value for keep alive data

TUint iMaxBitrate

TUint iMaxBitrate[protected]

Max bitrate used in codec

TUint iMaxPTime

TUint iMaxPTime[protected]

Stream's max packet time

TInt iMaxRed

TInt iMaxRed[protected]

Maximum redundancy in milliseconds

TInt iModeChangePeriod

TInt iModeChangePeriod[protected]

Mode change period

TBool iNeighbor

TBool iNeighbor[protected]

Mode change neighbor

TInt iNumOfChannels

TInt iNumOfChannels[protected]

Number of channels

TUint iPTime

TUint iPTime[protected]

Stream's packet time

TUint iParsedFmtp

TUint iParsedFmtp[protected]

Parsed fmtp attr

TUint32 iPayloadFormatDecoder

TUint32 iPayloadFormatDecoder[protected]

TUint32 iPayloadFormatEncoder

TUint32 iPayloadFormatEncoder[protected]

TUint8 iPayloadType

TUint8 iPayloadType[protected]

Payload type

TInt iPriority

TInt iPriority[protected]

MMF priority settings

TInt iPriorityPreference

TInt iPriorityPreference[protected]

MMF priority settings

TUint iRedCount

TUint iRedCount[protected]

Redundancy count

TUint8 iRedundancyPT

TUint8 iRedundancyPT[protected]

Redundancy PayloadType

TBool iRobust

TBool iRobust[protected]

Robust sorting indicator

TUint32 iSamplingFreq

TUint32 iSamplingFreq[protected]

Sampling frequency used with codec

TBuf8< KMaxSdpNameLength > iSdpName

TBuf8< KMaxSdpNameLength >iSdpName[protected]

Sdp name used in SDP messages

TUint iStartMediaPort

TUint iStartMediaPort[protected]

Local port

TUid iType

TUid iType[protected]

Type of codec, like KUidMediaTypeAudio or KUidMediaTypeVideo

TUint iVideoHeight

TUint iVideoHeight[protected]

Vertical resolution of video

TUint iVideoWidth

TUint iVideoWidth[protected]

Horizontal resolution of video