RongRTCAVCapturer Class Reference

Inherits from RongRTCAVOutputStream : NSObject
Declared in RongRTCAVCapturer.h

Overview

音视频采集管理实例

– init

不可用

- (instancetype)init

Return Value

失败

Discussion

不可用

Declared In

RongRTCAVCapturer.h

– new

不可用

- (instancetype)new

Return Value

失败

Discussion

不可用

Declared In

RongRTCAVCapturer.h

– initWithParameters:tag:

不可用

- (instancetype)initWithParameters:(nullable RongRTCStreamParams *)pars tag:(NSString *)tag

Parameters

pars

采集参数

tag

标识

Return Value

失败

Discussion

不可用

Declared In

RongRTCAVCapturer.h

+ sharedInstance

单例对象获取

+ (instancetype)sharedInstance

Return Value

采集器对象

Discussion

单例对象获取

Declared In

RongRTCAVCapturer.h

– setCaptureParam:

通话前设置音视频采集参数,通过过程中设置无效

- (void)setCaptureParam:(RongRTCVideoCaptureParam *)params

Parameters

params

参数

Discussion

通话前设置音视频采集参数,通过过程中设置无效

Declared In

RongRTCAVCapturer.h

– setMicrophoneDisable:

关闭/打开麦克风

- (void)setMicrophoneDisable:(BOOL)disable

Parameters

disable

YES 关闭,NO 打开

Discussion

关闭/打开麦克风

Declared In

RongRTCAVCapturer.h

– switchCamera

切换前后摄像头

- (void)switchCamera

Discussion

切换前后摄像头

Declared In

RongRTCAVCapturer.h

– useSpeaker:

切换使用外放/听筒

- (BOOL)useSpeaker:(BOOL)useSpeaker

Parameters

useSpeaker

yes 使用扬声器 no 不使用

Return Value

接入外设时,如蓝牙音箱等 返回 NO

Discussion

切换使用外放/听筒

Declared In

RongRTCAVCapturer.h

– startCapture

开启音视频采集

- (void)startCapture

Discussion

开启音视频采集

Declared In

RongRTCAVCapturer.h

– stopCapture

关闭音视频采集

- (void)stopCapture

Discussion

关闭音视频采集

Declared In

RongRTCAVCapturer.h

– setCameraDisable:

采集运行中关闭或打开摄像头

- (void)setCameraDisable:(BOOL)disable

Parameters

disable

YES 关闭,否则打开

Discussion

采集运行中关闭或打开摄像头

Declared In

RongRTCAVCapturer.h

  videoSizePreset

设置通话过程中的视频分辨率

@property (nonatomic, assign) RongRTCVideoSizePreset videoSizePreset

Discussion

设置通话过程中的视频分辨率

Declared In

RongRTCAVCapturer.h

  videoFrameRate

设置通话过程中视频帧率

@property (nonatomic, assign) RongRTCVideoFPS videoFrameRate

Discussion

设置通话过程中视频帧率

Declared In

RongRTCAVCapturer.h

  cameraPosition

当前摄像头的位置

@property (nonatomic, readonly) RongRTCDeviceCamera cameraPosition

Discussion

当前摄像头的位置

Declared In

RongRTCAVCapturer.h

  maxBitrate

运行通话过程中最大码率设置,单位 bps

@property (nonatomic, assign) NSUInteger maxBitrate

Discussion

运行通话过程中最大码率设置,单位 bps

Declared In

RongRTCAVCapturer.h

  videoOrientation

设置摄像头采集方向,默认以 AVCaptureVideoOrientationPortrait 角度进行采集

@property (nonatomic, assign) AVCaptureVideoOrientation videoOrientation

Discussion

设置摄像头采集方向,默认以 AVCaptureVideoOrientationPortrait 角度进行采集

Declared In

RongRTCAVCapturer.h

  audioBufferCallback

接收到音频或者发送音频时的音频数据,用户可以直接处理该音频数据

@property (nonatomic, copy, nullable) RongRTCAudioPCMBufferCallback audioBufferCallback

Discussion

接收到音频或者发送音频时的音频数据,用户可以直接处理该音频数据

Declared In

RongRTCAVCapturer.h

  videoSendBufferCallback

引擎底部开始视频编码并发送之前会往上层抛一个回调,用户可以修改和调整 CMSampleBufferRef 数据,然后返回一个 CMSampleBufferRef 数据,如果返回空或者没有实现该回调,则会使用默认视频数据传输

@property (nonatomic, copy, nullable) RongRTCVideoCMSampleBufferCallback videoSendBufferCallback

Discussion

引擎底部开始视频编码并发送之前会往上层抛一个回调,用户可以修改和调整 CMSampleBufferRef 数据,然后返回一个 CMSampleBufferRef 数据,如果返回空或者没有实现该回调,则会使用默认视频数据传输

注:如果用户传正常数据,则内部会自行 CFRelease CMSampleBufferRef 对象,上层不需要再考虑释放问题

Declared In

RongRTCAVCapturer.h

  videoDisplayBufferCallback

本地摄像头采集的视频在即将预览前会往上层抛一个视频帧回调,用户可以处理视频帧数据之后然后回传给 RTC,RTC 使用用户处理的视频帧进行预览

@property (nonatomic, copy, nullable) RongRTCVideoCMSampleBufferCallback videoDisplayBufferCallback

Discussion

本地摄像头采集的视频在即将预览前会往上层抛一个视频帧回调,用户可以处理视频帧数据之后然后回传给 RTC,RTC 使用用户处理的视频帧进行预览

注:如果用户传正常数据,则内部会自行 CFRelease CMSampleBufferRef 对象,上层不需要再考虑释放问题

Declared In

RongRTCAVCapturer.h

– setVideoRender:

设置视频媒体数据的渲染界面

- (void)setVideoRender:(nullable RongRTCLocalVideoView *)render

Parameters

render

渲染界面

Discussion

设置视频媒体数据的渲染界面

Declared In

RongRTCAVCapturer.h

– writePCMBuffer:action:

混合 PCM 数据,单声道,16 bit signed, 48000 采样率,外置 mic 和网络音频流场景可以 通过该方法实现外置 mic 的混合以及替换的逻辑,目前只支持下面两种使用方式。 action: RTCAudioActionOnlyMix, RTCAudioActionReplace

- (BOOL)writePCMBuffer:(NSData *)pcmBuffer action:(RTCAudioAction)action

Parameters

pcmBuffer

声音 buffer

action

设置混音模式

Return Value

是否混合成功

Discussion

混合 PCM 数据,单声道,16 bit signed, 48000 采样率,外置 mic 和网络音频流场景可以 通过该方法实现外置 mic 的混合以及替换的逻辑,目前只支持下面两种使用方式。 action: RTCAudioActionOnlyMix, RTCAudioActionReplace

内部会保证时间同步,上层请注意往里面写的频率(写入速度太快容易导致内部缓冲区满而导致丢失数据) 另外如果仅仅是文件声音混合,请直接使用 RongRTCAudioMixerEngine,使用更加简单方便

Declared In

RongRTCAVCapturer.h

– muteAllRemoteAudio:

将所有远端用户静音,注:该功能只是不播放接收到的音频数据

- (void)muteAllRemoteAudio:(BOOL)mute

Parameters

mute

是否静音所有远端用户,YES 为禁止,NO 为允许

Discussion

将所有远端用户静音,注:该功能只是不播放接收到的音频数据

Declared In

RongRTCAVCapturer.h