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

"zhilizhao(赵志立)" quinkblack at foxmail.com
Fri Mar 25 12:18:29 EET 2022



> On Mar 25, 2022, at 5:13 PM, Kevin Wang <kevin at muxable.com> wrote:
> 
> 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;
>> --

LGTM.



More information about the ffmpeg-devel mailing list