summary |
shortlog | log |
commit |
commitdiff |
tree
first ⋅ prev ⋅ next
Sebastian Dröge [Thu, 27 Jun 2019 10:54:23 +0000 (13:54 +0300)]
Port Rust sendrecv example to asynchronous IO and completely rewrite
Code should be easier to follow now and also supports TLS WebSockets
now.
Fixes https://github.com/centricular/gstwebrtc-demos/issues/70
Yevgeny Kazakov [Fri, 12 Apr 2019 07:35:38 +0000 (09:35 +0200)]
Add video tag playsinline to enable autoplay in iOS Safari
Yevgeny Kazakov [Thu, 11 Apr 2019 21:33:50 +0000 (23:33 +0200)]
Replace deprecated onaddstream with ontrack; fixes #98
Emmanuel Gil Peyrot [Tue, 26 Feb 2019 17:19:13 +0000 (18:19 +0100)]
Update Rust dependencies
svangasse [Tue, 26 Feb 2019 12:41:15 +0000 (12:41 +0000)]
Java demo (#81)
Added working demo using GStreamer Java bindings
Jason Sun [Thu, 22 Nov 2018 05:23:15 +0000 (21:23 -0800)]
Improve building documentation
- Add apt-get install lines for Ubuntu 18.04
- add gstreamer-webrtc-1.0 and gstreamer-sdp-1.0 to CFLAGS
- make the CLAGS match LIBS in Makefile dependencies
Matthew Waters [Tue, 6 Nov 2018 04:41:28 +0000 (15:41 +1100)]
webrtc: fix data channel usage after requiring a READY webrtcbin
https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/commit/
c4fe52395b21b54fd6ee6b9a5010737404889242
https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/commit/
7bf18ad258bfd81200197378dbedde125f813fad
Fixes https://github.com/centricular/gstwebrtc-demos/issues/55
Mathieu Duponchelle [Mon, 15 Oct 2018 18:45:57 +0000 (20:45 +0200)]
sendrecv: port all examples to use a max-bundle policy
Sebastian Dröge [Mon, 15 Oct 2018 12:54:06 +0000 (15:54 +0300)]
Update Rust dependencies
Sebastian Dröge [Mon, 15 Oct 2018 12:53:56 +0000 (15:53 +0300)]
Add Rust instructions to README.md
Matthew Clark [Fri, 21 Sep 2018 20:13:44 +0000 (21:13 +0100)]
Add check_plugins() to Python example, matching C and Rust versions
Jan Alexander Steffens (heftig) [Thu, 20 Sep 2018 08:48:06 +0000 (10:48 +0200)]
on_server_message: Do not unref message GBytes
We don't own the reference. Since GLib 2.58, the g_bytes_unref that
follows the signal emission in libsoup loudly complains about the
attempt to underflow the refcount.
Mathieu Duponchelle [Fri, 21 Sep 2018 13:03:43 +0000 (15:03 +0200)]
sendrecv: try to add a data channel
Mathieu Duponchelle [Fri, 21 Sep 2018 13:02:55 +0000 (15:02 +0200)]
webrtc.js: fix tearing down
Sebastian Dröge [Mon, 10 Sep 2018 11:06:01 +0000 (14:06 +0300)]
Update to releases of glib/gstreamer bindings
meldron [Thu, 26 Jul 2018 11:20:55 +0000 (13:20 +0200)]
Fix stun server address
The stun server address has a space as suffix which is not allowed in the rust bindings.
Thibault Saunier [Tue, 3 Jul 2018 13:49:46 +0000 (09:49 -0400)]
Implement the demo in C# with GStreamerSharp
Based on https://github.com/ttustonic/GStreamerSharpSamples from
Tomislav Tustonić <ttustonic@outlook.com>
Nirbheek Chauhan [Tue, 3 Jul 2018 13:56:56 +0000 (19:26 +0530)]
Update README.md
Leon Tan [Wed, 27 Jun 2018 20:25:30 +0000 (22:25 +0200)]
Fix bug in Rust sendrecv demo
Matthew Clark [Tue, 26 Jun 2018 22:05:16 +0000 (23:05 +0100)]
Correct signalling usage instructions
Mathieu Duponchelle [Mon, 25 Jun 2018 12:44:58 +0000 (14:44 +0200)]
webrtc-sendrecv.py: required gstreamer 1.14.2
Addresses #25
Sebastian Dröge [Thu, 21 Jun 2018 10:16:15 +0000 (13:16 +0300)]
General code cleanup of the Rust sendrecv demo
Fewer clones and more borrowing, if let instead of match, match instead
of multiple ifs, insert a few newlines all over the place to make code
less dense, and a few changes to make code a bit more idiomatic.
Sebastian Dröge [Thu, 21 Jun 2018 06:03:18 +0000 (09:03 +0300)]
Fix various clippy warnings in the Rust sendrecv demo
maxmcd [Wed, 6 Jun 2018 16:51:15 +0000 (12:51 -0400)]
Add --disable-ssl flag to webrtc-sendrecv.c
maxmcd [Wed, 6 Jun 2018 16:42:07 +0000 (12:42 -0400)]
Add --disable-ssl option to simple-server.py
maxmcd [Sun, 27 May 2018 19:37:52 +0000 (15:37 -0400)]
Add Rust version of sendrecv example
This also comes with a docker image to collect all dependencies and
build everything.
Fixes https://github.com/centricular/gstwebrtc-demos/pull/20
Mathieu Duponchelle [Mon, 11 Jun 2018 18:26:07 +0000 (20:26 +0200)]
webrtc-sendrecv.py: improve debug and documentation
Mathieu Duponchelle [Mon, 11 Jun 2018 16:49:53 +0000 (18:49 +0200)]
sendrecv: python version
Nirbheek Chauhan [Wed, 11 Apr 2018 13:34:47 +0000 (19:04 +0530)]
Fix heading levels
Eloi Bail [Tue, 3 Apr 2018 14:53:24 +0000 (16:53 +0200)]
mp-webrtc-sendrecv.c: add missing comma in the list of package required
A comma is missing in the list of package required. Thus the package
'srtprtpmanager' is checked instead of packages srtp and rtpmanager.
Nirbheek Chauhan [Sat, 31 Mar 2018 20:23:44 +0000 (01:53 +0530)]
sendrecv/js: Improve more logging and errors
Nirbheek Chauhan [Sat, 31 Mar 2018 20:22:46 +0000 (01:52 +0530)]
sendrecv/js: Fix some null/undefined checks
Nirbheek Chauhan [Sat, 31 Mar 2018 19:58:02 +0000 (01:28 +0530)]
sendrecv/js: Don't reuse peer_id across sessions
It increases the likelihood of a collision with someone else, and it
was an unintended side-effect anyway.
Nirbheek Chauhan [Sat, 31 Mar 2018 19:45:16 +0000 (01:15 +0530)]
sendrecv/gst: Add no-op audio/video converters
This reduces the chance that someone will try to change the
audio/video source elements and get an error because they don't know
about the conversion elements. They will be no-ops in the usual case.
Closes https://github.com/centricular/gstwebrtc-demos/issues/8
Nirbheek Chauhan [Sat, 31 Mar 2018 19:37:51 +0000 (01:07 +0530)]
sendrecv/js: custom getUserMedia constraints
The html page now contains a text area in which the default
constraints will be added and can be edited.
Closes https://github.com/centricular/gstwebrtc-demos/issues/11
Nirbheek Chauhan [Sat, 31 Mar 2018 19:11:40 +0000 (00:41 +0530)]
sendrecv/js: Simplify local stream management
Just use the fulfilled value of the promise directly instead of
storing it separately
Nirbheek Chauhan [Sat, 31 Mar 2018 19:09:48 +0000 (00:39 +0530)]
sendrecv/js: Allow overriding peer_id and ws_server
This allows people to easily use a custom peer id or their own server
if the automatic values are not appropriate for them.
Nirbheek Chauhan [Sat, 31 Mar 2018 17:31:32 +0000 (23:01 +0530)]
sendrecv/js: Explicitly close the local stream when done
This immediately releases the webcam and mic instead of lazily at some
unpredictable time in the future.
Nirbheek Chauhan [Sat, 31 Mar 2018 16:54:15 +0000 (22:24 +0530)]
sendrecv/js: Make error statuses more prominent
Colour errors in red, and ensure that later status updates don't
overwrite existing error statuses.
Nirbheek Chauhan [Sat, 31 Mar 2018 08:22:02 +0000 (13:52 +0530)]
sendrecv/js: Call getUserMedia on incoming call
Instead of registering it on page load. This will allow us to add an
option for users to override the default constraints later.
This is also generally nicer because the browser won't open the webcam
immediately when you load the page and keep recording from it.
Nirbheek Chauhan [Sat, 31 Mar 2018 04:58:51 +0000 (10:28 +0530)]
sendrecv: Don't set pipeline state if it's NULL
Avoids ugly CRITICAL warnings when erroring out.
Nirbheek Chauhan [Sat, 31 Mar 2018 04:57:05 +0000 (10:27 +0530)]
Don't use strict ssl certificate checking for localhost
When using localhost signalling servers, we don't want to use
strict ssl because it's probably using a self-signed certificate
and there's no need to do certificate checking over localhost anyway.
Nirbheek Chauhan [Fri, 23 Mar 2018 06:40:26 +0000 (12:10 +0530)]
Add Makefiles for all C demos
Nirbheek Chauhan [Fri, 23 Mar 2018 06:35:09 +0000 (12:05 +0530)]
Fix compiler warnings in all C demos
Nirbheek Chauhan [Fri, 23 Mar 2018 06:06:40 +0000 (11:36 +0530)]
sendrecv: Fix SDP message format
The format is {'sdp': {'sdp': <sdp>, 'type': <sdptype>}}
The multiparty-sendrecv demo already uses this format.
Sebastian Kilb [Wed, 21 Mar 2018 00:56:49 +0000 (01:56 +0100)]
Fix audio/video linking error on windows
Closes https://github.com/centricular/gstwebrtc-demos/issues/5
Nirbheek Chauhan [Sat, 10 Mar 2018 07:51:34 +0000 (13:21 +0530)]
README.md: Document the binaries and Cerbero
Also mention where to file bug reports about the plugin itself.
Nirbheek Chauhan [Fri, 9 Mar 2018 20:24:48 +0000 (01:54 +0530)]
Check for all necessary plugins at startup
People seem to be having problems ensuring that they have all the
right plugins built, so make it a bit easier for them.
Nirbheek Chauhan [Thu, 8 Mar 2018 14:40:55 +0000 (20:10 +0530)]
Fix crash on Windows by delimiting option entries with NULL
Also use more verbose forms of g_assert which print values on failure
Nirbheek Chauhan [Sat, 17 Feb 2018 02:40:59 +0000 (08:10 +0530)]
README: link to blog post, document multiparty example
Also add TODO stubs for MCU and SFU
Tim-Philipp Müller [Fri, 2 Feb 2018 08:41:21 +0000 (08:41 +0000)]
README: fix formatting
Tim-Philipp Müller [Fri, 2 Feb 2018 08:39:04 +0000 (08:39 +0000)]
webrtc-sendrecv: define GST_USE_UNSTABLE_API to avoid compiler warnings
Tim-Philipp Müller [Fri, 2 Feb 2018 08:23:30 +0000 (08:23 +0000)]
Update README
Point to upstream repos now that it's been merged
Nirbheek Chauhan [Tue, 12 Dec 2017 16:10:09 +0000 (21:40 +0530)]
sendrecv: Add a Google STUN server to the configuration
Without this, the example will only work on link-local and localhost
networks.
Matthew Waters [Wed, 22 Nov 2017 13:21:36 +0000 (00:21 +1100)]
server/js: also allow running on localhost
Mathieu Duponchelle [Wed, 22 Nov 2017 12:15:48 +0000 (13:15 +0100)]
Update to new promise API
Nirbheek Chauhan [Mon, 30 Oct 2017 07:54:21 +0000 (13:24 +0530)]
multiparty sendrecv: Add a queue before the audio sink
Missed this, fixes the bug where removing a peer causes the pipeline to
get stuck. However, when peers leave, there is still a chance that the
pipeline will get stuck.
Nirbheek Chauhan [Mon, 30 Oct 2017 03:39:36 +0000 (09:09 +0530)]
WIP: Add a new multiparty sendrecv gstreamer demo
You can join a room and an audio-only call will be started with all
peers in that room. Currently uses audiotestsrc only.
BUG: With >2 peers in a call, if a peer leaves, the pipeline stops
outputting data from the remaining peers to the (audio) sink.
TODO: JS code to allow a browser to join the call
TODO: Cleanup pipeline when a peer leaves
TODO: Add ICE servers to allow calls over the Internet
TODO: Perhaps setup a TURN server as well
Nirbheek Chauhan [Mon, 30 Oct 2017 03:42:06 +0000 (09:12 +0530)]
sendrecv: Rename function for greater clarity
Nirbheek Chauhan [Sat, 28 Oct 2017 22:38:45 +0000 (04:08 +0530)]
Update Protocol.md
Fix indentation typos
Nirbheek Chauhan [Sat, 28 Oct 2017 13:30:42 +0000 (19:00 +0530)]
simple-server: Add support for multi-party rooms
Also add a new room-client.py to test the protocol which is documented
in Protocol.md
Nirbheek Chauhan [Sat, 28 Oct 2017 13:32:56 +0000 (19:02 +0530)]
Protocol.md: Fix headings
Nirbheek Chauhan [Sat, 28 Oct 2017 13:30:03 +0000 (19:00 +0530)]
signalling/client.py: Rename to session-client.py
Also fix CALL -> SESSION naming
Nirbheek Chauhan [Sat, 21 Oct 2017 14:27:29 +0000 (19:57 +0530)]
Add sendrecv implementation in js and gst webrtc
JS code runs on the browser and uses the browser's webrtc
implementation.
C code uses gstreamer's webrtc implementation, for which you need the
following repositories:
https://github.com/ystreet/gstreamer/tree/promise
https://github.com/ystreet/gst-plugins-bad/tree/webrtc
You can build these with either Autotools gst-uninstalled:
https://arunraghavan.net/2014/07/quick-start-guide-to-gst-uninstalled-1-x/
Or with Meson gst-build:
https://cgit.freedesktop.org/gstreamer/gst-build/
Nirbheek Chauhan [Sat, 21 Oct 2017 14:26:52 +0000 (19:56 +0530)]
Add a simple python3 webrtc signalling server
+ client for testing + protocol documentation
Nirbheek Chauhan [Sat, 21 Oct 2017 14:13:01 +0000 (19:43 +0530)]
Initial commit