Gstreamer issue on mac osx

Andoni Morales ylatuya at gmail.com
Thu Jan 17 03:40:36 PST 2013


2013/1/16 Gerard Toonstra <gtoonstra at gmail.com>:
> Well…..
>
> It took me a day to figure things out.
> I cleared the frameworks directory so that I'd be sure to start with everything new. Then installed the "brahmaputra" release 2012-11 over again. End result: exactly the same.
>
> then I went back on Linux where things do work and turned on more debugging to see the caps it was working with. I then explicitly took a note of the caps after rtph264depay:
>
> ./gst-launch-0.10 -vvv udpsrc multicast-group=239.255.12.12 port=5004 auto-multicast=true caps="application/x-rtp,media=(string)video,clock-rate=(int)90000,encoding-name=(string)H264,payload=(int)96" ! rtph264depay ! "video/x-h264, stream-format=(string)byte-stream, alignment=(string)nal" ! ffdec_h264 ! ffmpegcolorspace ! autovideosink sync=false
>
> The stream-format and alignment issues were a red herring, because it seemed the defaults for both were wrong, so the data in the stream was overriding the default properties.
>
> Then I turned on debugging to the max and saw this on the osxvideosink, where it was trying to negotiate caps on the videosink and after the ffdec_h264:
>
> 0:00:02.125843000   483    0x102008850 DEBUG               GST_CAPS gstpad.c:2799:gst_pad_configure_sink:<autovideosink0-actual-sink-osxvideo:sink> caps 0x101873c80 not accepted
> 0:00:02.125875000   483    0x102008850 INFO                 basesrc gstbasesrc.c:2570:gst_base_src_loop:<udpsrc0> pausing after gst_pad_push() = not-negotiated
>
> I inserted ffmpegcolorspace and it started working after that.
>
> Is there a way I can configure the machine so it doesn't need ffmpegcolorspace, or is this sink dependent?

This depends on the sink capabilities. In this case, osxvideosink only
supports YUY2, which is why you need a colorspace converter.

Andoni
>
> Rgds,
>
> G>
>
>
> On Jan 15, 2013, at 9:38 PM, Gerard Toonstra <gtoonstra at gmail.com> wrote:
>
>> Hi there,
>>
>> I have an IP cam that is configured to output UDP multicast. I'm getting video on Ubuntu Linux (12.10), but on Mac OSX there are issues.
>> See here the output of two consecutive runs. The first one hangs, is aborted. The second one reports a "subclass rejected caps" issue,
>> resulting in failure to negotiate.
>>
>> Does anyone know what the problem could be?  Missing libraries, incorrect versions?
>>
>> I installed gstreamer from here:
>>
>> http://docs.gstreamer.com/display/GstSDK/Installing+on+Mac+OS+X
>>
>> Running Mountain Lion on Mac OSX mini: 12.2.0 Darwin Kernel Version 12.2.0
>>
>> new-host-3:bin gt$ GST_DEBUG=2 ./gst-launch-0.10 -vvv udpsrc multicast-group=239.255.12.12 port=5004 auto-multicast=true caps="application/x-rtp,media=(string)video,clock-rate=(int)90000,encoding-name=(string)H264,payload=(int)96,width=(int)1280,height=(int)720" ! rtph264depay ! ffdec_h264 ! video/x-raw-yuv ! ffmpegcolorspace ! autovideosink
>> Setting pipeline to PAUSED ...
>> Pipeline is live and does not need PREROLL ...
>> Setting pipeline to PLAYING ...
>> 0:00:00.126765000   499    0x10078bb00 WARN                     bin gstbin.c:2399:gst_bin_do_latency_func:<pipeline0> failed to query latency
>> New clock: GstSystemClock
>> ^CCaught interrupt -- handling interrupt.
>> Interrupt: Stopping pipeline ...
>> Execution ended after 46696132000 ns.
>> Setting pipeline to PAUSED ...
>> Setting pipeline to READY ...
>> /GstPipeline:pipeline0/GstUDPSrc:udpsrc0.GstPad:src: caps = NULL
>> Setting pipeline to NULL ...
>> Freeing pipeline ...
>> new-host-3:bin gt$ GST_DEBUG=2 ./gst-launch-0.10 -vvv udpsrc multicast-group=239.255.12.12 port=5004 auto-multicast=true caps="application/x-rtp,media=(string)video,clock-rate=(int)90000,encoding-name=(string)H264,payload=(int)96,width=(int)1280,height=(int)720" ! rtph264depay ! ffdec_h264 ! video/x-raw-yuv ! ffmpegcolorspace ! autovideosink
>> Setting pipeline to PAUSED ...
>> Pipeline is live and does not need PREROLL ...
>> Setting pipeline to PLAYING ...
>> 0:00:00.152357000   519    0x100763700 WARN                     bin gstbin.c:2399:gst_bin_do_latency_func:<pipeline0> failed to query latency
>> New clock: GstSystemClock
>> 0:00:00.166522000   519    0x100819050 WARN            rtph264depay gstrtph264depay.c:280:gst_rtp_h264_depay_negotiate:<rtph264depay0> overriding property setting based on caps
>> 0:00:00.166550000   519    0x100819050 WARN            rtph264depay gstrtph264depay.c:288:gst_rtp_h264_depay_negotiate:<rtph264depay0> overriding property setting based on caps
>> 0:00:00.166558000   519    0x100819050 WARN        basertpdepayload gstbasertpdepayload.c:246:gst_base_rtp_depayload_setcaps:<rtph264depay0> Subclass rejected caps 0x102005440
>> 0:00:00.166588000   519    0x100819050 WARN                 basesrc gstbasesrc.c:2633:gst_base_src_loop:<udpsrc0> error: Internal data flow error.
>> 0:00:00.166596000   519    0x100819050 WARN                 basesrc gstbasesrc.c:2633:gst_base_src_loop:<udpsrc0> error: streaming task paused, reason not-negotiated (-4)
>> 0:00:00.166653000   519    0x100819050 ERROR                 ffmpeg gstffmpegdec.c:2359:gst_ffmpegdec_frame:<ffdec_h2640> no codec context
>> ERROR: from element /GstPipeline:pipeline0/GstUDPSrc:udpsrc0: Internal data flow error.
>> Additional debug info:
>> gstbasesrc.c(2633): gst_base_src_loop (): /GstPipeline:pipeline0/GstUDPSrc:udpsrc0:
>> streaming task paused, reason not-negotiated (-4)
>> Execution ended after 14420000 ns.
>> Setting pipeline to PAUSED ...
>> Setting pipeline to READY ...
>> /GstPipeline:pipeline0/GstUDPSrc:udpsrc0.GstPad:src: caps = NULL
>> Setting pipeline to NULL ...
>> Freeing pipeline ...
>>
>>
>> Rgds,
>>
>> Gerard
>>
>
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel



-- 
Andoni Morales Alastruey

LongoMatch:The Digital Coach
http://www.longomatch.ylatuya.es


More information about the gstreamer-devel mailing list