CRtpSession Class Reference

class CRtpSession : public CBase

class for rtp session.

RtpService.dll

Inherits from

Public Member Functions
~CRtpSession ()
void CancelSend ()
TBool CheckRemoteAddr ()
TInt CheckRemoteSsrcL ( TRtpSSRC &)
void CloseStream ( TRtpId )
TInt CreateReceiveStreamL ( TRtpId , const TRtpPayloadType )
TInt CreateTransmitStreamExtL ( TRtpId , const TRtpPayloadType , const TUint32 )
TInt CreateTransmitStreamL ( TRtpId , const TRtpPayloadType , TUint32 &)
RSocket * GetRtcpSocket ()
RSocket * GetRtpSocket ()
TRtpId GetSessionId ()
TInt GetStreamStatistics ( TRtpId , TRtpPeerStat &)
TInt IsRtcpSendingSuspended ( TBool &)
TBool IsSrtp ()
CRtpSession * NewL (const TCreateSessionParams &, TUint &, TBool , const TRtcpParams *, RSocketServ &, RConnection &, const TRtpId , const CRtpSDES *, const TUint32 *, const TBool , const RLibrary &, MRtpErrNotify &, MRtpAsignUniqueID &)
void OnExpiredL ( TInt )
void OnPacketRejected ( TPortType )
void OnReceptionError ( TPortType , TInt )
void OnRtcpReceivedL ()
void OnRtpReceivedL ()
TInt RegisterRtcpObserver ( MRtcpObserver &)
TInt RegisterRtpObserver ( MRtpObserver &)
void ResetRxStreamStats ()
void ResetTxStreamStats ()
TInt ResumeRtcpSending ()
TRtpSSRC SSRC ()
void SendData ( TBool , const TDesC8 &, TRequestStatus &)
TInt SendRtcpAppPacketL ( TRtpId , const TRtcpApp &)
TInt SendRtcpByePacketL ( TRtpId , const TDesC8 &)
TInt SendRtcpRrPacketL ( TRtpId )
TInt SendRtcpSrPacketL ( TRtpId )
TInt SendRtpPacket ( TRtpId , const TRtpSendHeader &, const TDesC8 &)
TInt SendRtpPacket ( TRtpId , const TRtpSendHeader &, const TDesC8 &, TRequestStatus &)
TInt SendRtpPacket (const TRtpSendHeader &, const TDesC8 &)
TInt SendRtpPacket (const TRtpSendHeader &, const TDesC8 &, TRequestStatus &)
TInt SendRtpPacket ( TRtpId , TRtpSequence , const TRtpSendHeader &, const TDesC8 &, TRequestStatus &)
TInt SetNonRTPDataObserver ( MNonRTPDataObserver *)
TInt SetRemoteAddress ( TInetAddr &)
TInt SetRemoteRtcpAddress ( TInetAddr &)
TInt SetRtcpParameters (const TRtcpParams &)
TInt StartSession ()
TInt StopRtcpSending ()
void UnregisterRtcpObserver ()
void UnregisterRtpObserver ()
Protected Member Functions
CRtpSession (const TRtpId , const TUint32 *, const TBool , MRtpErrNotify &, const CRtpSDES *, MRtpAsignUniqueID &)
void AverageRtcpSize ( TUint )
void ConstructL (const TCreateSessionParams &, TUint &, TBool , const TRtcpParams *, RSocketServ &, RConnection &, const RLibrary &, MRtpErrNotify &)
void FindRtpRxStreamSSRC ( TRtpSSRC &)
TInt FindStream (const TRtpId , TUint &)
TInt IssueRtcpRecv ()
TInt IssueRtpRecv ()
void SendSRTCPReportL ( TRtpSSRC )
Private Member Functions
TBool AddSdesToArrayL ( TUint &, TRtpPacketIOParam *)
TInt AddStream (const TStream , TStreamType )
TBool AnyRcvStreamReceivedRtpPacket ()
TInt AssignRtpRxStreamL ()
void BuildEmptyRr ( CRtpTranStream *)
TInt BuildRTCPReport ( CRtpTranStream *, TInt )
void BuildRrSection ( TInt , TBool , TInt )
void BuildSdesSection ( CRtpTranStream *)
void BuildSendRTCPReportL ()
void BuildSrSection ( CRtpTranStream *)
TBool CheckifBanded ()
TBool CompareAndUpdateSdes ( CRtpSDES *, TRtpPacketIOParam *, TBool )
void CreateNewRecvStreamL ()
void CreateSDES ( TInt , TRtpSSRC )
void DeallocateMemoryForSdes ( TRtpPacketIOParam *)
void DetermineSourceCountAndLength ( TInt &, TInt &, TBool )
CRtpSDES * DoAddSdesToArrayL ( TRtpPacketIOParam *)
TBool DoBuildSendRTCPReportIfNotSentL ()
void DoBuildSendRTCPReportL ()
TInt FindRtpRxStreamL ()
TInt FindStream (const TRtpId , TUint &, TStreamType &)
TBool FindStreamForSSRC ( TRtpSSRC )
TBool FindTxStreamForSSRC ( TRtpSSRC , CRtpTranStream **)
TRtpSSRC GenerateSSRC ()
CRtpRecvStream * GetRcvStreamByIndex ( TInt )
TInt GetSDESFromSDESData ( TRtpSdesParams *, const CRtpRecvStream *, CRtpSDES *)
TRtpSSRC GetUniqueSSRC ()
TInt InitialiseRtcp (const TRtcpParams *)
TInt MatchSSRCToStream ( TUint &, TRtpSSRC , TStreamType &)
void NextRtcpInterval ()
TRtpRtcpEnum ProcessAPPSectionL ( TInt , TInt )
TRtpRtcpEnum ProcessBYESectionL ()
TRtpRtcpEnum ProcessOneRTCPReportSectionL (const TRtpPacketIOParam &, TRtpSSRC )
TRtpRtcpEnum ProcessRRSectionL ( TInt )
TRtpRtcpEnum ProcessRTCPReportL ()
TRtpRtcpEnum ProcessSDESDataL ( TRtpPacketStreamParam &, TRtpPacketIOParam &, TRtpSSRC )
TRtpRtcpEnum ProcessSDESSectionL ( TRtpSSRC )
TRtpRtcpEnum ProcessSRSectionL ( TInt )
TInt Random ()
TReal Random64 ()
TBool RcvStreamActive ( TInt )
TBool RcvStreamReceivedRtpPacket ( TInt )
void RedistributeBandwidth ()
void RemoveAllStreams ()
TInt RemoveSdesFromArray ( TRtpSSRC )
TInt RemoveStream (const TRtpId , TStreamType &)
void ScheduleRtcpSendL ()
void SendRTCPByewithBanedSSRCL ()
void SendRTCPReport ()
void SetParamsForFullRTCPReport ( CRtpTranStream *, TRtpPacketStreamParam *, TRtpPacketIOParam *, TBool )
TBool ShouldBuildEmptyRR ( CRtpTranStream *)
void StartReceiveRtcpPacket ()
void StopReceiveRtcpPacket ()
TInt StreamSendAPPPacket ()
TInt StreamSendBYEPacket ()
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()
Public Member Enumerations
enum anonymous { ECallBack , ETimeOut }
enum TStreamType { ETxStream  = 0, ERxStream }
Protected Attributes
MRtpAsignUniqueID & iAssignUniqueID
TReal iAverageRtcpSize
TUint iBandWidth
CRtpComm * iCommNet
MRtpErrNotify & iErrNotify
TBool iFPortsInit
TBool iFirstRTCPSent
TReal iFraction
TBool iIsSrtp
MNonRTPDataObserver * iNonRTPDataObserver
TUint16 iNumOfRxStreams
TUint16 iNumOfTxStreams
MRtpPacketExt * iPktExtRcv
MRtpPacketExt * iPktExtSnd
CRtpPacket * iPktRcv
CRtpPacket * iPktRtcpRcv
CRtpPacket * iPktRtcpSnd
CRtpPacket * iPktSnd
const TUint32 * iProfileRTPTimeRates
TBool iRtcpEnabled
TInt iRtcpErrors
MRtcpObserver * iRtcpObserver
TPtr8 iRtcpRecvBuf
TBool iRtcpSendingSuspended
TUint iRtcpTimeInterval
MRtpObserver * iRtpObserver
TPtr8 iRtpRecvBuf
RArray < TRtpSSRC > iRxSSRCArray
TInt iSSRCJumps
CArrayPtrFlat < CRtpSDES > * iSdesArray
TInt64 iSeed
TBool iSessionStarted
CRtpTimer * iSndRtcpTimer
CArrayFixFlat < TStream > * iStreamRxArray
CArrayFixFlat < TStream > * iStreamTxArray
TUint iTotalParticipantsSession
Private Attributes
TRtpSSRC iDefaultSSRC
const CRtpSDES * iLocalSdes
TRtpSdesParams * iNewSdes
TInetAddr iRemoteAddr
TBool iRemoteAddrSet
TInt iSendSdesCounter
TRtpId iSessionId
TBool iStandardRtp

