DegradationPreference

Video encoding degradation preference when bandwidth is limited.

Enumerations

MaintainAuto
-1: (Default) Auto mode. The SDK automatically selects MaintainFramerate, MaintainBalanced, or MaintainResolution based on the video scenario you set, to achieve the best overall quality of experience (QoE).
MaintainQuality
0: When bandwidth is limited, the SDK prioritizes reducing frame rate while maintaining resolution during video encoding. This preference is suitable for scenarios where video quality is prioritized.
Note: Deprecated: This enum is deprecated. Use other enums instead.
MaintainFramerate
1: When bandwidth is limited, the SDK prioritizes reducing resolution while maintaining frame rate during video encoding. This preference is suitable for scenarios where smoothness is prioritized and some quality degradation is acceptable.
MaintainBalanced
2: When bandwidth is limited, the SDK reduces both frame rate and resolution during video encoding. The degradation is less severe than MaintainQuality and MaintainFramerate, and is suitable for scenarios where both smoothness and quality are moderately important.
Note: The resolution of locally sent video may change. Remote users must be able to handle this. See onVideoSizeChanged.
MaintainResolution
3: When bandwidth is limited, the SDK prioritizes reducing frame rate while maintaining resolution during video encoding. This preference is suitable for scenarios where video quality is prioritized.