aboutsummaryrefslogtreecommitdiffstats
path: root/libavformat/rtpenc_vp8.c
diff options
context:
space:
mode:
authorKevin Wang <kevmo314@gmail.com>2022-03-22 14:25:11 -0400
committerMartin Storsjö <martin@martin.st>2022-03-26 00:42:00 +0200
commit8ae15b565533944d042d3caf25f7262e002e8953 (patch)
tree639380f3dbed9bfe9da4bf6324f1afb5c5de648d /libavformat/rtpenc_vp8.c
parentaf6081273f483844fc055bc8623ec07198462c2a (diff)
downloadffmpeg-8ae15b565533944d042d3caf25f7262e002e8953.tar.gz
rtpenc_vp8: Use 15-bit PictureIDs
7-bit PictureIDs are not supported by WebRTC: https://groups.google.com/g/discuss-webrtc/c/333-L02vuWA In practice, 15-bit PictureIDs offer better compatibility. Signed-off-by: Kevin Wang <kevin@muxable.com> Signed-off-by: Martin Storsjö <martin@martin.st>
Diffstat (limited to 'libavformat/rtpenc_vp8.c')
-rw-r--r--libavformat/rtpenc_vp8.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libavformat/rtpenc_vp8.c b/libavformat/rtpenc_vp8.c
index 671d245758..655d44517e 100644
--- a/libavformat/rtpenc_vp8.c
+++ b/libavformat/rtpenc_vp8.c
@@ -35,7 +35,8 @@ void ff_rtp_send_vp8(AVFormatContext *s1, const uint8_t *buf, int size)
// partition id 0
*s->buf_ptr++ = 0x90;
*s->buf_ptr++ = 0x80; // Picture id present
- *s->buf_ptr++ = s->frame_count++ & 0x7f;
+ *s->buf_ptr++ = ((s->frame_count & 0x7f00) >> 8) | 0x80;
+ *s->buf_ptr++ = s->frame_count++ & 0xff;
// Calculate the number of remaining bytes
header_size = s->buf_ptr - s->buf;
max_packet_size = s->max_payload_size - header_size;