Public Member Functions | Protected Member Functions | Protected Attributes

CMccCodecInformation Class Reference

#include <mmcccodecinformation.h>

List of all members.

Public Member Functions

virtual ~CMccCodecInformation ()
virtual CMccCodecInformationCloneDefaultsL ()=0
virtual CMccCodecInformationCloneDetailedL ()=0
virtual TBool RequireSignalling (const CMccCodecInformation &aCandidate) const
virtual void SetValues (TMccCodecInfo codecInfo)
virtual void GetValues (TMccCodecInfo &codecInfo) const
virtual TUid Type () const
virtual TInt EnableVAD (TBool aEnableVAD)=0
virtual TInt SetBitrate (TUint aBitrate)=0
virtual TInt SetSamplingFreq (TUint32 aSamplingFreq)=0
virtual TInt SetSdpName (const TDesC8 &aSdpName)=0
virtual TInt SetPayloadType (TUint8 aPayloadType)=0
virtual TInt SetCodecMode (TCodecMode aCodecMode)=0
virtual TInt SetAllowedBitrates (TUint aBitrateMask)
virtual TInt SetPTime (TUint aPTime)=0
virtual TInt SetMaxPTime (TUint aMaxPTime)=0
virtual TInt SetJitterBufBufferLength (TUint aJitterBufBufferLength)
virtual TInt SetJitterBufThreshold (TUint aJitterBufThreshold)
virtual TInt SetJitterBufInactivityTimeOut (TUint aJitterBufInactivityTimeOut)
virtual TInt SetMaxBitrate (TUint aMaxBitrate)
virtual TInt SetAverageBitrate (TUint aAverageBitrate)
virtual TInt SetFramerate (TReal aFramerate)
virtual TInt SetFrameHeight (TUint aFrameHeight)
virtual TInt SetFrameWidth (TUint aFrameWidth)
virtual TInt SetAlgo (TAlgoUsed aAlgo)
virtual TInt SetRedCount (TUint aRedCount)
virtual TInt SetRedundancyPT (TUint8 aRedPT)
virtual void SetPriority (TInt aPriority)
virtual void SetPriorityPreference (TInt aPreference)
virtual TInt SetKeepAliveTimer (TUint8 aTimerValue)
virtual TInt SetKeepAlivePT (TUint8 aKeepAlivePT)
virtual TInt SetKeepAliveData (const TDesC8 &aData)
virtual TInt SetComfortNoiseGeneration (TUint8 aComfortNoisePT)
virtual TInt SetChannels (TInt aNumOfChannels)
virtual TInt SetMaxRed (TInt aMaxRed)
virtual void SetConfigKeyL (const TDesC8 &aConfigKey)
virtual void SetPreferredEncodingDecodingDevice (TUid aEncodingDecodingDevice)
virtual TBool VAD () const
virtual TUint Bitrate () const
virtual TUint AllowedBitrates () const
virtual TUint32 SamplingFreq () const
virtual const TDesC8 & SdpName () const
virtual TUint8 PayloadType () const
virtual TCodecMode CodecMode () const
virtual TInt PTime () const
virtual TInt MaxPTime () const
virtual TDesC8 & GetFmtpL ()
virtual TUint32 FourCC () const
virtual TInt FrameTime () const
virtual TInt FrameSize () const
virtual TAlgoUsed Algo () const
virtual TUint RedCount () const
virtual TUint8 RedundancyPT () const
virtual TUint JitterBufInactivityTimeOut () const
virtual TUint JitterBufThreshold () const
virtual TUint JitterBufBufferLength () const
virtual TUint MaxBitrate () const
virtual TUint AverageBitrate () const
virtual TReal Framerate () const
virtual TUint FrameHeight () const
virtual TUint FrameWidth () const
virtual TInt Priority () const
virtual TInt PriorityPreference () const
virtual TUint8 KeepAliveTimer () const
virtual TUint8 KeepAlivePT () const
virtual const TDesC8 & KeepAliveData () const
virtual TUint8 ComfortNoiseGeneration () const
virtual TInt GetChannels (TInt &aNumOfChannels) const
virtual TInt MaxRed () const
virtual void RedPayloadsL (RArray< TUint > &aRedPayloads) const
virtual HBufC8 * ConfigKeyL () const
virtual TUid PreferredEncodingDecodingDevice () const
virtual void SetFmtpAttrL (const TDesC8 &aFmtp, TBool parseFmtp=ETrue)
virtual TBool ParseFmtpAttrL (const TDesC8 &aFmtp)
virtual void CreateFmtpAttrListL ()
virtual void CreateFmtpAttrListL (const RArray< TUint > &aBitrates)

