* Telemetry capture published track updates
Signed-off-by: shishir gowda <shishir@livekit.io>
* Updated OnVideoLayerUpdate to take slice of layers
Signed-off-by: shishir gowda <shishir@livekit.io>
* Update proto dep
Signed-off-by: shishir gowda <shishir@livekit.io>
This ensures client reconnect attempts would be successful for long running rooms. It also fixes inaccurate permissions that were set incorrectly when full reconnections take place.
While reworking some cloud code, this is getting fired multiple times
(in RemoveAllSubscriber and in the callback). So, it causes some
errors in the logs. Fire it only from one place.
* Do not send connection quality when participant is not active.
Some times when the connection takes a while (in a long delay network
on Safari for example), connection quality arrives before connectivity.
* Do not calculate connection quality of unconnected participants
Still not using it. But, now that Pion has merged the initial
version of GCC (Google Congestion Control) for send side bandwidth
estimation, we can integrate it.
We will enable once we have tested and feel comfortable.
* Refactor media track subscriptions
- To enable re-use of common bits
- Add max quality from other nodes
* Lock close handlers slice
* Reverting multiple on close handlers of downtrack, unclear if it is needed yet
* Make Logger a pointer
* audio level in MediaTrack like remote media track
* Cleanup
* Add a no subscribers callback
* Add method to update subscribed quality from another node
* loss proxying from remote node
* Address comments from David
* create subscriber node quality map
* WIP commit
* update protocol
* Fixing a test and catching one place where casting was missed
* Fix one more spot which need conversion from livekit.RoomName -> string
* do not covert list
* Fix tests
Add back adding track to publishedTracks for testing purposes.
* WIP branch
* Don't know why merge from `master` did not catch this change.
* WIP commit
* Hook up all the bits for TWCC to work
* Fix typo
* WIP commit
* Catch up to latest API
* Move RTP/RTCP info config
* Instantiate GCC/TWCC interceptor only when in use
* comment SSBWE parts
* RTCP feedback in publisher config
* Adaptive publishing improvements
* fix tests
* proper comment sentence
* Address comments from David
* proper locking
* fix crash
* Do not start quality timer if not video