1
Fork 0
mirror of https://github.com/jech/galene.git synced 2024-11-25 10:05:58 +01:00
Commit graph

1281 commits

Author SHA1 Message Date
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
Juliusz Chroboczek
4ff1151fef Update dependencies.
This should fix the deadlock on pc.Close that we have been seeing
(and that was worked around in a previous commit).
2020-10-01 19:25:45 +02:00
Juliusz Chroboczek
66dd71678e Implement private messages. 2020-10-01 16:59:09 +02:00
Juliusz Chroboczek
bd5cd7c1a2 Avoid calling pc.Close under a lock.
Apparently Close can take unbounded amounts of time.
2020-10-01 16:08:12 +02:00
Juliusz Chroboczek
13d6b7ad1f Don't disconnect clients when negotiation fails.
This may happen if we receive an answer for a connection that has been
closed in the meantime.
2020-10-01 15:35:35 +02:00
Juliusz Chroboczek
9ce591e4c5 Override permissions for disk recording. 2020-10-01 13:40:15 +02:00
Juliusz Chroboczek
3bd9a1db4e Timestamp chat messages. 2020-09-30 00:54:12 +02:00
Juliusz Chroboczek
480922268e Some more tweaks to JS typing. 2020-09-29 18:16:54 +02:00
Juliusz Chroboczek
f2c8116559 Fix typo in README. 2020-09-24 23:21:05 +02:00
Juliusz Chroboczek
8399ee2c4a Implement group description. 2020-09-24 22:03:41 +02:00
Juliusz Chroboczek
7183730a68 Make the default list of ICE servers empty, update docs. 2020-09-24 19:38:59 +02:00
Juliusz Chroboczek
6a4784da44 Hide share button if getDisplayMedia doesn't exist. 2020-09-23 21:53:59 +02:00
Juliusz Chroboczek
2e63c0f305 Error handling when attempting chat on closed connection. 2020-09-23 21:53:59 +02:00
Juliusz Chroboczek
667412e6ae Implement /set command. 2020-09-23 21:53:59 +02:00
Juliusz Chroboczek
cca19444d6 Mark paths in recordings server as relative.
Since paths may contain colons, they could otherwise be mistaken for
URLs with a scheme.
2020-09-21 23:03:03 +02:00
Juliusz Chroboczek
0aa77441bd Improve typing of javascript code.
We now enable typing of sfu.js.
2020-09-20 17:25:41 +02:00
Juliusz Chroboczek
4e14c29fbb Rework recordings server.
Simplifies the code, makes the files cachable, fixes permission issues.
2020-09-19 14:54:17 +02:00
Juliusz Chroboczek
eab848f2cf Add ability to receive nothing. 2020-09-18 20:09:52 +02:00
Juliusz Chroboczek
8a4b2f5d3f Implement studio and blackboard mode. 2020-09-18 19:58:05 +02:00
Juliusz Chroboczek
b8011371cf Rework settings handling in sfu.js.
There is now a data structure that contains the ultimate truth
about the user's preferences.  We no longer grovel through the
UI components.
2020-09-18 19:58:05 +02:00
Juliusz Chroboczek
f5cb2ff328 Rework synchronisation between webserver and main.
We now exit with an error code if the webserver couldn't start.
2020-09-18 14:47:33 +02:00