Juliusz Chroboczek
165c942dc7
Add undocumented command /relay-test.
2021-01-11 18:24:54 +01:00
Juliusz Chroboczek
b600be8100
Implement /muteall.
2021-01-11 16:30:19 +01:00
Juliusz Chroboczek
63e2b5a4c4
Implement 'noecho' field in client messages.
2021-01-11 16:30:07 +01:00
Juliusz Chroboczek
9f67a03fdb
Update CHANGES for 0.2.
2021-01-09 23:53:04 +01:00
Juliusz Chroboczek
50a3d8b855
Update README.
2021-01-08 15:36:23 +01:00
Juliusz Chroboczek
2ad9e9d2b1
Update CHANGES.
2021-01-08 14:38:23 +01:00
Juliusz Chroboczek
617aee325f
Reduce ping timetout to 45 to 55s.
...
Thanks to Jeroen van Veen for the debugging.
2021-01-08 14:05:02 +01:00
Antonin Décimo
4b8a509a21
Fix typos.
2021-01-05 22:16:15 +01:00
Antonin Décimo
fb30fe3bb7
Fix removal of stream.onremovetrack callback.
2021-01-05 21:59:50 +01:00
Antonin Décimo
056ffcd2cf
Add missing semicolons.
2021-01-05 21:59:47 +01:00
Juliusz Chroboczek
d2f7010141
Call ondowntrack on each track.
...
We used to call it on just the first track. Also remove obsolete
remains of the onlabel callback.
2021-01-04 20:43:39 +01:00
Juliusz Chroboczek
5735322627
Add websocket handshake timeout.
2021-01-04 18:28:54 +01:00
Juliusz Chroboczek
7f4306ab3b
Optimise broadcast messages.
...
Avoid formatting JSON multiple times.
2021-01-04 18:28:54 +01:00
Juliusz Chroboczek
69bb12014e
Fix omitted break in gotUserMessage.
2021-01-04 13:15:50 +01:00
Juliusz Chroboczek
43ed55a055
Update group API after description change.
2021-01-04 01:41:34 +01:00
Juliusz Chroboczek
2e752f9460
Update CHANGES.
2021-01-03 23:47:01 +01:00
Juliusz Chroboczek
c30905fd5e
Add protocol documentation.
2021-01-03 23:41:13 +01:00
Juliusz Chroboczek
81e155a45f
Implement saving to disk of VP9.
2021-01-03 22:19:25 +01:00
Juliusz Chroboczek
80cb0a2f30
Simplify VP9 keyframe detection.
2021-01-03 20:55:35 +01:00
Juliusz Chroboczek
0ec9f92dad
Make 'clearchat' into a user message.
2021-01-03 17:47:56 +01:00
Juliusz Chroboczek
e393819eda
Carry raw SDP in the protocol.
2021-01-03 17:00:58 +01:00
Juliusz Chroboczek
ddafca5780
Decrease keyframe interval when writing to disk.
2021-01-03 13:48:02 +01:00
Juliusz Chroboczek
f53276b89e
Simplify the protocol and the protocol interface.
...
Split the id field into id and source, where source indicates the sender
of the message and id the entity being sent. Remove the label request,
just use the offerer's username. Maintain the username within the
ServerConnection, this removes a parameter from some methods.
2021-01-03 12:17:30 +01:00
Juliusz Chroboczek
0563356180
Don't complain about non-existent ice-servers.json.
2021-01-02 00:36:58 +01:00
Juliusz Chroboczek
450601f0e8
Move ICE code into own module, add tests.
2021-01-02 00:21:17 +01:00
Juliusz Chroboczek
845dccc2bb
Implement coturn's use-auth-secret.
2021-01-01 23:50:34 +01:00
Juliusz Chroboczek
dbec9df288
Use Pion's JSON support for ICE configuration.
2021-01-01 22:28:38 +01:00
Juliusz Chroboczek
2ec0c01458
Update README.
2021-01-01 17:54:48 +01:00
Juliusz Chroboczek
307c834b09
Check ICE configuration periodically.
2020-12-28 19:12:09 +01:00
Juliusz Chroboczek
89a9e6c738
Implement command-line option "relay-only".
2020-12-28 02:56:49 +01:00
Juliusz Chroboczek
a0418d26ec
Send RTC configuration with joined message.
...
This avoids one HTTP request, and is potentially more flexible.
2020-12-28 02:55:19 +01:00
Juliusz Chroboczek
d09c0f0a80
Make the value field of client messages carry arbitrary types.
2020-12-28 01:49:27 +01:00
Juliusz Chroboczek
5e831ab536
Append message footer to /me messages too.
2020-12-28 01:49:27 +01:00
Jeroen van Veen
fece9287e2
Make https optional.
2020-12-27 16:01:29 +01:00
Juliusz Chroboczek
2dcfe9ad8d
Update CHANGES.
2020-12-27 03:02:23 +01:00
Juliusz Chroboczek
9e4aede72a
Fix issues with unaligned atomic operations.
...
This could be solved by simply reordering the fields, but it
is more robust to move the atomics into their own structure,
and the extra indirection should not cost much.
2020-12-27 01:31:31 +01:00
Juliusz Chroboczek
e88942c9a9
Reduce the NACK delay.
...
We bound the NACK delay to 2 packets, which is what TCP does.
Thus, reducing the delay should be safe.
2020-12-26 22:09:26 +01:00
Juliusz Chroboczek
5d38b0a231
Allow various codecs.
...
It is now possible to specify codecs other than VP8 and Opus. This
turns out not to be very useful, since VP8 is the only codec supported
by all browsers (in violation of the WebRTC spec, which mandates support
for H.264), and there is no good reason to use anything other than Opus
for audio.
2020-12-26 19:46:37 +01:00
Juliusz Chroboczek
6c8e20c445
Don't attempt to write unsupported track to disk.
2020-12-26 04:17:55 +01:00
Juliusz Chroboczek
2785fa9f77
Store labels early.
...
This avoids spurious up.complete indications.
2020-12-25 22:32:30 +01:00
Juliusz Chroboczek
26ca4f7969
Warn when attempting to record unsupported codec.
2020-12-25 21:04:17 +01:00
Juliusz Chroboczek
f4379f7a8c
Protect against negotiation inconsistencies.
...
This is not an issue in the current code, assuming that clients
negotiate correctly, but will become one once we implement codec
flexibility.
2020-12-25 20:50:33 +01:00
Juliusz Chroboczek
2dfa175bd1
Create video element early.
2020-12-25 20:29:46 +01:00
Juliusz Chroboczek
3c04d48b85
Push a connection even if all tracks didn't arrive.
...
We used to push a connection when we got all tracks. However, it may
happen that some tracks fail; in that case, the connection would never
get pushed.
2020-12-25 20:23:46 +01:00
Juliusz Chroboczek
e5fec68acf
Start RTCP up sender early.
2020-12-25 20:10:12 +01:00
Juliusz Chroboczek
e3fd9a963a
Improve error handling during negotiation.
2020-12-25 18:54:18 +01:00
Juliusz Chroboczek
d5c7a13aae
Implement abort in the client->server direction.
2020-12-25 18:51:17 +01:00
Juliusz Chroboczek
cc35931ad1
Make isKeyframe codec-agnostic.
2020-12-25 16:40:38 +01:00
Juliusz Chroboczek
ed9377e38f
Disable playing files when browser doesn't support captureStream.
2020-12-24 00:01:33 +01:00
Juliusz Chroboczek
159a9b8147
Fix recording filename for Windows.
2020-12-23 23:15:36 +01:00