Loading publisher/src/publisher.rs +15 −0 Original line number Diff line number Diff line Loading @@ -398,6 +398,21 @@ impl Publisher { } webrtcbin.set_property_from_str("bundle-policy", "max-bundle"); // Set transceiver as "sendonly". It was added above when linking the pipeline. let transceiver = webrtcbin .emit("get-transceiver", &[&0i32]) .expect("Can't emit get-transceiver(0)") .unwrap() .get::<gst_webrtc::WebRTCRTPTransceiver>() .expect("Invalid type") .unwrap(); transceiver .set_property( "direction", &gst_webrtc::WebRTCRTPTransceiverDirection::Sendonly, ) .unwrap(); // Spawn task for forwarding all GStreamer messages to our event loop let bus = pipeline.get_bus().expect("Pipeline without bus"); let mut bus_stream = bus.stream(); Loading server/src/subscriber.rs +15 −2 Original line number Diff line number Diff line Loading @@ -100,6 +100,21 @@ impl Subscriber { .link_pads(Some("src"), &webrtcbin, Some("sink_%u")) .expect("Couldn't link appsrc to webrtcbin"); // Set transceiver as "sendonly". It was added above when linking the pipeline. let transceiver = webrtcbin .emit("get-transceiver", &[&0i32]) .expect("Can't emit get-transceiver(0)") .unwrap() .get::<gst_webrtc::WebRTCRTPTransceiver>() .expect("Invalid type") .unwrap(); transceiver .set_property( "direction", &gst_webrtc::WebRTCRTPTransceiverDirection::Sendonly, ) .unwrap(); Ok(Subscriber { cfg, rooms: rooms.downgrade(), Loading Loading @@ -241,8 +256,6 @@ impl Subscriber { .expect("Invalid argument") .unwrap(); // TODO: SDP media should be sendonly debug!("Created offer {:#?}", offer.get_sdp()); webrtcbin Loading Loading
publisher/src/publisher.rs +15 −0 Original line number Diff line number Diff line Loading @@ -398,6 +398,21 @@ impl Publisher { } webrtcbin.set_property_from_str("bundle-policy", "max-bundle"); // Set transceiver as "sendonly". It was added above when linking the pipeline. let transceiver = webrtcbin .emit("get-transceiver", &[&0i32]) .expect("Can't emit get-transceiver(0)") .unwrap() .get::<gst_webrtc::WebRTCRTPTransceiver>() .expect("Invalid type") .unwrap(); transceiver .set_property( "direction", &gst_webrtc::WebRTCRTPTransceiverDirection::Sendonly, ) .unwrap(); // Spawn task for forwarding all GStreamer messages to our event loop let bus = pipeline.get_bus().expect("Pipeline without bus"); let mut bus_stream = bus.stream(); Loading
server/src/subscriber.rs +15 −2 Original line number Diff line number Diff line Loading @@ -100,6 +100,21 @@ impl Subscriber { .link_pads(Some("src"), &webrtcbin, Some("sink_%u")) .expect("Couldn't link appsrc to webrtcbin"); // Set transceiver as "sendonly". It was added above when linking the pipeline. let transceiver = webrtcbin .emit("get-transceiver", &[&0i32]) .expect("Can't emit get-transceiver(0)") .unwrap() .get::<gst_webrtc::WebRTCRTPTransceiver>() .expect("Invalid type") .unwrap(); transceiver .set_property( "direction", &gst_webrtc::WebRTCRTPTransceiverDirection::Sendonly, ) .unwrap(); Ok(Subscriber { cfg, rooms: rooms.downgrade(), Loading Loading @@ -241,8 +256,6 @@ impl Subscriber { .expect("Invalid argument") .unwrap(); // TODO: SDP media should be sendonly debug!("Created offer {:#?}", offer.get_sdp()); webrtcbin Loading