Compare commits

...

2 Commits

Author SHA1 Message Date
844efcda1a 👔 Disable the video by default 2025-10-19 19:23:17 +08:00
98e39cce6a 🐛 Fix the duplicate local participant 2025-10-19 19:23:01 +08:00

View File

@@ -65,22 +65,9 @@ class WebRTCManager {
try {
_localStream = await navigator.mediaDevices.getUserMedia({
'audio': true,
'video': true,
'video': false,
});
talker.info('[WebRTC] Local stream initialized');
// Add local participant
bool videoEnabled = _localStream!.getVideoTracks().isNotEmpty;
WebRTCParticipant localParticipant = WebRTCParticipant(
id: _signaling.userId,
name: _signaling.userName,
userinfo: _signaling.user,
isLocal: true,
isAudioEnabled: true,
isVideoEnabled: videoEnabled,
);
_participants[_signaling.userId] = localParticipant;
_participantController.add(localParticipant);
} catch (e) {
talker.error('[WebRTC] Failed to initialize local stream: $e');
rethrow;
@@ -315,8 +302,6 @@ class WebRTCManager {
track.enabled = enabled;
}
}
_participants[_signaling.userId]?.isAudioEnabled = enabled;
}
Future<void> toggleCamera(bool enabled) async {
@@ -325,8 +310,6 @@ class WebRTCManager {
track.enabled = enabled;
});
}
_participants[_signaling.userId]?.isVideoEnabled = enabled;
}
List<WebRTCParticipant> get participants => _participants.values.toList();