NIMNetCallManager Protocol Reference
| Conforms to | NSObject | 
|---|---|
| Declared in | NIMNetCallManagerProtocol.h | 
– start:type:option:completion:
required method
	主叫发起通话 - 新接口
- (void)start:(NSArray<NSString*> *)callees type:(NIMNetCallMediaType)type option:(nullable NIMNetCallOption *)option completion:(nullable NIMNetCallStartHandler)completionParameters
callees | 
						被叫帐号列表, 现在只支持传入一个被叫  | 
					
|---|---|
type | 
						呼叫类型  | 
					
option | 
						开始通话附带的选项, 可以为空。如果需要 SDK 自动开启摄像头,需要指定 option 的视频采集参数 videoCaptureParam  | 
					
completion | 
						发起通话结果回调  | 
					
Discussion
主叫发起通话 - 新接口
Declared In
NIMNetCallManagerProtocol.h
– response:accept:option:completion:
required method
	被叫响应呼叫
- (void)response:(UInt64)callID accept:(BOOL)accept option:(nullable NIMNetCallOption *)option completion:(nullable NIMNetCallResponseHandler)completionParameters
callID | 
						call id  | 
					
|---|---|
accept | 
						是否接听  | 
					
option | 
						开始通话附带的选项, 可以为空。如果需要 SDK 自动开启摄像头,需要指定 option 的视频采集参数 videoCaptureParam  | 
					
completion | 
						响应呼叫结果回调  | 
					
Discussion
被叫响应呼叫
被叫拒绝接听时, 主叫不需要再调用hangup:接口
Declared In
NIMNetCallManagerProtocol.h
– hangup:
required method
	挂断通话
- (void)hangup:(UInt64)callIDParameters
callID | 
						需要挂断电话的call id, 如果尚未获取到call id就填0  | 
					
|---|
Discussion
挂断通话
被叫在响应呼叫之前不要调用挂断接口
Declared In
NIMNetCallManagerProtocol.h
– reserveMeeting:completion:
required method
	预订多人会议
- (void)reserveMeeting:(NIMNetCallMeeting *)meeting completion:(nullable NIMNetCallMeetingHandler)completionParameters
meeting | 
						预订的多人会议  | 
					
|---|---|
completion | 
						预订会议结果  | 
					
Discussion
预订多人会议
Declared In
NIMNetCallManagerProtocol.h
– joinMeeting:completion:
required method
	加入多人会议
- (void)joinMeeting:(NIMNetCallMeeting *)meeting completion:(nullable NIMNetCallMeetingHandler)completionParameters
meeting | 
						需要加入的多人会议  | 
					
|---|---|
completion | 
						加入会议结果  | 
					
Discussion
加入多人会议
如果需要 SDK 自动开启摄像头,需要在 meeting 中指定 option 的视频采集参数 videoCaptureParam
Declared In
NIMNetCallManagerProtocol.h
– leaveMeeting:
required method
	离开多人会议
- (void)leaveMeeting:(NIMNetCallMeeting *)meetingParameters
meeting | 
						需要离开的多人会议  | 
					
|---|
Discussion
离开多人会议
当所有加入的人都离开了某会议, 该会议对应的名称才可以被重复预订
Declared In
NIMNetCallManagerProtocol.h
– startVideoCapture:
required method
	开始视频采集。用于需要在开始音视频通话之前开启视频采集的场景
- (BOOL)startVideoCapture:(NIMNetCallVideoCaptureParam *)paramParameters
param | 
						视频采集参数  | 
					
|---|
Return Value
开始是否成功
Discussion
开始视频采集。用于需要在开始音视频通话之前开启视频采集的场景
视频采集开始以后无法再调用该接口进行更新设置。需要先停止采集以后才能再次开始
Declared In
NIMNetCallManagerProtocol.h
– startCustomVideo:
required method
	开始自定义采集。
- (BOOL)startCustomVideo:(NIMNetCallCustomVideoParam *)paramParameters
param | 
						自定义视频参数  | 
					
|---|
Return Value
开始是否成功
Discussion
开始自定义采集。
Declared In
NIMNetCallManagerProtocol.h
– setVideoCaptureOrientation:
required method
	设置视频采集方向
- (BOOL)setVideoCaptureOrientation:(NIMVideoOrientation)orientationParameters
orientation | 
						需要设置的方向  | 
					
|---|
Return Value
设置是否成功
Discussion
设置视频采集方向
用于互动直播场景。只能在开始视频采集以后调用
Declared In
NIMNetCallManagerProtocol.h
– stopVideoCapture
required method
	停止视频采集。用于在网络通话的自动停止视频采集选项 stopVideoCaptureOnLeave 未开启时主动管理采集的关闭操作
- (void)stopVideoCaptureDiscussion
停止视频采集。用于在网络通话的自动停止视频采集选项 stopVideoCaptureOnLeave 未开启时主动管理采集的关闭操作
Declared In
NIMNetCallManagerProtocol.h
– setDisplayAndCropRect
required method
	macOS 鼠标选择桌面采集录屏区域
- (void)setDisplayAndCropRectDiscussion
macOS 鼠标选择桌面采集录屏区域
调用该接口之后,即可以在屏幕上选择录屏区域
Declared In
NIMNetCallManagerProtocol.h
– setScreenCaptureCropRect:
required method
	macOS设置桌面采集录屏区域
- (void)setScreenCaptureCropRect:(CGRect)cropRectParameters
cropRect | 
						采集范围  | 
					
|---|
Discussion
macOS设置桌面采集录屏区域
Declared In
NIMNetCallManagerProtocol.h
– switchCamera:
required method
	切换网络通话摄像头
