diff -r 4816d766a08a -r f345bda72bc4 Symbian3/PDK/Source/GUID-0ACAFB87-0D45-5BAA-B40A-9A7DC1646B01.dita --- a/Symbian3/PDK/Source/GUID-0ACAFB87-0D45-5BAA-B40A-9A7DC1646B01.dita Tue Mar 30 11:42:04 2010 +0100 +++ b/Symbian3/PDK/Source/GUID-0ACAFB87-0D45-5BAA-B40A-9A7DC1646B01.dita Tue Mar 30 11:56:28 2010 +0100 @@ -1,85 +1,85 @@ - - - - - -Managing -the RTCP packets and reports -

This section describes how to send various types of RTCP packets, set the -stream parameters, get stream statistics and close the session.

-
Sending various -RTCP packets

To automatically send SR, RR, or SDES packets, call RRtpSession::SetRTCPAutoSend() with -its paramter set to ETrue. For more information about these packets, see Managing -send and receive reports.

session.SetRTCPAutoSend(ETrue); -

Set the RTCP auto-send time interval in microseconds by calling RRtpSession::SetRtcpInterval().

session.SetRtcpInterval(1000); -

If auto-sending is set to EFalse, call RRtpSession::SendRTCPPacketL() to -send a packet.

//aPacket is a valid RTCP packet session.SendRTCPPacketL(aPacket); -

For more information, see the definition of TRtpSendPacketType. -

Call RRtpSession::SendAppL() to send an APP packet.

For -an SDES RTP packet, call RRtpSession::SetSDESL() to set -the SDES details such as CNAME, NAME, PHONE, EMAIL and so on. You must set -these details before the packet is sent. The CNAME must be unique for an RTP -session. RRtpSession::GetSDES() enables you to fetch -the data associated with the specified SDES item.

You can set the -data associated with a PRIV (Private Extensions) SDES item by calling RRtpSession::SetPRIVL(). - PRIV (Private Extensions) SDES is not supported. Call RRtpSession::ByeL() to -send an RTCP Bye packet.

-
Setting the stream parameters

The SetRtpStreamParameters() method -sets the following stream parameters:

    -
  • maximum number of sequential -packets that must be received for a good stream.

  • -
  • maximum number of dropped -packets to be considered a dropout.

  • -
  • maximum number of packets -by which a packet can be delayed to be considered as dropped.

  • -
SetRtpStreamParameters(1,100,3000);// set MinSequential, MaxMisorder & MaxDropout
-
Getting the stream statistics

The RRtpSession::RtcpStatistics() method -provides sending and receiving statistics about the current active RTP session. -The statistics depend on the contents of the latest Sender Report (SR) packets -and Receiver Report (RR) packets. The returned TRtcpStatistics structure -contains the following statistics:

- - - -Direction -Statistic - - - - -

Sending

-

Total number of packets sent from the beginning of the RTP session -to the latest SR.

-
- -

Total number of payload octets sent from the beginning of the RTP -session to the latest SR.

-
- -

Receiving

-

Inter-arrival jitter.

-
- -

Total number of packets lost since the beginning of the RTP session.

-
- -

Fraction of packets lost since the previous SR or RR.

-
- - -

For more information about these statistics, see the RTP standard -in RFC 3550.

-
Closing a session

Close() closes -the RTP session. All the send and receive streams are disconnected after this -call.

session.Close(); -delete session;
-
See also

Types -of RTCP packets

Creating -and Managing an RTP session

+ + + + + +Managing +the RTCP packets and reports +

This section describes how to send various types of RTCP packets, set the +stream parameters, get stream statistics and close the session.

+
Sending various +RTCP packets

To automatically send SR, RR, or SDES packets, call RRtpSession::SetRTCPAutoSend() with +its paramter set to ETrue. For more information about these packets, see Managing +send and receive reports.

session.SetRTCPAutoSend(ETrue); +

Set the RTCP auto-send time interval in microseconds by calling RRtpSession::SetRtcpInterval().

session.SetRtcpInterval(1000); +

If auto-sending is set to EFalse, call RRtpSession::SendRTCPPacketL() to +send a packet.

//aPacket is a valid RTCP packet session.SendRTCPPacketL(aPacket); +

For more information, see the definition of TRtpSendPacketType. +

Call RRtpSession::SendAppL() to send an APP packet.

For +an SDES RTP packet, call RRtpSession::SetSDESL() to set +the SDES details such as CNAME, NAME, PHONE, EMAIL and so on. You must set +these details before the packet is sent. The CNAME must be unique for an RTP +session. RRtpSession::GetSDES() enables you to fetch +the data associated with the specified SDES item.

You can set the +data associated with a PRIV (Private Extensions) SDES item by calling RRtpSession::SetPRIVL(). + PRIV (Private Extensions) SDES is not supported. Call RRtpSession::ByeL() to +send an RTCP Bye packet.

+
Setting the stream parameters

The SetRtpStreamParameters() method +sets the following stream parameters:

    +
  • maximum number of sequential +packets that must be received for a good stream.

  • +
  • maximum number of dropped +packets to be considered a dropout.

  • +
  • maximum number of packets +by which a packet can be delayed to be considered as dropped.

  • +
SetRtpStreamParameters(1,100,3000);// set MinSequential, MaxMisorder & MaxDropout
+
Getting the stream statistics

The RRtpSession::RtcpStatistics() method +provides sending and receiving statistics about the current active RTP session. +The statistics depend on the contents of the latest Sender Report (SR) packets +and Receiver Report (RR) packets. The returned TRtcpStatistics structure +contains the following statistics:

+ + + +Direction +Statistic + + + + +

Sending

+

Total number of packets sent from the beginning of the RTP session +to the latest SR.

+
+ +

Total number of payload octets sent from the beginning of the RTP +session to the latest SR.

+
+ +

Receiving

+

Inter-arrival jitter.

+
+ +

Total number of packets lost since the beginning of the RTP session.

+
+ +

Fraction of packets lost since the previous SR or RR.

+
+ + +

For more information about these statistics, see the RTP standard +in RFC 3550.

+
Closing a session

Close() closes +the RTP session. All the send and receive streams are disconnected after this +call.

session.Close(); +delete session;
+
See also

Types +of RTCP packets

Creating +and Managing an RTP session

\ No newline at end of file