Hello,
I am having some problems with GStreamer. Basically, I have a pipeline, which used to work (with Ubuntu 9.04 GStreamer packages). Here it is: gst-launch-0.10 -v -e dv1394src ! queue ! tee name=raw ! queue ! dvdemux name=demux ! ffdec_dvvideo ! ffmpegcolorspace ! deinterlace tff=bff ! queue ! tee name=deint ! queue ! ffvideoscale method=9 ! video/x-raw-yuv,height=288,pixel-aspect-ratio=1/1 ! queue ! videorate ! ffmpegcolorspace ! x264enc threads=0 key-int-max=10 me=umh subme=6 trellis=false b-adapt=false ! flutsmux name=mux demux. ! queue ! audioconvert ! faac profile=2 ! mux. mux. ! filesink location=test.avi deint. ! queue ! ffmpegcolorspace ! xvimagesink sync=false raw. ! queue ! filesink location=raw.test.dv Basically, it captures video from a DV camera, stores raw DV data, encodes it to H.264 on the fly and shows video preview window. Now, this pipeline does nothing: preview window displays only the first frame, and all files are 0 size. I see no errors or warnings in the gst-launch output. Here's the pipeline, updated to today's GStreamer (the only thing changed is flutsmux -> mpegtsmux): gst-launch-0.10 -v -e dv1394src ! queue ! tee name=raw ! queue ! dvdemux name=demux ! ffdec_dvvideo ! ffmpegcolorspace ! deinterlace tff=bff ! queue ! tee name=deint ! queue ! ffvideoscale method=9 ! video/x-raw-yuv,height=288,pixel-aspect-ratio=1/1 ! queue ! videorate ! ffmpegcolorspace ! x264enc threads=0 key-int-max=10 me=umh subme=6 trellis=false b-adapt=false ! mpegtsmux name=mux demux. ! queue ! audioconvert ! faac profile=2 ! mux. mux. ! queue ! filesink location=test.avi deint. ! queue ! ffmpegcolorspace ! xvimagesink sync=false raw. ! queue ! filesink location=raw.test.dv And, by the way, this simple pipeline works as intended: gst-launch-0.10 -e dv1394src ! queue ! tee name=raw ! queue ! dvdemux ! ffdec_dvvideo ! ffmpegcolorspace ! deinterlace tff=bff ! queue ! ffmpegcolorspace ! xvimagesink sync=false raw. ! queue ! filesink location=raw.test.dv Can anybody please help me in debugging this issue? Gregory ------------------------------------------------------------------------------ This SF.net email is sponsored by Make an app they can't live without Enter the BlackBerry Developer Challenge http://p.sf.net/sfu/RIM-dev2dev _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/gstreamer-devel |
On Mon, Aug 16, 2010 at 11:35 PM, Gregory Petrosyan
<[hidden email]> wrote: > I am having some problems with GStreamer. Basically, I have a > pipeline, which used to work (with Ubuntu 9.04 GStreamer packages). > Here it is: > > ... > > Basically, it captures video from a DV camera, stores raw DV data, > encodes it to H.264 on the fly and shows video preview window. Here are the minimal pipelines, which reproduce the problem: This works: gst-launch-0.10 -e dv1394src ! queue ! dvdemux ! ffdec_dvvideo ! queue ! ffmpegcolorspace ! x264enc ! mpegtsmux ! queue ! filesink location=test.avi And this: gst-launch-0.10 -e dv1394src ! queue ! dvdemux ! ffdec_dvvideo ! tee name=t ! queue ! ffmpegcolorspace ! x264enc ! mpegtsmux ! queue ! filesink location=test.avi t. ! queue ! ffmpegcolorspace ! xvimagesink sync=false results in frozen preview window + zero-length test.avi file. Gregory ------------------------------------------------------------------------------ This SF.net email is sponsored by Make an app they can't live without Enter the BlackBerry Developer Challenge http://p.sf.net/sfu/RIM-dev2dev _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/gstreamer-devel |
I am having a similar problem. I have a program written in C that uses x264enc and some other stuff and after the upgrade to Ubuntu 10.04, from 9.something, it stopped working and would only show the first frame in preview window with 0 byte size output file. After playing around with things I was able to re-produce the same results with something as simple as the pipeline below in gst-launch:
gst-launch v4l2src ! tee name="vtee" ! x264enc ! flvmux ! filesink location=vid.flv vtee. ! xvimagesink Interesting thing is if I just send the video to xvimage sink, it plays. If i only send video to the encoder and mux part of the pipeline that records a file just fine. Combine them and FREEZE. I dont mean to steal this post but I think our problems may be related. |
In reply to this post by Gregory Petrosyan
2010/8/16 Gregory Petrosyan <[hidden email]>:
> On Mon, Aug 16, 2010 at 11:35 PM, Gregory Petrosyan > <[hidden email]> wrote: >> I am having some problems with GStreamer. Basically, I have a >> pipeline, which used to work (with Ubuntu 9.04 GStreamer packages). >> Here it is: >> >> ... >> >> Basically, it captures video from a DV camera, stores raw DV data, >> encodes it to H.264 on the fly and shows video preview window. > > Here are the minimal pipelines, which reproduce the problem: > > This works: > gst-launch-0.10 -e dv1394src ! queue ! dvdemux ! ffdec_dvvideo ! queue > ! ffmpegcolorspace ! x264enc ! mpegtsmux ! queue ! filesink > location=test.avi > > And this: > gst-launch-0.10 -e dv1394src ! queue ! dvdemux ! ffdec_dvvideo ! tee > name=t ! queue ! ffmpegcolorspace ! x264enc ! mpegtsmux ! queue ! > filesink location=test.avi t. ! queue ! ffmpegcolorspace ! xvimagesink > sync=false The x264 encoder needs some buffers before the pushing first one downstream, which full the queue before the video sink. Disable the limits in the queue (queue max-size-bytes=0 max-size-buffers=0 max-size-time=0) and that will fix you problem: gst-launch-0.10 -e dv1394src ! queue ! dvdemux ! ffdec_dvvideo ! tee name=t ! queue ! ffmpegcolorspace ! x264enc ! mpegtsmux ! queue ! filesink location=test.avi t. ! queue max-size-bytes=0 max-size-buffers=0 max-size-time=0 ! ffmpegcolorspace ! xvimagesink sync=false Next time you can debug it naming the queues and using GST_DEBUG=*queue*:5: queue_dataflow gstqueue.c:930:gst_queue_chain:<sink_queue> received buffer 0xb53029f0 of size 153600, time 0:00:01.033333333, duration 0:00:00.033333333 queue_dataflow gstqueue.c:963:gst_queue_chain:<sink_queue> queue is full, waiting for free space queue_dataflow gstqueue.c:968:gst_queue_chain:<sink_queue> (sink_queue:sink) wait for DEL: 30 of 0-200 buffers, 4608000 of 0-10485760 bytes, 1000000000 of 0-1000000000 ns, 30 items As you see the limit in time was reached in the queue "1000000000 of 0-1000000000 ns" Andoni > > results in frozen preview window + zero-length test.avi file. > > Gregory > > ------------------------------------------------------------------------------ > This SF.net email is sponsored by > > Make an app they can't live without > Enter the BlackBerry Developer Challenge > http://p.sf.net/sfu/RIM-dev2dev > _______________________________________________ > gstreamer-devel mailing list > [hidden email] > https://lists.sourceforge.net/lists/listinfo/gstreamer-devel > -- Andoni Morales Alastruey LongoMatch:The Digital Coach http://www.longomatch.ylatuya.es ------------------------------------------------------------------------------ Download new Adobe(R) Flash(R) Builder(TM) 4 The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly Flex(R) Builder(TM)) enable the development of rich applications that run across multiple browsers and platforms. Download your free trials today! http://p.sf.net/sfu/adobe-dev2dev _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/gstreamer-devel |
Free forum by Nabble | Edit this page |