Juliusz Chroboczek
49ade2f66f
Allow 30s slack for message times in the future.
2020-11-05 21:09:49 +01:00
Juliusz Chroboczek
7ee8cbc45a
Don't push incomplete connections.
...
If a connetion is slow to get established, this would cause it to
be pushed twice, the first time before it is complete. Thanks to
Roman Koval who noticed the issue.
2020-11-05 20:48:07 +01:00
Juliusz Chroboczek
c1920e36b6
Increase size of SRTP replay window.
2020-11-03 00:58:21 +01:00
Juliusz Chroboczek
96c3e4f830
Add warning about screen sharing under Safari.
2020-10-31 23:26:56 +01:00
Juliusz Chroboczek
2efb5b3cea
Improve timing of nackWriter.
2020-10-31 23:26:56 +01:00
Juliusz Chroboczek
b46da173e5
Don't log rate limited FIR.
2020-10-31 23:26:56 +01:00
Alain Takoudjou
581d2439ab
video controls on mobile
2020-10-31 01:23:20 +01:00
Alain Takoudjou
e900ef6d89
fix resize video on screen sharing too
2020-10-31 01:15:03 +01:00
Alain Takoudjou
4e2993dd1d
put message send date in the msg header block
2020-10-31 00:37:03 +01:00
Juliusz Chroboczek
4911b7ad38
Buffer local ICE candidates.
...
Apparently, it is possible for an ICE candidate to be generated
before onnegotiationneeded triggers. Avoid losing a candidate
in that case.
2020-10-30 00:35:36 +01:00
Alain Takoudjou
358cdd918d
make video control buttons more visible
2020-10-29 09:55:32 +01:00
Juliusz Chroboczek
56641b8d84
Allow 1s slack for long time display.
2020-10-28 18:00:48 +01:00
Alain Takoudjou
5a526c24f6
sfu.js: fix display message time in chat box
2020-10-28 16:58:14 +01:00
Alain Takoudjou
2388dfd351
allow to disable camera on videoElement
2020-10-28 16:58:14 +01:00
Alain Takoudjou
2e0b195964
fix resizing when we have only 2 videos
2020-10-28 16:58:14 +01:00
Alain Takoudjou
31deef47f5
fix video resizing, add a button to close chat
2020-10-28 16:58:14 +01:00
Alain Takoudjou
fc152d4377
allow to hide chat, improve settings bar and others
2020-10-28 16:58:14 +01:00
Alain Takoudjou
fa694e67bf
improve html interface, add custom controls for video
2020-10-28 16:58:14 +01:00
Juliusz Chroboczek
aae6b460f7
Clean up keyframe handling in rtpwriter.
2020-10-27 19:15:56 +01:00
Juliusz Chroboczek
6c6b0b39c9
Copy id list in setRequested.
...
Probably not necessary, but I'm supersticious.
2020-10-27 18:24:33 +01:00
Juliusz Chroboczek
f8d2bb93e8
Avoid deadlock in DelLocal.
2020-10-27 18:24:33 +01:00
Juliusz Chroboczek
0c8df661b2
Don't drop first frame when recording to disk.
2020-10-12 16:18:57 +02:00
Juliusz Chroboczek
c8de6620a7
Send non-trivial bitmaps during NACK forwarding.
2020-10-12 16:18:57 +02:00
Juliusz Chroboczek
9f6e23aaf3
Implement ToBitmap.
2020-10-12 14:43:28 +02:00
Juliusz Chroboczek
5e130122f5
Forward NACKs to sender in case of double loss.
...
We already send NACKs when a packet is missing. Under high packet loss,
however, the recovery packet might get lost two. Forward receiver NACKs
to the sender, but only after a delay and after checking that the packet
has not arrived in the meantime.
2020-10-12 13:00:59 +02:00
Juliusz Chroboczek
962c675ded
Packetcache: implement KeyframeSeqno and Get(nil).
2020-10-12 12:14:19 +02:00
Juliusz Chroboczek
2a516674f2
Request a keyframe every 10s when saving to disk.
2020-10-11 22:56:15 +02:00
Juliusz Chroboczek
5e845eb493
Send FIR if initial keyframe is too old.
2020-10-11 22:56:15 +02:00
Juliusz Chroboczek
a189e0ad46
Implement packetcache.Last.
2020-10-11 22:08:03 +02:00
Juliusz Chroboczek
e6bf9338dd
Document packetcache.
2020-10-08 18:46:52 +02:00
Juliusz Chroboczek
e07a98e355
Deal with reordered keyframes.
2020-10-08 17:58:58 +02:00
Juliusz Chroboczek
69540e23af
Allow anonymous users to chat.
2020-10-08 15:19:29 +02:00
Juliusz Chroboczek
2b4372ad87
Sort usernames case-insensitively in user interface.
2020-10-08 15:11:52 +02:00
Juliusz Chroboczek
90ba4814c8
Discard old history entries.
2020-10-08 14:41:33 +02:00
Juliusz Chroboczek
865848c7bc
Sort files in web interface.
2020-10-08 13:32:50 +02:00
Juliusz Chroboczek
31efabbefc
Disable mDNS gathering by default.
2020-10-06 06:08:29 +02:00
Juliusz Chroboczek
86f7594626
Discard old keyframes.
...
Avoids seqno wraparound. Unlikely, but I'm supersticious.
2020-10-06 05:02:58 +02:00
Juliusz Chroboczek
0eb1593bb8
Delay adding tracks until connection is complete.
...
This avoids losing packets at the beginning of a connection.
2020-10-06 04:18:46 +02:00
Juliusz Chroboczek
aa65164edd
Update dependencies to beta.7.
...
This fixes corruption of the first keyframe of every stream.
2020-10-06 04:18:46 +02:00
Juliusz Chroboczek
179b57a986
Display destination in private messages.
2020-10-05 20:48:44 +02:00
Juliusz Chroboczek
bda58b42c6
Rename disk to diskwriter.
2020-10-04 21:08:34 +02:00
Juliusz Chroboczek
44ae9f82d3
Remodularise packet cache.
2020-10-04 21:08:34 +02:00
Juliusz Chroboczek
a233f10b0b
Make NACK threshold depend on the average packet rate.
2020-10-04 21:08:34 +02:00
Juliusz Chroboczek
4a8e48d146
Take next packet index into account when sending NACKs.
...
This avoids sending NACKs for packets in the future.
2020-10-04 16:07:23 +02:00
Juliusz Chroboczek
67a821ea75
Increase minimum size of packet cache.
...
Now that we cache keyframes, it is worth keeping some history
even when latency is low.
2020-10-03 16:18:28 +02:00
Juliusz Chroboczek
a50e9c6771
Buffer last keyframe.
2020-10-03 16:18:28 +02:00
Juliusz Chroboczek
bbd5ce0c75
Remove dead code (cache.GetLast).
2020-10-03 13:15:30 +02:00
Juliusz Chroboczek
28b7c6d54d
Move RTP writer to separate file.
2020-10-03 12:58:01 +02:00
Juliusz Chroboczek
3083b89db9
Reuse single buffer in RTCP listeners.
2020-10-01 22:22:17 +02:00
Juliusz Chroboczek
0a49dc4569
Store HTTP server in atomic.Value.
...
Keeps the race detector from complaining.
2020-10-01 19:47:04 +02:00