Constructor & Destructor Documentation

CRtpSession(const TRtpId, const TUint32 *, const TBool, MRtpErrNotify &, const CRtpSDES *, MRtpAsignUniqueID &)

CRtpSession ( const TRtpId aSessionId,
const TUint32 * aProfileRTPTimeRates,
const TBool aStandardRtp,
MRtpErrNotify & aErrNotify,
const CRtpSDES * aSdesInfo,
MRtpAsignUniqueID & aAssignUniqueID
) [protected]

Parameters

const TRtpId aSessionId
const TUint32 * aProfileRTPTimeRates
const TBool aStandardRtp
MRtpErrNotify & aErrNotify
const CRtpSDES * aSdesInfo
MRtpAsignUniqueID & aAssignUniqueID

~CRtpSession()

~CRtpSession ( )

Member Functions Documentation

AddSdesToArrayL(TUint &, TRtpPacketIOParam *)

TBool AddSdesToArrayL ( TUint & aSdesAddress,
TRtpPacketIOParam * extractParam
) [private]

Parameters

TUint & aSdesAddress
TRtpPacketIOParam * extractParam

AddStream(const TStream, TStreamType)

TInt AddStream ( const TStream aArrayID,
TStreamType aStreamType
) [private]

Parameters

const TStream aArrayID
TStreamType aStreamType

