Debugging pipeline locks

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Debugging pipeline locks

Antoni Silvestre Padrós
Hi, I am still trying to figure out how to receive different payloads using gstrtpbin, any idea regarding that would be really helpful.

On the other hand, to be more precise in the question I don't if anyone has a method to debug why a pipeline is locked, I mean when it is in the playing state but for some reason it's stopped waiting on a pad to receive data. It would be really useful to be able to debug which pad is causing this state and have a way to fix it.

Also, is there a way to have a pipeline like this (i've just made this pipeline up in order to show the concept but I haven't tested it):

avimux name=mux
pulsesrc ! lame ! queue ! mux.
v4l2src ! queue ! x264 ! mux.
mux. ! queue ! filesink location=video.avi

That when it does not receive both the audio and the video at the same time but only one of them the pipeline doesn't get locked?

Thanks,

Antoni Silvestre

------------------------------------------------------------------------------
Sell apps to millions through the Intel(R) Atom(Tm) Developer Program
Be part of this innovative community and reach millions of netbook users
worldwide. Take advantage of special opportunities to increase revenue and
speed time-to-market. Join now, and jumpstart your future.
http://p.sf.net/sfu/intel-atom-d2d
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: Debugging pipeline locks

Stefan Sauer
On 26.08.2010 10:42, Antoni Silvestre Padrós wrote:
> Hi, I am still trying to figure out how to receive different payloads
> using gstrtpbin, any idea regarding that would be really helpful.
>
> On the other hand, to be more precise in the question I don't if
> anyone has a method to debug why a pipeline is locked, I mean when it
> is in the playing state but for some reason it's stopped waiting on a
> pad to receive data. It would be really useful to be able to debug
> which pad is causing this state and have a way to fix it.

I have be using GST_DEBUG_BIN_TO_DOT_FILE and in the image look for e.g.
unlinked or flushing pads. Also checking the GST_DEBUG log at level :2
(warnings) is a good first check. If the pipeline is not too complex you
can break in gdb and ehck what all the threads are doing. This is
difficult as it is hard to spot a lock that has no chance of becoming
release automatically soon.

>
> Also, is there a way to have a pipeline like this (i've just made this
> pipeline up in order to show the concept but I haven't tested it):
>
> avimux name=mux
> pulsesrc ! lame ! queue ! mux.
> v4l2src ! queue ! x264 ! mux.
> mux. ! queue ! filesink location=video.avi
>
> That when it does not receive both the audio and the video at the same
> time but only one of them the pipeline doesn't get locked?

One more queue after x264 maybe.

Stefan

>
> Thanks,
>
> Antoni Silvestre
>
>
> ------------------------------------------------------------------------------
> Sell apps to millions through the Intel(R) Atom(Tm) Developer Program
> Be part of this innovative community and reach millions of netbook users
> worldwide. Take advantage of special opportunities to increase revenue and
> speed time-to-market. Join now, and jumpstart your future.
> http://p.sf.net/sfu/intel-atom-d2d
>
>
> _______________________________________________
> gstreamer-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
>  


------------------------------------------------------------------------------
This SF.net Dev2Dev email is sponsored by:

Show off your parallel programming skills.
Enter the Intel(R) Threading Challenge 2010.
http://p.sf.net/sfu/intel-thread-sfd
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel