CRtpSession Class Reference
class CRtpSession : public CBase |
class for rtp session.
RtpService.dll
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() |
Constructor & Destructor Documentation
CRtpSession(const TRtpId, const TUint32 *, const TBool, MRtpErrNotify &, const CRtpSDES *, MRtpAsignUniqueID &)
Member Functions Documentation
AddSdesToArrayL(TUint &, TRtpPacketIOParam *)
AddStream(const TStream, TStreamType)
AnyRcvStreamReceivedRtpPacket()
TBool
| AnyRcvStreamReceivedRtpPacket | ( | ) | [private] |
AssignRtpRxStreamL()
TInt
| AssignRtpRxStreamL | ( | ) | [private] |
AverageRtcpSize(TUint)
void | AverageRtcpSize | ( | TUint | aRtcpReportSize | ) | [protected] |
BuildEmptyRr(CRtpTranStream *)
BuildRTCPReport(CRtpTranStream *, TInt)
BuildRrSection(TInt, TBool, TInt)
void | BuildRrSection | ( | TInt | aNumRcvStreams, |
| TBool | aRxActive, |
| TInt | aLastReport |
| ) | [private] |
BuildSdesSection(CRtpTranStream *)
BuildSendRTCPReportL()
void | BuildSendRTCPReportL | ( | ) | [private] |
BuildSrSection(CRtpTranStream *)
CheckRemoteSsrcL(TRtpSSRC &)
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.
CheckifBanded()
TBool
| CheckifBanded | ( | ) | [private] |
CloseStream(TRtpId)
void | CloseStream | ( | TRtpId | aStreamId | ) | |
CompareAndUpdateSdes(CRtpSDES *, TRtpPacketIOParam *, TBool)
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 &)
CreateNewRecvStreamL()
void | CreateNewRecvStreamL | ( | ) | [private] |
CreateReceiveStreamL(TRtpId, const TRtpPayloadType)
CreateSDES(TInt, TRtpSSRC)
CreateTransmitStreamExtL(TRtpId, const TRtpPayloadType, const TUint32)
CreateTransmitStreamL(TRtpId, const TRtpPayloadType, TUint32 &)
DeallocateMemoryForSdes(TRtpPacketIOParam *)
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 *)
DoBuildSendRTCPReportIfNotSentL()
TBool
| DoBuildSendRTCPReportIfNotSentL | ( | ) | [private] |
DoBuildSendRTCPReportL()
void | DoBuildSendRTCPReportL | ( | ) | [private] |
FindRtpRxStreamL()
TInt
| FindRtpRxStreamL | ( | ) | [private] |
FindRtpRxStreamSSRC(TRtpSSRC &)
void | FindRtpRxStreamSSRC | ( | TRtpSSRC & | aSSRC | ) | [protected] |
FindStream(const TRtpId, TUint &)
FindStream(const TRtpId, TUint &, TStreamType &)
FindStreamForSSRC(TRtpSSRC)
FindTxStreamForSSRC(TRtpSSRC, CRtpTranStream **)
Finds if a send stream is already using the given SSRC
GetRcvStreamByIndex(TInt)
GetSDESFromSDESData(TRtpSdesParams *, const CRtpRecvStream *, CRtpSDES *)
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 |
GetStreamStatistics(TRtpId, TRtpPeerStat &)
GetUniqueSSRC()
Logs the SDES data from the data contained in an SDES section.
InitialiseRtcp(const TRtcpParams *)
IsRtcpSendingSuspended(TBool &)
TInt
| IsRtcpSendingSuspended | ( | TBool & | aAutoSending | ) | |
Gets the status of automatic RTCP sending.
IssueRtcpRecv()
TInt
| IssueRtcpRecv | ( | ) | [protected] |
IssueRtpRecv()
TInt
| IssueRtpRecv | ( | ) | [protected] |
MatchSSRCToStream(TUint &, TRtpSSRC, TStreamType &)
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] |
NextRtcpInterval()
void | NextRtcpInterval | ( | ) | [private] |
OnExpiredL(TInt)
void | OnExpiredL | ( | TInt | aStatus | ) | |
OnPacketRejected(TPortType)
OnReceptionError(TPortType, TInt)
ProcessAPPSectionL(TInt, TInt)
Processes the APP section of an RTCP report.
ProcessBYESectionL()
Processes the BYE section of an RTCP report.
ProcessOneRTCPReportSectionL(const TRtpPacketIOParam &, TRtpSSRC)
Launches the processing of individual sections of RTCP reports.
ProcessRRSectionL(TInt)
Processes the RR section of an RTCP report.
ProcessRTCPReportL()
Processes an RTCP report.
ProcessSDESDataL(TRtpPacketStreamParam &, TRtpPacketIOParam &, TRtpSSRC)
Processes the data contained in an SDES section.
ProcessSDESSectionL(TRtpSSRC)
Processes the SDES section of an RTCP report.
ProcessSRSectionL(TInt)
Processes the SR section of an RTCP report.
Random64()
TReal
| Random64 | ( | ) | [private] |
RcvStreamReceivedRtpPacket(TInt)
TBool
| RcvStreamReceivedRtpPacket | ( | TInt | aIndex | ) | [private] |
RedistributeBandwidth()
void | RedistributeBandwidth | ( | ) | [private] |
RegisterRtcpObserver(MRtcpObserver &)
RegisterRtpObserver(MRtpObserver &)
RemoveAllStreams()
void | RemoveAllStreams | ( | ) | [private] |
RemoveSdesFromArray(TRtpSSRC)
RemoveStream(const TRtpId, TStreamType &)
ScheduleRtcpSendL()
void | ScheduleRtcpSendL | ( | ) | [private] |
SendData(TBool, const TDesC8 &, TRequestStatus &)
SendRTCPByewithBanedSSRCL()
void | SendRTCPByewithBanedSSRCL | ( | ) | [private] |
SendRTCPReport()
void | SendRTCPReport | ( | ) | [private] |
SendRtcpAppPacketL(TRtpId, const TRtcpApp &)
SendRtcpByePacketL(TRtpId, const TDesC8 &)
SendRtcpRrPacketL(TRtpId)
SendRtcpSrPacketL(TRtpId)
SendRtpPacket(TRtpId, const TRtpSendHeader &, const TDesC8 &)
SendRtpPacket(TRtpId, const TRtpSendHeader &, const TDesC8 &, TRequestStatus &)
SendRtpPacket(const TRtpSendHeader &, const TDesC8 &)
SendRtpPacket(const TRtpSendHeader &, const TDesC8 &, TRequestStatus &)
SendRtpPacket(TRtpId, TRtpSequence, const TRtpSendHeader &, const TDesC8 &, TRequestStatus &)
SendSRTCPReportL(TRtpSSRC)
void | SendSRTCPReportL | ( | TRtpSSRC | aSSRC | ) | [protected, virtual] |
SetNonRTPDataObserver(MNonRTPDataObserver *)
SetParamsForFullRTCPReport(CRtpTranStream *, TRtpPacketStreamParam *, TRtpPacketIOParam *, TBool)
Determines parameters before an RTCP report with SR (RR) and SDES sections is sent.
SetRemoteAddress(TInetAddr &)
SetRemoteRtcpAddress(TInetAddr &)
SetRtcpParameters(const TRtcpParams &)
ShouldBuildEmptyRR(CRtpTranStream *)
StartReceiveRtcpPacket()
void | StartReceiveRtcpPacket | ( | ) | [private] |
StopReceiveRtcpPacket()
void | StopReceiveRtcpPacket | ( | ) | [private] |
StreamSendAPPPacket()
TInt
| StreamSendAPPPacket | ( | ) | [private] |
StreamSendBYEPacket()
TInt
| StreamSendBYEPacket | ( | ) | [private] |
UnregisterRtcpObserver()
void | UnregisterRtcpObserver | ( | ) | |
UnregisterRtpObserver()
void | UnregisterRtpObserver | ( | ) | |
Member Enumerations Documentation
Member Data Documentation
MRtpAsignUniqueID & iAssignUniqueID
TReal
iAverageRtcpSize
TReal
| iAverageRtcpSize | [protected] |
TUint
iBandWidth
TUint
| iBandWidth | [protected] |
MRtpErrNotify & iErrNotify
TBool
iFPortsInit
TBool
| iFPortsInit | [protected] |
TBool
iFirstRTCPSent
TBool
| iFirstRTCPSent | [protected] |
TReal
iFraction
TReal
| iFraction | [protected] |
const CRtpSDES * iLocalSdes
TRtpSdesParams * iNewSdes
MNonRTPDataObserver * iNonRTPDataObserver
MRtpPacketExt * iPktExtRcv
MRtpPacketExt * iPktExtSnd
const TUint32 * iProfileRTPTimeRates
const TUint32 * | iProfileRTPTimeRates | [protected] |
TBool
iRemoteAddrSet
TBool
| iRemoteAddrSet | [private] |
TBool
iRtcpEnabled
TBool
| iRtcpEnabled | [protected] |
TInt
iRtcpErrors
TInt
| iRtcpErrors | [protected] |
MRtcpObserver * iRtcpObserver
TPtr8
iRtcpRecvBuf
TPtr8
| iRtcpRecvBuf | [protected] |
TBool
iRtcpSendingSuspended
TBool
| iRtcpSendingSuspended | [protected] |
TUint
iRtcpTimeInterval
TUint
| iRtcpTimeInterval | [protected] |
MRtpObserver * iRtpObserver
TPtr8
iRtpRecvBuf
TPtr8
| iRtpRecvBuf | [protected] |
RArray< TRtpSSRC > iRxSSRCArray
TInt
iSSRCJumps
TInt
| iSSRCJumps | [protected] |
CArrayPtrFlat< CRtpSDES > * iSdesArray
TInt
iSendSdesCounter
TInt
| iSendSdesCounter | [private] |
TBool
iSessionStarted
TBool
| iSessionStarted | [protected] |
CRtpTimer * iSndRtcpTimer
TBool
iStandardRtp
TBool
| iStandardRtp | [private] |
CArrayFixFlat< TStream > * iStreamRxArray
CArrayFixFlat< TStream > * iStreamTxArray
TUint
iTotalParticipantsSession
TUint
| iTotalParticipantsSession | [protected] |
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.