ChannelMediaOptions class

Channel media configuration options.

RtcConnection publishMicrophoneTrack publishCustomAudioTrack publishMediaPlayerAudioTrack true publishCameraTrack publishScreenCaptureVideo, publishScreenTrack, publishCustomVideoTrack publishEncodedVideoTrack true It is recommended that you configure the member parameters based on your business scenario. Otherwise, the SDK automatically assigns values to them.

Annotations
  • @JsonSerializable.new(explicitToJson: true, includeIfNull: false)

Properties

audienceLatencyLevel → AudienceLatencyLevelType?
Audience latency level. See AudienceLatencyLevelType.
final
audioDelayMs → int?
Delay (in milliseconds) for sending audio frames. You can use this parameter to delay the audio frames to ensure audio-video synchronization. To disable the delay, set this parameter to 0.
final
autoSubscribeAudio → bool?
Sets whether to automatically subscribe to all audio streams: true : Automatically subscribe to all audio streams. false : Do not automatically subscribe to any audio streams.
final
autoSubscribeVideo → bool?
Sets whether to automatically subscribe to all video streams: true : Automatically subscribe to all video streams. false : Do not automatically subscribe to any video streams.
final
channelProfile → ChannelProfileType?
Channel profile. See ChannelProfileType.
final
clientRoleType → ClientRoleType?
User role. See ClientRoleType.
final
customVideoTrackId → int?
Video track ID returned by the createCustomVideoTrack method. Default is 0.
final
defaultVideoStreamType → VideoStreamType?
Default video stream type to subscribe to: VideoStreamType.
final
enableAudioRecordingOrPlayout → bool?
If you need to publish the audio stream captured by the microphone, make sure this parameter is set to true. Sets whether to enable audio recording or playback: true : Enable audio recording or playback. false : Do not enable audio recording or playback.
final
enableMultipath → bool?
Permissions and system requirements: Android: Android 7.0 or higher (API level 24+), requires ACCESS_NETWORK_STATE and CHANGE_NETWORK_STATE permissions. iOS: iOS 12.0 or higher. macOS: 10.14 or higher. Windows: Windows Vista or higher. Whether to enable multipath transmission: true : Enable multipath transmission. false : Disable multipath transmission.
final
hashCode → int
The hash code for this object.
no setterinherited
isAudioFilterable → bool?
To enable this feature, please contact sales. Sets whether the current audio stream participates in stream selection based on audio volume algorithm. true : Participate in audio volume-based stream selection. If the feature is not enabled, this parameter has no effect. false : Do not participate in audio volume-based stream selection.
final
isInteractiveAudience → bool?
This parameter is used for cross-room co-hosting scenarios. The co-host needs to call joinChannelEx to join the other host's channel as an audience member and set isInteractiveAudience to true. This parameter only takes effect when the user role is clientRoleAudience. Whether to enable interactive audience mode: true : Enable interactive audience mode. Once enabled, the local user, as an interactive audience member, receives low-latency and smooth remote video. false : Do not enable interactive audience mode. The local user receives remote video with default settings as a regular audience member.
final
preferMultipathType → MultipathType?
Preferred transmission path type. See MultipathType. When using this parameter, make sure enableMultipath is set to true.
final
publishCameraTrack → bool?
Sets whether to publish the video captured by the camera: true : Publish the video captured by the camera. false : Do not publish the video captured by the camera.
final
publishCustomAudioTrack → bool?
Sets whether to publish custom captured audio: true : Publish the custom captured audio. false : Do not publish the custom captured audio.
final
publishCustomAudioTrackId → int?
ID of the custom audio track to be published. Default is 0. You can get the custom audio track ID via the createCustomAudioTrack method.
final
publishCustomVideoTrack → bool?
Sets whether to publish custom captured video: true : Publish the custom captured video. false : Do not publish the custom captured video.
final
publishEncodedVideoTrack → bool?
Sets whether to publish the encoded video: true : Publish the encoded video. false : Do not publish the encoded video.
final
publishFourthCameraTrack → bool?
This parameter is only applicable to Android, Windows, and macOS platforms. Sets whether to publish the video captured by the fourth camera: true : Publish the video captured by the fourth camera. false : Do not publish the video captured by the fourth camera.
final
publishFourthScreenTrack → bool?
This parameter is only applicable to Windows and macOS platforms. Sets whether to publish the video captured from the fourth screen: true : Publish the video captured from the fourth screen. false : Do not publish the video captured from the fourth screen.
final
publishLipSyncTrack → bool?
Sets whether to publish the video processed by the voice-driven plugin: true : Publish the video processed by the voice-driven plugin. false : (Default) Do not publish the video processed by the voice-driven plugin.
final
publishMediaPlayerAudioTrack → bool?
Sets whether to publish the audio from the media player: true : Publish the media player's audio. false : Do not publish the media player's audio.
final
publishMediaPlayerId → int?
ID of the media player to be published. Default is 0.
final
publishMediaPlayerVideoTrack → bool?
Sets whether to publish the video from the media player: true : Publish the media player's video. false : Do not publish the media player's video.
final
publishMicrophoneTrack → bool?
Sets whether to publish the audio captured by the microphone: true : Publish the audio captured by the microphone. false : Do not publish the audio captured by the microphone.
final
publishMixedAudioTrack → bool?
Sets whether to publish the local audio mixing: true : Publish the local audio mixing. false : Do not publish the local audio mixing.
final
publishRhythmPlayerTrack → bool?
Sets whether to publish the virtual metronome sound to remote users: true : Publish. Both local and remote users can hear the metronome. false : Do not publish. Only the local user can hear the metronome.
final
publishScreenCaptureAudio → bool?
This parameter is only applicable to Android and iOS platforms. Sets whether to publish the audio captured from the screen: true : Publish the screen-captured audio. false : Do not publish the screen-captured audio.
final
publishScreenCaptureVideo → bool?
This parameter is only applicable to Android and iOS platforms. Sets whether to publish the video captured from the screen: true : Publish the screen-captured video. false : Do not publish the screen-captured video.
final
publishScreenTrack → bool?
This parameter is only applicable to Windows and macOS platforms. Sets whether to publish the video captured from the screen: true : Publish the screen-captured video. false : Do not publish the screen-captured video.
final
publishSecondaryCameraTrack → bool?
Sets whether to publish the video captured by the second camera: true : Publish the video captured by the second camera. false : Do not publish the video captured by the second camera.
final
publishSecondaryScreenTrack → bool?
Sets whether to publish the video captured from the second screen: true : Publish the video captured from the second screen. false : Do not publish the video captured from the second screen.
final
publishThirdCameraTrack → bool?
This parameter is only applicable to Android, Windows, and macOS platforms. Sets whether to publish the video captured by the third camera: true : Publish the video captured by the third camera. false : Do not publish the video captured by the third camera.
final
publishThirdScreenTrack → bool?
This parameter is only applicable to Windows and macOS platforms. Sets whether to publish the video captured from the third screen: true : Publish the video captured from the third screen. false : Do not publish the video captured from the third screen.
final
publishTranscodedVideoTrack → bool?
Sets whether to publish the local transcoded video: true : Publish the local transcoded video. false : Do not publish the local transcoded video.
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
token → String?
(Optional) A dynamic key generated on the server for authentication. See Token Authentication. This parameter only takes effect when calling updateChannelMediaOptions or updateChannelMediaOptionsEx. Make sure the App ID, channel name, and user name used to generate the token are consistent with those used in the initialize method and the joinChannel or joinChannelEx methods.
final

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toJson() → Map<String, dynamic>
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited