[FFmpeg-devel] rtpdec.c: AXIS 7401 RTCP RR Keep Alive SSRC

Edward Patton epatton
Wed Jul 22 22:35:41 CEST 2009


I made this change to prevent the AXIS 7401 video server from timing out when sending H264 RTP streamed video. It appears the AXIS ignores the clients SSRC when it is the same as the servers SSRC. I fixed the client SSRC, but its supposed to be a random value (but fixed for the session). Furthermore, the code should really check to see if the client/server's SSRC's match and then select a new one. For our application, it seems to work OK with a fixed SSRC.

This change may be at least better than what is currently in the code base. Should it be a patch?

Index: rtpdec.c
--- rtpdec.c??? (revision 19392)
+++ rtpdec.c??? (working copy)

@@ -207,8 +202,10 @@
???? put_byte(pb, (RTP_VERSION << 6) + 1); /* 1 report block */
???? put_byte(pb, 201);
???? put_be16(pb, 7); /* length in words - 1 */
-??? put_be32(pb, s->ssrc); // our own SSRC
-??? put_be32(pb, s->ssrc); // XXX: should be the server's here!
+??? put_be32(pb, 0x12345678); // Fix SSRC (but should be randomly chosen but then fixed for session).
+??? put_be32(pb, s->ssrc); // XXX: should be the server's here! 
???? // some placeholders we should really fill...
???? // RFC 1889/p64
???? extended_max= stats->cycles + stats->max_seq;


More information about the ffmpeg-devel mailing list