[gst-devel] Strange problem with glupload

Julien Isorce julien.isorce at gmail.com
Tue Mar 23 12:23:41 CET 2010


Hi,

I think this is due to the pixel aspect ratio that is not handled correctly
by glupload.

Could you try to reproduce the pb using videotestsrc (and playing with caps
(aspect ratio, framerate etcc)

Sincerely
Julien

2010/3/23 Roland Peffer <gdevel at clixxun.com>

> Hi,
>
> I have a strange behavior regarding the glupload plugin.
>
> If I run:
> > gst-launch -v filesrc location='/home/rpeffer/Videos/rec.mpeg' !
> decodebin  ! queue max-size-buffers=0 max-size-time=0 ! glimagesink
> all works fine.
>
> But I want to use glupload to make use of the gldeinterlace plugin as well,
> so I tried
>
> st-launch -v filesrc location='/home/rpeffer/Videos/rec.mpeg' ! decodebin
>  ! queue max-size-buffers=0 max-size-time=0 ! glupload  ! glimagesink
>
> what as far as I understand should do the same playback. But I get an error
>
> gstbasesrc.c(2378): gst_base_src_loop ():
> /GstPipeline:pipeline0/GstFileSrc:filesrc0:
> streaming task paused, reason not-negotiated (-4)
> ERROR: pipeline doesn't want to preroll.
>
>
> My first idea was that glupload may not like the interlaced flag. But even
> if I deinterlace the stream in advance the same error shows up.
> The strange thing is that on other movie files it works. The one mpeg file
>  I just use for testing is a recording from a USB dvb-t dongle.
>
> Anyway, the question I have is why can it be that with only glimagesink the
> pipeline works without problems, but with glupload before glimagesink the
> pipeline won't run.
>
> Any hints are mostly welcome!
>
> Roland
>
>
> PS The compete gst-luanch output is listed below:
>
>
>
> --------------------------------------------------- this works
> -------------------------------------------------
> $ gst-launch -v filesrc location='/home/rpeffer/Videos/rec.mpeg' !
> decodebin  ! queue max-size-buffers=0 max-size-time=0 ! glimagesink
>
> (gst-launch-0.10:20605): GLib-WARNING **: g_set_prgname() called multiple
> times
> Setting pipeline to PAUSED ...
> /GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstTypeFindElement:typefind.GstPad:src:
> caps = video/mpeg, systemstream=(boolean)false, mpegversion=(int)1
> Pipeline is PREROLLING ...
> /GstPipeline:pipeline0/GstDecodeBin:decodebin0/MpegVideoParse:mpegvideoparse0.GstPad:sink:
> caps = video/mpeg, systemstream=(boolean)false, mpegversion=(int)1
> /GstPipeline:pipeline0/GstDecodeBin:decodebin0/MpegVideoParse:mpegvideoparse0.GstPad:src:
> caps = video/mpeg, systemstream=(boolean)false, parsed=(boolean)true,
> mpegversion=(int)2, width=(int)720, height=(int)576,
> framerate=(fraction)25/1, pixel-aspect-ratio=(fraction)64/45,
> interlaced=(boolean)true,
> codec_data=(buffer)000001b32d024033249f23821022222e262e383838383e3e4a444a545454505050585a5a5a6262627c7c7c6a6a6a626274748080888894a6a098989498b4b4bebebef8f8eeef3d3d47a9a9ff1111111713171c1c1c1c1f1f2522252a2a2a2828282c2d2d2d3131313e3e3e35353531313a3a404044444a53504c4c4a4c5a5a5f5f5f7c7c77779e9ea3d4d4ff000001b5148200010000
> /GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstMpeg2dec:mpeg2dec0.GstPad:sink:
> caps = video/mpeg, systemstream=(boolean)false, parsed=(boolean)true,
> mpegversion=(int)2, width=(int)720, height=(int)576,
> framerate=(fraction)25/1, pixel-aspect-ratio=(fraction)64/45,
> interlaced=(boolean)true,
> codec_data=(buffer)000001b32d024033249f23821022222e262e383838383e3e4a444a545454505050585a5a5a6262627c7c7c6a6a6a626274748080888894a6a098989498b4b4bebebef8f8eeef3d3d47a9a9ff1111111713171c1c1c1c1f1f2522252a2a2a2828282c2d2d2d3131313e3e3e35353531313a3a404044444a53504c4c4a4c5a5a5f5f5f7c7c77779e9ea3d4d4ff000001b5148200010000
> /GstPipeline:pipeline0/GstDecodeBin:decodebin0.GstGhostPad:src0: caps =
> video/x-raw-yuv, format=(fourcc)I420, width=(int)720, height=(int)576,
> pixel-aspect-ratio=(fraction)64/45, framerate=(fraction)25/1,
> interlaced=(boolean)true
> /GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstMpeg2dec:mpeg2dec0.GstPad:src:
> caps = video/x-raw-yuv, format=(fourcc)I420, width=(int)720,
> height=(int)576, pixel-aspect-ratio=(fraction)64/45,
> framerate=(fraction)25/1, interlaced=(boolean)true
> /GstPipeline:pipeline0/GstQueue:queue0.GstPad:sink: caps = video/x-raw-yuv,
> format=(fourcc)I420, width=(int)720, height=(int)576,
> pixel-aspect-ratio=(fraction)64/45, framerate=(fraction)25/1,
> interlaced=(boolean)true
> /GstPipeline:pipeline0/GstDecodeBin:decodebin0.GstGhostPad:src0.GstProxyPad:proxypad1:
> caps = video/x-raw-yuv, format=(fourcc)I420, width=(int)720,
> height=(int)576, pixel-aspect-ratio=(fraction)64/45,
> framerate=(fraction)25/1, interlaced=(boolean)true
> /GstPipeline:pipeline0/GstQueue:queue0.GstPad:src: caps = video/x-raw-yuv,
> format=(fourcc)I420, width=(int)720, height=(int)576,
> pixel-aspect-ratio=(fraction)64/45, framerate=(fraction)25/1,
> interlaced=(boolean)true
> /GstPipeline:pipeline0/GstGLImageSink:glimagesink0.GstPad:sink: caps =
> video/x-raw-yuv, format=(fourcc)I420, width=(int)720, height=(int)576,
> pixel-aspect-ratio=(fraction)64/45, framerate=(fraction)25/1,
> interlaced=(boolean)true
> Pipeline is PREROLLED ...
> Setting pipeline to PLAYING ...
> New clock: GstSystemClock
> Got EOS from element "pipeline0".
> Execution ended after 15320225883 ns.
> Setting pipeline to PAUSED ...
> Setting pipeline to READY ...
> /GstPipeline:pipeline0/GstGLImageSink:glimagesink0.GstPad:sink: caps = NULL
> /GstPipeline:pipeline0/GstQueue:queue0.GstPad:src: caps = NULL
> /GstPipeline:pipeline0/GstQueue:queue0.GstPad:sink: caps = NULL
> /GstPipeline:pipeline0/GstDecodeBin:decodebin0.GstGhostPad:src0: caps =
> NULL
> /GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstMpeg2dec:mpeg2dec0.GstPad:src:
> caps = NULL
> /GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstMpeg2dec:mpeg2dec0.GstPad:sink:
> caps = NULL
> /GstPipeline:pipeline0/GstDecodeBin:decodebin0/MpegVideoParse:mpegvideoparse0.GstPad:src:
> caps = NULL
> /GstPipeline:pipeline0/GstDecodeBin:decodebin0/MpegVideoParse:mpegvideoparse0.GstPad:sink:
> caps = NULL
> /GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstTypeFindElement:typefind.GstPad:src:
> caps = NULL
> Setting pipeline to NULL ...
> Freeing pipeline ...
>
>
> --------------------------------------------------- this fails
> -------------------------------------------------
> >$ gst-launch -v filesrc location='/home/rpeffer/Videos/rec.mpeg' !
> decodebin  ! queue max-size-buffers=0 max-size-time=0 ! glupload  !
> glimagesink
>
> (gst-launch-0.10:20595): GLib-WARNING **: g_set_prgname() called multiple
> times
> Setting pipeline to PAUSED ...
> /GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstTypeFindElement:typefind.GstPad:src:
> caps = video/mpeg, systemstream=(boolean)false, mpegversion=(int)1
> Pipeline is PREROLLING ...
> /GstPipeline:pipeline0/GstDecodeBin:decodebin0/MpegVideoParse:mpegvideoparse0.GstPad:sink:
> caps = video/mpeg, systemstream=(boolean)false, mpegversion=(int)1
> /GstPipeline:pipeline0/GstDecodeBin:decodebin0/MpegVideoParse:mpegvideoparse0.GstPad:src:
> caps = video/mpeg, systemstream=(boolean)false, parsed=(boolean)true,
> mpegversion=(int)2, width=(int)720, height=(int)576,
> framerate=(fraction)25/1, pixel-aspect-ratio=(fraction)64/45,
> interlaced=(boolean)true,
> codec_data=(buffer)000001b32d024033249f23821022222e262e383838383e3e4a444a545454505050585a5a5a6262627c7c7c6a6a6a626274748080888894a6a098989498b4b4bebebef8f8eeef3d3d47a9a9ff1111111713171c1c1c1c1f1f2522252a2a2a2828282c2d2d2d3131313e3e3e35353531313a3a404044444a53504c4c4a4c5a5a5f5f5f7c7c77779e9ea3d4d4ff000001b5148200010000
> /GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstMpeg2dec:mpeg2dec0.GstPad:sink:
> caps = video/mpeg, systemstream=(boolean)false, parsed=(boolean)true,
> mpegversion=(int)2, width=(int)720, height=(int)576,
> framerate=(fraction)25/1, pixel-aspect-ratio=(fraction)64/45,
> interlaced=(boolean)true,
> codec_data=(buffer)000001b32d024033249f23821022222e262e383838383e3e4a444a545454505050585a5a5a6262627c7c7c6a6a6a626274748080888894a6a098989498b4b4bebebef8f8eeef3d3d47a9a9ff1111111713171c1c1c1c1f1f2522252a2a2a2828282c2d2d2d3131313e3e3e35353531313a3a404044444a53504c4c4a4c5a5a5f5f5f7c7c77779e9ea3d4d4ff000001b5148200010000
> /GstPipeline:pipeline0/GstDecodeBin:decodebin0.GstGhostPad:src0: caps =
> video/x-raw-yuv, format=(fourcc)I420, width=(int)720, height=(int)576,
> pixel-aspect-ratio=(fraction)64/45, framerate=(fraction)25/1,
> interlaced=(boolean)true
> /GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstMpeg2dec:mpeg2dec0.GstPad:src:
> caps = video/x-raw-yuv, format=(fourcc)I420, width=(int)720,
> height=(int)576, pixel-aspect-ratio=(fraction)64/45,
> framerate=(fraction)25/1, interlaced=(boolean)true
> ERROR: from element /GstPipeline:pipeline0/GstFileSrc:filesrc0: Internal
> data flow error.
> Additional debug info:
> gstbasesrc.c(2378): gst_base_src_loop ():
> /GstPipeline:pipeline0/GstFileSrc:filesrc0:
> streaming task paused, reason not-negotiated (-4)
> ERROR: pipeline doesn't want to preroll.
> Setting pipeline to NULL ...
> /GstPipeline:pipeline0/GstDecodeBin:decodebin0.GstGhostPad:src0: caps =
> NULL
> /GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstMpeg2dec:mpeg2dec0.GstPad:src:
> caps = NULL
> /GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstMpeg2dec:mpeg2dec0.GstPad:sink:
> caps = NULL
> /GstPipeline:pipeline0/GstDecodeBin:decodebin0/MpegVideoParse:mpegvideoparse0.GstPad:src:
> caps = NULL
> /GstPipeline:pipeline0/GstDecodeBin:decodebin0/MpegVideoParse:mpegvideoparse0.GstPad:sink:
> caps = NULL
> /GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstTypeFindElement:typefind.GstPad:src:
> caps = NULL
> Freeing pipeline ...
>
>
>
> ------------------------------------------------------------------------------
> Download Intel&#174; Parallel Studio Eval
> Try the new software tools for yourself. Speed compiling, find bugs
> proactively, and fine-tune applications for parallel performance.
> See why Intel Parallel Studio got high marks during beta.
> http://p.sf.net/sfu/intel-sw-dev
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20100323/0f1fff78/attachment.htm>


More information about the gstreamer-devel mailing list