[FFmpeg-trac] #10755(avformat:new): av_seek_frame on ogg with png stream abort()s
FFmpeg
trac at avcodec.org
Fri Dec 22 19:02:12 EET 2023
#10755: av_seek_frame on ogg with png stream abort()s
--------------------------------+------------------------------------
Reporter: doeme | Owner: (none)
Type: defect | Status: new
Priority: normal | Component: avformat
Version: 6.0 | Resolution:
Keywords: ogg | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
--------------------------------+------------------------------------
Description changed by doeme:
Old description:
> I have a (potentially corrupt?) ogg file which contains an audio stream
> (vorbis) and a single static cover image (png).
> "avformat_find_stream_info" finds two streams, 0 => vorbis, 1 => png,
> however, if I try to seek in this file with "av_seek_frame" with
> stream_index = 1 (the png stream) libav abort()s due to stream_index >=
> nstreams in oggdec.c
> (https://git.ffmpeg.org/gitweb/ffmpeg.git/blob/46775e64f8b34f5e4d09df8458654f9f50626c4b:/libavformat/oggdec.c#l937).
>
> How to reproduce:
>
> Build the attached sample program, and run it on the sample.
> Essentially, this only verifies that the stream with index 1 exists, and
> then tries to av_seek_frame() with all possible streams as time base,
> where the png stream 1 causes an abort()
New description:
I have a (potentially corrupt?) ogg file which contains an audio stream
(vorbis) and a single static cover image (png).
"avformat_find_stream_info" finds two streams, 0 => vorbis, 1 => png,
however, if I try to seek in this file with "av_seek_frame" with
stream_index = 1 (the png stream) libav abort()s due to stream_index >=
nstreams in oggdec.c
(https://git.ffmpeg.org/gitweb/ffmpeg.git/blob/46775e64f8b34f5e4d09df8458654f9f50626c4b:/libavformat/oggdec.c#l937).
How to reproduce:
Build the attached sample program, and run it on the sample.
{{{
gcc `pkg-config --cflags --libs libavformat libavcodec libavutil` ogg-png-
stream.c -o ogg-png-stream
./ogg-png-stream bug-ogg-pngstream-avseek-abort.ogg
}}}
Essentially, this only verifies that the stream with index 1 exists, and
then tries to av_seek_frame() with all possible streams as time base,
where the png stream 1 causes an abort()
--
--
Ticket URL: <https://trac.ffmpeg.org/ticket/10755#comment:1>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list