Protected Member Functions

 CMccCodecInformation ()

Protected Attributes

TUid iType
TBool iEnableVAD
TUint32 iSamplingFreq
TBuf8< KMaxSdpNameLength > iSdpName
TUint iPTime
TUint iMaxPTime
HBufC8 * iFmtpAttr
TUint iParsedFmtp
TUint iBitrate
TUint iBitrateMask
TUint8 iPayloadType
TCodecMode iCodecMode
TUint iStartMediaPort
TUint32 iFourCC
TInt iHwFrameTime
TInt iFrameSize
TAlgoUsed iAlgoUsed
TUint iRedCount
TUint8 iRedundancyPT
TUint iJitterBufInactivityTimeOut
TUint iJitterBufThreshold
TUint iJitterBufBufferLength
TInt iModeChangePeriod
TBool iNeighbor
TBool iCrc
TBool iRobust
TInt iFrameBlockCount
TInt iNumOfChannels
TUint8 iComfortNoiseGenerationPt
TInt iPriority
TInt iPriorityPreference
TUint iAverageBitrate
TUint iMaxBitrate
TReal iFramerate
TUint iVideoWidth
TUint iVideoHeight
TUint8 iKeepAliveTimer
TUint8 iKeepAlivePT
TBuf8< KMaxKeepAliveDataLen > iKeepAliveData
TUint32 iPayloadFormatEncoder
TUint32 iPayloadFormatDecoder
TInt iMaxRed
HBufC8 * iConfigKey
TUid iEncodingDecodingDevice

Detailed Description

Container class for the codec information. This class defines the API used to access and configure parameters of codecs supported by multimedia comms controller. Actual implementations of this class are hidden from the user.

mmccinterface.dll


Constructor & Destructor Documentation

virtual CMccCodecInformation::~CMccCodecInformation (  )  [virtual]

Destructor.

CMccCodecInformation::CMccCodecInformation (  )  [protected]

C++ default constructor.


Member Function Documentation

virtual TAlgoUsed CMccCodecInformation::Algo (  )  const [virtual]

Get Algorithm used.

Returns:
FrameSize in bytes
virtual TUint CMccCodecInformation::AllowedBitrates (  )  const [virtual]

Gets the bitrate mask.

Returns:
Bitrate mask
virtual TUint CMccCodecInformation::AverageBitrate (  )  const [virtual]

Gets average bitrate.

Returns:
average bitrate.
virtual TUint CMccCodecInformation::Bitrate (  )  const [virtual]

Gets bitrate value used currently.

Returns:
Bitrate value
virtual CMccCodecInformation* CMccCodecInformation::CloneDefaultsL (  )  [pure virtual]

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

Returns:
CMccCodecInformation Pointer to the newly created codec clone.
virtual CMccCodecInformation* CMccCodecInformation::CloneDetailedL (  )  [pure virtual]

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

Returns:
CMccCodecInformation Pointer to the newly created codec clone.
virtual TCodecMode CMccCodecInformation::CodecMode (  )  const [virtual]

Gets the codec mode.

Returns:
Codec mode used
virtual TUint8 CMccCodecInformation::ComfortNoiseGeneration (  )  const [virtual]

Get Comfort noise payload type value.

Returns:
Payload type value indicating which payload type is used for comfort noise generation. If KPayloadTypeUndefined is returned, comfort noise generation is disabled.
virtual HBufC8* CMccCodecInformation::ConfigKeyL (  )  const [virtual]

