Matthew Waters
d1b81046a4
webrtc/android: add missing gradle-wrapper jar
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-examples/-/merge_requests/25 >
2020-08-19 20:01:56 +10:00
Carl Karsten
e1de93cf40
Update README.md
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-examples/-/merge_requests/23 >
2020-08-09 20:06:54 +00:00
Sebastian Dröge
bbed24d919
webrtc: Change H264 examples to use aggregate-mode=zero-latency for best compatibility
...
The default changed back to none because it broke existing code.
See https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/749
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-examples/-/merge_requests/22 >
2020-08-05 10:47:55 +03:00
Sebastian Dröge
6378337a0e
sendrecv/Rust: Only set pipeline to Playing after connecting to the signals
...
Might miss some signal emissions otherwise, especially the
on-negotiation-needed signal.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-examples/-/merge_requests/21 >
2020-07-31 12:03:46 +03:00
Sebastian Dröge
3492c81fcf
Update Rust examples to latest bindings versions
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-examples/-/merge_requests/21 >
2020-07-31 11:59:58 +03:00
Seungha Yang
61d200a957
Port to gst_print* family
...
g_print* would print broken string on Windows
See also https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/258
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-examples/-/merge_requests/20 >
2020-07-27 16:28:33 +09:00
Philippe Normand
234dff8dbb
webrtc: Add Janus video-room example
...
This Rust crate provides a program able to connect to a Janus instance using
WebSockets and send a live video stream to the videoroom plugin.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-examples/-/merge_requests/15 >
2020-06-29 14:08:51 +01:00
Matthew Waters
f5d9471639
webrtc/test: check if selenium is available before attempting to add tests
...
Fixes the following error
File "/builds/vivia/gst-plugins-bad/gst-build/build/../subprojects/gst-examples/webrtc/check/basic.py", line 5, in <module>
from selenium import webdriver
ModuleNotFoundError: No module named 'selenium'
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-examples/-/merge_requests/17 >
2020-06-25 22:11:33 +10:00
Matthew Waters
204945b902
webrtc: indent sources
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-examples/-/merge_requests/16 >
2020-06-25 18:36:22 +10:00
Matthew Waters
e1c3dad258
webrtc: update for move to gst-examples
...
- Integrate with the build system.
- Some README updates.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-examples/-/merge_requests/16 >
2020-06-25 18:36:22 +10:00
Nirbheek Chauhan
d44b2316fa
sendonly: Don't assume we're building on UNIX
...
Fixes https://github.com/centricular/gstwebrtc-demos/issues/203
2020-06-25 18:36:18 +10:00
Nirbheek Chauhan
751d06af6f
signalling: Fix simple-server script name in Dockerfile
...
Fixes https://github.com/centricular/gstwebrtc-demos/issues/202
2020-06-18 23:34:48 +10:00
Corey Cole
17f84bfd81
fix: python webrtc_sendrecv.py typo
2020-06-18 23:34:48 +10:00
Nirbheek Chauhan
0776def18c
simple_server: asyncio TimeoutError has moved
...
We didn't notice this because the logging was broken.
2020-06-18 23:34:48 +10:00
Nirbheek Chauhan
77ae10ab66
simple_server: Restart when the certificate changes
...
Reload the SSL context and restart the server if the certificate
changes. Without this, new connections will continue to use the old
expired certificate.
2020-06-18 23:34:48 +10:00
Nirbheek Chauhan
4761396d87
simple_server: Abstract out ssl context generation
2020-06-18 23:34:48 +10:00
Nirbheek Chauhan
7b96b06752
simple_server: Make the server class loop-aware
...
First step in making the class able to manage its own state.
2020-06-18 23:34:48 +10:00
Nirbheek Chauhan
b8c1bd1fa3
simple_server: Fix init of websockets log handler
...
This has changed since the original code was written:
https://websockets.readthedocs.io/en/stable/cheatsheet.html#debugging
2020-06-18 23:34:48 +10:00
Nirbheek Chauhan
78df1ca74c
simple_server: Correctly pass health option
...
It was completely ignored. Also don't de-serialize options. Just parse
them directly in `__init__`. Less error-prone.
2020-06-18 23:34:48 +10:00
Sebastian Dröge
180e1ce24c
Update dependencies of Rust demos
2020-06-18 23:34:48 +10:00
Philippe Normand
c0f303eacf
janus: Remove unused parameters and refactor
2020-05-14 11:04:37 +01:00
Jan Schmidt
255fef3896
webrtc-recvonly-h264: Add a recvonly standalone example.
...
This example sets up a recvonly H.264 transceiver and receives
H.264 from a peer, while sending bi-directional Opus audio.
2020-05-09 19:13:52 +10:00
Jan Schmidt
8da8375986
sendonly: Fix transceivers leak.
...
Make sure to unref the transceivers array after use.
2020-05-09 19:13:52 +10:00
Matthew Waters
7445fc4928
signalling/server: python 3.8 asyncio has it's own TimeoutError
2020-05-06 06:01:57 +00:00
Matthew Waters
3a86a37c03
sendrecv: wait until the offer is set before creating answer
...
Pragmatically, an answer cannot be created until the offer is created as
the answer creation needs information from the offer. Practically, due
to implementation details, the answer was always queued after the set of
the offer and so the call flow did not matter.
The current code also hid a bug in webrtcbin where ice candidates would be
generated before the answer had been created which is against the JSEP
specification.
Change to the correct call flow for exemplary effect.
2020-05-06 06:01:57 +00:00
Matthew Waters
615813ef93
check/validate: a few more tests and improvements
...
Tests a matrix of options:
- local/remote negotiation initiator
- 'most' bundle-policy combinations (some combinations will never work)
- firefox or chrome browser
Across 4 test scenarios:
- simple negotiation with default browser streams (or none if gstreamer
initiates)
- sending a vp8 stream
- opening a data channel
- sending a message over the data channel
for a total of 112 tests!
2020-05-06 06:01:57 +00:00
Matthew Waters
c3f629340d
check: first pass at a couple of validate tests
2020-05-06 06:01:57 +00:00
Matthew Waters
bc821a85d4
tests: first pass at some basic browser tests
2020-05-06 06:01:57 +00:00
Matthew Waters
37cf0dffb5
add __pycache__ to .gitignore
2020-05-06 06:01:57 +00:00
Costa Shulyupin
56a03add78
html: charset
...
Avoid warning:
The character encoding of the HTML document was not declared.
The document will render with garbled text in some browser configurations
if the document contains characters from outside the US-ASCII range.
The character encoding of the page must be declared in the document
or in the transfer protocol.
2020-04-16 17:53:17 +02:00
Costa Shulyupin
8c4345da7d
android, mp-webrtc-sendrecv, sendonly: cleanup
...
webrtc-unidirectional-h264.c: removed empty lines
android: removed unused var
2020-04-16 17:34:11 +02:00
Costa Shulyupin
133a1593ee
android, sendrecv: add missing break in switch case statements
2020-04-16 17:34:11 +02:00
Costa Shulyupin
2557eab9d5
gst-indent
2020-04-14 14:40:37 +03:00
Costa Shulyupin
ca96b6de86
gst-indent
2020-04-14 14:40:37 +03:00
Costa Shulyupin
804c0c2f5e
gst-indent
2020-04-14 14:40:37 +03:00
Sebastian Dröge
65db695212
Set TURN server in Rust sendrecv example too
...
Previously it was only in the multiparty example.
2020-03-24 12:57:17 +02:00
Jan Schmidt
5bf67feae8
sendrecv: Add a switch for remote-offerer
...
Add a switch to the command line utility that makes it request
the initial offer from the peer instead of generating it.
Modify the webrtc.js example to support a new REQUEST_OFFER
message, and generate the offer when receiving it.
2020-03-05 03:03:17 +11:00
Jan Schmidt
c8e79c9671
webrtc-sendrecv.py: Add a stun server
...
Fixes https://github.com/centricular/gstwebrtc-demos/issues/160
2020-02-21 14:01:58 +11:00
Jan Schmidt
d2236266dc
Android: Update build for android example
2020-02-07 23:00:20 +11:00
Sebastian Dröge
699b830213
Update Rust examples to async-tungstenite 0.4
2020-02-01 15:21:08 +02:00
Jan Schmidt
1f1233064f
janus: Add picture-id-mode=2 to VP8 payloading
...
This writes an extended header and Picture-ID into each RTP packet
which makes Janus able to detect which frames are keyframes and
to request replacement keyframes.
2020-01-28 00:05:59 +11:00
Jan Schmidt
d8e7687132
janus: Add options near the top
...
Add some script configuration options to choose
between VP8 and H.264 near the top, to modify the video input
source, and to enable/disable RTX support
2020-01-28 00:05:59 +11:00
Sebastian Dröge
42c6eac7f1
Update dependencies of Rust examples and simplify slightly
2020-01-23 08:36:21 +02:00
Jan Schmidt
3cabee61c7
Add python Janus videoroom streaming example.
...
Added with permission and copyright @tobiasfriden and @saket424
on github. See https://github.com/centricular/gstwebrtc-demos/issues/66
2020-01-15 10:47:27 +11:00
Jan Schmidt
666f982882
Add a sendonly example
2020-01-15 10:47:27 +11:00
Sebastian Dröge
d995a00774
Update Rust examples to async-tungstenite 0.3
2020-01-05 11:41:31 +02:00
Sebastian Dröge
f5e4df464f
Update Rust demos to gstreamer 0.15 bindings release
2019-12-19 01:04:01 +02:00
Sebastian Dröge
5e18b460b3
multiparty/rust: Add Rust version of multiparty demo
...
Different to the C version this also mixes all participants into a grid
with videomixer.
2019-11-29 20:49:46 +01:00
Sebastian Dröge
9a46977a4c
sendrecv/rust: Port from tokio to async-std and use async/await
2019-11-29 20:47:21 +01:00
Sebastian Dröge
3d2b63615a
Update dependencies of Rust sendrecv example
2019-10-25 02:05:16 +03:00