Fix resolution/framerate/bitrate issue for publishVideoTrack (#270)

* Add screenShareCaptureOptions for setScreenShareEnabled.

* update.

* bump version for flutter-webrtc.

* chore: add maintainResolution setting for publish screen sharing track.

* chore: add CaptureOptions for setCameraEnabled/setMicrophoneEnabled/setScreenShareEnabled.

* update.

* revert changes for videoRids.

* chore: set the default sending bitrate.
This commit is contained in:
CloudWebRTC
2023-04-27 10:14:03 +08:00
committed by GitHub
parent f07afc10be
commit 3407221fc4
5 changed files with 92 additions and 19 deletions
+15 -2
View File
@@ -28,7 +28,7 @@ class CameraCaptureOptions extends VideoCaptureOptions {
this.cameraPosition = CameraPosition.front,
String? deviceId,
double? maxFrameRate,
VideoParameters params = VideoParametersPresets.h540_169,
VideoParameters params = VideoParametersPresets.h720_169,
}) : super(params: params, deviceId: deviceId, maxFrameRate: maxFrameRate);
CameraCaptureOptions.from({required VideoCaptureOptions captureOptions})
@@ -89,7 +89,7 @@ class ScreenShareCaptureOptions extends VideoCaptureOptions {
this.captureScreenAudio = false,
String? sourceId,
double? maxFrameRate,
VideoParameters params = VideoParametersPresets.screenShareH720FPS15,
VideoParameters params = VideoParametersPresets.screenShareH1080FPS15,
}) : super(params: params, deviceId: sourceId, maxFrameRate: maxFrameRate);
ScreenShareCaptureOptions.from(
@@ -98,6 +98,19 @@ class ScreenShareCaptureOptions extends VideoCaptureOptions {
required VideoCaptureOptions captureOptions})
: super(params: captureOptions.params);
ScreenShareCaptureOptions copyWith({
bool? captureScreenAudio,
VideoParameters? params,
String? sourceId,
double? maxFrameRate,
}) =>
ScreenShareCaptureOptions(
captureScreenAudio: captureScreenAudio ?? this.captureScreenAudio,
params: params ?? this.params,
sourceId: sourceId ?? deviceId,
maxFrameRate: maxFrameRate ?? this.maxFrameRate,
);
@override
Map<String, dynamic> toMediaConstraintsMap() {
var constraints = super.toMediaConstraintsMap();