Get encoder/decoder configuration key.

Returns:
key or NULL, ownership is transferred
virtual void CMccCodecInformation::CreateFmtpAttrListL (  )  [virtual]

Creates the fmtp string from internal values.

virtual void CMccCodecInformation::CreateFmtpAttrListL ( const RArray< TUint > &  aBitrates  )  [virtual]

Creates the fmtp string from internal values and the given bitrates.

virtual TInt CMccCodecInformation::EnableVAD ( TBool  aEnableVAD  )  [pure virtual]

Enable / Disable Voice Activity Detection.

Parameters:
aEnableVAD Boolean indicating whether to enable Voice Activity Detection
Returns:
KErrNotSupported If codec doesn't support VAD; otherwise KErrNone.
virtual TUint32 CMccCodecInformation::FourCC (  )  const [virtual]

Codec FourCC.

Returns:
FourCC.
virtual TUint CMccCodecInformation::FrameHeight (  )  const [virtual]

Gets height of the frame.

Returns:
height of the frame.
virtual TReal CMccCodecInformation::Framerate (  )  const [virtual]

Gets framerate.

Returns:
frame rate.
virtual TInt CMccCodecInformation::FrameSize (  )  const [virtual]

Get FrameSize.

Returns:
FrameSize in bytes
virtual TInt CMccCodecInformation::FrameTime (  )  const [virtual]

Get HW FrameTime.

Returns:
FrameTime in milliseconds
virtual TUint CMccCodecInformation::FrameWidth (  )  const [virtual]

Gets width of the frame.

Returns:
width of the frame.
virtual TInt CMccCodecInformation::GetChannels ( TInt &  aNumOfChannels  )  const [virtual]

Get number of channels.

Returns:
One of the standard system-wide error codes.
virtual TDesC8& CMccCodecInformation::GetFmtpL (  )  [virtual]

Gets the codec specific fmtp value for SDP.

Returns:
Fmtp.
virtual void CMccCodecInformation::GetValues ( TMccCodecInfo &  codecInfo  )  const [virtual]

Internal function.

virtual TUint CMccCodecInformation::JitterBufBufferLength (  )  const [virtual]

Get JitterBuffer Buffer length.

Returns:
Buffer length.
virtual TUint CMccCodecInformation::JitterBufInactivityTimeOut (  )  const [virtual]

Get JitterBuffer inactivity timeout.

Returns:
timeout time.
virtual TUint CMccCodecInformation::JitterBufThreshold (  )  const [virtual]

Get JitterBuffer threshold.

Returns:
threshold.
virtual const TDesC8& CMccCodecInformation::KeepAliveData (  )  const [virtual]

Get keep alive packets payload data.

Returns:
keep alive packets payload data.
virtual TUint8 CMccCodecInformation::KeepAlivePT (  )  const [virtual]

Get keep alive packets payload type.

Returns:
keep alive packets payload type.
virtual TUint8 CMccCodecInformation::KeepAliveTimer (  )  const [virtual]

Get keep alive packets send timer value.

Returns:
keep alive packets send timer value.
virtual TUint CMccCodecInformation::MaxBitrate (  )  const [virtual]

Gets max bitrate.

Returns:
Maximum bitrate.
virtual TInt CMccCodecInformation::MaxPTime (  )  const [virtual]

Gets max packet time.

Returns:
Max PacketTime.
virtual TInt CMccCodecInformation::MaxRed (  )  const [virtual]

Returns the maximum redundancy.

Returns:
maximum redundancy in milliseconds
virtual TBool CMccCodecInformation::ParseFmtpAttrL ( const TDesC8 &  aFmtp  )  [virtual]

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

Parameters:
aFmtp Fmtp attribute
Returns:
True if any param was updated
virtual TUint8 CMccCodecInformation::PayloadType (  )  const [virtual]

Gets the payload type.

Returns:
Payload type used
virtual TUid CMccCodecInformation::PreferredEncodingDecodingDevice (  )  const [virtual]

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

