功能描述
在视频通话或视频互动直播场景中,视频画面是否清晰流畅,很大程度上决定着用户体验。
视频属性包含视频分辨率、帧率、码率等影响视频质量的参数设置。
分辨率、帧率、码率
SDK 通过如下参数设置视频编码的分辨率、帧率和码率。
- dimensions: 视频编码的分辨率 (px),默认值为 640 × 480。通常情况下,分辨率越高,视频的清晰度会越好。
- frameRate: 视频编码的帧率 (fps),即每秒钟要编码多少帧画面,默认值为 15。通常情况下,帧率越大,画面越流畅。如果对视频流畅度要求较高,可以设为 20 或 25,但建议不要超过 30。
- bitrate: 视频编码码率 (Kbps),默认值为 0,SDK会依据当前频道场景、分辨率、帧率为你设置一个最合适的码率。
接口描述
public class ChannelEngine { |
在VideoEncoderConfiguration可以设置视频分辨率、帧率、码率、视频方向等。
所有设置的参数均为理想情况下的最大值。当视频引擎因网络环境等原因无法达到设置的分辨率、帧率或码率的最大值时,会取最接近最大值的那个值。
详见VideoEncoderConfiguration
示例代码
engine.setVideoEncoderConfiguration(new VideoEncoderConfiguration( |
视频属性参考表
你可以直接选择 SDK 预设的分辨率、帧率和码率值,也参考下表进行自定义。
分辨率 (宽 × 高) | 帧率 (fps) | 基准码率 (Kbps,适用于通信) | 直播码率 (Kbps,适用于直播) |
---|---|---|---|
120 × 120 | 15 | 65 | 130 |
160 × 120 | 15 | 85 | 170 |
180 × 180 | 15 | 130 | 260 |
240 × 180 | 15 | 156 | 312 |
240 × 240 | 15 | 182 | 364 |
320 × 180 | 15 | 182 | 364 |
320 × 240 | 15 | 260 | 520 |
420 × 240 | 15 | 286 | 572 |
360 × 360 | 15 | 338 | 676 |
480 × 360 | 15 | 416 | 832 |
480 × 480 | 15 | 520 | 1040 |
640 × 360 | 15 | 520 | 1040 |
640 × 480 | 15 | 650 | 1300 |
840 × 480 | 15 | 793 | 1586 |
960 × 720 | 15 | 1183 | 2366 |
1280 × 720 | 15 | 1469 | 2938 |