- (void)switchCamera:(NIMNetCallCamera)cameraParameters
camera | 
						选择的摄像头  | 
					
|---|
Discussion
切换网络通话摄像头
切换网络通话类型将丢失该设置
Declared In
NIMNetCallManagerProtocol.h
– setCameraDisable:
required method
	设置摄像头关闭
- (BOOL)setCameraDisable:(BOOL)disableParameters
disable | 
						是否关闭  | 
					
|---|
Return Value
设置是否成功
Discussion
设置摄像头关闭
仅支持当前为视频模式时进行此设置, 切换网络通话类型将丢失该设置
Declared In
NIMNetCallManagerProtocol.h
– switchPreviewVideoQuality:
required method
	通话中切换预览视频质量
- (BOOL)switchPreviewVideoQuality:(NIMNetCallVideoQuality)qualityParameters
quality | 
						预览视频质量  | 
					
|---|
Return Value
是否设置成功. 如果用户尚未加入, 则无法设置
Discussion
通话中切换预览视频质量
Declared In
NIMNetCallManagerProtocol.h
– switchVideoQuality:
required method
	通话中切换视频质量
- (BOOL)switchVideoQuality:(NIMNetCallVideoQuality)qualityParameters
quality | 
						期望的视频质量  | 
					
|---|
Return Value
是否设置成功. 如果用户尚未加入, 则无法设置
Discussion
通话中切换视频质量
Declared In
NIMNetCallManagerProtocol.h
– setMeetingRole:
required method
	改变自己在会议中的角色
- (BOOL)setMeetingRole:(BOOL)actorParameters
actor | 
						是否为发言者角色, 发言者发送音视频数据, 非发言者不发送音视频数据  | 
					
|---|
Return Value
设置是否成功
Discussion
改变自己在会议中的角色
Declared In
NIMNetCallManagerProtocol.h
– startUploadLogWithRate:description:completion:
required method
	主动上传日志
- (void)startUploadLogWithRate:(NSInteger)rate description:(NSString *_Nullable)description completion:(void ( ^ ) ( NSError *error ))completionParameters
rate | 
						评分  | 
					
|---|---|
description | 
						描述字段  | 
					
completion | 
						完成回调  | 
					
Discussion
主动上传日志
主动上传日志
Declared In
NIMNetCallManagerProtocol.h
– setAudioMute:forUser:
required method
	指定某用户设置是否对其静音
- (BOOL)setAudioMute:(BOOL)mute forUser:(NSString *)uidParameters
mute | 
						是否静音, 静音后将听不到该用户的声音  | 
					
|---|---|
uid | 
						用户 uid  | 
					
Return Value
是否设置成功. 如果用户尚未加入, 则无法设置
Discussion
指定某用户设置是否对其静音
Declared In
NIMNetCallManagerProtocol.h
– setRemoteRenderModel:forUser:
required method
	指定某用户的远端渲染模式
- (BOOL)setRemoteRenderModel:(NIMNetCallRenderMode *)model forUser:(NSString *)uidParameters
model | 
						渲染模式  | 
					
|---|---|
uid | 
						用户 uid  | 
					
Return Value
是否设置成功. 如果用户尚未加入, 则无法设置
Discussion
指定某用户的远端渲染模式
Declared In
NIMNetCallManagerProtocol.h
– setAllUserAudioMute:
required method
	指定所有远端用户是否对其静音
- (BOOL)setAllUserAudioMute:(BOOL)muteParameters
mute | 
						是否静音, 静音后将听不到所有用户的声音  | 
					
|---|
Return Value
是否设置成功.
Discussion
指定所有远端用户是否对其静音
Declared In
NIMNetCallManagerProtocol.h
– setVideoMute:forUser:
required method
	指定某用户设置是否接收其视频
- (BOOL)setVideoMute:(BOOL)mute forUser:(NSString *)uidParameters
mute | 
						是否拒绝视频, 拒绝后将没有该用户视频数据回调  | 
					
|---|---|
uid | 
						用户uid  | 
					
Return Value
是否设置成功. 如果用户尚未加入, 则无法设置
Discussion
指定某用户设置是否接收其视频
Declared In
NIMNetCallManagerProtocol.h
– setVideoSendMute:
required method
	设置禁止发送视频
- (BOOL)setVideoSendMute:(BOOL)muteParameters
mute | 
						是否禁止发送视频  | 
					
|---|
Return Value
是否设置成功. 如果用户尚未加入, 则无法设置
Discussion
设置禁止发送视频
Declared In
NIMNetCallManagerProtocol.h
– control:type:
required method
	发送网络通话的控制信息,用于方便通话双方沟通信息
- (void)control:(UInt64)callID type:(NIMNetCallControlType)typeParameters
callID | 
						控制信息相关通话的call id  | 
					
|---|---|
type | 
						控制类型  | 
					
Discussion
发送网络通话的控制信息,用于方便通话双方沟通信息
Declared In
NIMNetCallManagerProtocol.h
– registerRemoteAudioCallBackWithUid:callback:
required method
	注册远端音频数据回调
- (BOOL)registerRemoteAudioCallBackWithUid:(NSString *)uid callback:(nullable NIMNetCallRemoteAudioPlayCallback)callbackParameters
uid | 
						用户uid  | 
					
|---|---|
callback | 
						数据回调,取消注册就设置 callback nil  | 
					
Return Value
是否设置成功
Discussion
注册远端音频数据回调
Declared In
NIMNetCallManagerProtocol.h
– registerPlayAudioCallBack:
required method
	注册音频播放数据回调
