rtmp2sink disconnecting with flaky internet
Nirbheek Chauhan
nirbheek.chauhan at gmail.com
Fri Mar 4 09:21:38 UTC 2022
Hi Rob,
Yes, it might be good to add a retry option. In the meantime, a
generic solution for such issues (an element that is expected to throw
errors) is to use two separate pipelines and join them with a
proxysink / proxysrc pair of elements:
Pipeline A:
flvmux ! tee name=t
t. ! queue ! fakesink sync=true
t. ! queue ! proxysink
Pipeline B:
proxysrc ! rtmp2sink
If rtmp2sink throws an error, you can read the bus message and decide
to either set the pipeline to PLAYING again, or to handle it another
way. Essentially, using two separate pipelines connected by proxysink
/ proxysrc means that GST_FLOW_ERROR is not forwarded upstream to
pipeline A.
Detailed usage:
https://gstreamer.freedesktop.org/documentation/proxy/proxysrc.html?gi-language=c#usage
Cheers,
Nirbheek
On Fri, Mar 4, 2022 at 1:00 PM Robert Hensel via gstreamer-devel
<gstreamer-devel at lists.freedesktop.org> wrote:
>
> Hello devs,
> Has anyone have a solution for rtmp2sink bailing or stopping a pipeline when experiencing a server disconnect? Flaky internet more than likely.
>
> There must be a way to reconnect wait x time then try to reconnect?
> Once solution was to tee my pipeline to allow it to continue running and deal with the rtmp2sink separately?
> A reconnect=10 on rtmp2sink would be a nice feature.
>
> Any python scripts ti point me in the right direction be great help.
>
> Rob
More information about the gstreamer-devel
mailing list