Returns:
UID of the preferred encoding/decoding device.
virtual TInt CMccCodecInformation::Priority (  )  const [virtual]

Gets media priority.

Returns:
media priority.
virtual TInt CMccCodecInformation::PriorityPreference (  )  const [virtual]

Gets media priority preference.

Returns:
media priority preference.
virtual TInt CMccCodecInformation::PTime (  )  const [virtual]

Gets the packet time.

Returns:
Packet Time.
virtual TUint CMccCodecInformation::RedCount (  )  const [virtual]

Get Redundancy Count.

Returns:
Redundancy Count
virtual void CMccCodecInformation::RedPayloadsL ( RArray< TUint > &  aRedPayloads  )  const [virtual]

Fills array with red payload types.

Parameters:
aRedPayloads 
virtual TUint8 CMccCodecInformation::RedundancyPT (  )  const [virtual]

Get Redundancy PayloadType.

Returns:
Redundancy PayloadType
virtual TBool CMccCodecInformation::RequireSignalling ( const CMccCodecInformation aCandidate  )  const [virtual]

Checks the codec values if signalling is needed.

Parameters:
aCandidate new codec to be checked
Returns:
ETrue if signalling is needed
virtual TUint32 CMccCodecInformation::SamplingFreq (  )  const [virtual]

Gets sampling frequency used currently.

Returns:
Sampling frequency
virtual const TDesC8& CMccCodecInformation::SdpName (  )  const [virtual]

Gets the sdp name.

Returns:
Sdp name used
virtual TInt CMccCodecInformation::SetAlgo ( TAlgoUsed  aAlgo  )  [virtual]

Set algorithm.

Parameters:
aAlgo codec specific algorithm to be used
Returns:
One of the standard system-wide error codes.
virtual TInt CMccCodecInformation::SetAllowedBitrates ( TUint  aBitrateMask  )  [virtual]

Sets the allowed bitrates for the codec.

Parameters:
aBitrateMask bitrate mask.
Returns:
KErrNotSupported if codec does not support the bitrate mask value issued; otherwise KErrNone.
virtual TInt CMccCodecInformation::SetAverageBitrate ( TUint  aAverageBitrate  )  [virtual]

Sets average bitrate.

Parameters:
aAverageBitrate average bitrate
Returns:
One of the standard system-wide error codes.
virtual TInt CMccCodecInformation::SetBitrate ( TUint  aBitrate  )  [pure virtual]

Sets bitrate used with codec. If the codec supports multiple bitrates, this sets the default bitrate which will be used as a starting point.

