Administrator
|
I have the pipeline:
filesrc ! typefind ! mpegpsdemux name=demux multiqueue max-size-bytes=2097152 name=mq demux.audio_c0 ! mq.sink0 mq.src0 ! mp3parse ! flump3dec ! input-selector ! tee ! audioconvert ! audioresample ! pulsesink demux.video_e0 ! mq.sink1 mq.src1 ! mpegvideoparse ! mpeg2dec ! input-selector ! queue max-size-buffers=3 max-size-bytes=0 max-size-time=0 ! ffmpegcolorspace ! videoscale ! xvimagesink Here is the dot file: player.dot (30kb), and produced PNG: player.png (850kb) Looks like there is no negotiation between multiqueue and mpegvideoparse. Why an it be? I tried using seek example with this pipeline ($GST_PLUGINS_BASE/test/examples/seek/seek.c) It begins playing only after seek command. |
try to put async=false on xvimagesink or on the pulsesink. I don't remember it on details...but when you have to sinks on the same pipe one keeps waiting for the other to be ready...something like that...so you get blocked, if one of the sinks are set with async=false this will not happen ...at least with me it worked :-)
best regards, Katcipis On Wed, Jul 21, 2010 at 12:46 PM, wl2776 <[hidden email]> wrote:
-- http://www.getgnulinux.org/windows ------------------------------------------------------------------------------ This SF.net email is sponsored by Sprint What will you do first with EVO, the first 4G phone? Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/gstreamer-devel |
Administrator
|
Tried setting async=false.
1. If on xvimagesink, then the pipeline got to playing, but I didn't see a picture, only sound. The picture appeared again after seek event. 2. If on pulsesink, nothing changed. I have studied the debug output from --gst-debug=seek:5,mpeg2dec:9,mpegvideoparse:9 and have found that the gst_mpegvideoparse_chain_forward function is not called, if no seek event is issued. However, if I use playbin2 instead of that pipeline, then this function is called. |
In reply to this post by wl2776
On 07/21/2010 09:46 AM, wl2776 wrote:
> > I have the pipeline: > > filesrc ! typefind ! mpegpsdemux name=demux multiqueue > max-size-bytes=2097152 name=mq demux.audio_c0 ! mq.sink0 mq.src0 ! mp3parse > ! flump3dec ! input-selector ! tee ! audioconvert ! audioresample ! > pulsesink demux.video_e0 ! mq.sink1 mq.src1 ! mpegvideoparse ! mpeg2dec ! > input-selector ! queue max-size-buffers=3 max-size-bytes=0 max-size-time=0 ! > ffmpegcolorspace ! videoscale ! xvimagesink > > > Here is the dot file: > http://gstreamer-devel.966125.n4.nabble.com/file/n2297314/player.dot > player.dot (30kb), and produced PNG: > http://gstreamer-devel.966125.n4.nabble.com/file/n2297314/player.png > player.png (850kb) > > Looks like there is no negotiation between multiqueue and mpegvideoparse. > Why an it be? > > I tried using seek example with this pipeline > ($GST_PLUGINS_BASE/test/examples/seek/seek.c) > It begins playing only after seek command. I am by no means an expert as I just started playing with gstreamer as a developer last week, however yesterday I read this: http://www.gstreamer.net/wiki/FAQ#MypipelinewithmultiplesinksneverreachesthePAUSEDstate.2CwhatamIdoingwrong.3F Maybe the same/related issue? ------------------------------------------------------------------------------ This SF.net email is sponsored by Sprint What will you do first with EVO, the first 4G phone? Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/gstreamer-devel |
Administrator
|
My pipeline has queues after the demuxer.
Added one more after the tee - doesn't help. |
On 07/22/2010 09:31 AM, wl2776 wrote:
> > My pipeline has queues after the demuxer. > Added one more after the tee - doesn't help. Yeah, sorry, like I said, just started using it last week. ------------------------------------------------------------------------------ This SF.net email is sponsored by Sprint What will you do first with EVO, the first 4G phone? Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/gstreamer-devel |
In reply to this post by wl2776
On 21.07.2010 18:46, wl2776 wrote:
> I have the pipeline: > > filesrc ! typefind ! mpegpsdemux name=demux multiqueue > max-size-bytes=2097152 name=mq demux.audio_c0 ! mq.sink0 mq.src0 ! mp3parse > ! flump3dec ! input-selector ! tee ! audioconvert ! audioresample ! > pulsesink demux.video_e0 ! mq.sink1 mq.src1 ! mpegvideoparse ! mpeg2dec ! > input-selector ! queue max-size-buffers=3 max-size-bytes=0 max-size-time=0 ! > ffmpegcolorspace ! videoscale ! xvimagesink > Try to reduce the pipeline one by one. E.g. remove input-selector, or remove the "queue max-size-buffers=3 max-size-bytes=0 max-size-time=0". Try a value >3 here. Stefan > > Here is the dot file: > http://gstreamer-devel.966125.n4.nabble.com/file/n2297314/player.dot > player.dot (30kb), and produced PNG: > http://gstreamer-devel.966125.n4.nabble.com/file/n2297314/player.png > player.png (850kb) > > Looks like there is no negotiation between multiqueue and mpegvideoparse. > Why an it be? > > I tried using seek example with this pipeline > ($GST_PLUGINS_BASE/test/examples/seek/seek.c) > It begins playing only after seek command. > ------------------------------------------------------------------------------ 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 |
Administrator
|
The goal I was trying to achieve was to mimic playbin2's behavior, to find the source of its errors. I've copied these values from it. |
Free forum by Nabble | Edit this page |