AnyRcvStreamReceivedRtpPacket()

TBool AnyRcvStreamReceivedRtpPacket ( ) [private]

AssignRtpRxStreamL()

TInt AssignRtpRxStreamL ( ) [private]

AverageRtcpSize(TUint)

void AverageRtcpSize ( TUint aRtcpReportSize ) [protected]

Parameters

TUint aRtcpReportSize

BuildEmptyRr(CRtpTranStream *)

void BuildEmptyRr ( CRtpTranStream * aTempTranStream ) [private]

Parameters

CRtpTranStream * aTempTranStream

BuildRTCPReport(CRtpTranStream *, TInt)

TInt BuildRTCPReport ( CRtpTranStream * tempStream,
TInt aLastReport
) [private]

Parameters

CRtpTranStream * tempStream
TInt aLastReport

BuildRrSection(TInt, TBool, TInt)

void BuildRrSection ( TInt aNumRcvStreams,
TBool aRxActive,
TInt aLastReport
) [private]

Parameters

TInt aNumRcvStreams
TBool aRxActive
TInt aLastReport

BuildSdesSection(CRtpTranStream *)

void BuildSdesSection ( CRtpTranStream * aTempTranStream ) [private]

Parameters

CRtpTranStream * aTempTranStream

BuildSendRTCPReportL()

void BuildSendRTCPReportL ( ) [private]

BuildSrSection(CRtpTranStream *)

void BuildSrSection ( CRtpTranStream * aTempTranStream ) [private]

Parameters

CRtpTranStream * aTempTranStream

CancelSend()

void CancelSend ( )

CheckRemoteAddr()

TBool CheckRemoteAddr ( )

CheckRemoteSsrcL(TRtpSSRC &)

TInt CheckRemoteSsrcL ( TRtpSSRC & aSSRC )

Checks if a newly received SSRC collides with the SSRC's of the existing Tx streams in this session, and reacts appropriately. This is SSRC collision handling.

Parameters

TRtpSSRC & aSSRC a newly received SSRC

CheckifBanded()

TBool CheckifBanded ( ) [private]

CloseStream(TRtpId)

void CloseStream ( TRtpId aStreamId )

Parameters

TRtpId aStreamId

CompareAndUpdateSdes(CRtpSDES *, TRtpPacketIOParam *, TBool)

TBool CompareAndUpdateSdes ( CRtpSDES * aTempSdes,
TRtpPacketIOParam * aExtractParam,
TBool aUpdateCName
) [private]

Compares the specified SDES values with the ones in the parameters and updates the SDES where the values differ

Parameters

CRtpSDES * aTempSdes the target SDES
TRtpPacketIOParam * aExtractParam the parameters to compare with
TBool aUpdateCName indicates whether to include the CName

ConstructL(const TCreateSessionParams &, TUint &, TBool, const TRtcpParams *, RSocketServ &, RConnection &, const RLibrary &, MRtpErrNotify &)

void ConstructL ( const TCreateSessionParams & aParams,
TUint & aPort,
TBool aEnableRtcp,
const TRtcpParams * aRtcpParams,
RSocketServ & aSocketServ,
RConnection & aRConn,
const RLibrary & aLibrary,
MRtpErrNotify & aErrNotify
) [protected]

