Commit Graph

175 Commits

Author SHA1 Message Date
David Zhao 3fad61b365 Fix "missing tracks" - always send participant updates 2021-06-16 13:39:04 -07:00
David Colburn f30fe90d98 remove buffer close 2021-06-15 11:44:09 -07:00
David Colburn 4f56d55d86 close rtp buffers 2021-06-15 00:50:33 -07:00
David Zhao 2cecbad29d fix: memory leaks with BufferFactory being held 2021-06-14 22:53:29 -07:00
David Zhao 0cecd81906 fix negotiation timing issue, potential deadlock in ICE restart 2021-06-09 17:50:12 -07:00
David Zhao b3e6bd10cf fixed potentially skipping offer in PCTransport
this could explain the "missing" track problem when the server fails to send some tracks to some of the subscribers
2021-06-09 16:06:10 -07:00
David Zhao b10d903d3e fix: avoid deadlocks when participant closing, adapt to ion-sfu changes 2021-06-09 14:16:48 -07:00
David Zhao 6278673b46 Fix test 2021-06-09 13:17:13 -07:00
David Zhao abedc05ce5 Improve logging, hook up ion with zap logger 2021-06-09 12:31:29 -07:00
Théo Monnom 321ebab99b Add the ability to send data to specific participants (#34)
* UserPacket destination filter

* Updated protocol to v0.5.2

* Added DataChannel tests
2021-06-09 12:14:14 -07:00
David Zhao 7173dcc1d1 release read lock on AddSubscriber earlier 2021-06-08 15:28:49 -07:00
David Zhao e77c819d1a also increase send buffer size, 0.9.8 2021-06-07 21:22:42 -07:00
David Zhao fc41e14bf3 detect UDP buffer size w/o using original conn.
if we get FD on the mux connection, the connection will be set to blocking mode and then hang when stopping
2021-06-07 16:11:48 -07:00
David Zhao d949eaa99f set UDP read buffer size and info/warn during startup 2021-06-07 15:49:25 -07:00
David Zhao 3765739c7f stats: Do not count incoming Nack/PLI as outgoing 2021-06-07 13:11:13 -07:00
David Zhao a3228c2ae9 resolve data race conditions, code quality 2021-06-04 14:57:55 -07:00
David Colburn 5baf97e99b imports/inspections 2021-06-04 14:30:10 -05:00
David Zhao c510ea2e1a Fix race condition with Transport negotiations 2021-06-04 12:26:23 -07:00
David Zhao 24919d8ccb working CI test workflow, more reliable transport_test 2021-06-03 22:35:39 -07:00
David Zhao 0416299e02 fix sender report batching to not exceed MTU 2021-06-03 15:46:41 -07:00
David Colburn 69b94e1142 error logging 2021-06-03 01:57:43 -05:00
David Zhao 9ca662f06e fix deadlocks in track subscription 2021-06-02 20:42:44 -07:00
David Zhao 0900054c24 ability to disable auto subscribe per participant 2021-05-22 22:54:47 -07:00
David Zhao 19e6909cbb fix restarting ICE log 2021-05-17 11:00:34 -07:00
David Zhao e3854eaff4 handle ICE restart and candidate gathering race 2021-05-15 17:31:48 -07:00
David Zhao 6a99146c21 skip ICE restart if subscriber not connected 2021-05-14 22:50:45 -07:00
David Zhao ccb322c9c2 more reliable handling of ICE restart 2021-05-14 22:03:08 -07:00
David Zhao c76cdf11c2 add tests to ensure subscriber cleanup 2021-05-12 23:52:41 -07:00
David Zhao bbadd4ccb6 properly cleanup downtracks on subscriber disconnect 2021-05-12 23:40:41 -07:00
David Zhao 447f2d589b correctly subtract subscribed tracks 2021-05-12 09:04:46 -07:00
David Zhao 681010072c support for exposing stats via prometheus 2021-05-11 22:04:59 -07:00
David Zhao 9616149a88 collect inbound and outbound packet stats 2021-05-11 00:31:18 -07:00
David Zhao d399a57a7b Removed cli, mux cleanup, docs update 2021-05-07 01:16:33 -07:00
David Zhao f60b356807 don't hide trickle decode errors 2021-05-06 00:10:23 -07:00
David Zhao e1f23e6dbe remove logs about sending lossy packet 2021-04-28 12:39:07 -07:00
David Zhao 6b63cd5b31 Revamp data channels (#32)
* support for built-in data channels. active speaker updates via data channel

* fixed tests

* update to Pion 3.0.27
2021-04-27 22:02:59 -07:00
David Zhao 84ac0a718d single port mode connectivity improvements, ICE v2.1.6 2021-04-25 14:13:35 -07:00
David Zhao 342adee606 udp instead of udp4 2021-04-22 11:28:57 -07:00
David Zhao 4725872884 Disconnect immediately when server initiated close 2021-04-21 22:05:16 -07:00
David Zhao d6c155e060 set joinedAt when participant is created 2021-04-21 21:52:31 -07:00
David Zhao 07e4ab0c2a Update to official single port in WebRTC 2021-04-21 21:30:16 -07:00
David Zhao 99e6cae8dd Update to UDPMux performance & race condition fix 2021-04-19 17:01:30 -07:00
David Zhao 3b236f0d72 handle client reconnect with ICE restarts 2021-04-19 16:51:20 -07:00
David Zhao 93d10b2640 Manual negotiation and plan-b support 2021-04-16 00:56:25 -07:00
David Zhao 04f6b61ae1 fix potential timing issue with order sequencing 2021-04-16 00:43:55 -07:00
David Zhao e4238890ff Refactor/cleanup of negotiation path 2021-04-15 17:03:22 -07:00
David Zhao c2777cd556 single-port mode (beta) 2021-04-12 22:25:13 -07:00
David Zhao 3bba717eb5 Support for TCP-ICE, updated config documentation 2021-04-10 21:53:50 -07:00
David Zhao e47754179c disconnect participant when ICE connection fails 2021-04-10 10:58:12 -07:00
David Zhao b29bde4b87 fixed RLock typo 2021-04-07 14:11:47 -07:00