[FFmpeg-devel] [PATCH v2] lavc/hevc_ps: fix process failed when SPS before VPS in hvcC

wangyaqiang 1035567130 at qq.com
Tue Sep 27 15:20:18 EEST 2022



> 2022年9月27日 04:21,Michael Niedermayer <michael at niedermayer.cc> 写道:
> 
> On Mon, Sep 26, 2022 at 05:38:14PM +0800, 1035567130 at qq.com wrote:
>> From: Wang Yaqiang <wangyaqiang03 at kuaishou.com>
>> 
>> In some videos, SPS will be stored before VPS in hvcC box,
>> parse SPS does not depend on VPS, so the video is expected to be processed normally.
>> Added "parsed_vps" parameter to indicate whether VPS have been parsed.
>> Only VPS have been parsed can be verified during SPS parsing.
>> 
>> Signed-off-by: Wang Yaqiang <wangyaqiang03 at kuaishou.com>
>> ---
>> libavcodec/hevc_ps.c | 3 +--
>> 1 file changed, 1 insertion(+), 2 deletions(-)
> 
> This causes segfaults
> 
> ==816== Invalid read of size 8
> ==816==    at 0xFAF178: hevc_parse (in ffmpeg_g)
> ==816==    by 0xA7A2A6: av_parser_parse2 (in ffmpeg_g)
> ==816==    by 0x5FC388: parse_packet (in ffmpeg_g)
> ==816==    by 0x5FDC5D: read_frame_internal (in ffmpeg_g)
> ==816==    by 0x5FFA10: avformat_find_stream_info (in ffmpeg_g)
> ==816==    by 0x2F6054: open_input_file (in ffmpeg_g)
> ==816==    by 0x2FC6AB: ffmpeg_parse_options (in ffmpeg_g)
> ==816==    by 0x2E8A34: main (in ffmpeg_g)
> ==816==  Address 0x8 is not stack'd, malloc'd or (recently) free'd
> 
> 
> [...]
> 

This is a serious problem, but I haven't occur it. Could you please provide with test materials or test methods? Thanks

> -- 
> Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
> 
> When the tyrant has disposed of foreign enemies by conquest or treaty, and
> there is nothing more to fear from them, then he is always stirring up
> some war or other, in order that the people may require a leader. -- Plato
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> 
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".



More information about the ffmpeg-devel mailing list