- (BOOL)registerPlayAudioCallBack:(nullable NIMNetCallAudioPlayCallback)callbackParameters
callback | 
						数据回调 取消注册就设置 callback nil  | 
					
|---|
Return Value
是否设置成功
Discussion
注册音频播放数据回调
Declared In
NIMNetCallManagerProtocol.h
– setMute:
required method
	设置网络通话麦克风静音
- (BOOL)setMute:(BOOL)muteParameters
mute | 
						是否开启麦克风静音  | 
					
|---|
Return Value
开启麦克风静音是否成功
Discussion
设置网络通话麦克风静音
该设置不影响伴音发送, 切换网络通话类型将丢失该设置
Declared In
NIMNetCallManagerProtocol.h
– setAudioSendMute:
required method
	设置是否关闭语音发送,包含伴音
- (BOOL)setAudioSendMute:(BOOL)muteParameters
mute | 
						是否关闭语音发送  | 
					
|---|
Return Value
设置是否成功
Discussion
设置是否关闭语音发送,包含伴音
Declared In
NIMNetCallManagerProtocol.h
– setSpeaker:
required method
	设置网络通话扬声器模式
- (BOOL)setSpeaker:(BOOL)useSpeakerParameters
useSpeaker | 
						是否开启扬声器  | 
					
|---|
Return Value
开启扬声器是否成功
Discussion
设置网络通话扬声器模式
切换网络通话类型将丢失该设置
Declared In
NIMNetCallManagerProtocol.h
– selectAudioExternalDevice:
required method
	选择音频外部设备类型
- (void)selectAudioExternalDevice:(NIMNetCallAudioExternalDeviceType)deviceTypeParameters
deviceType | 
						设备类型  | 
					
|---|
Discussion
选择音频外部设备类型
目前该接口只针对插入设备后选择设备类型的场景,SDK根据设备类型自动选择合适的音频配置,与 onAudioExternalDeviceStateChanged 配合使用。
Declared In
NIMNetCallManagerProtocol.h
– startAudioDump
required method
	打开音频dump
- (void)startAudioDumpDiscussion
打开音频dump
Declared In
NIMNetCallManagerProtocol.h
– stopAudioDump
required method
	关闭音频dump
- (void)stopAudioDumpDiscussion
关闭音频dump
Declared In
NIMNetCallManagerProtocol.h
– videoCaptureDevices
required method
	获取视频采集设备
- (NSArray<NIMNetCallVideoDevice*> *)videoCaptureDevicesReturn Value
所有视频采集设备
Discussion
获取视频采集设备
Declared In
NIMNetCallManagerProtocol.h
– currentCaptureDevice
required method
	获取当前视频采集设备
- (NIMNetCallVideoDevice *)currentCaptureDeviceReturn Value
当前视频采集设备
Discussion
获取当前视频采集设备
Declared In
NIMNetCallManagerProtocol.h
– switchCaptureDeviceWithDevice:
required method
	- 切换视频采集设备
 
- (BOOL)switchCaptureDeviceWithDevice:(NIMNetCallVideoDevice *)videoDeviceDiscussion
切换视频采集设备
@param videoDevice 视频采集设备
Declared In
NIMNetCallManagerProtocol.h
– audioDevices
required method
	- 获取macOS下所有音频输入输出设备 *
 
- (NSArray<NIMNetCallMacAudioDevice*> *)audioDevicesReturn Value
所有音频设备
Discussion
- 获取macOS下所有音频输入输出设备 *
 
Declared In
NIMNetCallManagerProtocol.h
– currentAudioInputDevice
required method
	获取macOS当前音频输入设备
- (NIMNetCallMacAudioDevice *)currentAudioInputDeviceReturn Value
音频输入设备
Discussion
获取macOS当前音频输入设备
Declared In
NIMNetCallManagerProtocol.h
– currentAudioOutputDevice
required method
	获取macOS当前音频输出设备
- (NIMNetCallMacAudioDevice *)currentAudioOutputDeviceReturn Value
音频输出设备
Discussion
获取macOS当前音频输出设备
Declared In
NIMNetCallManagerProtocol.h
– audioInputDevices
required method
	获取macOS所有音频输入设备
- (NSArray<NIMNetCallMacAudioDevice*> *)audioInputDevicesReturn Value
音频输入设备
Discussion
获取macOS所有音频输入设备
Declared In
NIMNetCallManagerProtocol.h
– audioOutputDevices
required method
	获取macOS音频输出设备
- (NSArray<NIMNetCallMacAudioDevice*> *)audioOutputDevicesReturn Value
音频输出设备
Discussion
获取macOS音频输出设备
Declared In
NIMNetCallManagerProtocol.h
– switchAudioInputDeviceWithDevice:
required method
	- 切换macOS的音频输入设备 *
 - @param device 目标音频采集设备
 
- (BOOL)switchAudioInputDeviceWithDevice:(NIMNetCallMacAudioDevice *)deviceDiscussion
- 切换macOS的音频输入设备 *
 @param device 目标音频采集设备
@return 是否设置成功
Declared In
NIMNetCallManagerProtocol.h
– setProximityMonitoringType:
required method
	设置近距离传感器类型,默认为 NIMNetCallProximityMonitoringTypeDefault
- (BOOL)setProximityMonitoringType:(NIMNetCallProximityMonitoringType)typeParameters
type | 
						近距离传感器类型  | 
					
|---|
Return Value
设置近距离传感器是否成功
Discussion
设置近距离传感器类型,默认为 NIMNetCallProximityMonitoringTypeDefault
默认情况下音频模式会打开传感器,以用户设置优先
Declared In
NIMNetCallManagerProtocol.h
– switchType:
required method
	切换网络通话类型
