228 Commits

Author SHA1 Message Date
David Zhao
69290c535b Send full update after joining when there are missed updates 2021-06-19 00:14:40 -07:00
David Zhao
38c81e5645 Support for video dimensions in publications (#36)
* send back video dimensions

* Store video dimensions in MediaTrack and forward in TrackInfo

* use committed protocol
2021-06-18 21:05:56 -07:00
David Zhao
515b1f0f7e exit downtrackRTCPWorker after disconnection 2021-06-17 23:31:17 -07:00
David Zhao
b2201a7b34 don't set PeerConnection callbacks, ignore the responses instead 2021-06-17 22:54:09 -07:00
David Zhao
e527a66096 endpoint to dump stacktraces 2021-06-17 22:54:09 -07:00
David Colburn
089d1d366d move createOffer to goroutine 2021-06-17 22:33:26 -07:00
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
db7d5fff52 Test reliability - give time for HTTP server to start 2021-06-09 13:54:52 -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
bbf7f83784 Improve integration test reliability, wait for RedisRouter to start 2021-06-09 09:51:44 -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
59a27d20c3 improve test reliability, fully close rooms during server shutdown 2021-06-03 23:04:19 -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
5d85257577 install/update proto-gen tools in bootstrap 2021-06-02 22:56:58 -07:00
David Colburn
684691e1cd first commit 2021-06-02 23:46:38 -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
f01fee03c3 default to not map external IP. 2021-05-10 13:49:10 -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
7877bc6ecd support for redis db 2021-04-30 15:03:41 -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