Support updating local track features when pending. (#2863)

This commit is contained in:
Raja Subramanian authored and GitHub committed 2024-07-15 23:51:39 +05:30
1 parent 5e1b18dab3
commit affcd1ffdb
2 files changed
+76 -24

No files matched your search

+15 -24
View File
@@ -118,10 +118,7 @@ func (u *UpTrackManager) OnPublishedTrackUpdated(f func(track types.MediaTrack))
}
func (u *UpTrackManager) SetPublishedTrackMuted(trackID livekit.TrackID, muted bool) types.MediaTrack {
u.lock.RLock()
track := u.publishedTracks[trackID]
u.lock.RUnlock()
track := u.GetPublishedTrack(trackID)
if track != nil {
currentMuted := track.IsMuted()
track.SetMuted(muted)
@@ -236,34 +233,28 @@ func (u *UpTrackManager) HasPermission(trackID livekit.TrackID, subIdentity live
return u.hasPermissionLocked(trackID, subIdentity)
}
func (u *UpTrackManager) UpdateAudioTrack(update *livekit.UpdateLocalAudioTrack) error {
func (u *UpTrackManager) UpdatePublishedAudioTrack(update *livekit.UpdateLocalAudioTrack) types.MediaTrack {
track := u.GetPublishedTrack(livekit.TrackID(update.TrackSid))
if track == nil {
u.params.Logger.Warnw("could not find track", nil, "trackID", livekit.TrackID(update.TrackSid))
return errors.New("could not find published track")
if track != nil {
track.UpdateAudioTrack(update)
if u.onTrackUpdated != nil {
u.onTrackUpdated(track)
}
}
track.UpdateAudioTrack(update)
if u.onTrackUpdated != nil {
u.onTrackUpdated(track)
}
return nil
return track
}
func (u *UpTrackManager) UpdateVideoTrack(update *livekit.UpdateLocalVideoTrack) error {
func (u *UpTrackManager) UpdatePublishedVideoTrack(update *livekit.UpdateLocalVideoTrack) types.MediaTrack {
track := u.GetPublishedTrack(livekit.TrackID(update.TrackSid))
if track == nil {
u.params.Logger.Warnw("could not find track", nil, "trackID", livekit.TrackID(update.TrackSid))
return errors.New("could not find published track")
if track != nil {
track.UpdateVideoTrack(update)
if u.onTrackUpdated != nil {
u.onTrackUpdated(track)
}
}
track.UpdateVideoTrack(update)
if u.onTrackUpdated != nil {
u.onTrackUpdated(track)
}
return nil
return track
}
func (u *UpTrackManager) AddPublishedTrack(track types.MediaTrack) {