- (void)switchType:(NIMNetCallMediaType)typeParameters
type | 
						通话类型  | 
					
|---|
Discussion
切换网络通话类型
切换通话类型会丢失这些设置: 静音模式, 扬声器模式, 摄像头关闭, 切换摄像头
Declared In
NIMNetCallManagerProtocol.h
– setVideoMaxEncodeBitrate:
required method
	设置视频最大编码码率
- (BOOL)setVideoMaxEncodeBitrate:(NSUInteger)bitrateParameters
bitrate | 
						最大编码码率 (bps)  | 
					
|---|
Return Value
是否设置成功
Discussion
设置视频最大编码码率
Declared In
NIMNetCallManagerProtocol.h
– switchVideoEncoder:
required method
	切换视频编码器
- (BOOL)switchVideoEncoder:(NIMNetCallVideoCodec)codecParameters
codec | 
						视频编码器  | 
					
|---|
Return Value
是否设置成功. 如果用户尚未加入, 则无法设置
Discussion
切换视频编码器
硬编码设置仅在iOS8及以上系统有效
Declared In
NIMNetCallManagerProtocol.h
– switchVideoDecoder:
required method
	切换视频解码器
- (BOOL)switchVideoDecoder:(NIMNetCallVideoCodec)codecParameters
codec | 
						视频解码器  | 
					
|---|
Return Value
是否设置成功. 如果用户尚未加入, 则无法设置
Discussion
切换视频解码器
硬解码设置仅在iOS8及以上系统有效
Declared In
NIMNetCallManagerProtocol.h
– selectVideoAdaptiveStrategy:
required method
	选择视频调控策略
- (BOOL)selectVideoAdaptiveStrategy:(NIMAVChatVideoAdaptiveStrategy)videoAdaptiveStrategyParameters
videoAdaptiveStrategy | 
						视频调控策略  | 
					
|---|
Return Value
是否设置成功.
Discussion
选择视频调控策略
Declared In
NIMNetCallManagerProtocol.h
– sendVideoSampleBuffer:
required method
	发送视频 SampleBuffer
- (nullable NSError *)sendVideoSampleBuffer:(CMSampleBufferRef)bufferParameters
buffer | 
						只支持包含以下三种 CVPixelBuffer 数据格式的 sampleBuffer: kCVPixelFormatType_32BGRA、kCVPixelFormatType_420YpCbCr8BiPlanarVideoRange、kCVPixelFormatType_420YpCbCr8BiPlanarFullRange  | 
					
|---|
Return Value
发送结果
Discussion
发送视频 SampleBuffer
可以发送SDK回调上来的视频数据,也可以发送自定义视频数据 自定义数据输入不能超过720P
Declared In
NIMNetCallManagerProtocol.h
– setAsMainArea:completion:
required method
	互动直播设置主画面
- (void)setAsMainArea:(NSString *)uid completion:(void ( ^ ) ( NSError *__nullable error ))completionParameters
uid | 
						被设置的用户id  | 
					
|---|---|
completion | 
						完成回调 如果设置成功 error 为 nil  | 
					
Discussion
互动直播设置主画面
在互动直播下,动态切换布局,设置用户为主画面,只有互动直播主播可以设置
Declared In
NIMNetCallManagerProtocol.h
– switchBypassStreamingUrl:
required method
	切换互动直播推流地址
- (BOOL)switchBypassStreamingUrl:(NSString *)urlParameters
url | 
						推流地址  | 
					
|---|
Return Value
是否设置成功
Discussion
切换互动直播推流地址
Declared In
NIMNetCallManagerProtocol.h
– startAudioMix:
required method
	开始混音任务
- (nullable NSError *)startAudioMix:(NIMNetCallAudioFileMixTask *)taskParameters
task | 
						文件混音任务  | 
					
|---|
Return Value
结果, 如果成功开始了, 返回 nil
Discussion
开始混音任务
开始新的任务会结束正在进行中的任务
Declared In
NIMNetCallManagerProtocol.h
– updateAudioMix:
required method
	更新混音任务
- (nullable NSError *)updateAudioMix:(NIMNetCallAudioFileMixTask *)taskParameters
task | 
						文件混音任务  | 
					
|---|
Return Value
结果, 如果成功开始了, 返回 nil
Discussion
更新混音任务
可以更新循环播放次数和音量等
Declared In
NIMNetCallManagerProtocol.h
– pauseAudioMix
required method
	暂停混音
- (BOOL)pauseAudioMixReturn Value
是否成功
Discussion
暂停混音
Declared In
NIMNetCallManagerProtocol.h
– resumeAudioMix
required method
	恢复混音
- (BOOL)resumeAudioMixReturn Value
是否成功
Discussion
恢复混音
Declared In
NIMNetCallManagerProtocol.h
– stopAudioMix
required method
	结束混音
- (BOOL)stopAudioMixReturn Value
是否成功
Discussion
结束混音
Declared In
NIMNetCallManagerProtocol.h
– currentAudioMixTask
required method
	获取当前进行中的混音任务
- (nullable NIMNetCallAudioFileMixTask *)currentAudioMixTaskReturn Value
混音任务. 如果没有当前任务则返回 nil
Discussion
获取当前进行中的混音任务
Declared In
NIMNetCallManagerProtocol.h
– playSoundEffect:
required method
	播放音效,用于在混音时播放短暂的音效
- (nullable NSError *)playSoundEffect:(NIMNetCallAudioFileMixTask *)taskParameters
task | 
						音效任务。  | 
					
