Release camera/mic when muted, restartTrack when unmuted (#39)

* re-structure tracks

* publication.track is now a LocalTrack or RemoteTrack

* restartTrack when unmute

* stop/start on restartTrack

* move to mute/unmute

* format

* remove comment
This commit is contained in:
Hiroshi Horie
2021-11-30 15:58:19 +07:00
committed by GitHub
parent 9e0a3b19fe
commit 8037d80674
18 changed files with 279 additions and 239 deletions
@@ -12,6 +12,7 @@ import '../participant/remote_participant.dart';
import '../proto/livekit_models.pb.dart' as lk_models;
import '../proto/livekit_rtc.pb.dart' as lk_rtc;
import '../utils.dart';
import 'remote_track.dart';
import 'track.dart';
import 'track_publication.dart';
@@ -31,6 +32,9 @@ class RendererVisibility {
/// Represents a track publication from a RemoteParticipant. Provides methods to
/// control if we should subscribe to the track, and its quality (for video).
class RemoteTrackPublication extends TrackPublication {
@override
covariant RemoteTrack? track;
final RemoteParticipant _participant;
bool _enabled = true;
lk_rtc.VideoQuality _videoQuality = lk_rtc.VideoQuality.HIGH;