Re: Problem with whipwebrtcsink uplink to Dolby.io, was Problem with NDISRC, WHIPSINK, and audio
Tarun Tej K via gstreamer-devel <[email protected]>
| Newsgroups | gmane.comp.video.gstreamer.devel |
|---|---|
| Message-ID | <CAMvyGd89S4UVM15Zrf3Gxmzyip_WAC8edDvsFpfucAH1SJN-uw@mail.gmail.com> |
Hello, The fix for this issue is now merged upstream. Here is the MR - https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1290 On Sat, 29 Jul, 2023, 19:25 Tarun Tej K, <[email protected]> wrote: > Hi, > > Thanks for trying this out. > > We discovered a bug with whipwebrtcsink (and whipsink) that got exposed > because of one of the recent changes. > > More information about this issue is captured here - > https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/394 to > track this bug. > > > On Sat, 29 Jul, 2023, 18:33 GST Developer, <[email protected]> > wrote: > >> Hi Tarun >> >> We have finally got things up and running with GStreamer 1.22 as you >> advised, and indeed the 'request-aux-sender' issue has gone away. >> >> Now we have a different issue, which might be some specific compatibility >> with Dolby.io (formerly millicast). >> >> Here is what we get - the pipeline runs for a few seconds before failing: >> >> >> gst-launch-1.0 ndisrc ndi-name="PRIMARY (SIGGEN)" ! ndisrcdemux >> name=demux demux.video ! queue ! videoconvert ! whipwebrtcsink name=ws >> signaller::whip-endpoint=" >> https://director.millicast.com/api/whip/myStreamName",auth-token="......redacted......" >> demux.audio ! queue ! audioconvert ! ws. >> >> Setting pipeline to PAUSED ... >> >> Pipeline is live and does not need PREROLL ... >> >> Pipeline is PREROLLED ... >> >> Setting pipeline to PLAYING ... >> >> New clock: GstSystemClock >> >> Redistribute latency... >> >> Redistribute latency... >> >> Redistribute latency... >> >> >> *ERROR: from element /GstPipeline:pipeline0/GstWhipWebRTCSink:ws: >> GStreamer encountered a general stream error.* >> >> *Additional debug info:* >> >> *net/webrtc/src/webrtcsink/imp.rs <http://imp.rs>(1493): >> gstrswebrtc::webrtcsink::imp::BaseWebRTCSink::connect_signaller::{{closure}}::{{closure}} >> (): /GstPipeline:pipeline0/GstWhipWebRTCSink:ws:* >> >> *Signalling error: Error: Error None (Some("Old Canceller should not >> exist")) at net/webrtc/src/utils.rs:131 <http://utils.rs:131>* >> >> >> Execution ended after 0:00:02.911160133 >> >> Setting pipeline to NULL ... >> >> Freeing pipeline ... >> >> >> Any ideas ? >> >> Many thanks ! >> >> >> >> *On 15 Jul 2023, at 15:44, Tarun Tej K <[email protected] >> <[email protected]>> wrote:* >> >> *Ok, you will need Gstreamer version 1.22 for this, where webrtcbin has >> this signal 'request-aux-sender' implemented.* >> >> >> >> On Sat, 15 Jul, 2023, 19:53 GST Developer, <[email protected]> >> wrote: >> >>> Thanks Tarun, >>> >>> *we are making progress *- this pipeline *does* startup, but it fails >>> after a few seconds: >>> >>> *gst-launch-1.0 ndisrc ndi-name="NDIPE8 (SIGGEN)" ! ndisrcdemux >>> name=demux demux.video ! queue ! videoconvert ! whipwebrtcsink name=ws >>> signaller::whip-endpoint="https://director.millicast.com/api/whip/myStreamName >>> <https://director.millicast.com/api/whip/myStreamName>",auth-token=“..redacted.." >>> demux.audio ! queue ! audioconvert ! ws.* >>> >>> Setting pipeline to PAUSED ... >>> Pipeline is live and does not need PREROLL ... >>> Pipeline is PREROLLED ... >>> Setting pipeline to PLAYING ... >>> New clock: GstSystemClock >>> Redistribute latency... >>> Redistribute latency... >>> Redistribute latency… >>> >>> *<it runs fine here for a few seconds with the numbers running>* >>> >>> thread 'tokio-runtime-worker' panicked at 'Signal 'request-aux-sender' >>> of type 'GstWebRTCBin' not found', >>> /home/ubuntu/.cargo/git/checkouts/gtk-rs-core-7be42ca38bd6361c/44c4ab3/glib/src/object.rs:2642 >>> :32 >>> note: run with `RUST_BACKTRACE=1` environment variable to display a >>> backtrace >>> thread '<unnamed>' panicked at 'called `Result::unwrap()` on an `Err` >>> value: PoisonError { .. }', net/webrtc/src/webrtcsink/imp.rs:3013:47 >>> ERROR: from element /GstPipeline:pipeline0/GstWhipWebRTCSink:ws: >>> Panicked: called `Result::unwrap()` on an `Err` value: PoisonError { .. } >>> thread '<unnamed>' panicked at 'called `Result::unwrap()` on an `Err` >>> value: PoisonError { .. }', net/webrtc/src/webrtcsink/imp.rs:3013Execution >>> ended after 0:00:01.886767934 >>> :47Setting pipeline to NULL ... >>> >>> ERROR: from element /GstPipeline:pipeline0/GstWhipWebRTCSink:ws: Panicked >>> ERROR: from element /GstPipeline:pipeline0/GstWhipWebRTCSink:ws: Panicked >>> ERROR: from element /GstPipeline:pipeline0/GstWhipWebRTCSink:ws: >>> Panicked: called `Result::unwrap()` on an `Err` value: PoisonError { .. } >>> ERROR: from element /GstPipeline:pipeline0/GstWhipWebRTCSink:ws: Panicked >>> Freeing pipeline … >>> >>> >>> >>