|---|
Return Value
结果, 如果成功开始了, 返回 nil
Discussion
播放音效,用于在混音时播放短暂的音效
Declared In
NIMNetCallManagerProtocol.h
– updateSoundEffect:
required method
	更新音效任务
- (nullable NSError *)updateSoundEffect:(NIMNetCallAudioFileMixTask *)taskParameters
task | 
						文件音效任务  | 
					
|---|
Return Value
结果, 如果成功开始了, 返回 nil
Discussion
更新音效任务
可以更新循环播放次数和音量等
Declared In
NIMNetCallManagerProtocol.h
– pauseSoundEffect
required method
	暂停音效
- (BOOL)pauseSoundEffectReturn Value
是否成功
Discussion
暂停音效
Declared In
NIMNetCallManagerProtocol.h
– resumeSoundEffect
required method
	恢复音效
- (BOOL)resumeSoundEffectReturn Value
是否成功
Discussion
恢复音效
Declared In
NIMNetCallManagerProtocol.h
– stopSoundEffect
required method
	结束音效
- (BOOL)stopSoundEffectReturn Value
是否成功
Discussion
结束音效
Declared In
NIMNetCallManagerProtocol.h
– fileTotalTime
required method
	混音文件总时长
- (SInt64)fileTotalTimeReturn Value
总时长 单位ms
Discussion
混音文件总时长
Declared In
NIMNetCallManagerProtocol.h
– currentPlayTime
required method
	混音文件当前播放时间
- (SInt64)currentPlayTimeReturn Value
当前播放时间 单位ms
Discussion
混音文件当前播放时间
Declared In
NIMNetCallManagerProtocol.h
– seekToTime:
required method
	混音文件seek到传入时间
- (void)seekToTime:(SInt64)timeParameters
time | 
						传入时间 单位ms  | 
					
|---|
Discussion
混音文件seek到传入时间
Declared In
NIMNetCallManagerProtocol.h
– startAudioCustomInputTask:
required method
	开始音频自定义输入
- (nullable NSError *)startAudioCustomInputTask:(NIMNetCallAudioCustomInputTask *)taskParameters
task | 
						自定义输入任务  | 
					
|---|
Return Value
结果 如果成功 返回 nil
Discussion
开始音频自定义输入
Declared In
NIMNetCallManagerProtocol.h
– inputAudioData:size:sampleRate:
required method
	输入音频pcm数据
- (nullable NSError *)inputAudioData:(SInt16 *)audioData size:(UInt32)size sampleRate:(Float64)sampleRateParameters
audioData | 
						音频数据  | 
					
|---|---|
size | 
						音频数据大小 单位字节 不能超过半秒数据 计算方式(采样率 * (mBytesPerPacket / mFramesPerPacket) * 0.5秒)  | 
					
sampleRate | 
						采样率 需要与开始任务中的采样率一致  | 
					
Return Value
结果 如果成功 返回 nil
Discussion
输入音频pcm数据
传入的音频数据格式(AudioStreamBasicDescription)需要符合 mFormatID = kAudioFormatLinearPCM; mFormatFlags = kAudioFormatFlagIsSignedInteger | kAudioFormatFlagIsPacked; mFramesPerPacket = 1;//每个packet的中frame的个数 mChannelsPerFrame = 1;//声道数 mBitsPerChannel = 16;//每个采样数据的位数 mBytesPerPacket = 2;//每个packet中数据的字节数 内部不做校验(如果不符合可能会无声音或异常声音)
Declared In
NIMNetCallManagerProtocol.h
– stopAudioCustomInputTask
required method
	结束音频自定义输入
- (void)stopAudioCustomInputTaskDiscussion
结束音频自定义输入
Declared In
NIMNetCallManagerProtocol.h
– startEarBack
required method
	打开耳返
- (void)startEarBackDiscussion
打开耳返
Declared In
NIMNetCallManagerProtocol.h
– stopEarBack
required method
	关闭耳返
- (void)stopEarBackDiscussion
关闭耳返
Declared In
NIMNetCallManagerProtocol.h
– changeEarBackVolume:
required method
	调节耳返音量
- (BOOL)changeEarBackVolume:(NSUInteger)volumeParameters
volume | 
						耳返音量 接受输入值为 0 到 10  | 
					
|---|
Return Value
是否调节成功
Discussion
调节耳返音量
Declared In
NIMNetCallManagerProtocol.h
– localPreview
required method
	获得当前视频通话的本地预览层
- (nullable UIView *)localPreviewReturn Value
预览层
Discussion
获得当前视频通话的本地预览层
Declared In
NIMNetCallManagerProtocol.h
– remoteDisplayViewWithUid:
required method
	获得当前视频通话远端渲染层
- (nullable UIView *)remoteDisplayViewWithUid:(NSString *)uidParameters
uid | 
						被设置的用户id  | 
					
|---|
Return Value
渲染层
Discussion
获得当前视频通话远端渲染层
Declared In
NIMNetCallManagerProtocol.h
– snapshotFromLocalVideoCompletion:
required method
	本地截图. 截取自己下一帧待发送的画面
- (void)snapshotFromLocalVideoCompletion:(void ( ^ ) ( UIImage *__nullable image ))resultParameters
result | 
						截图结果  | 
					
|---|
Discussion
本地截图. 截取自己下一帧待发送的画面
如果截图失败, result 中 image 为 nil
Declared In
NIMNetCallManagerProtocol.h
– currentCallID
required method
	获取正在进行中的网络通话call id
