[Libav-user] Why does av_seek_frame() not seek to a keyframe?
Carl Eugen Hoyos
cehoyos at ag.or.at
Thu Jul 19 08:31:35 CEST 2012
Hendrik Leppkes <h.leppkes at ...> writes:
> On Thu, Jul 19, 2012 at 8:18 AM, Carl Eugen Hoyos wrote:
> Michael Bradshaw <mbradshaw <at> ...> writes:
> > But when I seek, the first packet returned out of the demuxer is
> > not a keyframe packet, and I have to read several (~45ish) packets
> > until I encounter a keyframe.
>
> Could you provide a sample that does not seek to a keyframe with
> ffmpeg -ss x -i input out.png
> (I tested this yesterday on random mpeg2video samples and afaict,
> it did work.)
>
> This test is somewhat meaningless because it'll skip
> non-keyframes in the decoder until it finds one.
Isn't this necessary for some codecs / at least for H264? Wouldn't
the API do exactly the same?
> But the idea is to ensure that you can decode as of time X,
> which means you need to seek to the last keyframe *before*
> time X, which is something that is not supported currently.
I see.
(But am I wrong to assume that this is not generally possible,
assuming large GOPs?)
Carl Eugen
More information about the Libav-user
mailing list