Parameters

const TCreateSessionParams & aParams
TUint & aPort
TBool aEnableRtcp
const TRtcpParams * aRtcpParams
RSocketServ & aSocketServ
RConnection & aRConn
const RLibrary & aLibrary
MRtpErrNotify & aErrNotify

CreateNewRecvStreamL()

void CreateNewRecvStreamL ( ) [private]

CreateReceiveStreamL(TRtpId, const TRtpPayloadType)

TInt CreateReceiveStreamL ( TRtpId aStreamId,
const TRtpPayloadType aPayloadType
)

Parameters

TRtpId aStreamId
const TRtpPayloadType aPayloadType

CreateSDES(TInt, TRtpSSRC)

void CreateSDES ( TInt aFCNameOnly,
TRtpSSRC aSSRC
) [private]

Parameters

TInt aFCNameOnly
TRtpSSRC aSSRC

CreateTransmitStreamExtL(TRtpId, const TRtpPayloadType, const TUint32)

TInt CreateTransmitStreamExtL ( TRtpId aStreamId,
const TRtpPayloadType aPayloadType,
const TUint32 aSSRC
)

Parameters

TRtpId aStreamId
const TRtpPayloadType aPayloadType
const TUint32 aSSRC

CreateTransmitStreamL(TRtpId, const TRtpPayloadType, TUint32 &)

TInt CreateTransmitStreamL ( TRtpId aStreamId,
const TRtpPayloadType aPayloadType,
TUint32 & aSSRC
)

Parameters

TRtpId aStreamId
const TRtpPayloadType aPayloadType
TUint32 & aSSRC

DeallocateMemoryForSdes(TRtpPacketIOParam *)

void DeallocateMemoryForSdes ( TRtpPacketIOParam * aParam ) [private]

Parameters

TRtpPacketIOParam * aParam

DetermineSourceCountAndLength(TInt &, TInt &, TBool)

void DetermineSourceCountAndLength ( TInt & aSourceCount,
TInt & aLength,
TBool aRxActive
) [private]

Determines the source count and length before an RTCP report is sent

Parameters

TInt & aSourceCount reference to the source count variable to update
TInt & aLength reference to the packet length variable to update
TBool aRxActive a list of active/not active streams

DoAddSdesToArrayL(TRtpPacketIOParam *)

CRtpSDES * DoAddSdesToArrayL ( TRtpPacketIOParam * aExtractParam ) [private]

Parameters

TRtpPacketIOParam * aExtractParam

DoBuildSendRTCPReportIfNotSentL()

TBool DoBuildSendRTCPReportIfNotSentL ( ) [private]

DoBuildSendRTCPReportL()

void DoBuildSendRTCPReportL ( ) [private]

FindRtpRxStreamL()

TInt FindRtpRxStreamL ( ) [private]

FindRtpRxStreamSSRC(TRtpSSRC &)

void FindRtpRxStreamSSRC ( TRtpSSRC & aSSRC ) [protected]

Parameters

TRtpSSRC & aSSRC

FindStream(const TRtpId, TUint &)

TInt FindStream ( const TRtpId aMagicKey,
TUint & aStreamAddress
) [protected]

Parameters

const TRtpId aMagicKey
TUint & aStreamAddress

FindStream(const TRtpId, TUint &, TStreamType &)

TInt FindStream ( const TRtpId aMagicKey,
TUint & aStreamAddress,
TStreamType & aStreamType
) [private]

Parameters

const TRtpId aMagicKey
TUint & aStreamAddress
TStreamType & aStreamType

FindStreamForSSRC(TRtpSSRC)

TBool FindStreamForSSRC ( TRtpSSRC aSSRC ) [private]

Parameters

TRtpSSRC aSSRC

FindTxStreamForSSRC(TRtpSSRC, CRtpTranStream **)

TBool FindTxStreamForSSRC ( TRtpSSRC aSSRC,
CRtpTranStream ** streamPointerPointer
) [private]

Finds if a send stream is already using the given SSRC

Parameters

TRtpSSRC aSSRC the synchronisation source value
CRtpTranStream ** streamPointerPointer

GenerateSSRC()

TRtpSSRC GenerateSSRC ( ) [private]

GetRcvStreamByIndex(TInt)

CRtpRecvStream * GetRcvStreamByIndex ( TInt aIndex ) [private]

Parameters

TInt aIndex

GetRtcpSocket()

RSocket * GetRtcpSocket ( )

GetRtpSocket()