- (UInt64)currentCallIDReturn Value
call id, 如果没有正在进行中的通话则返回0
Discussion
获取正在进行中的网络通话call id
Declared In
NIMNetCallManagerProtocol.h
– netStatus:
required method
	获取当前网络通话中某用户的网络状态
- (NIMNetCallNetStatus)netStatus:(NSString *)userParameters
user | 
						用户. 可以传入自己的 id 以获取自己的发送网络状况  | 
					
|---|
Return Value
网络状态
Discussion
获取当前网络通话中某用户的网络状态
Declared In
NIMNetCallManagerProtocol.h
– startRecording:videoBitrate:uid:
required method
	开始MP4文件录制, 录制通话过程中自己的音视频内容到MP4文件
- (BOOL)startRecording:(nullable NSURL *)filePath videoBitrate:(UInt32)videoBitrate uid:(NSString *)userIdParameters
filePath | 
						录制文件路径, SDK不负责创建目录, 请确保文件路径的合法性, 也可以传入nil, 由SDK自己选择文件路径  | 
					
|---|---|
videoBitrate | 
						录制文件视频码率设置, 可以不指定, 由SDK自己选择合适的码率  | 
					
userId | 
						录制用户对象的id  | 
					
Return Value
是否允许开始录制
Discussion
开始MP4文件录制, 录制通话过程中自己的音视频内容到MP4文件
只有通话连接建立以后才允许开始录制
Declared In
NIMNetCallManagerProtocol.h
– startRecording:option:uid:
required method
	开始MP4文件录制, 录制通话过程中自己的音视频内容到MP4文件
- (BOOL)startRecording:(nullable NSURL *)filePathURL option:(NIMNetCallMP4RecordOption *)option uid:(NSString *)userIdParameters
filePathURL | 
						录制文件路径, SDK不负责创建目录, 请确保文件路径的合法性, 也可以传入nil, 由SDK自己选择文件路径  | 
					
|---|---|
option | 
						录制文件视频参数设置, 可以不指定, 由SDK自己选择合适的参数值  | 
					
userId | 
						录制用户对象的id  | 
					
Return Value
是否允许开始录制
Discussion
开始MP4文件录制, 录制通话过程中自己的音视频内容到MP4文件
只有通话连接建立以后才允许开始录制
Declared In
NIMNetCallManagerProtocol.h
– stopRecordingWithUid:
required method
	停止MP4文件录制
- (BOOL)stopRecordingWithUid:(NSString *)userIdParameters
userId | 
						录制用户对象的id  | 
					
|---|
Return Value
是否接受停止录制请求
Discussion
停止MP4文件录制
Declared In
NIMNetCallManagerProtocol.h
– startAudioRecording:error:
required method
	- 开始通话录音. 录制通话中所有参与者的声音, 包含混音任务播放的声音, 录制成 aac 或者 wav 文件 *
 - @param filePath 录制文件路径, 不包含文件类型后缀. 包含文件类型后缀的完整文件路径可以在开始录制以后通过 currentAudioRecordingFilePath 查询. *
 - @discussion SDK不负责创建目录, 请确保文件路径的合法性, 也可以传入 nil, 由 SDK 自己选择文件路径 *
 - @param error 错误. 如果开始通话录音失败, 此处回填错误码
 
- (BOOL)startAudioRecording:(nullable NSURL *)filePath error:(NSError *__nullable *)errorDiscussion
- 开始通话录音. 录制通话中所有参与者的声音, 包含混音任务播放的声音, 录制成 aac 或者 wav 文件 *
 - @param filePath 录制文件路径, 不包含文件类型后缀. 包含文件类型后缀的完整文件路径可以在开始录制以后通过 currentAudioRecordingFilePath 查询. *
 - @discussion SDK不负责创建目录, 请确保文件路径的合法性, 也可以传入 nil, 由 SDK 自己选择文件路径 *
 @param error 错误. 如果开始通话录音失败, 此处回填错误码
@return 开始通话录音的结果.
Declared In
NIMNetCallManagerProtocol.h
– stopAudioRecording
required method
	结束通话录音
- (void)stopAudioRecordingDiscussion
结束通话录音
Declared In
NIMNetCallManagerProtocol.h
– currentAudioRecordingFilePath
required method
	获取当前通话录音文件路径
- (nullable NSURL *)currentAudioRecordingFilePathReturn Value
当前通话录音文件路径. 如果没有进行中的通话录音则返回 nil
Discussion
获取当前通话录音文件路径
Declared In
NIMNetCallManagerProtocol.h
– netCallLogFilepath
required method
	获得 SDK 网络通话网络层log 文件路径
- (NSString *)netCallLogFilepathReturn Value
SDK 网络通话 log
Discussion
获得 SDK 网络通话网络层log 文件路径
Declared In
NIMNetCallManagerProtocol.h
– getConnectStatus
required method
	当前音视频连接状态查询接口
- (NIMNetCallConnectStatus)getConnectStatusReturn Value
连接状态
Discussion
当前音视频连接状态查询接口
Declared In
NIMNetCallManagerProtocol.h
– addDelegate:
required method
	添加网络通话委托
- (void)addDelegate:(id<NIMNetCallManagerDelegate>)delegateParameters
delegate | 
						网络通话委托  | 
					
|---|
Discussion
添加网络通话委托
Declared In
NIMNetCallManagerProtocol.h
– removeDelegate:
required method
	移除网络通话委托
- (void)removeDelegate:(id<NIMNetCallManagerDelegate>)delegateParameters
delegate | 
						网络通话委托  | 
					
