Commit Graph

15 Commits

Author SHA1 Message Date
David Zhao 7d02c01fd8 refactor - moved common code to livekit/protocol 2021-03-13 22:01:51 -08:00
David Zhao e402d0d0af subscriber control of tracks (unsubscribe/mute/quality), support simulcast (#23)
* subscription control & simulcast RTC APIs

* don't remove tracks for simulcast
2021-02-16 13:52:50 -08:00
David Zhao 090f8d0664 use dedicated PeerConnections for sending and receiving (#19)
* protobuf updates to support new protocol

* use dedicated publish & subscribe peerconnections

* update client to work with dedicated PCs

* fix Go client negotiation, reduced length of UUID
2021-02-12 22:30:31 -08:00
David Zhao c978a9cb1f move to ion-SFU's receiver and downtrack 2021-02-04 21:57:40 -08:00
David Zhao 9064f6ade1 decouple websocket and RTC nodes, prep for distributed 2021-01-16 10:37:38 -08:00
David Zhao bd885b1de9 handle unpublish track 2021-01-12 17:07:01 -08:00
David Zhao 21ac2413a2 catch panics to ensure reliability 2021-01-11 00:07:11 -08:00
David Zhao 7dcb88343a binding to buffer and correctly forwarding 2021-01-10 16:18:58 -08:00
David Zhao 258f5add2d protocol update: explicit AddTrack to move negotiation initiation to server side.
In order to avoid race conditions with WebRTC, where either side could initiate an offer when tracks have changes, we'll always initiate them from the SFU side.
2021-01-09 23:40:29 -08:00
David Zhao 0336e9d92f tests for MediaTrack, moving interfaces to new package 2020-12-31 23:24:45 -08:00
David Zhao 313236e3d3 server to support mutes 2020-12-31 14:21:19 -08:00
David Zhao 3518435783 using counterfeiter instead of gomocks, much simpler 2020-12-22 17:26:26 -08:00
David Zhao 2a79bdb678 switch participant to interface 2020-12-21 23:00:48 -08:00
David Zhao 72d853589c buffer messages 2020-12-20 13:43:16 -08:00
David Zhao f753172308 datatrack implementation 2020-12-19 16:13:56 -08:00