[gst-devel] Re: [Ffmpeg-devel] Re: Patch for fixing gst-ffmpeg
bilboed at gmail.com
Tue Jan 10 01:49:02 CET 2006
On 1/10/06, Loren Merritt <lorenm at u.washington.edu> wrote:
> On Tue, 10 Jan 2006, Fabrizio Gennari wrote:
> >> Your patch will break situation #1 while fixing situation #2. Do I have
> >> that right?
> > No, because the patch does not break situation #1. It simply does the same as
> > other decoders (e.g. bmp.c, cljr.c) do: mark all decoded frames as I frames.
> > That's correct in the sense that a decoded frame can be displayed without the
> > need of knowing previous frames.
> That's not what the variable means. All frames from any codec can be
> displayed after they're decoded, there would be no information there.
> FFmpeg marks frames by the type they had in the compressed bitstream,
> which is useful to know e.g. for post-processing.
Indeed, if avcodec_decode_video() returns a value > 0, something was
decoded... BUT there's no guarantee as to whether it is garbage or a
"nice" video frame. And this is a pain if you want to crop some parts
of the video, or if you're seeking to a given point in the video.
Ergo, with gst-ffmpeg we want to make sure the ffmpeg decoder
received enough data (keyframes, B-frames(if needed) and subsequent P
frames) in order to output a properly decoded video frame for the
requested time. Of course, we could guarantee that by sending all the
encoded frames from the beginning of the file... but that wouldn't
efficient AT ALL !
I already submitted a patch for the dv decoder in ffmpeg some time
ago because it wasn't behaving that way, and it wasn't a problem to
include it. So I guess we'll have to have the hack they're currently
is in gst-ffmpeg but at the same time submit patches to ffmpeg so that
issue get's fixed upstream.
> --Loren Merritt
> This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
> for problems? Stop! Download the new AJAX search engine that makes
> searching your log files as easy as surfing the web. DOWNLOAD SPLUNK!
> gstreamer-devel mailing list
> gstreamer-devel at lists.sourceforge.net
Junior developer / Fluendo S.L.
More information about the gstreamer-devel