|---|
Discussion
移除网络通话委托
Declared In
NIMNetCallManagerProtocol.h
– selectBeautifyType:
required method
	选择滤镜类型
- (BOOL)selectBeautifyType:(NIMNetCallFilterType)typeParameters
type | 
						滤镜类型  | 
					
|---|
Return Value
是否设置成功
Discussion
选择滤镜类型
Declared In
NIMNetCallManagerProtocol.h
– changeLensPosition:
required method
	改变焦距 实际放大倍数
- (BOOL)changeLensPosition:(float)scaleParameters
scale | 
						放大倍数  | 
					
|---|
Return Value
是否设置成功
Discussion
改变焦距 实际放大倍数
Declared In
NIMNetCallManagerProtocol.h
– setCameraFlash:
required method
	设置闪光灯开关
- (void)setCameraFlash:(BOOL)isFlashOnParameters
isFlashOn | 
						是否开启闪光灯  | 
					
|---|
Discussion
设置闪光灯开关
Declared In
NIMNetCallManagerProtocol.h
– setPreViewMirror:
required method
	设置预览镜像
- (void)setPreViewMirror:(BOOL)isMirrorOnParameters
isMirrorOn | 
						是否开启预览镜像  | 
					
|---|
Discussion
设置预览镜像
Declared In
NIMNetCallManagerProtocol.h
– setCodeMirror:
required method
	设置编码镜像
- (void)setCodeMirror:(BOOL)isMirrorOnParameters
isMirrorOn | 
						是否开启编码镜像  | 
					
|---|
Discussion
设置编码镜像
Declared In
NIMNetCallManagerProtocol.h
– setFocusMode:
required method
	设置对焦模式
- (BOOL)setFocusMode:(NIMNetCallFocusMode)modeParameters
mode | 
						对焦模式  | 
					
|---|
Return Value
是否设置成功
Discussion
设置对焦模式
Declared In
NIMNetCallManagerProtocol.h
– getMaxZoomScale
required method
	获取摄像头支持的最大放大倍数
- (CGFloat)getMaxZoomScaleDiscussion
获取摄像头支持的最大放大倍数
- @return 放大倍数
 
Declared In
NIMNetCallManagerProtocol.h
– addWaterMark:rect:location:
required method
	添加静态水印
- (BOOL)addWaterMark:(UIImage *)image rect:(CGRect)rect location:(NIMNetCallWaterMarkLocation)locationParameters
image | 
						水印图片  | 
					
|---|---|
rect | 
						水印具体位置和大小(x,y根据location位置,计算具体的位置信息)  | 
					
location | 
						水印位置  | 
					
Return Value
是否设置成功
Discussion
添加静态水印
Declared In
NIMNetCallManagerProtocol.h
– addDynamicWaterMarks:fpsCount:loop:rect:location:
required method
	添加动态水印
- (BOOL)addDynamicWaterMarks:(NSArray *)imageArray fpsCount:(unsigned int)count loop:(BOOL)looped rect:(CGRect)rect location:(NIMNetCallWaterMarkLocation)locationParameters
imageArray | 
						动态图像数组  | 
					
|---|---|
count | 
						播放速度的快慢:count代表count帧显示同一张图  | 
					
looped | 
						是否循环,不循环就显示一次  | 
					
rect | 
						具体位置和大小(x,y根据location位置,计算具体的位置信息)  | 
					
location | 
						位置  | 
					
Return Value
是否设置成功
Discussion
添加动态水印
Declared In
NIMNetCallManagerProtocol.h
– cleanWaterMark
required method
	清除水印
- (void)cleanWaterMarkDiscussion
清除水印
Declared In
NIMNetCallManagerProtocol.h
– changeNMCVideoPreViewManualFocusPoint:
required method
	手动对焦
- (void)changeNMCVideoPreViewManualFocusPoint:(CGPoint)devicePointParameters
devicePoint | 
						点  | 
					
|---|
Discussion
手动对焦
Declared In
NIMNetCallManagerProtocol.h
– changeNMCVideoExposurePointOfInterestPoint:
required method
	设置曝光兴趣点
- (void)changeNMCVideoExposurePointOfInterestPoint:(CGPoint)devicePointParameters
devicePoint | 
						点  | 
					
|---|
Discussion
设置曝光兴趣点
Declared In
NIMNetCallManagerProtocol.h
– setContrastFilterIntensity:
required method
	设置对比度滤镜强度,支持自然 粉嫩 怀旧 黑白模式
- (BOOL)setContrastFilterIntensity:(float)valueParameters
value | 
						值 [0-4] 默认为 1  | 
					
|---|
Return Value
是否设置成功
Discussion
设置对比度滤镜强度,支持自然 粉嫩 怀旧 黑白模式
Declared In
NIMNetCallManagerProtocol.h
– setSmoothFilterIntensity:
required method
	设置磨皮滤镜强度,支持自然 粉嫩 怀旧 黑白模式
- (BOOL)setSmoothFilterIntensity:(float)valueParameters
value | 
						值 [0-1] 默认为 0  | 
					
|---|
Return Value
是否设置成功
Discussion
设置磨皮滤镜强度,支持自然 粉嫩 怀旧 黑白模式
Declared In
NIMNetCallManagerProtocol.h
– setUpNetCallSocksWithParam:
required method
	设置音视频代理
- (void)setUpNetCallSocksWithParam:(NIMNetCallSocksParam *)socksParamParameters
socksParam | 
						代理配置参数  | 
					
|---|
Discussion
设置音视频代理
不可与参数配置方式同时使用, 建议使用接口方式设置代理参数
Declared In
NIMNetCallManagerProtocol.h
– getMeetingIdWithUserUid:
required method
	根据UserId查询音视频房间id