RSocket * GetRtpSocket ( )

GetSDESFromSDESData(TRtpSdesParams *, const CRtpRecvStream *, CRtpSDES *)

TInt GetSDESFromSDESData ( TRtpSdesParams * aTargetSdes,
const CRtpRecvStream * aRecvStream,
CRtpSDES * aSourceSdes
) [private]

Gets the SDES values from the data contained in an SDES section. Either aRecvStream or aSourceSdes is always NULL.

Parameters

TRtpSdesParams * aTargetSdes the SDES in which the data will be stored
const CRtpRecvStream * aRecvStream the stream that contains the SDES
CRtpSDES * aSourceSdes the SDES in which the data resides

GetSessionId()

TRtpId GetSessionId ( )

GetStreamStatistics(TRtpId, TRtpPeerStat &)

TInt GetStreamStatistics ( TRtpId aStreamId,
TRtpPeerStat & aStat
)

Parameters

TRtpId aStreamId
TRtpPeerStat & aStat

GetUniqueSSRC()

TRtpSSRC GetUniqueSSRC ( ) [private]

Logs the SDES data from the data contained in an SDES section.

InitialiseRtcp(const TRtcpParams *)

TInt InitialiseRtcp ( const TRtcpParams * aParams ) [private]

Parameters

const TRtcpParams * aParams

IsRtcpSendingSuspended(TBool &)

TInt IsRtcpSendingSuspended ( TBool & aAutoSending )

Gets the status of automatic RTCP sending.

Parameters

TBool & aAutoSending

IsSrtp()

TBool IsSrtp ( )

IssueRtcpRecv()

TInt IssueRtcpRecv ( ) [protected]

IssueRtpRecv()

TInt IssueRtpRecv ( ) [protected]

MatchSSRCToStream(TUint &, TRtpSSRC, TStreamType &)

TInt MatchSSRCToStream ( TUint & aRcvStreamAddress,
TRtpSSRC aSSRC,
TStreamType & aStreamType
) [private]

Parameters

TUint & aRcvStreamAddress
TRtpSSRC aSSRC
TStreamType & aStreamType

NewL(const TCreateSessionParams &, TUint &, TBool, const TRtcpParams *, RSocketServ &, RConnection &, const TRtpId, const CRtpSDES *, const TUint32 *, const TBool, const RLibrary &, MRtpErrNotify &, MRtpAsignUniqueID &)

CRtpSession * NewL ( const TCreateSessionParams & aParams,
TUint & aPort,
TBool aEnableRtcp,
const TRtcpParams * aRtcpParams,
RSocketServ & aSocketServ,
RConnection & aRConn,
const TRtpId aSessionId,
const CRtpSDES * aSdes,
const TUint32 * aProfileRTPTimeRates,
const TBool aStandardRtp,
const RLibrary & aLibrary,
MRtpErrNotify & aErrNotify,
MRtpAsignUniqueID & aAssignUniqueID
) [static]

Parameters

const TCreateSessionParams & aParams
TUint & aPort
TBool aEnableRtcp
const TRtcpParams * aRtcpParams
RSocketServ & aSocketServ
RConnection & aRConn
const TRtpId aSessionId
const CRtpSDES * aSdes
const TUint32 * aProfileRTPTimeRates
const TBool aStandardRtp
const RLibrary & aLibrary
MRtpErrNotify & aErrNotify
MRtpAsignUniqueID & aAssignUniqueID

NextRtcpInterval()

void NextRtcpInterval ( ) [private]

OnExpiredL(TInt)

void OnExpiredL ( TInt aStatus )

Parameters

TInt aStatus

OnPacketRejected(TPortType)

void OnPacketRejected ( TPortType aPort )

Parameters

TPortType aPort

OnReceptionError(TPortType, TInt)

void OnReceptionError ( TPortType aPort,
TInt aError
)

Parameters

TPortType aPort
TInt aError

OnRtcpReceivedL()

void OnRtcpReceivedL ( )

OnRtpReceivedL()

void OnRtpReceivedL ( )

ProcessAPPSectionL(TInt, TInt)

TRtpRtcpEnum ProcessAPPSectionL ( TInt aTotalPacketLen,
TInt aSubType
) [private]

Processes the APP section of an RTCP report.

Parameters

TInt aTotalPacketLen
TInt aSubType

ProcessBYESectionL()

TRtpRtcpEnum ProcessBYESectionL ( ) [private]

Processes the BYE section of an RTCP report.

ProcessOneRTCPReportSectionL(const TRtpPacketIOParam &, TRtpSSRC)

