[gst-devel] Deinterlaced video seeking
gregory.petrosyan at gmail.com
Fri Apr 23 21:55:23 CEST 2010
2010/4/22 Sebastian Dröge <sebastian.droege at collabora.co.uk>:
> On Thu, 2010-04-22 at 18:54 +0400, Gregory Petrosyan wrote:
>> 2010/4/22 Sebastian Dröge <sebastian.droege at collabora.co.uk>:
>> > On Thu, 2010-04-22 at 16:20 +0200, Edward Hervey wrote:
>> >> On Thu, 2010-04-22 at 17:33 +0400, Gregory Petrosyan wrote:
>> >> > I am building an application that should be able to show interlaced 25
>> >> > fps DV video as deinterlaced 50 fps one. I have no problem using
>> >> > "deinterlace" component, and gst-inspect shows that source pad of it
>> >> > gives me 50 fps video indeed.
>> >> >
>> >> > (Pipeline looks like "filesrc ! queue ! decodebin ! ffmpegcolorspace !
>> >> > deinterlace ! ffmpegcolorspace ! autovideosink").
>> >> >
>> >> > As I understand, "seek" travels up the pipeline, until it reaches
>> >> > "dvdec" or something like that, and it can only seek with 25-fps
>> >> > accuracy, because it knows nothing about deinterlacing. What should I
>> >> > do to be able to seek this video with 50-fps accuracy?
>> >> It should work with the GST_SEEK_FLAG_ACCURATE flag in your seek
>> >> event, which will make your seek nano-second accurate.
>> >> The only problem is that I just checked deinterlace, and it doesn't
>> >> properly drop buffers before that seek point, but the videosink will
>> >> take that into account and properly display starting from the position
>> >> you requested.
>> >> So, for displaying, the accuracy will work as expected, but for some
>> >> other uses it might not.
>> > My local version of deinterlace clips the output to the configure
>> > segment. I'll push this change after gst-plugins-good is open for commit
>> > again.
>> > Then it will work for displaying and all other use cases.
>> Thanks! Should I use the latest git GStreamer with your patch applied,
>> or are e.g. OSSBuild and Ubuntu versions OK too? (OSSBuild has
>> 0.10.28 -base and 0.10.21 -good, same for Ubuntu).
> The patch will probably only work with the GIT version because it
> depends on some other local changes, which I'll push to GIT before that.
Can you please post the patches here, or give me a link to your
repository? It seems that I can't get proper seeking without them.
More information about the gstreamer-devel