Commit Graph

30 Commits

Author SHA1 Message Date
Jacob Gelman 19b9e8c00a Additional data tracks logging (#4489)
* Additional data track logging

* Track total bytes published

* Rename field
2026-04-28 21:26:07 +09:00
Raja Subramanian 55912dff7e Add some simple data track stats (#4431) 2026-04-04 15:23:49 +05:30
Raja Subramanian a04e566dbf Use published track for model access in data down track. (#4176)
* Use published track for model access in data down track.

No need to pass in the model.

* implementation type assertion

* remove redundant log key

* one more type

* Close interface method

* clean up redundant log key

* remove unused method

* some interface changes to support data tracks in replay

* correct mock signature
2025-12-19 11:00:18 +05:30
Raja Subramanian 5964efbba5 Ensure subscribe data track handles are unique (#4162) 2025-12-16 13:52:05 +05:30
Raja Subramanian 64f3d1e972 switch participant callbacks to room to listener interface (#4136)
* switch participant callbacks to room to listener interface

* mage generate

* clean up

* clear listener

* clean up

* use interface in up data track manager

* tweaks

* Paul feedback - should reduce the diff as this keeps the room handlers as is except making methods for a couple of anonymous handlers

* clean up
2025-12-08 15:59:45 +05:30
Raja Subramanian 7954748d7a Data tracks (#4089)
* WIP

* WIP

* Starting to add some signalling integration testing.

* Working tests.

* fix tests

* Forward data packets (#4096)

* WIP commit

* WIP

* WIP

* fix forwarding

* address PR comments

* move some methods from LocalParticipant to Participant interface

* handle subscription update

* add extensions and tests

* more packet tests

* add test for replace extension and fix a bug

* update protocol and add config
2025-12-04 10:44:34 +05:30
cnderrauber 61ac44e5f7 Revert data track change (#513)
* Revert data track change

* clean code
2022-03-15 19:30:10 +08:00
Raja Subramanian be02611ab7 Locks around data track (#508)
* WIP commit

* Fix migration, thank you Jie
2022-03-12 20:10:46 +05:30
Raja Subramanian 80bd45f061 Some clean up (#505)
* WIP commit

* Refactor NTP time

* Clean up

* Update lk protocol
2022-03-11 22:40:49 +05:30
cnderrauber 608da4ba4b stats for pli and bitrate (#487)
* stats for pli and bitrate

* solve comments

* return 0 if no pli sent
2022-03-07 14:59:01 +08:00
cnderrauber 913ef3a646 Datatrack for data channel (#476)
* data track
2022-03-01 15:48:20 +08: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 Colburn 69b94e1142 error logging 2021-06-03 01:57:43 -05:00
David Zhao c76cdf11c2 add tests to ensure subscriber cleanup 2021-05-12 23:52:41 -07:00
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