TRtpRtcpEnum ProcessOneRTCPReportSectionL ( const TRtpPacketIOParam & aExtractParam,
TRtpSSRC aSourceSSRC
) [private]

Launches the processing of individual sections of RTCP reports.

Parameters

const TRtpPacketIOParam & aExtractParam
TRtpSSRC aSourceSSRC The synchronisation source value of the sender

ProcessRRSectionL(TInt)

TRtpRtcpEnum ProcessRRSectionL ( TInt aSourceCount ) [private]

Processes the RR section of an RTCP report.

Parameters

TInt aSourceCount

ProcessRTCPReportL()

TRtpRtcpEnum ProcessRTCPReportL ( ) [private]

Processes an RTCP report.

ProcessSDESDataL(TRtpPacketStreamParam &, TRtpPacketIOParam &, TRtpSSRC)

TRtpRtcpEnum ProcessSDESDataL ( TRtpPacketStreamParam & aStreamParam,
TRtpPacketIOParam & aExtractParam,
TRtpSSRC aSourceSSRC
) [private]

Processes the data contained in an SDES section.

Parameters

TRtpPacketStreamParam & aStreamParam
TRtpPacketIOParam & aExtractParam
TRtpSSRC aSourceSSRC

ProcessSDESSectionL(TRtpSSRC)

TRtpRtcpEnum ProcessSDESSectionL ( TRtpSSRC aSourceSSRC ) [private]

Processes the SDES section of an RTCP report.

Parameters

TRtpSSRC aSourceSSRC

ProcessSRSectionL(TInt)

TRtpRtcpEnum ProcessSRSectionL ( TInt aSourceCount ) [private]

Processes the SR section of an RTCP report.

Parameters

TInt aSourceCount

Random()

TInt Random ( ) [private]

Random64()

TReal Random64 ( ) [private]

RcvStreamActive(TInt)

TBool RcvStreamActive ( TInt aIndex ) [private]

Parameters

TInt aIndex

RcvStreamReceivedRtpPacket(TInt)

TBool RcvStreamReceivedRtpPacket ( TInt aIndex ) [private]

Parameters

TInt aIndex

RedistributeBandwidth()

void RedistributeBandwidth ( ) [private]

RegisterRtcpObserver(MRtcpObserver &)

TInt RegisterRtcpObserver ( MRtcpObserver & aObserver )

Parameters

MRtcpObserver & aObserver

RegisterRtpObserver(MRtpObserver &)

TInt RegisterRtpObserver ( MRtpObserver & aObserver )

Parameters

MRtpObserver & aObserver

RemoveAllStreams()

void RemoveAllStreams ( ) [private]

RemoveSdesFromArray(TRtpSSRC)

TInt RemoveSdesFromArray ( TRtpSSRC aSSRC ) [private]

Parameters

TRtpSSRC aSSRC

RemoveStream(const TRtpId, TStreamType &)

TInt RemoveStream ( const TRtpId aMagicKey,
TStreamType & aStreamType
) [private]

Parameters

const TRtpId aMagicKey
TStreamType & aStreamType

ResetRxStreamStats()

void ResetRxStreamStats ( )

ResetTxStreamStats()

void ResetTxStreamStats ( )

ResumeRtcpSending()

TInt ResumeRtcpSending ( )

SSRC()

TRtpSSRC SSRC ( ) const

ScheduleRtcpSendL()

void ScheduleRtcpSendL ( ) [private]

SendData(TBool, const TDesC8 &, TRequestStatus &)

void SendData ( TBool aUseRTPSocket,
const TDesC8 & aData,
TRequestStatus & aStatus
)

Parameters

TBool aUseRTPSocket
const TDesC8 & aData
TRequestStatus & aStatus

SendRTCPByewithBanedSSRCL()

void SendRTCPByewithBanedSSRCL ( ) [private]

SendRTCPReport()

void SendRTCPReport ( ) [private]

SendRtcpAppPacketL(TRtpId, const TRtcpApp &)

TInt SendRtcpAppPacketL ( TRtpId aTranStreamId,
const TRtcpApp & aApp
)

Parameters

TRtpId aTranStreamId
const TRtcpApp & aApp

SendRtcpByePacketL(TRtpId, const TDesC8 &)

TInt SendRtcpByePacketL ( TRtpId aTranStreamId,
const TDesC8 & aReason
)

Parameters

TRtpId aTranStreamId
const TDesC8 & aReason

SendRtcpRrPacketL(TRtpId)

TInt SendRtcpRrPacketL ( TRtpId aRecvStreamId )

Parameters

