VideoEncoderConfiguration class
Definition of VideoEncoderConfiguration.
- Annotations
-
- @JsonSerializable(explicitToJson: true)
Constructors
- VideoEncoderConfiguration({VideoDimensions? dimensions, VideoFrameRate? frameRate, VideoFrameRate? minFrameRate, int? bitrate, int? minBitrate, VideoOutputOrientationMode? orientationMode, DegradationPreference? degradationPrefer, VideoMirrorMode? mirrorMode})
- Constructs a VideoEncoderConfiguration
Properties
- bitrate ↔ int?
-
Bitrate of the video (Kbps). Refer to the table below and set your bitrate. If you set a bitrate beyond the proper range, the SDK automatically adjusts it to a value within the range.
You can also choose from the following options:
- BitRate.Standard: (Recommended) The standard bitrate mode. In this mode, the bitrates differ between the LiveBroadcasting and Communication profiles:
- In the Communication profile, the video bitrate is the same as the base bitrate.
- In the LiveBroadcasting profile, the video bitrate is twice the base bitrate.
- BitRate.Compatible: The compatible bitrate mode. In this mode, the bitrate stays the same regardless of the profile. If you choose this mode for the Live Broadcast profile, the video frame rate may be lower than the set value.
Meta uses different video codecs for different profiles to optimize the user experience. For example, the Communication profile prioritizes the smoothness while the Live Broadcast profile prioritizes the video quality (a higher bitrate). Therefore, We recommend setting this parameter as
0
.getter/setter pair - degradationPrefer ↔ DegradationPreference?
-
The video encoding degradation preference under limited bandwidth:
See DegradationPreference.
getter/setter pair
- dimensions ↔ VideoDimensions?
-
The video frame dimensions (px), which is used to specify the video quality and measured by the total number of pixels along a frame's width and height. The default value is 640 × 360.
You can customize the dimension, or select from the following list:
getter/setter pair
- frameRate ↔ VideoFrameRate?
-
The video frame rate (fps). The default value is 15. You can either set the frame rate manually or choose from VideoFrameRate. We do not recommend setting this to a value greater than 30.
getter/setter pair
- hashCode → int
-
The hash code for this object.
no setterinherited
- minBitrate ↔ int?
-
The minimum encoding bitrate (Kbps). The Meta SDK automatically adjusts the encoding bitrate to adapt to the network conditions. Using a value greater than the default value forces the video encoder to output high-quality images but may cause more packet loss and hence sacrifice the smoothness of the video transmission. That said, unless you have special requirements for image quality, Meta does not recommend changing this value.
getter/setter pair
- minFrameRate ↔ VideoFrameRate?
-
The minimum video encoder frame rate (fps). The default value is VideoFrameRate.Min (the SDK uses the lowest encoder frame rate).
getter/setter pair
- mirrorMode ↔ VideoMirrorMode?
-
Sets the mirror mode of the published local video stream.
This member only affects the video that the remote user sees.
See VideoMirrorMode.
getter/setter pair
- orientationMode ↔ VideoOutputOrientationMode?
-
The orientation mode.
See VideoOutputOrientationMode.
getter/setter pair
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited