WebRTC with data channel only?

William Gerecke gerecke at gmail.com
Fri Jul 17 19:38:56 UTC 2020


Thanks for the response.  First, my application is already doing lots of
other video/audio processing with GStreamer and I would really like to
stick with it if possible.  Second, I much prefer it over the massive
Chromium based WebRTC implementation from Google...not that GStreamer is
small.  :-)

Can anyone say for sure that webrtcbin doesn't currently support data
channels only?

Bill





On Fri, Jul 17, 2020 at 3:20 PM Anton Pryima <zingfrid at gmail.com> wrote:

> Hello Bill.
>
> As you need only a data channel, but neither video nor audio why do you
> need Gstreamer? Gstreamer is first of all audio/video framework. It is more
> useful to use 3rd party webrtc libraries like (
> https://webrtc.googlesource.com/src/+/master/api).
>
> Best regards,
> Anton.
>
> On Fri, Jul 17, 2020 at 5:10 PM William Gerecke <gerecke at gmail.com> wrote:
>
>> I'm still having this problem first posted in March.  I'm using GStreamer
>> webrtcbin to send data over a WebRTC data channel and all is working well!
>> The only problem is for the data channel to be established I also need to
>> specify a dummy audio stream as follows:
>>
>> pipe1 = gst_parse_launch("webrtcbin  name=sendrecv "
>>  "audiotestsrc is-live=true  ! audioconvert ! audioresample ! queue !
>> opusenc  ! rtpopuspay ! "
>>  "queue ! " RTP_CAPS_OPUS "97 ! sendrecv. ", &error);
>>
>> When I try webrtcbin by itself or with a fakesrc instead of an audio
>> source I can still create the data channel as below without errors but I
>> never get the "on-open" callback like I do when an audio source is present.
>>
>> g_signal_emit_by_name(webrtc1, "create-data-channel", "channel", NULL,
>> &send_channel);
>> if (send_channel) {
>>   g_print("Created data channel\n");
>>   connect_data_channel_signals(send_channel, session);
>> }
>>
>> So in short - can webrtcbin be configured to work with only data
>> channels, and if so, what am I missing?
>>
>> Bill
>>
>> On Tue, Mar 31, 2020 at 11:30 AM Bill G <foatus at hotmail.com> wrote:
>>
>>> Hello,
>>>
>>> I'm trying to get a webrtcbin running which has data channels only (i.e.
>>> no audio, no video.)  I started with the working sendrecv example and got
>>> to the point where I had a working data-channel with audio only.  When I
>>> remove audio the data channels fail to connect - one data channel is
>>> created by GStreamer code, another intiated on the browser side.
>>>
>>> I found and example (link below) for only receiving streams in which the
>>> gst_parse_launch() was removed and one-way transceivers manually added.  I
>>> read that without a audio/video sink pad connected the transceivers need to
>>> be manually created.  Maybe this is also related to data channels not
>>> functioning?
>>>
>>>
>>> https://github.com/centricular/gstwebrtc-demos/compare/master...a-morales:figure-out-transceivers?expand=1
>>>
>>> So, I'm assuming there is something preventing these data-channels from
>>> getting established, and asking how to get past it?  This is with
>>> everything running on one machine, Windows and GStreamer 1.16.  Thanks in
>>> advance!
>>> _______________________________________________
>>> gstreamer-devel mailing list
>>> gstreamer-devel at lists.freedesktop.org
>>> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>>>
>> _______________________________________________
>> gstreamer-devel mailing list
>> gstreamer-devel at lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>>
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20200717/051155cd/attachment.htm>


More information about the gstreamer-devel mailing list