TRtpId aRecvStreamId

SendRtcpSrPacketL(TRtpId)

TInt SendRtcpSrPacketL ( TRtpId aTranStreamId )

Parameters

TRtpId aTranStreamId

SendRtpPacket(TRtpId, const TRtpSendHeader &, const TDesC8 &)

TInt SendRtpPacket ( TRtpId aTranStreamId,
const TRtpSendHeader & aHeaderInfo,
const TDesC8 & aPayloadData
)

Parameters

TRtpId aTranStreamId
const TRtpSendHeader & aHeaderInfo
const TDesC8 & aPayloadData

SendRtpPacket(TRtpId, const TRtpSendHeader &, const TDesC8 &, TRequestStatus &)

TInt SendRtpPacket ( TRtpId aTranStreamId,
const TRtpSendHeader & aHeaderInfo,
const TDesC8 & aPayloadData,
TRequestStatus & aStatus
)

Parameters

TRtpId aTranStreamId
const TRtpSendHeader & aHeaderInfo
const TDesC8 & aPayloadData
TRequestStatus & aStatus

SendRtpPacket(const TRtpSendHeader &, const TDesC8 &)

TInt SendRtpPacket ( const TRtpSendHeader & aHeaderInfo,
const TDesC8 & aPayloadData
)

Parameters

const TRtpSendHeader & aHeaderInfo
const TDesC8 & aPayloadData

SendRtpPacket(const TRtpSendHeader &, const TDesC8 &, TRequestStatus &)

TInt SendRtpPacket ( const TRtpSendHeader & aHeaderInfo,
const TDesC8 & aPayloadData,
TRequestStatus & aStatus
)

Parameters

const TRtpSendHeader & aHeaderInfo
const TDesC8 & aPayloadData
TRequestStatus & aStatus

SendRtpPacket(TRtpId, TRtpSequence, const TRtpSendHeader &, const TDesC8 &, TRequestStatus &)

TInt SendRtpPacket ( TRtpId aTranStreamId,
TRtpSequence aSequenceNum,
const TRtpSendHeader & aHeaderInfo,
const TDesC8 & aPayloadData,
TRequestStatus & aStatus
)

Parameters

TRtpId aTranStreamId
TRtpSequence aSequenceNum
const TRtpSendHeader & aHeaderInfo
const TDesC8 & aPayloadData
TRequestStatus & aStatus

SendSRTCPReportL(TRtpSSRC)

void SendSRTCPReportL ( TRtpSSRC aSSRC ) [protected, virtual]

Parameters

TRtpSSRC aSSRC

SetNonRTPDataObserver(MNonRTPDataObserver *)

TInt SetNonRTPDataObserver ( MNonRTPDataObserver * aNonRTPDataObserver )

Parameters

MNonRTPDataObserver * aNonRTPDataObserver

SetParamsForFullRTCPReport(CRtpTranStream *, TRtpPacketStreamParam *, TRtpPacketIOParam *, TBool)

void SetParamsForFullRTCPReport ( CRtpTranStream * aTranStream,
TRtpPacketStreamParam * aStreamParam,
TRtpPacketIOParam * aInitParam,
TBool aRxActive
) [private]

Determines parameters before an RTCP report with SR (RR) and SDES sections is sent.

Parameters

CRtpTranStream * aTranStream The stream that will send the RTCP report
TRtpPacketStreamParam * aStreamParam pointer to the stream parameters
TRtpPacketIOParam * aInitParam pointer to the initialisation parameters
TBool aRxActive a list of active/not active streams

SetRemoteAddress(TInetAddr &)

TInt SetRemoteAddress ( TInetAddr & aRemoteAddr )

Parameters

TInetAddr & aRemoteAddr

SetRemoteRtcpAddress(TInetAddr &)

TInt SetRemoteRtcpAddress ( TInetAddr & aRemoteAddr )

Parameters

TInetAddr & aRemoteAddr

SetRtcpParameters(const TRtcpParams &)

TInt SetRtcpParameters ( const TRtcpParams & aRtcpParams )

Parameters

const TRtcpParams & aRtcpParams

ShouldBuildEmptyRR(CRtpTranStream *)

TBool ShouldBuildEmptyRR ( CRtpTranStream * aTempTranStream ) [private]

Parameters

CRtpTranStream * aTempTranStream

StartReceiveRtcpPacket()

void StartReceiveRtcpPacket ( ) [private]

StartSession()

TInt StartSession ( )

StopReceiveRtcpPacket()

void StopReceiveRtcpPacket ( ) [private]

StopRtcpSending()

