webrtc examples: Force regular non-MULTIOPUS

Using MULTIOPUS breaks with most browsers

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3675>
This commit is contained in:
Olivier Crête 2023-01-03 17:44:37 -05:00 committed by GStreamer Marge Bot
parent c7bc6bc064
commit b7c0e8bc84
4 changed files with 8 additions and 5 deletions

View file

@ -159,7 +159,7 @@ impl App {
&format!( &format!(
"videotestsrc is-live=true ! vp8enc deadline=1 ! rtpvp8pay pt=96 ! tee name=video-tee ! \ "videotestsrc is-live=true ! vp8enc deadline=1 ! rtpvp8pay pt=96 ! tee name=video-tee ! \
queue ! fakesink sync=true \ queue ! fakesink sync=true \
audiotestsrc wave=ticks is-live=true ! opusenc ! rtpopuspay pt=97 ! tee name=audio-tee ! \ audiotestsrc wave=ticks is-live=true ! opusenc ! rtpopuspay pt=97 ! application/x-rtp,encoding-name=OPUS ! tee name=audio-tee ! \
queue ! fakesink sync=true \ queue ! fakesink sync=true \
audiotestsrc wave=silence is-live=true ! audio-mixer. \ audiotestsrc wave=silence is-live=true ! audio-mixer. \
audiomixer name=audio-mixer sink_0::mute=true ! audioconvert ! audioresample ! autoaudiosink \ audiomixer name=audio-mixer sink_0::mute=true ! audioconvert ! audioresample ! autoaudiosink \

View file

@ -248,8 +248,10 @@ create_receiver_entry (SoupWebsocketConnection * connection)
"rtph264pay config-interval=-1 name=payloader aggregate-mode=zero-latency ! " "rtph264pay config-interval=-1 name=payloader aggregate-mode=zero-latency ! "
"application/x-rtp,media=video,encoding-name=H264,payload=" "application/x-rtp,media=video,encoding-name=H264,payload="
RTP_PAYLOAD_TYPE " ! webrtcbin. " RTP_PAYLOAD_TYPE " ! webrtcbin. "
"autoaudiosrc ! queue max-size-buffers=1 leaky=downstream ! audioconvert ! audioresample ! opusenc ! rtpopuspay pt=" "autoaudiosrc ! queue max-size-buffers=1 leaky=downstream"
RTP_AUDIO_PAYLOAD_TYPE " ! webrtcbin. ", &error); " ! audioconvert ! audioresample ! opusenc ! rtpopuspay pt="
RTP_AUDIO_PAYLOAD_TYPE " ! application/x-rtp, encoding-name=OPUS !"
" webrtcbin. ", &error);
if (error != NULL) { if (error != NULL) {
g_error ("Could not create WebRTC pipeline: %s\n", error->message); g_error ("Could not create WebRTC pipeline: %s\n", error->message);
g_error_free (error); g_error_free (error);

View file

@ -116,7 +116,7 @@ impl App {
// Create the GStreamer pipeline // Create the GStreamer pipeline
let pipeline = gst::parse_launch( let pipeline = gst::parse_launch(
"videotestsrc pattern=ball is-live=true ! vp8enc deadline=1 ! rtpvp8pay pt=96 ! webrtcbin. \ "videotestsrc pattern=ball is-live=true ! vp8enc deadline=1 ! rtpvp8pay pt=96 ! webrtcbin. \
audiotestsrc is-live=true ! opusenc ! rtpopuspay pt=97 ! webrtcbin. \ audiotestsrc is-live=true ! opusenc ! rtpopuspay pt=97 ! application/x-rtp,encoding-name=OPUS ! webrtcbin. \
webrtcbin name=webrtcbin" webrtcbin name=webrtcbin"
)?; )?;

View file

@ -481,7 +481,8 @@ start_pipeline (gboolean create_offer, guint opus_pt, guint vp8_pt)
audio_desc = audio_desc =
g_strdup_printf g_strdup_printf
("audiotestsrc is-live=true wave=red-noise ! audioconvert ! audioresample" ("audiotestsrc is-live=true wave=red-noise ! audioconvert ! audioresample"
"! queue ! opusenc ! rtpopuspay name=audiopay pt=%u ! queue", opus_pt); "! queue ! opusenc ! rtpopuspay name=audiopay pt=%u "
"! application/x-rtp, encoding-name=OPUS ! queue", opus_pt);
audio_bin = gst_parse_bin_from_description (audio_desc, TRUE, &audio_error); audio_bin = gst_parse_bin_from_description (audio_desc, TRUE, &audio_error);
g_free (audio_desc); g_free (audio_desc);
if (audio_error) { if (audio_error) {