toMediaConstraintsMap method
override
Implementation
@override
Map<String, dynamic> toMediaConstraintsMap() {
final constraints = <String, dynamic>{
...super.toMediaConstraintsMap(),
if (deviceId == null) 'facingMode': cameraPosition == CameraPosition.front ? 'user' : 'environment'
};
if (deviceId != null && deviceId!.isNotEmpty) {
if (kIsWeb) {
if (isChrome129OrLater()) {
constraints['deviceId'] = {'exact': deviceId};
} else {
constraints['deviceId'] = {'ideal': deviceId};
}
} else {
constraints['optional'] = [
{'sourceId': deviceId}
];
}
}
if (maxFrameRate != null) {
constraints['frameRate'] = {'max': maxFrameRate};
}
return constraints;
}