[FFmpeg-devel] [PATCH] rtpenc_vp8: Use 15-bit PictureIDs

Kevin Wang kevin at muxable.com
Fri Mar 25 11:13:16 EET 2022


Hi, ping on this patch? It's quite simple, happy to answer any questions.

On Tue, Mar 22, 2022 at 2:25 PM <kevin at muxable.com> wrote:

> From: Kevin Wang <kevmo314 at gmail.com>
>
> 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 at muxable.com>
> ---
>  libavformat/rtpenc_vp8.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> 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;
> --
> 2.34.1
>
>


More information about the ffmpeg-devel mailing list