ipappprotocols_plat/rtprtcp_api/inc/rtpapi.h
branchRCL_3
changeset 43 b5e99d8877c7
parent 0 307788aac0a8
child 30 d7640adb246b
--- a/ipappprotocols_plat/rtprtcp_api/inc/rtpapi.h	Thu Aug 19 10:16:25 2010 +0300
+++ b/ipappprotocols_plat/rtprtcp_api/inc/rtpapi.h	Tue Aug 31 15:32:57 2010 +0300
@@ -334,7 +334,15 @@
                                      const TRtpSendHeader& aHeaderInfo,
                                      const TDesC8& aPayloadData,
                                      TRequestStatus& aStatus );
-
+       
+        /**
+        * Send an RTP data packet, with a given CSRC list.
+        * @param aHeaderInfo - [input] TRtpSendPktParam and CSRC list.
+        * @return KErrNone if successful; system wide error code otherwise
+        */
+        IMPORT_C TInt SendRtpPacket( const TRtpSendPktParams&  aSendPktParam, 
+                                     TArray<TRtpCSRC>   aCSRCList);
+ 
 
         /**
         * Send a non-RTP (control) data packet asynchronously
@@ -533,8 +541,30 @@
         * @return KErrNone.
         */
         IMPORT_C TInt NotInUseSetNonRTPDataObserver( );
-                                    
-
+        
+        
+        /**
+        * Register a callback object for Send RTP data packets from an RTP
+        * Session. Only one Sender callback object is allowed to be
+        * registered for one Session.
+        * MRTPPacketObserver::ReadyToSendRtpPacket function from aRtpObserver object is
+        * called when an RTP data packet is received.
+        * @param aSessionId - [input] RTP Session ID
+        * @param aRtpObserver - [input] Callback object to receive RTP packets
+        * @return KErrNone if successful; system wide error code otherwise
+        */
+        IMPORT_C TInt RegisterRtpPostProcessingObserver( TRtpId aSessionId,
+                MRtpPostProcessingObserver& aRtpObserver );
+        
+        
+        /**
+        * Unregister RTP Packet observer callback object associated with an RTP
+        * session.
+        * @param aSessionId - [input] RTP Session ID
+        * @return None
+        */
+        IMPORT_C void UnregisterRtpPostProcessingObserver( TRtpId aSessionId );
+        
     private:
         /**
         * C++ default constructor.