]> git.sesse.net Git - ffmpeg/blobdiff - libavformat/rtpenc_xiph.c
Make ff_rtsp_send_cmd_with_content_async static to rtsp.c.
[ffmpeg] / libavformat / rtpenc_xiph.c
index 4899abb13ed53a16fa65ca8f236abf2e03dc9ec5..57686326a8df84b51eb5c7f1f92c5422ddb447d4 100644 (file)
@@ -52,13 +52,13 @@ void ff_rtp_send_xiph(AVFormatContext *s1, const uint8_t *buff, int size)
         break;
     }
 
-    // Set ident. Must match the one in sdp.c
+    // Set ident.
     // Probably need a non-fixed way of generating
     // this, but it has to be done in SDP and passed in from there.
     q = s->buf;
-    *q++ = 0xfe;
-    *q++ = 0xcd;
-    *q++ = 0xba;
+    *q++ = (RTP_XIPH_IDENT >> 16) & 0xff;
+    *q++ = (RTP_XIPH_IDENT >>  8) & 0xff;
+    *q++ = (RTP_XIPH_IDENT      ) & 0xff;
 
     // set fragment
     // 0 - whole frame (possibly multiple frames)
@@ -68,12 +68,13 @@ void ff_rtp_send_xiph(AVFormatContext *s1, const uint8_t *buff, int size)
     frag = size <= max_pkt_size ? 0 : 1;
 
     if (!frag && !xdt) { // do we have a whole frame of raw data?
-        unsigned end_ptr = (unsigned)s->buf + 6 + max_pkt_size; // what we're allowed to write
-        unsigned ptr     = (unsigned)s->buf_ptr + 2 + size; // what we're going to write
+        uint8_t *end_ptr = s->buf + 6 + max_pkt_size; // what we're allowed to write
+        uint8_t *ptr     = s->buf_ptr + 2 + size; // what we're going to write
         int remaining    = end_ptr - ptr;
 
+        assert(s->num_frames <= s->max_frames_per_packet);
         if ((s->num_frames > 0 && remaining < 0) ||
-            s->num_frames >= s->max_frames_per_packet) {
+            s->num_frames == s->max_frames_per_packet) {
             // send previous packets now; no room for new data
             ff_rtp_send_data(s1, s->buf, s->buf_ptr - s->buf, 0);
             s->num_frames = 0;