TInt StopRtcpSending ( )

StreamSendAPPPacket()

TInt StreamSendAPPPacket ( ) [private]

StreamSendBYEPacket()

TInt StreamSendBYEPacket ( ) [private]

UnregisterRtcpObserver()

void UnregisterRtcpObserver ( )

UnregisterRtpObserver()

void UnregisterRtpObserver ( )

Member Enumerations Documentation

Enum anonymous

Enumerators

ECallBack
ETimeOut

Enum TStreamType

Enumerators

ETxStream = 0
ERxStream

Member Data Documentation

MRtpAsignUniqueID & iAssignUniqueID

MRtpAsignUniqueID & iAssignUniqueID [protected]

TReal iAverageRtcpSize

TReal iAverageRtcpSize [protected]

TUint iBandWidth

TUint iBandWidth [protected]

CRtpComm * iCommNet

CRtpComm * iCommNet [protected]

TRtpSSRC iDefaultSSRC

TRtpSSRC iDefaultSSRC [private]

MRtpErrNotify & iErrNotify

MRtpErrNotify & iErrNotify [protected]

TBool iFPortsInit

TBool iFPortsInit [protected]

TBool iFirstRTCPSent

TBool iFirstRTCPSent [protected]

TReal iFraction

TReal iFraction [protected]

TBool iIsSrtp

TBool iIsSrtp [protected]

const CRtpSDES * iLocalSdes

const CRtpSDES * iLocalSdes [private]

TRtpSdesParams * iNewSdes

TRtpSdesParams * iNewSdes [private]

MNonRTPDataObserver * iNonRTPDataObserver

MNonRTPDataObserver * iNonRTPDataObserver [protected]

TUint16 iNumOfRxStreams

TUint16 iNumOfRxStreams [protected]

TUint16 iNumOfTxStreams

TUint16 iNumOfTxStreams [protected]

MRtpPacketExt * iPktExtRcv

MRtpPacketExt * iPktExtRcv [protected]

MRtpPacketExt * iPktExtSnd

MRtpPacketExt * iPktExtSnd [protected]

CRtpPacket * iPktRcv

CRtpPacket * iPktRcv [protected]

CRtpPacket * iPktRtcpRcv

CRtpPacket * iPktRtcpRcv [protected]

CRtpPacket * iPktRtcpSnd

CRtpPacket * iPktRtcpSnd [protected]

CRtpPacket * iPktSnd

CRtpPacket * iPktSnd [protected]

const TUint32 * iProfileRTPTimeRates

const TUint32 * iProfileRTPTimeRates [protected]

TInetAddr iRemoteAddr

TInetAddr iRemoteAddr [private]

TBool iRemoteAddrSet

TBool iRemoteAddrSet [private]

TBool iRtcpEnabled

TBool iRtcpEnabled [protected]

TInt iRtcpErrors

TInt iRtcpErrors [protected]

MRtcpObserver * iRtcpObserver

MRtcpObserver * iRtcpObserver [protected]

TPtr8 iRtcpRecvBuf

TPtr8 iRtcpRecvBuf [protected]

TBool iRtcpSendingSuspended

TBool iRtcpSendingSuspended [protected]

TUint iRtcpTimeInterval

TUint iRtcpTimeInterval [protected]

MRtpObserver * iRtpObserver

MRtpObserver * iRtpObserver [protected]

TPtr8 iRtpRecvBuf

TPtr8 iRtpRecvBuf [protected]

RArray< TRtpSSRC > iRxSSRCArray

RArray < TRtpSSRC > iRxSSRCArray [protected]

TInt iSSRCJumps

TInt iSSRCJumps [protected]

CArrayPtrFlat< CRtpSDES > * iSdesArray

CArrayPtrFlat < CRtpSDES > * iSdesArray [protected]

TInt64 iSeed

TInt64 iSeed [protected]

TInt iSendSdesCounter

TInt iSendSdesCounter [private]

TRtpId iSessionId

TRtpId iSessionId [private]

TBool iSessionStarted

TBool iSessionStarted [protected]

CRtpTimer * iSndRtcpTimer

CRtpTimer * iSndRtcpTimer [protected]

TBool iStandardRtp

TBool iStandardRtp [private]

CArrayFixFlat< TStream > * iStreamRxArray

CArrayFixFlat < TStream > * iStreamRxArray [protected]

CArrayFixFlat< TStream > * iStreamTxArray

CArrayFixFlat < TStream > * iStreamTxArray [protected]

TUint iTotalParticipantsSession

TUint iTotalParticipantsSession [protected]