分辨率/码率/帧率设置
您可以通过 RCRTCCameraOutputStream
父类属性 videoConfig 设置视频参数。
提示
RCRTCCameraOutputStream
对象需要通过 [RCRTCEngine sharedInstance].defaultVideoStream
获取。
视频参数
RCRTCVideoStreamConfig
定义了视频流的分辨率、码率、与帧率参数:
@property (nonatomic, strong) RCRTCVideoStreamConfig *videoConfig;
参数 | 类型 | 说明 | 默认值 |
---|---|---|---|
videoSizePreset | RCRTCVideoSizePreset | 摄像头输出的视频分辨率 | RCRTCVideoSizePreset640x480 |
videoFps | RCRTCVideoFPS | 视频发送帧率 | RCRTCVideoFPS15 |
maxBitrate | NSUInteger | 最大码率,默认 640x480 分辨率时 | 900 kbps |
minBitrate | NSUInteger | 最小码率,默认 640x480 分辨率时 | 200 kbps |
在通话过程中,实际视频码率在最小码率和最大码率之间根据网络情况浮动。
设置大流的视频参数
在发布本地摄像头视频资源之前,可以通过 [RCRTCEngine sharedInstance].defaultVideoStream
对象设置发送大流的视频参数。
-
参数说明:
参数 类型 说明 videoConfig RCRTCVideoStreamConfig 视频参数采集参数 -
示例代码:
RCRTCVideoStreamConfig *videoConfig = [[RCRTCVideoStreamConfig alloc] init];
videoConfig.videoSizePreset = RCRTCVideoSizePreset720x480;
videoConfig.videoFps = RCRTCVideoFPS30;
[[RCRTCEngine sharedInstance].defaultVideoStream setVideoConfig:videoConfig];
设置小流的视频参数
如果开启了本地摄像头视频小流,可在发布本地摄像 头视频资源之前,通过 [RCRTCEngine sharedInstance].defaultVideoStream
对象设置发送的摄像头小流视频参数。
- (BOOL)setTinyVideoConfig:(RCRTCVideoStreamConfig *)config;
-
参数说明:
参数 类型 说明 videoConfig RCRTCVideoStreamConfig 视频参数采集参数 -
示例代码:
RCRTCVideoStreamConfig* tinyConfig = [[RCRTCEngine sharedInstance].defaultVideoStream getTinyVideoConfig];
tinyConfig.videoSizePreset = RCRTCVideoSizePreset180x180;
[[RCRTCEngine sharedInstance].defaultVideoStream setTinyVideoConfig:tinyConfig];