Parameters:
aBitrate New bitrate value
Returns:
KErrNotSupported If codec doesn't support bitrate value issued; otherwise KErrNone.
virtual TInt CMccCodecInformation::SetChannels ( TInt  aNumOfChannels  )  [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:
aNumOfChannels Number of channels.
Returns:
One of the standard system-wide error codes.
virtual TInt CMccCodecInformation::SetCodecMode ( TCodecMode  aCodecMode  )  [pure virtual]

Sets the codec mode.

Parameters:
aCodecMode Codec mode, eg. ULAW/ALAW, bandwidth efficient / octet aligned
Returns:
KErrNotSupported if codec does not support codec mode value issued; KErrNone on success.
virtual TInt CMccCodecInformation::SetComfortNoiseGeneration ( TUint8  aComfortNoisePT  )  [virtual]

Enable / Disable Comfort noise generation.

Parameters:
aComfortNoisePT Payloadtype value indicating what payload type should be used for comfort noise. KPayloadTypeUndefined can be used to turn comfort noise generation off.
Returns:
One of the standard system-wide error codes.
virtual void CMccCodecInformation::SetConfigKeyL ( const TDesC8 &  aConfigKey  )  [virtual]

Set encoder/decoder configuration key.

Parameters:
aConfigKey As Base64 encoded
virtual void CMccCodecInformation::SetFmtpAttrL ( const TDesC8 &  aFmtp,
TBool  parseFmtp = ETrue 
) [virtual]

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

Parameters:
aFmtp Fmtp attribute
parseFmtp Flag to indicate that the FMTP line should be parsed.
virtual TInt CMccCodecInformation::SetFrameHeight ( TUint  aFrameHeight  )  [virtual]

Sets height of the frame.

Parameters:
aFrameHeight height of the frame
Returns:
One of the standard system-wide error codes.
virtual TInt CMccCodecInformation::SetFramerate ( TReal  aFramerate  )  [virtual]

Sets framerate.

Parameters:
aFramerate frame rate
Returns:
One of the standard system-wide error codes.
virtual TInt CMccCodecInformation::SetFrameWidth ( TUint  aFrameWidth  )  [virtual]

Sets width of the frame.

Parameters:
aFrameWidth width of the frame
Returns:
One of the standard system-wide error codes.
virtual TInt CMccCodecInformation::SetJitterBufBufferLength ( TUint  aJitterBufBufferLength  )  [virtual]

Set JitterBuffer Buffer length. Note that the buffer length is measured in frames not in milliseconds.

Parameters:
aJitterBufBufferLength length for buffer
Returns:
One of the standard system-wide error codes.
virtual TInt CMccCodecInformation::SetJitterBufInactivityTimeOut ( TUint  aJitterBufInactivityTimeOut  )  [virtual]

Set JitterBuffer inactivity timeout in millisecounds.

Parameters:
aJitterBufInactivityTimeOut timeout value for RTP inactivity
Returns:
One of the standard system-wide error codes.
virtual TInt CMccCodecInformation::SetJitterBufThreshold ( TUint  aJitterBufThreshold  )  [virtual]

Set JitterBuffer threshold. Note that the threshold is measured in frames, not milliseconds.

Parameters:
aJitterBufThreshold threshold value for buffer before playout starts
Returns:
One of the standard system-wide error codes.
virtual TInt CMccCodecInformation::SetKeepAliveData ( const TDesC8 &  aData  )  [virtual]

Set keep alive packets payload data.

Parameters:
aData payload data for keep alive packets
Returns:
One of the standard system-wide error codes.
virtual TInt CMccCodecInformation::SetKeepAlivePT ( TUint8  aKeepAlivePT  )  [virtual]

Set keep alive packets payload type.

Parameters:
aKeepAlivePT payload type for keep alive packets
Returns:
One of the standard system-wide error codes.
virtual TInt CMccCodecInformation::SetKeepAliveTimer ( TUint8  aTimerValue  )  [virtual]

Set keep alive packets send timer value.

Parameters:
aTimerValue timer value in seconds for keep alive packets
Returns:
One of the standard system-wide error codes.
virtual TInt CMccCodecInformation::SetMaxBitrate ( TUint  aMaxBitrate  )  [virtual]

Sets max bitrate.

Parameters:
aMaxBitrate Maximum bitrate
Returns:
One of the standard system-wide error codes.
virtual TInt CMccCodecInformation::SetMaxPTime ( TUint  aMaxPTime  )  [pure virtual]

Sets max packet time.

Parameters:
aMaxPTime Maximum PacketTime
Returns:
One of the standard system-wide error codes.
virtual TInt CMccCodecInformation::SetMaxRed ( TInt  aMaxRed  )  [virtual]

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

Parameters:
aMaxRed maximum redundancy
Returns:
One of the standard system-wide error codes.
virtual TInt CMccCodecInformation::SetPayloadType ( TUint8  aPayloadType  )  [pure virtual]

Sets the payload type.

Parameters:
aPayloadType type identifier to be used for payload.
Returns:
KErrNotSupported if not allowed; otherwise KErrNone.
virtual void CMccCodecInformation::SetPreferredEncodingDecodingDevice ( TUid  aEncodingDecodingDevice  )  [virtual]

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

Parameters:
aEncodingDecodingDevice 
virtual void CMccCodecInformation::SetPriority ( TInt  aPriority  )  [virtual]

Set priority for media resource.

Parameters:
aPriority priority for media resource
Returns:
One of the standard system-wide error codes.
virtual void CMccCodecInformation::SetPriorityPreference ( TInt  aPreference  )  [virtual]

Set priority preference for media resource.

Parameters:
aPreference priority preference for media resource
Returns:
One of the standard system-wide error codes.
virtual TInt CMccCodecInformation::SetPTime ( TUint  aPTime  )  [pure virtual]

Sets the packet time.

Parameters:
aPTime PacketTime.
Returns:
One of the standard system-wide error codes.
virtual TInt CMccCodecInformation::SetRedCount ( TUint  aRedCount  )  [virtual]

Set redundancy count.

Parameters:
aRedCount count for redundancy
Returns:
One of the standard system-wide error codes.
virtual TInt CMccCodecInformation::SetRedundancyPT ( TUint8  aRedPT  )  [virtual]

Set redundancy payload type.

Parameters:
aRedPT payload type for redundancy
Returns:
One of the standard system-wide error codes.
virtual TInt CMccCodecInformation::SetSamplingFreq ( TUint32  aSamplingFreq  )  [pure virtual]

Sets the sampling frequency.

Parameters:
aSamplingFreq Sampling frequency to be used
Returns:
KErrNotSupported if codec doesn't support sampling frequency issued; otherwise KErrNone.
virtual TInt CMccCodecInformation::SetSdpName ( const TDesC8 &  aSdpName  )  [pure virtual]

Sets the sdp name of the codec. By default codecs do not allow the SDP name change thus this function will fail.

Parameters:
aSdpName sdp name of the codec.
Returns:
KErrNotSupported if not allowed; otherwise KErrNone.
virtual void CMccCodecInformation::SetValues ( TMccCodecInfo  codecInfo  )  [virtual]

Internal function.

virtual TUid CMccCodecInformation::Type (  )  const [virtual]

Type of the codec, like KUidMediaTypeAudio or KUidMediaTypeVideo.

Returns:
Type of the codec.
virtual TBool CMccCodecInformation::VAD (  )  const [virtual]

Get VAD status.

Returns:
Boolean indicating is VAD activated

Member Data Documentation

TAlgoUsed CMccCodecInformation::iAlgoUsed [protected]

Algorithm used

Average bitrate used in codec

TUint CMccCodecInformation::iBitrate [protected]

Stream's bit rate

Bitrate mask, allowed modes

TCodecMode CMccCodecInformation::iCodecMode [protected]

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

Payload type for comfort noise generation

HBufC8* CMccCodecInformation::iConfigKey [protected]

Encoder/decoder configuration key

TBool CMccCodecInformation::iCrc [protected]

Crc value

Enables or disables VAD (Voice Activity Detection)

Encoder/decoder uid

HBufC8* CMccCodecInformation::iFmtpAttr [protected]

Fmtp attribute

TUint32 CMccCodecInformation::iFourCC [protected]

Codec FourCC

Interleaving value

Frame rate for video

FrameSize

FrameTime

JitterBuffer threshold

How many packets the jitter buffer can hold

JitterBuffer InactivityTimeOut

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

JitterBuffer threshold

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

TBuf8<KMaxKeepAliveDataLen> CMccCodecInformation::iKeepAliveData [protected]

Data for keep alive

Payload type value for keep alive data

Timer value for keep alive data

Max bitrate used in codec

Stream's max packet time

Maximum redundancy in milliseconds

Mode change period

Mode change neighbor

Number of channels

Parsed fmtp attr

Payload type

MMF priority settings

MMF priority settings

TUint CMccCodecInformation::iPTime [protected]

Stream's packet time

Redundancy count

Redundancy PayloadType

TBool CMccCodecInformation::iRobust [protected]

Robust sorting indicator

Sampling frequency used with codec

TBuf8<KMaxSdpNameLength> CMccCodecInformation::iSdpName [protected]

Sdp name used in SDP messages

Local port

TUid CMccCodecInformation::iType [protected]

Type of codec, like KUidMediaTypeAudio or KUidMediaTypeVideo

Vertical resolution of video

Horizontal resolution of video


The documentation for this class was generated from the following file:
 All Classes Functions Variables