Deinterlace plugin working backwards ?

Rob Heig robhhh6 at gmail.com
Wed Oct 28 11:36:49 UTC 2020


Thanks for your reply! Yes I've did that, what I get is that window that
gets displayed has two frames one on top of the other, still doubling the
frame rate:

gst-launch-1.0 -v filesrc location=vvvv.raw ! videoparse width=768
height=576 format=4 framerate=50/1 interlaced=true ! videoconvert !
deinterlace ! autovideosink

Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
/GstPipeline:pipeline0/GstVideoParse:videoparse0/GstRawVideoParse:inner_rawvideoparse.GstPad:src:
caps = video/x-raw, format=(string)YUY2, width=(int)768, height=(int)576,
interlace-mode=(string)interleaved, pixel-aspect-ratio=(fraction)1/1,
chroma-site=(string)jpeg, colorimetry=(string)bt601,
framerate=(fraction)50/1
/GstPipeline:pipeline0/GstVideoParse:videoparse0.GstGhostPad:src: caps =
video/x-raw, format=(string)YUY2, width=(int)768, height=(int)576,
interlace-mode=(string)interleaved, pixel-aspect-ratio=(fraction)1/1,
chroma-site=(string)jpeg, colorimetry=(string)bt601,
framerate=(fraction)50/1
/GstPipeline:pipeline0/GstVideoConvert:videoconvert0.GstPad:src: caps =
video/x-raw, width=(int)768, height=(int)576,
interlace-mode=(string)interleaved, pixel-aspect-ratio=(fraction)1/1,
framerate=(fraction)50/1, format=(string)YV12
/GstPipeline:pipeline0/GstDeinterlace:deinterlace0.GstPad:src: caps =
video/x-raw, width=(int)768, height=(int)576,
interlace-mode=(string)progressive, pixel-aspect-ratio=(fraction)1/1,
framerate=(fraction)100/1, format=(string)YV12
/GstPipeline:pipeline0/GstAutoVideoSink:autovideosink0.GstGhostPad:sink.GstProxyPad:proxypad2:
caps = video/x-raw, width=(int)768, height=(int)576,
interlace-mode=(string)progressive, pixel-aspect-ratio=(fraction)1/1,
framerate=(fraction)100/1, format=(string)YV12
/GstPipeline:pipeline0/GstAutoVideoSink:autovideosink0/GstXvImageSink:autovideosink0-actual-sink-xvimage.GstPad:sink:
caps = video/x-raw, width=(int)768, height=(int)576,
interlace-mode=(string)progressive, pixel-aspect-ratio=(fraction)1/1,
framerate=(fraction)100/1, format=(string)YV12
/GstPipeline:pipeline0/GstAutoVideoSink:autovideosink0.GstGhostPad:sink:
caps = video/x-raw, width=(int)768, height=(int)576,
interlace-mode=(string)progressive, pixel-aspect-ratio=(fraction)1/1,
framerate=(fraction)100/1, format=(string)YV12
/GstPipeline:pipeline0/GstDeinterlace:deinterlace0.GstPad:sink: caps =
video/x-raw, width=(int)768, height=(int)576,
interlace-mode=(string)interleaved, pixel-aspect-ratio=(fraction)1/1,
framerate=(fraction)50/1, format=(string)YV12
/GstPipeline:pipeline0/GstVideoConvert:videoconvert0.GstPad:sink: caps =
video/x-raw, format=(string)YUY2, width=(int)768, height=(int)576,
interlace-mode=(string)interleaved, pixel-aspect-ratio=(fraction)1/1,
chroma-site=(string)jpeg, colorimetry=(string)bt601,
framerate=(fraction)50/1
/GstPipeline:pipeline0/GstVideoParse:videoparse0.GstGhostPad:src.GstProxyPad:proxypad1:
caps = video/x-raw, format=(string)YUY2, width=(int)768, height=(int)576,
interlace-mode=(string)interleaved, pixel-aspect-ratio=(fraction)1/1,
chroma-site=(string)jpeg, colorimetry=(string)bt601,
framerate=(fraction)50/1
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
Got EOS from element "pipeline0".
Execution ended after 0:00:03.000241651
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
Setting pipeline to NULL ...
Freeing pipeline ...

On Wed, 28 Oct 2020 at 12:11, Tony Houghton <h at realh.co.uk> wrote:

