[FFmpeg-devel] [PATCH] H.264 I-frames with SEI are also key frames
Thu Mar 5 23:01:39 CET 2009
--- On Thu, 5/3/09, Ivan Schreter <schreter at gmx.net> wrote:
> From: Ivan Schreter <schreter at gmx.net>
> Subject: Re: [FFmpeg-devel] [PATCH] H.264 I-frames with SEI are also key frames
> To: "FFmpeg development discussions and patches" <ffmpeg-devel at mplayerhq.hu>
> Date: Thursday, 5 March, 2009, 9:32 PM
> madshi wrote:
> > Ivan Schreter schrieb:
> >> Hi,
> >> I just found out that my new seeking code doesn't work with AVCHD
> >> files from a Canon camcorder. The reason being, no key frames are
> >> detected (except first IDR slice), since this camcorder doesn't store
> >> SEI recovery point. In this case, I-slices are taken as key frames.
> >> So I'm afraid, we need to consider I-slice as a key frame, even if
> >> recovery point is not set (see attached patch).
> >> BTW, as we already discussed with Michael, convergence handling needs
> >> to be cleaned up anyway, since H.264 does it a little differently than
> >> originally thought.
> >> Regards,
> >> Ivan
> > Would it make sense to consider I-slices as key frames only
> > if no SEI recovery points are in the stream? Or in other
> > words: As soon as you find a recovery point, you might no
> > longer want to treat every I-slice as a key frame in that
> > particular stream.
> > Just a suggestion...
> It is a possibility, yes.
> Michael: What do you think?
Also have a look at how Donald Graft does it for DGAVCIndex, if I remember correctly there was no way *at the time* to do such a thing because of the way different camera manufacturers do the recording, so he just added a switch that does "Treat I-frames as key frames". Maybe that would be a better way of doing it than forcing I-frames as key frames by default.
More information about the ffmpeg-devel