Pipeline stalling for no apparent reason?

Florian Echtler floe at butterbrot.org
Wed May 26 14:51:56 UTC 2021

A brief update: I've been playing around with gst-debugger, which is awesome, 
and discovered that the issue is apparently related to caps negotiation: on the 
newly-added branches, some of parts of the pipeline have caps set to NULL.

I've partly fixed my issue by just handling the linking of mixers etc. in a 
timer function that's triggered with a short delay after all decoder pads have 
been added, but I still have the same problem with 3 or more clients now.

Is there a way to wait for caps negotiation to complete before adding new parts 
to the pipeline, or can I force a renegotiation somehow for the elements that 
still have NULL caps?

Best, Florian

On 24/05/2021 17:49, Florian Echtler via gstreamer-devel wrote:
> Hello everyone,
> I have a rather complex streaming pipeline that's constructed/managed from a 
> Python script [1]. There are 2 (or more) clients that send MPEG transport 
> streams over UDP to the pipeline, which then sends a "remixed" version of those 
> streams back.
> One issue I'm having now is that the pipeline works just as intended if the 
> clients connect/start sending sequentially with 1-2 seconds of gap between, but 
> if 2 or more clients already are sending when the pipeline launches, then it 
> gets stuck in PAUSED state. (This started happening once I added the audio 
> mixing branch to the pipeline.)
> Weirdly enough, I checked the debug graph output and it seems to be 1:1 
> identical, so exactly the same elements get created and linked in both cases 
> (see attachments).
> I already checked the output with GST_DEBUG=4 and couldn't find any concrete 
> reason for why this happens. I assume it's some sort of race condition related 
> to how the SSRC and transport stream demuxer pads get added, but I'm at a bit of 
> a loss about how to debug this...
> Any suggestions highly appreciated!
> Best, Florian
> [1] https://github.com/floe/surface-streams/blob/master/scripts/gst-mixer.py
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel


-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature
Type: application/pgp-signature
Size: 203 bytes
Desc: OpenPGP digital signature
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20210526/58f9882e/attachment-0001.sig>

More information about the gstreamer-devel mailing list