- (UInt64)getMeetingIdWithUserUid:(NSString *)userIdReturn Value
meetingUid
Discussion
根据UserId查询音视频房间id
@param userId
Declared In
NIMNetCallManagerProtocol.h
– setAutoPublish:autoSub:
required method
	设置视频是否自动发布,是否自动订阅;音频是否自动订阅,音频的发布是全发布的。 默认是自动发布和订阅,必须在joinChannel之前设置
- (NIMNetCallSubscribeError)setAutoPublish:(BOOL)autoPub autoSub:(BOOL)autoSubParameters
autoPub | 
						是否自动发布  | 
					
|---|---|
autoSub | 
						是否自动订阅  | 
					
Return Value
返回操作类型
Discussion
设置视频是否自动发布,是否自动订阅;音频是否自动订阅,音频的发布是全发布的。 默认是自动发布和订阅,必须在joinChannel之前设置
Declared In
NIMNetCallManagerProtocol.h
– isAutoSubscribeAudio
required method
	查询音频当前是否为自动订阅模式
- (BOOL)isAutoSubscribeAudioReturn Value
否为自动订阅模式
Discussion
查询音频当前是否为自动订阅模式
Declared In
NIMNetCallManagerProtocol.h
– isAutoPublishVideo
required method
	查询视频当前是否为自动发布模式
- (BOOL)isAutoPublishVideoReturn Value
是否为自动发布模式
Discussion
查询视频当前是否为自动发布模式
Declared In
NIMNetCallManagerProtocol.h
– setPubishFallBack:
required method
	设置弱网条件下音视频流回退策略 必须在启动音视频之前设置
- (NIMNetCallSubscribeError)setPubishFallBack:(NIMNetCallSubscribeServerFbType)optionParameters
option | 
						回退策略  | 
					
|---|
Return Value
返回操作类型
Discussion
设置弱网条件下音视频流回退策略 必须在启动音视频之前设置
Declared In
NIMNetCallManagerProtocol.h
– publishVideo
required method
	发布视频流
- (NIMNetCallSubscribeError)publishVideoReturn Value
返回操作类型
Discussion
发布视频流
Declared In
NIMNetCallManagerProtocol.h
– unpublishVideo
required method
	取消发布视频流
- (NIMNetCallSubscribeError)unpublishVideoReturn Value
返回操作类型
Discussion
取消发布视频流
Declared In
NIMNetCallManagerProtocol.h
– isAutoSubscribeVideo
required method
	查询视频当前是否为自动订阅模式
- (BOOL)isAutoSubscribeVideoReturn Value
否为自动订阅模式
Discussion
查询视频当前是否为自动订阅模式
Declared In
NIMNetCallManagerProtocol.h
– subscribeVideo:profile:
required method
	订阅远端用户uid的视频流
- (NIMNetCallSubscribeError)subscribeVideo:(NSString *)uid profile:(NIMNetCallSimulcastProfile)profileParameters
uid | 
						用户uid  | 
					
|---|
Return Value
返回为0时说明接口执行成功,但是否订阅成功还得看回调结果。返回为非0时,说明接口执行异常中断,订阅失败
Discussion
订阅远端用户uid的视频流
Declared In
NIMNetCallManagerProtocol.h
– unsubscribeVideo:
required method
	取消订阅远端用户uid的视频流
- (NIMNetCallSubscribeError)unsubscribeVideo:(NSString *)uidParameters
uid | 
						用户uid  | 
					
|---|
Return Value
返回为0时说明接口执行成功,但是否订阅成功还得看回调结果。返回为非0时,说明接口执行异常中断,订阅失败
Discussion
取消订阅远端用户uid的视频流
Declared In
NIMNetCallManagerProtocol.h
– subscribeAudio
required method
	订阅远端音频流
- (NIMNetCallSubscribeError)subscribeAudioReturn Value
返回为0时说明接口执行成功,但是否订阅成功还得看回调结果。返回为非0时,说明接口执行异常中断,订阅失败
Discussion
订阅远端音频流
Declared In
NIMNetCallManagerProtocol.h
– unsubscribeAudio
required method
	取消订阅远端音频流
- (NIMNetCallSubscribeError)unsubscribeAudioReturn Value
返回为0时说明接口执行成功,但是否订阅成功还得看回调结果。返回为非0时,说明接口执行异常中断,订阅失败
Discussion
取消订阅远端音频流
Declared In
NIMNetCallManagerProtocol.h
– setLocalVideoSimulcastModel:
required method
	设置本地视频多流模式
- (NIMNetCallSubscribeError)setLocalVideoSimulcastModel:(NIMNetCallSimulcastModel)modeReturn Value
返回为0时说明接口执行成功,但是否订阅成功还得看回调结果。返回为非0时,说明接口执行异常
Discussion
设置本地视频多流模式
Declared In
NIMNetCallManagerProtocol.h
– recordsWithOption:completion:
required method
	获取点对点通话记录
- (void)recordsWithOption:(NIMNetCallRecordsSearchOption *_Nullable)option completion:(NIMNetCallSearchRecordsHandler)completionParameters
option | 
						本地查询可选项, nil 返回所有  | 
					
|---|---|
completion | 
						查询结果回调  | 
					
Discussion
获取点对点通话记录
Declared In
NIMNetCallManagerProtocol.h
– deleteAllRecords
required method
	清空点对点通话记录
- (void)deleteAllRecordsDiscussion
清空点对点通话记录
Declared In
NIMNetCallManagerProtocol.h