fix facingMode for mobile web. (#303)

This commit is contained in:
CloudWebRTC
2023-06-14 13:30:42 +08:00
committed by GitHub
parent a41aab8d03
commit 4a6694cc3b
3 changed files with 12 additions and 8 deletions
+7 -4
View File
@@ -206,10 +206,13 @@ extension LocalVideoTrackExt on LocalVideoTrack {
logger.warning('Not a camera track'); logger.warning('Not a camera track');
return; return;
} }
final newOptions = CameraCaptureOptions(
await restartTrack( cameraPosition: position,
options.copyWith(cameraPosition: position), deviceId: null,
); maxFrameRate: options.maxFrameRate,
params: options.params);
await restartTrack(newOptions);
currentOptions = newOptions;
} }
Future<void> switchCamera(String deviceId, {bool fastSwitch = false}) async { Future<void> switchCamera(String deviceId, {bool fastSwitch = false}) async {
+3 -2
View File
@@ -44,8 +44,9 @@ class CameraCaptureOptions extends VideoCaptureOptions {
Map<String, dynamic> toMediaConstraintsMap() { Map<String, dynamic> toMediaConstraintsMap() {
var constraints = <String, dynamic>{ var constraints = <String, dynamic>{
...super.toMediaConstraintsMap(), ...super.toMediaConstraintsMap(),
'facingMode': if (deviceId == null)
cameraPosition == CameraPosition.front ? 'user' : 'environment', 'facingMode':
cameraPosition == CameraPosition.front ? 'user' : 'environment'
}; };
if (deviceId != null) { if (deviceId != null) {
if (kIsWeb) { if (kIsWeb) {
+2 -2
View File
@@ -24,11 +24,11 @@ dependencies:
uuid: ^3.0.6 uuid: ^3.0.6
synchronized: ^3.0.0+3 synchronized: ^3.0.0+3
protobuf: ^2.1.0 protobuf: ^2.1.0
flutter_webrtc: 0.9.33 flutter_webrtc: 0.9.34
flutter_window_close: ^0.2.2 flutter_window_close: ^0.2.2
device_info_plus: ^9.0.0 device_info_plus: ^9.0.0
webrtc_interface: 1.0.13 webrtc_interface: 1.0.13
dart_webrtc: 1.0.16 dart_webrtc: 1.0.17
js: ^0.6.4 js: ^0.6.4
platform_detect: ^2.0.7 platform_detect: ^2.0.7
js_bindings: ^0.1.2+1 js_bindings: ^0.1.2+1