[FFmpeg-cvslog] rtp: Update the check for distinguishing between RTP and RTCP

Martin Storsjö git at videolan.org
Fri Oct 19 14:10:06 CEST 2012


ffmpeg | branch: master | Martin Storsjö <martin at martin.st> | Wed Oct 17 01:45:39 2012 +0300| [0de9380be54e9ccf49631a93f49cff8b8329ec54] | committer: Martin Storsjö

rtp: Update the check for distinguishing between RTP and RTCP

Also add enums for more RTCP packet types, according to the IANA
list of registered types.

Signed-off-by: Martin Storsjö <martin at martin.st>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=0de9380be54e9ccf49631a93f49cff8b8329ec54
---

 libavformat/rtp.h |   15 +++++++++++++--
 1 file changed, 13 insertions(+), 2 deletions(-)

diff --git a/libavformat/rtp.h b/libavformat/rtp.h
index b01caeb..6df4ed4 100644
--- a/libavformat/rtp.h
+++ b/libavformat/rtp.h
@@ -84,13 +84,24 @@ enum AVCodecID ff_rtp_codec_id(const char *buf, enum AVMediaType codec_type);
 
 /* RTCP packet types */
 enum RTCPType {
+    RTCP_FIR    = 192,
+    RTCP_NACK, // 193
+    RTCP_SMPTETC,// 194
+    RTCP_IJ,   // 195
     RTCP_SR     = 200,
     RTCP_RR,   // 201
     RTCP_SDES, // 202
     RTCP_BYE,  // 203
-    RTCP_APP   // 204
+    RTCP_APP,  // 204
+    RTCP_RTPFB,// 205
+    RTCP_PSFB, // 206
+    RTCP_XR,   // 207
+    RTCP_AVB,  // 208
+    RTCP_RSI,  // 209
+    RTCP_TOKEN,// 210
 };
 
-#define RTP_PT_IS_RTCP(x) ((x) >= RTCP_SR && (x) <= RTCP_APP)
+#define RTP_PT_IS_RTCP(x) (((x) >= RTCP_FIR && (x) <= RTCP_IJ) || \
+                           ((x) >= RTCP_SR  && (x) <= RTCP_TOKEN))
 
 #endif /* AVFORMAT_RTP_H */



More information about the ffmpeg-cvslog mailing list