1
Fork 0
Commit Graph

982 Commits

Author SHA1 Message Date
Juliusz Chroboczek 92de141b97 Rework sending of NACKs. 2020-05-03 11:06:08 +02:00
Juliusz Chroboczek 98a1776ce7 Include jitter in track statistics. 2020-05-03 11:06:08 +02:00
Juliusz Chroboczek 4dd245712f Include jitter and delay in receiver reports. 2020-05-03 11:06:08 +02:00
Juliusz Chroboczek 7961d7279b Move monotonic time to separate package, use microseconds. 2020-05-03 11:06:08 +02:00
Juliusz Chroboczek 1f50b42ee0 Disable checkbox on media failure in setLocal and SharedMedia. 2020-05-03 11:06:08 +02:00
Juliusz Chroboczek 5715182978 Fix TotalLost value in receiver reports. 2020-05-03 11:06:08 +02:00
Juliusz Chroboczek 100f72e76c Don't count NACK recovery as properly received packets. 2020-05-03 11:06:08 +02:00
Juliusz Chroboczek 78cf9d0dbc Resize videos automatically. 2020-05-03 11:06:08 +02:00
Juliusz Chroboczek b818d1890a Sort public groups. 2020-05-03 11:06:08 +02:00
Juliusz Chroboczek a74e4f68b5 Don't honour NACKs if we're congested. 2020-05-03 11:06:08 +02:00
Juliusz Chroboczek 5a1ef1ddd7 Use a proper accessor for timestampedByterate. 2020-05-03 11:06:08 +02:00
Juliusz Chroboczek 8fa68f9605 Remove track muting. 2020-05-03 11:06:08 +02:00
Juliusz Chroboczek 118ad7a3a7 Display actual rate in statistics. 2020-05-03 11:06:08 +02:00
Juliusz Chroboczek 5dd27e5067 Implement rate estimation. 2020-05-03 11:06:08 +02:00
Juliusz Chroboczek 10526d474e Add command /clear. 2020-04-30 19:13:32 +02:00
Juliusz Chroboczek fd1772ed72 Add .gitignore. 2020-04-30 19:13:32 +02:00
Juliusz Chroboczek 34eacafe5c Add sample ice-servers.json. 2020-04-30 19:13:32 +02:00
Juliusz Chroboczek f1deb84576 Increase the size of the NACK cache. 2020-04-30 19:13:32 +02:00
Juliusz Chroboczek 4996cf6931 Don't log unknown RTCP. 2020-04-30 19:13:32 +02:00
Juliusz Chroboczek 4173d6170e Ignore PLI and NACK for muted tracks. 2020-04-30 19:13:32 +02:00
Juliusz Chroboczek 6ba5315a48 Don't mute clients unless they are suffering packet loss.
Otherwise we never recover from low throughput.
2020-04-29 18:49:09 +02:00
Juliusz Chroboczek aef0c731b3 Add README. 2020-04-29 18:31:54 +02:00
Juliusz Chroboczek 3f7439fc48 Add primitive monitoring interface. 2020-04-29 16:08:07 +02:00
Juliusz Chroboczek 17941fa96d Parse receiver reports, save loss rate. 2020-04-29 16:03:54 +02:00
Juliusz Chroboczek b042bed9a3 Maintain reception statistics, send receiver reports. 2020-04-29 13:27:51 +02:00
Juliusz Chroboczek e2d89c7c17 Merge packet list and window into cache. 2020-04-29 11:11:07 +02:00
Juliusz Chroboczek a813cc9ce4 Split out sending loop into a separate function. 2020-04-29 02:00:40 +02:00
Juliusz Chroboczek 9bd093e78c Stop tracks before closing stream.
Otherwise the camera status light stays on.
2020-04-29 01:22:39 +02:00
Juliusz Chroboczek 81dfabbe50 Implement sending NACKs on the upstream connection. 2020-04-28 23:45:19 +02:00
Juliusz Chroboczek e5dae16da1 Rate-limit PLI. 2020-04-28 23:45:19 +02:00
Juliusz Chroboczek bfeeeb4bcd Handle NACKs arriving on down connections. 2020-04-28 23:45:19 +02:00
Juliusz Chroboczek d84604832d Don't complain on ErrClosedPipe. 2020-04-28 20:13:03 +02:00
Juliusz Chroboczek 151f37c062 Pass a track to the RTCP listener. 2020-04-28 20:13:03 +02:00
Juliusz Chroboczek d9a7f3d6c0 Avoid reallocating the list of local tracks at each packet. 2020-04-28 20:13:03 +02:00
Juliusz Chroboczek 87f70c4345 Mute clients when bitrate is too low. 2020-04-28 20:13:03 +02:00
Juliusz Chroboczek 1de42bd80e Kill obsolete function. 2020-04-28 15:07:58 +02:00
Juliusz Chroboczek 038ab46d2b Use a separate track for each down connection. 2020-04-28 14:54:50 +02:00
Juliusz Chroboczek 9c9748b888 Unmarshal RTP directly instead of using helper functions.
This avoids allocating a new header each time.
2020-04-28 14:52:36 +02:00
Juliusz Chroboczek 015699a9cd Gofmt. 2020-04-27 03:08:03 +02:00
Juliusz Chroboczek 4cebaa6dc2 Enable Trickle ICE. 2020-04-27 03:06:45 +02:00
Juliusz Chroboczek d24aafd314 Remove all down connections at websocket close. 2020-04-27 01:37:27 +02:00
Juliusz Chroboczek e7e1f248ea Dont send close on abort. 2020-04-27 01:33:05 +02:00
Juliusz Chroboczek 087f804100 Clear error after connecting. 2020-04-26 22:00:48 +02:00
Juliusz Chroboczek eed3d2aff7 Display upstream throughput. 2020-04-26 22:00:48 +02:00
Juliusz Chroboczek e19d704a0a Format error messages on the client side. 2020-04-26 19:15:02 +02:00
Juliusz Chroboczek c441b49d26 Send rate updates over RTCP. 2020-04-26 03:03:39 +02:00
Juliusz Chroboczek 98034c0f6f Rename streamCount to trackCount. 2020-04-26 00:39:07 +02:00
Juliusz Chroboczek 78d3b7ab40 Simplify sendPLI.
We use identical SSRC values on both sides, no need to map.
2020-04-26 00:25:22 +02:00
Juliusz Chroboczek c86b1c87d5 Add timeout for initial handshake. 2020-04-25 22:49:07 +02:00
Juliusz Chroboczek b201c3d93c Implement ping/pong exchanges and client timeouts. 2020-04-25 22:44:24 +02:00