> It seems more conventional to refer to the total frame height rather than
> the height of each field, so have you tried using "height=576" instead?
>
> On Wed, 28 Oct 2020 at 11:00, Rob Heig <robhhh6 at gmail.com> wrote:
>
>> Hello,
>> I'm trying to deinterlace an interlaced raw video, but despite having
>> spent 2 days on this I am still stuck. The interesting thing is that, by
>> looking at the output of gst-launch, I see weird results:
>>
>> gst-launch-1.0 -v filesrc location=vvvv.raw ! videoparse width=768
>> height=288 format=4 framerate=50/1 interlaced=true ! videoconvert !
>> deinterlace ! autovideosink
>>
>> Setting pipeline to PAUSED ...
>> Pipeline is PREROLLING ...
>> /GstPipeline:pipeline0/GstVideoParse:videoparse0/GstRawVideoParse:inner_rawvideoparse.GstPad:src:
>> caps = video/x-raw, format=(string)YUY2, width=(int)768, height=(int)288,
>> interlace-mode=(string)interleaved, pixel-aspect-ratio=(fraction)1/1,
>> chroma-site=(string)jpeg, colorimetry=(string)bt601,
>> framerate=(fraction)50/1
>> /GstPipeline:pipeline0/GstVideoParse:videoparse0.GstGhostPad:src: caps =
>> video/x-raw, format=(string)YUY2, width=(int)768, height=(int)288,
>> interlace-mode=(string)interleaved, pixel-aspect-ratio=(fraction)1/1,
>> chroma-site=(string)jpeg, colorimetry=(string)bt601,
>> framerate=(fraction)50/1
>> /GstPipeline:pipeline0/GstVideoConvert:videoconvert0.GstPad:src: caps =
>> video/x-raw, width=(int)768, height=(int)288,
>> interlace-mode=(string)interleaved, pixel-aspect-ratio=(fraction)1/1,
>> framerate=(fraction)50/1, format=(string)YV12
>> /GstPipeline:pipeline0/GstDeinterlace:deinterlace0.GstPad:src: caps =
>> video/x-raw, width=(int)768, height=(int)288,
>> interlace-mode=(string)progressive, pixel-aspect-ratio=(fraction)1/1,
>> framerate=(fraction)100/1, format=(string)YV12
>> /GstPipeline:pipeline0/GstAutoVideoSink:autovideosink0.GstGhostPad:sink.GstProxyPad:proxypad2:
>> caps = video/x-raw, width=(int)768, height=(int)288,
>> interlace-mode=(string)progressive, pixel-aspect-ratio=(fraction)1/1,
>> framerate=(fraction)100/1, format=(string)YV12
>> /GstPipeline:pipeline0/GstAutoVideoSink:autovideosink0/GstXvImageSink:autovideosink0-actual-sink-xvimage.GstPad:sink:
>> caps = video/x-raw, width=(int)768, height=(int)288,
>> interlace-mode=(string)progressive, pixel-aspect-ratio=(fraction)1/1,
>> framerate=(fraction)100/1, format=(string)YV12
>> /GstPipeline:pipeline0/GstAutoVideoSink:autovideosink0.GstGhostPad:sink:
>> caps = video/x-raw, width=(int)768, height=(int)288,
>> interlace-mode=(string)progressive, pixel-aspect-ratio=(fraction)1/1,
>> framerate=(fraction)100/1, format=(string)YV12
>> /GstPipeline:pipeline0/GstDeinterlace:deinterlace0.GstPad:sink: caps =
>> video/x-raw, width=(int)768, height=(int)288,
>> interlace-mode=(string)interleaved, pixel-aspect-ratio=(fraction)1/1,
>> framerate=(fraction)50/1, format=(string)YV12
>> /GstPipeline:pipeline0/GstVideoConvert:videoconvert0.GstPad:sink: caps =
>> video/x-raw, format=(string)YUY2, width=(int)768, height=(int)288,
>> interlace-mode=(string)interleaved, pixel-aspect-ratio=(fraction)1/1,
>> chroma-site=(string)jpeg, colorimetry=(string)bt601,
>> framerate=(fraction)50/1
>> /GstPipeline:pipeline0/GstVideoParse:videoparse0.GstGhostPad:src.GstProxyPad:proxypad1:
>> caps = video/x-raw, format=(string)YUY2, width=(int)768, height=(int)288,
>> interlace-mode=(string)interleaved, pixel-aspect-ratio=(fraction)1/1,
>> chroma-site=(string)jpeg, colorimetry=(string)bt601,
>> framerate=(fraction)50/1
>> Pipeline is PREROLLED ...
>> Setting pipeline to PLAYING ...
>> New clock: GstSystemClock
>> ERROR: from element
>> /GstPipeline:pipeline0/GstAutoVideoSink:autovideosink0/GstXvImageSink:autovideosink0-actual-sink-xvimage:
>> Output window was closed
>> Additional debug info:
>> xvimagesink.c(555): gst_xv_image_sink_handle_xevents ():
>> /GstPipeline:pipeline0/GstAutoVideoSink:autovideosink0/GstXvImageSink:autovideosink0-actual-sink-xvimage
>> Execution ended after 0:00:02.956028008
>> Setting pipeline to PAUSED ...
>> Setting pipeline to READY ...
>> Setting pipeline to NULL ...
>> Freeing pipeline ...
>>
>> I would naively expect the deinterlace plugin to take a 50 Hz, 720x288
>> interlaced video and give as output a 25 Hz, 720x576 one.
>> Instead, the resolution stays the same, while the frame rate doubles....
>> ????
>> I have tested this on gstreamer 1.45 and gstreamer 1.6.
>> Am I missing anything?
>> Thanks in advance for all suggestions!
>> Best,
>> Rob
>>
>> _______________________________________________
>> gstreamer-devel mailing list
>> gstreamer-devel at lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>>
>
>
> --
> TH
>
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20201028/ba7e6341/attachment-0001.htm>


More information about the gstreamer-devel mailing list