INERtcEngineEx Protocol Reference
Conforms to | INERtcEngine |
---|---|
Declared in | INERtcEngineEx.h |
– enableDualStreamMode:
required method
设置是否开启视频大小流模式。
- (int)enableDualStreamMode:(BOOL)enable
Parameters
enable |
YES 发送双流, NO 发送单流。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
设置是否开启视频大小流模式。
该方法设置单流或者双流模式。发送端开启双流模式后,接收端可以选择接收大流还是小流。其中,大流指高分辨率、高码率的视频流,小流指低分辨率、低码率的视频流。
Note:
- 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
- 该方法只对摄像头数据生效,自定义输入、屏幕共享等视频流无效。
- 该方法在加入房间前后都能调用。
Declared In
INERtcEngineEx.h
– muteLocalAudio:
required method
开关本地音频发送。 该方法用于允许或禁止向网络发送本地音频流。
- (int)muteLocalAudio:(BOOL)muted
Parameters
muted |
是否开启本地音频发送。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
开关本地音频发送。 该方法用于允许或禁止向网络发送本地音频流。
Note:
- 该方法不影响音频采集状态,因为并没有禁用音频采集设备。
- 静音状态会在通话结束后被重置为非静音。
Declared In
INERtcEngineEx.h
– subscribeRemoteAudio:forUserID:
required method
取消或恢复订阅指定远端用户音频流。
- (int)subscribeRemoteAudio:(BOOL)subscribe forUserID:(uint64_t)userID
Parameters
subscribe |
指定用户的 ID。 |
---|---|
userID |
是否订阅指定音频流。 |
Return Value
操作返回值,成功则返回 0
Discussion
取消或恢复订阅指定远端用户音频流。
加入房间时,默认订阅所有远端用户的音频流,您可以通过此方法取消或恢复订阅指定远端用户的音频流。
Note: 该方法需要在加入房间后调用。
Declared In
INERtcEngineEx.h
– subscribeAllRemoteAudio:
required method
取消或恢复订阅所有远端用户音频流。
- (int)subscribeAllRemoteAudio:(BOOL)subscribe
Parameters
subscribe |
是否取消订阅所有远端用户的音频流。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
取消或恢复订阅所有远端用户音频流。
加入房间时,默认订阅所有远端用户的音频流,您可以通过此方法取消或恢复订阅所有远端用户的音频流。
Note:
- 该方法需要在加入房间后调用。
- 对后续加入的用户也同样生效。
Declared In
INERtcEngineEx.h
– subscribeRemoteVideo:forUserID:streamType:
required method
订阅或取消订阅指定远端用户的视频流。
- (int)subscribeRemoteVideo:(BOOL)subscribe forUserID:(uint64_t)userID streamType:(NERtcRemoteVideoStreamType)streamType
Parameters
subscribe |
是否取消订阅本地视频流。 |
---|---|
userID |
指定用户的用户 ID。 |
streamType |
订阅的视频流类型,详细信息请参考 NERtcRemoteVideoStreamType。 |
Return Value
操作返回值,成功则返回 0
Discussion
订阅或取消订阅指定远端用户的视频流。
用户加入房间之后,默认不订阅远端用户的视频流,如果希望看到指定远端用户的视频,可以在监听到对方加入房间或发布视频流之后,通过此方法订阅该用户的视频流。
Note:
- 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
- 该方法需要在加入房间后调用。
Declared In
INERtcEngineEx.h
– startPreview
required method
开启视频预览。
- (int)startPreview
Return Value
操作返回值,成功则返回 0
Discussion
开启视频预览。
- 该方法用于在进入房间前启动本地视频预览。调用该 API 前,必须调用 setupLocalVideoCanvas 设置视频画布。
- 启用本地视频预览后,在进入频道前,必须先调用 stopPreview 关闭本地预览。
Note: 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
Declared In
INERtcEngineEx.h
– stopPreview
required method
停止视频预览。
- (int)stopPreview
Return Value
操作返回值,成功则返回 0
Discussion
停止视频预览。
Note:
- 该方法需要在加入房间前调用。
- 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
Declared In
INERtcEngineEx.h
– setLocalRenderScaleMode:
required method
设置本端的视频显示模式。
- (int)setLocalRenderScaleMode:(NERtcVideoRenderScaleMode)mode
Parameters
mode |
视频显示模式。详细信息请参考 NERtcVideoRenderScaleMode。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
设置本端的视频显示模式。
Note: 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
Declared In
INERtcEngineEx.h
– setRemoteRenderScaleMode:forUserID:
required method
设置远端的视频显示模式。
- (int)setRemoteRenderScaleMode:(NERtcVideoRenderScaleMode)mode forUserID:(uint64_t)userID
Parameters
mode |
视频显示模式。详细信息请参考NERtcVideoRenderScaleMode。 |
---|---|
userID |
远端用户 ID。 |
Return Value
操作返回值,成功则返回 0
Discussion
设置远端的视频显示模式。
Note: 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
Declared In
INERtcEngineEx.h
– muteLocalVideo:
required method
取消或恢复发布本地视频流。
- (int)muteLocalVideo:(BOOL)muted
Parameters
muted |
是否取消发布本地视频流。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
取消或恢复发布本地视频流。
成功调用该方法后,远端会触发 onNERtcEngineUser:videoMuted: 回调。
Note:
- 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
- 调用该方法取消发布本地视频流后,SDK 不再发送本地视频流。
- 该方法在加入房间前后均可调用。
- 若调用该方法取消发布本地视频流,通话结束后会被重置为默认状态,即默认发布本地视频流。
- 该方法与 enableLocalVideo 的区别在于,enableLocalVideo 会关闭本地摄像头设备,muteLocalVideoStream 不影响本地视频流采集,不禁用摄像头,且响应速度更快。
Declared In
INERtcEngineEx.h
– setLoudspeakerMode:
required method
启用或关闭扬声器播放。
- (int)setLoudspeakerMode:(bool)enable
Parameters
enable |
是否将音频路由到外放。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
启用或关闭扬声器播放。
该方法设置是否将语音路由到扬声器,即设备外放。
Note: 该方法需要在加入房间后调用。
Declared In
INERtcEngineEx.h
– getLoudspeakerMode:
required method
检查扬声器状态启用状态。
- (int)getLoudspeakerMode:(bool *)enabled
Parameters
enabled |
是否正在使用扬声器模式。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
检查扬声器状态启用状态。
Note: 该方法可在加入房间前后调用。
Declared In
INERtcEngineEx.h
– startAudioDump
required method
开始记录音频 dump。
- (int)startAudioDump
Return Value
操作返回值,成功则返回 0
Discussion
开始记录音频 dump。
音频 dump 可用于分析音频问题。
Declared In
INERtcEngineEx.h
– stopAudioDump
required method
结束记录音频 dump。
- (int)stopAudioDump
Return Value
操作返回值,成功则返回 0
Discussion
结束记录音频 dump。
Declared In
INERtcEngineEx.h
– setExternalVideoSource:isScreen:
required method
开启或关闭外部视频源数据输入。
- (int)setExternalVideoSource:(BOOL)enable isScreen:(BOOL)isScreen
Parameters
enable |
是否使用外部视频源。
|
---|---|
isScreen |
使用外部视频源时,外部视频源是否为屏幕共享数据。 |
Return Value
操作返回值,成功则返回 0
Discussion
开启或关闭外部视频源数据输入。
- 该方法设置内部引擎为启用状态,在 leaveChannel 后仍然有效。如果需要关闭该功能,需要在下次通话前调用接口关闭该功能。
- 如果使用了外部视频源,请在调用 startScreenCapture、enableLocalVideo 或 startPreview 之前调用此 API。
- 外部输入视频源是屏幕共享时默认使用辅流通道,非屏幕共享时使用主流通道,此时与 Camera 互斥。
- 之前使用主流通道或者当前使用主流通道,且主流已经开启时,请勿更改设置。之前使用辅流通道或者当前使用辅流通道,且辅流已经开启时,请勿更改设置。
Note: 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
Declared In
INERtcEngineEx.h
– pushExternalVideoFrame:
required method
推送外部视频帧。
- (int)pushExternalVideoFrame:(NERtcVideoFrame *)frame
Parameters
frame |
视频帧的数据信息。详细信息请参考 NERtcVideoFrame。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
推送外部视频帧。
该方法主动将视频帧数据用 NERtcVideoFrame 类封装后传递给 SDK。
Note:
- 该方法设置内部引擎为启用状态,在 leaveChannel 后不再有效。
- 请确保在您调用本方法前已调用 setExternalVideoSource,并将参数设为 YES,否则调用本方法后会一直报错。
- 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
Declared In
INERtcEngineEx.h
– setupLocalSubStreamVideoCanvas:
required method
设置本地辅流视频画布。 该方法设置本地辅流视频显示信息。App 通过调用此接口绑定本地辅流的显示视窗(view)。 在 App 开发中,通常在初始化后调用该方法进行本地视频设置,然后再加入房间。
- (int)setupLocalSubStreamVideoCanvas:(NERtcVideoCanvas *)canvas
Parameters
canvas |
视频画布。详细信息请参考NERtcVideoCanvas。删除画布设置时请传 nil。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
设置本地辅流视频画布。 该方法设置本地辅流视频显示信息。App 通过调用此接口绑定本地辅流的显示视窗(view)。 在 App 开发中,通常在初始化后调用该方法进行本地视频设置,然后再加入房间。
Note:
- 若使用外部渲染,建议在加入房间之前设置。
- 请在初始化后调用该方法,然后再加入房间。
- 同一个画布只能设置给一个用户。
- 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
Declared In
INERtcEngineEx.h
– startScreenCapture:
required method
开启屏幕共享,屏幕共享内容以辅流形式发送。
- (int)startScreenCapture:(NERtcVideoSubStreamEncodeConfiguration *)config
Parameters
config |
本地辅流发送配置,详细信息请参考 NERtcVideoSubStreamEncodeConfiguration。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
开启屏幕共享,屏幕共享内容以辅流形式发送。
只能在加入房间后调用。
如果您在加入房间后调用该方法开启辅流,调用成功后,远端触发 onNERtcEngineUserSubStreamDidStartWithUserID 回调。
Note: 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
Declared In
INERtcEngineEx.h
– stopScreenCapture
required method
关闭辅流形式的屏幕共享。
- (int)stopScreenCapture
Return Value
操作返回值,成功则返回 0
Discussion
关闭辅流形式的屏幕共享。
如果您在加入房间后调用该方法关闭辅流,调用成功后,远端触发 onNERtcEngineUserSubStreamDidStop 回调。
Note: 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
Declared In
INERtcEngineEx.h
– setLocalRenderSubStreamScaleMode:
required method
设置本端的屏幕共享辅流视频显示模式。
- (int)setLocalRenderSubStreamScaleMode:(NERtcVideoRenderScaleMode)mode
Parameters
mode |
视频显示模式。详细信息请参考NERtcVideoRenderScaleMode。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
设置本端的屏幕共享辅流视频显示模式。
在本端开启辅流形式的屏幕共享时使用。App 可以多次调用此方法更改显示模式。
Note:
- 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
- 调用此方法前,必须先通过 setupLocalSubStreamVideoCanvas 设置本地辅流画布。
Declared In
INERtcEngineEx.h
– setupRemoteSubStreamVideoCanvas:forUserID:
required method
设置远端的辅流视频画布。
- (int)setupRemoteSubStreamVideoCanvas:(NERtcVideoCanvas *)canvas forUserID:(uint64_t)userID
Parameters
canvas |
视频画布。详细信息请参考NERtcVideoCanvas。删除画布设置时请传 nil。 |
---|---|
userID |
远端用户 ID。 |
Return Value
操作返回值,成功则返回 0
Discussion
设置远端的辅流视频画布。
该方法绑定远端用户和辅流显示视图,即指定某个 userID 使用对应的画布显示。
Note:
- 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
- 若使用外部渲染,建议在收到 onNERtcEngineUserDidJoinWithUserID 后设置。
- 如果 App 无法事先知道对方的用户 ID,可以在远端加入房间后调用。从 onNERtcEngineUserDidJoinWithUserID 中获取对方的 uid,并通过本方法为该用户设置辅流视频画布。
- 退出房间后,SDK 清除远端用户和画布的的绑定关系,该设置自动失效。
Declared In
INERtcEngineEx.h
– subscribeRemoteSubStreamVideo:forUserID:
required method
订阅或取消订阅远端的屏幕共享辅流视频,订阅之后才能接收远端的辅流视频数据。
- (int)subscribeRemoteSubStreamVideo:(BOOL)subscribe forUserID:(uint64_t)userID
Parameters
subscribe |
是否订阅远端的屏幕共享辅流视频。 |
---|---|
userID |
远端用户 ID。 |
Return Value
操作返回值,成功则返回 0
Discussion
订阅或取消订阅远端的屏幕共享辅流视频,订阅之后才能接收远端的辅流视频数据。
Note:
- 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
- 只能在加入房间后调用。
Declared In
INERtcEngineEx.h
– setRemoteRenderSubStreamVideoScaleMode:forUserID:
required method
设置远端的屏幕共享辅流视频显示模式。
- (int)setRemoteRenderSubStreamVideoScaleMode:(NERtcVideoRenderScaleMode)mode forUserID:(uint64_t)userID
Parameters
mode |
视频显示模式。详细信息请参考NERtcVideoRenderScaleMode。 |
---|---|
userID |
远端用户 ID。 |
Return Value
操作返回值,成功则返回 0
Discussion
设置远端的屏幕共享辅流视频显示模式。
Note:
- 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
- 调用本接口之前,请先通过 subscribeRemoteSubStreamVideo 订阅远端的屏幕共享辅流视频。
Declared In
INERtcEngineEx.h
– setAudioSessionOperationRestriction:
required method
设置 SDK 对 Audio Session 的控制权限。
- (int)setAudioSessionOperationRestriction:(NERtcAudioSessionOperationRestriction)restriction
Parameters
restriction |
SDK 对 Audio Session 的控制权限。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
设置 SDK 对 Audio Session 的控制权限。
该方法仅适用于 iOS 平台。 该方法限制 SDK 对 Audio Session 的操作权限。在默认情况下,SDK 和 App 对 Audio Session 都有控制权,但某些场景下,App 会希望限制 SDK 对 Audio Session 的控制权限,而使用其他应用或第三方组件对 Audio Session 进行操控。调用该方法可以实现该功能。 该接口只能在入会之前调用。
Note: 一旦调用该方法限制了 SDK 对 Audio Session 的控制权限, SDK 将无法对 Audio Session 进行相关设置,而需要用户自己或第三方组件进行维护。
Declared In
INERtcEngineEx.h
– setPlayoutDeviceMute:
required method
设置是否静音音频播放设备。
- (int)setPlayoutDeviceMute:(bool)muted
Parameters
muted |
是否静音播放设备。默认为不静音状态。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
设置是否静音音频播放设备。
Declared In
INERtcEngineEx.h
– getPlayoutDeviceMute:
required method
获取音频播放设备的静音状态。
- (int)getPlayoutDeviceMute:(bool *)muted
Parameters
muted |
是否静音。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
获取音频播放设备的静音状态。
Declared In
INERtcEngineEx.h
– setRecordDeviceMute:
required method
设置是否静音音频采集设备。
- (int)setRecordDeviceMute:(bool)muted
Parameters
muted |
是否静音音频采集设备。默认为不静音。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
设置是否静音音频采集设备。
Declared In
INERtcEngineEx.h
– getRecordDeviceMute:
required method
查询当前音频采集设备是否静音。
- (int)getRecordDeviceMute:(bool *)muted
Parameters
muted |
是否静音。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
查询当前音频采集设备是否静音。
Declared In
INERtcEngineEx.h
– isCameraZoomSupported
required method
检测设备当前使用的摄像头是否支持缩放功能。
- (BOOL)isCameraZoomSupported
Return Value
YES 表示支持,NO 表示支持。
Discussion
检测设备当前使用的摄像头是否支持缩放功能。
该方法需要在相机启动后调用,例如调用 startPreview 或 joinChannel 后。
Note: 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
Declared In
INERtcEngineEx.h
– isCameraTorchSupported
required method
检测设备是否支持闪光灯常亮。
- (BOOL)isCameraTorchSupported
Return Value
YES 表示支持,NO 表示不支持。
Discussion
检测设备是否支持闪光灯常亮。
Note:
- 一般情况下,App 默认开启前置摄像头,因此如果设备前置摄像头不支持闪光灯,直接使用该方法会返回 NO。如果需要检查后置摄像头是否支持闪光灯,需要先使用switchCamera切换摄像头,再使用该方法。
- 该方法需要在相机启动后调用,例如调用 startPreview 或 joinChannel 后。
- 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
Declared In
INERtcEngineEx.h
– isCameraFocusSupported
required method
检测设备是否支持手动对焦功能。
- (BOOL)isCameraFocusSupported
Return Value
YES 表示支持,NO 表示不支持。
Discussion
检测设备是否支持手动对焦功能。
Note:
- 该方法需要在相机启动后调用,例如调用 startPreview 或 joinChannel 后。
- 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
Declared In
INERtcEngineEx.h
– isCameraExposurePositionSupported
required method
检测设备是否支持手动曝光功能。
- (BOOL)isCameraExposurePositionSupported
Return Value
YES 表示支持,NO 表示不支持。
Discussion
检测设备是否支持手动曝光功能。
Note:
- 该方法需要在相机启动后调用,例如调用 startPreview 或 joinChannel 后。
- 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
Declared In
INERtcEngineEx.h
– setCameraExposurePosition:
required method
设置当前摄像头手动曝光位置。
- (int)setCameraExposurePosition:(CGPoint)positionInView
Parameters
positionInView |
曝光位置点。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
设置当前摄像头手动曝光位置。
成功调用该方法后,本地会触发 onCameraExposureChanged 回调。
Note:
- 该方法需要在相机启动后调用,例如调用 startPreview 或 joinChannel 后。
- 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
Declared In
INERtcEngineEx.h
– setCameraTorchOn:
required method
设置是否打开闪光灯。
- (int)setCameraTorchOn:(BOOL)on
Parameters
on |
YES 表示开启;NO 表示关闭。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
设置是否打开闪光灯。
Note:
- 该方法需要在相机启动后调用,例如调用 startPreview 或 joinChannel 后。
- 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
Declared In
INERtcEngineEx.h
– isCameraTorchOn
required method
查询设备是否开启了闪光灯。
- (BOOL)isCameraTorchOn
Return Value
YES 表示开启;NO 表示关闭。
Discussion
查询设备是否开启了闪光灯。
Note: 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
Declared In
INERtcEngineEx.h
– setCameraZoomFactor:
required method
设置当前摄像头缩放比例。
- (int)setCameraZoomFactor:(float)factor
Parameters
factor |
摄像头缩放比例。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
设置当前摄像头缩放比例。
Note:
- 该方法需要在相机启动后调用,例如调用 startPreview 或 joinChannel 后。
- 建议在调用本接口前,先通过 getCameraMaxZoom 查看摄像头支持的最大缩放比例,并根据实际需求合理设置需要的缩放比例。
- 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
Declared In
INERtcEngineEx.h
– maxCameraZoomScale
required method
获取摄像头支持最大缩放比例。
- (float)maxCameraZoomScale
Return Value
最大缩放比例。
Discussion
获取摄像头支持最大缩放比例。
Note:
- 该方法需要在相机启动后调用,例如调用 startPreview 或 joinChannel 后。
- 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
Declared In
INERtcEngineEx.h
– setCameraFocusPositionX:Y:
required method
设置手动对焦位置。
- (int)setCameraFocusPositionX:(float)focusX Y:(float)focusY
Parameters
focusX |
触摸点相对于视图的横坐标,范围为 0~1。 |
---|---|
focusY |
触摸点相对于视图的纵坐标,范围为 0~1。 |
Return Value
操作返回值,成功则返回 0
Discussion
设置手动对焦位置。
成功调用该方法后,本地会触发 onNERtcCameraFocusChanged 回调。
Note:
- 该方法需要在相机启动后调用,例如调用 startPreview 或 joinChannel 后。
- 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
Declared In
INERtcEngineEx.h
– startAudioMixingWithOption:
required method
开始播放音乐文件及混音。
- (int)startAudioMixingWithOption:(NERtcCreateAudioMixingOption *)option
Parameters
option |
创建混音任务配置的选项,包括混音任务类型、混音文件全路径或URL等。详细信息请参考 NERtcCreateAudioMixingOption。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
开始播放音乐文件及混音。
指定本地或在线音频文件来和录音设备采集的音频流进行混音。
Note:
- 请在房间内调用该方法,如果在房间外调用该方法可能会出现问题。
- 支持的音频格式包括:AAC、MP3 和 WAVE。
- 成功调用该方法后,如果播放状态改变,本地会触发 onAudioMixingStateChanged 回调。
Declared In
INERtcEngineEx.h
– stopAudioMixing
required method
停止播放音乐文件及混音。
- (int)stopAudioMixing
Return Value
操作返回值,成功则返回 0
Discussion
停止播放音乐文件及混音。
该方法停止播放伴奏。请在房间内调用该方法。
Declared In
INERtcEngineEx.h
– pauseAudioMixing
required method
暂停播放音乐文件及混音。
- (int)pauseAudioMixing
Return Value
操作返回值,成功则返回 0
Discussion
暂停播放音乐文件及混音。
该方法暂停播放伴奏。请在房间内调用该方法。
Declared In
INERtcEngineEx.h
– resumeAudioMixing
required method
该方法恢复混音,继续播放伴奏。请在房间内调用该方法。
- (int)resumeAudioMixing
Return Value
操作返回值,成功则返回 0
Discussion
该方法恢复混音,继续播放伴奏。请在房间内调用该方法。
Declared In
INERtcEngineEx.h
– setAudioMixingSendVolume:
required method
设置伴奏的发送音量。
- (int)setAudioMixingSendVolume:(uint32_t)volume
Parameters
volume |
伴奏发送音量。取值范围为 0~100。默认 100,即原始文件音量。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
设置伴奏的发送音量。
Declared In
INERtcEngineEx.h
– getAudioMixingSendVolume:
required method
获取伴奏发送音量。
- (int)getAudioMixingSendVolume:(uint32_t *)volume
Parameters
volume |
伴奏发送音量。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
获取伴奏发送音量。
该方法获取混音里伴奏的发送音量大小。请在房间内调用该方法。
Declared In
INERtcEngineEx.h
– setAudioMixingPlaybackVolume:
required method
调节伴奏播放音量。
- (int)setAudioMixingPlaybackVolume:(uint32_t)volume
Parameters
volume |
伴奏播放音量。取值范围为 0~100。默认 100,即原始文件音量。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
调节伴奏播放音量。
该方法调节混音里伴奏的播放音量大小。请在房间内调用该方法。
Declared In
INERtcEngineEx.h
– getAudioMixingPlaybackVolume:
required method
获取伴奏播放音量。
- (int)getAudioMixingPlaybackVolume:(uint32_t *)volume
Parameters
volume |
伴奏播放音量。范围为 0~100。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
获取伴奏播放音量。
该方法获取混音里伴奏的播放音量大小。请在房间内调用该方法。
Declared In
INERtcEngineEx.h
– getAudioMixingDuration:
required method
获取伴奏时长。
- (int)getAudioMixingDuration:(uint64_t *)duration
Parameters
duration |
伴奏时长,单位为毫秒。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
获取伴奏时长。
该方法获取伴奏时长,单位为毫秒。请在房间内调用该方法。
Declared In
INERtcEngineEx.h
– getAudioMixingCurrentPosition:
required method
获取音乐文件的播放进度。
- (int)getAudioMixingCurrentPosition:(uint64_t *)position
Parameters
position |
音乐文件的播放位置,单位为毫秒。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
获取音乐文件的播放进度。
该方法获取当前伴奏播放进度,单位为毫秒。请在房间内调用该方法。
Declared In
INERtcEngineEx.h
– setAudioMixingPosition:
required method
设置音乐文件的播放位置。
- (int)setAudioMixingPosition:(uint64_t)position
Parameters
position |
音乐文件的播放位置,单位为毫秒。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
设置音乐文件的播放位置。
该方法可以设置音频文件的播放位置,这样你可以根据实际情况播放文件,而非从头到尾播放整个文件。
Declared In
INERtcEngineEx.h
– playEffectWitdId:effectOption:
required method
播放指定音效文件。
- (int)playEffectWitdId:(uint32_t)effectId effectOption:(NERtcCreateAudioEffectOption *)option
Parameters
effectId |
指定音效的 ID。每个音效均应有唯一的 ID。 |
---|---|
option |
音效相关参数,包括混音任务类型、混音文件路径等。详细信息请参考 NERtcCreateAudioEffectOption。 |
Return Value
操作返回值,成功则返回 0
Discussion
播放指定音效文件。
Note:
- 该方法播放指定的本地或在线音效文件。请在加入房间后调用该方法。
- 您可以多次调用该方法,通过传入不同的音效文件的 effectId 和option ,同时播放多个音效文件,实现音效叠加。为获得最佳用户体验,建议同时播放的音效文件不超过 3 个。
- 成功调用该方法后,如果播放结束,本地会触发 onAudioEffectFinished 回调。
- 支持的音频格式包括: AAC、MP3 和 WAVE。
Declared In
INERtcEngineEx.h
– stopEffectWitdId:
required method
停止播放指定音效文件。
- (int)stopEffectWitdId:(uint32_t)effectId
Parameters
effectId |
指定音效的 ID。每个音效均有唯一的 ID。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
停止播放指定音效文件。
请在加入房间后调用该方法。
Declared In
INERtcEngineEx.h
– stopAllEffects
required method
停止播放所有音效文件。
- (int)stopAllEffects
Return Value
操作返回值,成功则返回 0
Discussion
停止播放所有音效文件。
请在加入房间后调用该方法。
Declared In
INERtcEngineEx.h
– pauseEffectWitdId:
required method
暂停播放指定音效文件。
- (int)pauseEffectWitdId:(uint32_t)effectId
Parameters
effectId |
音效ID |
---|
Return Value
操作返回值,成功则返回 0
Discussion
暂停播放指定音效文件。
请在加入房间后调用该方法。
Declared In
INERtcEngineEx.h
– resumeEffectWitdId:
required method
恢复播放指定音效文件。
- (int)resumeEffectWitdId:(uint32_t)effectId
Parameters
effectId |
指定音效的 ID。每个音效均有唯一的 ID。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
恢复播放指定音效文件。
请在加入房间后调用该方法。
Declared In
INERtcEngineEx.h
– pauseAllEffects
required method
暂停播放所有音效文件。
- (int)pauseAllEffects
Return Value
操作返回值,成功则返回 0
Discussion
暂停播放所有音效文件。
请在加入房间后调用该方法。
Declared In
INERtcEngineEx.h
– resumeAllEffects
required method
恢复播放所有音效文件。
- (int)resumeAllEffects
Return Value
操作返回值,成功则返回 0
Discussion
恢复播放所有音效文件。
请在加入房间后调用该方法。
Declared In
INERtcEngineEx.h
– setEffectSendVolumeWithId:volume:
required method
设置音效文件发送音量。
- (int)setEffectSendVolumeWithId:(uint32_t)effectId volume:(uint32_t)volume
Parameters
effectId |
指定音效的 ID。每个音效均有唯一的 ID。 |
---|---|
volume |
音效发送音量。范围为0~100,默认为 100,表示原始音量。 |
Return Value
操作返回值,成功则返回 0
Discussion
设置音效文件发送音量。
请在加入房间后调用该方法。
Declared In
INERtcEngineEx.h
– getEffectSendVolumeWithId:volume:
required method
获取指定音效文件发送音量。
- (int)getEffectSendVolumeWithId:(uint32_t)effectId volume:(uint32_t *)volume
Parameters
effectId |
指定音效的 ID。每个音效均有唯一的 ID。 |
---|---|
volume |
返回的发送音量。 |
Return Value
操作返回值,成功则返回 0
Discussion
获取指定音效文件发送音量。
请在加入房间后调用该方法。
Declared In
INERtcEngineEx.h
– setEffectPlaybackVolumeWithId:volume:
required method
获取音效文件播放音量。
- (int)setEffectPlaybackVolumeWithId:(uint32_t)effectId volume:(uint32_t)volume
Parameters
effectId |
指定音效的 ID。每个音效均有唯一的 ID。 |
---|---|
volume |
音效播放音量。范围为0~100,默认为100。 |
Return Value
操作返回值,成功则返回 0
Discussion
获取音效文件播放音量。
请在加入房间后调用该方法。
Declared In
INERtcEngineEx.h
– getEffectPlaybackVolumeWithId:volume:
required method
获取音效的回放音量
- (int)getEffectPlaybackVolumeWithId:(uint32_t)effectId volume:(uint32_t *)volume
Parameters
effectId |
音效ID |
---|---|
volume |
返回的音量值 |
Return Value
操作返回值,成功则返回 0
Discussion
获取音效的回放音量
Declared In
INERtcEngineEx.h
– enableEarback:volume:
required method
开启耳返功能。
- (int)enableEarback:(BOOL)enabled volume:(uint32_t)volume
Parameters
enabled |
开启耳返功能。 |
---|---|
volume |
设置耳返音量,可设置为0~100,默认为 100。 |
Return Value
操作返回值,成功则返回 0
Discussion
开启耳返功能。
Note:
- 请在房间内调用该方法。
- 开启耳返功能后,必须连接上耳机或耳麦,才能正常使用耳返功能。建议通过 onAudioDeviceChanged 监听播放设备的变化,当监听到播放设备切换为耳机时才开启耳返。
- 在V4.0.0 版本中,enableEarback 的 volume 参数无效,请使用 setEarbackVolume 接口设置耳返音量。
Declared In
INERtcEngineEx.h
– setEarbackVolume:
required method
设置耳返音量。
- (int)setEarbackVolume:(uint32_t)volume
Parameters
volume |
设置耳返音量,可设置为0~100,默认为 100。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
设置耳返音量。
Declared In
INERtcEngineEx.h
– setExternalAudioSource:sampleRate:channels:
required method
开启或关闭外部音频源数据输入。
- (int)setExternalAudioSource:(BOOL)enabled sampleRate:(int32_t)sampleRate channels:(int32_t)channels
Parameters
enabled |
是否开启外部数据输入。默认为 NO。 |
---|---|
sampleRate |
外部音频源的数据采样率,单位为 Hz。建议设置为 8000,16000,32000,44100 或 48000。 |
channels |
外部音频源的数据声道数。可设置为:
|
Return Value
操作返回值,成功则返回 0
Discussion
开启或关闭外部音频源数据输入。
当该方法调用成功后,音频输入设备选择和异常重启会失效。调用成功后可以使用 pushExternalAudioFrame 接口发送音频 PCM 数据。
Note:
- 请在加入房间前调用该方法。
- 该方法设置内部引擎为启用状态,启动时将用虚拟设备代替扬声器工作,在 leaveChannel 后仍然有效。如果需要关闭该功能,需要在下次通话前调用接口关闭外部音频数据输入功能。
- 启用外部音频数据输入功能后,SDK 内部实现部分扬声器由外部输入数据代替,扬声器相关的设置会失败或不在通话中生效。例如进行 loopback 检测时,会听到输入的外部数据。
Declared In
INERtcEngineEx.h
– pushExternalAudioFrame:
required method
推送外部音频帧。
- (int)pushExternalAudioFrame:(NERtcAudioFrame *)frame
Parameters
frame |
外部音频数据帧。数据长度不能超过 7680 字节。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
推送外部音频帧。
将外部音频数据帧推送给内部引擎。 通过 setExternalAudioSource 启用外部音频数据输入功能成功后,可以使用 pushExternalAudioFrame 接口发送音频 PCM 数据。
Note:
- 该方法需要在加入房间后调用。
- 数据帧时长建议匹配 10ms 周期。
- 该方法在音频输入设备关闭后不再生效。例如关闭本地音频、通话结束、通话前麦克风设备测试关闭等情况下,该设置不再生效。
Declared In
INERtcEngineEx.h
– setExternalAudioRender:sampleRate:channels:
required method
设置外部音频渲染。
- (int)setExternalAudioRender:(BOOL)enabled sampleRate:(int32_t)sampleRate channels:(int32_t)channels
Parameters
enabled |
设置是否开启外部音频渲染。 |
---|---|
sampleRate |
外部音频渲染的采样率 (Hz),可设置为 16000,32000,44100 或 48000。 |
channels |
外部音频渲染的声道数,可设置为:
|
Return Value
操作返回值,成功则返回 0
Discussion
设置外部音频渲染。
该方法适用于需要自行渲染音频的场景。默认为关闭状态。当该方法调用成功后,音频播放设备选择和异常重启失效。
调用成功后可以使用 pullExternalAudioFrame 接口获取音频 PCM 数据。
Note:
- 请在加入房间前调用该方法。
- 该方法设置内部引擎为启用状态,启动时将用虚拟设备代替扬声器工作,在 leaveChannel 后仍然有效。如果需要关闭该功能,需要在下次通话前调用接口关闭外部音频数据渲染功能。
- 启用外部音频渲染功能后,SDK 内部实现部分扬声器由外部输入数据代替,扬声器相关的设置会失败或不在通话中生效。例如进行 loopback 检测时,需要由外部渲染播放。
Declared In
INERtcEngineEx.h
– pullExternalAudioFrame:length:
required method
拉取外部音频数据。
- (int)pullExternalAudioFrame:(void *_Nonnull)data length:(int)len
Parameters
data |
数据指针。 |
---|---|
len |
待拉取音频数据的字节数,单位为 byte。建议音频数据的时长至少为 10 毫秒,数据长度不能超过 7680字节。 |
Return Value
操作返回值,成功则返回 0
Discussion
拉取外部音频数据。
该方法将从内部引擎拉取音频数据。 通过 setExternalAudioRender 启用外部音频数据渲染功能成功后,可以使用 pullExternalAudioFrame 接口获取音频 PCM 数据。
Note:
- 该方法需要在加入房间后调用。
- 数据帧时长建议匹配 10ms 周期。
- 该方法在音频渲染设备关闭后不再生效,此时会返回空数据。例如通话结束、通话前扬声器设备测试关闭等情况下,该设置不再生效。
Declared In
INERtcEngineEx.h
– addEngineMediaStatsObserver:
required method
注册媒体统计信息观测器。
- (int)addEngineMediaStatsObserver:(id<NERtcEngineMediaStatsObserver>)observer
Parameters
observer |
统计信息观测器。详细信息请参考 NERtcEngineMediaStatsObserver。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
注册媒体统计信息观测器。
Declared In
INERtcEngineEx.h
– removeEngineMediaStatsObserver:
required method
移除指定媒体统计信息观测器。
- (int)removeEngineMediaStatsObserver:(id<NERtcEngineMediaStatsObserver>)observer
Parameters
observer |
统计信息观测器 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
移除指定媒体统计信息观测器。
Declared In
INERtcEngineEx.h
– cleanupEngineMediaStatsObserver
required method
清除全部媒体统计信息观测器。
- (int)cleanupEngineMediaStatsObserver
Return Value
操作返回值,成功则返回 0
Discussion
清除全部媒体统计信息观测器。
Declared In
INERtcEngineEx.h
– addLiveStreamTask:compeltion:
required method
添加房间推流任务。
- (int)addLiveStreamTask:(NERtcLiveStreamTaskInfo *)taskInfo compeltion:(NERtcLiveStreamCompletion)completion
Parameters
taskInfo |
推流任务信息,详细信息请参考 NERtcLiveStreamTaskInfo。 |
---|---|
completion |
操作结果回调,方法调用成功后会触发对应回调。详细信息请参考NERtcLiveStreamCompletion。 |
Return Value
操作返回值,成功则返回 0
Discussion
添加房间推流任务。
成功调用该方法后,当前用户可以收到该直播流的状态通知。
Note:
- 该方法仅适用直播场景。
- 请在房间内调用该方法,该方法在通话中有效。
- 该方法每次只能增加一路旁路推流地址。如需推送多路流,则需多次调用该方法。同一个音视频房间(即同一个 channelid)可以创建 3 个不同的推流任务。
Declared In
INERtcEngineEx.h
– updateLiveStreamTask:compeltion:
required method
更新修改房间推流任务。
- (int)updateLiveStreamTask:(NERtcLiveStreamTaskInfo *)taskInfo compeltion:(NERtcLiveStreamCompletion)completion
Parameters
taskInfo |
推流任务信息,详细信息请参考 NERtcLiveStreamTaskInfo。 |
---|---|
completion |
操作结果回调,方法调用成功后会触发对应回调。详细信息请参考NERtcLiveStreamCompletion。 |
Return Value
操作返回值,成功则返回 0
Discussion
更新修改房间推流任务。
@note
- 该方法仅适用直播场景。
- 请在房间内调用该方法,该方法在通话中有效。
Declared In
INERtcEngineEx.h
– removeLiveStreamTask:compeltion:
required method
删除房间推流任务。
- (int)removeLiveStreamTask:(NSString *)taskId compeltion:(NERtcLiveStreamCompletion)completion
Parameters
taskId |
推流任务 ID。 |
---|---|
completion |
操作结果回调,方法调用成功后会触发对应回调。详细信息请参考NERtcLiveStreamCompletion。 |
Return Value
操作返回值,成功则返回 0
Discussion
删除房间推流任务。
Note:
- 该方法仅适用直播场景。
- 请在房间内调用该方法,该方法在通话中有效。
Declared In
INERtcEngineEx.h
– setRecordingAudioFrameParameters:
required method
设置采集的音频格式。
- (int)setRecordingAudioFrameParameters:(nullable NERtcAudioFrameRequestFormat *)format
Parameters
format |
指定 onNERtcEngineAudioFrameDidRecord 中返回数据的采样率和数据的通道数。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
设置采集的音频格式。
该方法设置 onNERtcEngineAudioFrameDidRecord 回调的录制声音格式。
Note:
- 该方法在加入房间前后均可设置或修改。
- 取消监听,重置为空。
Declared In
INERtcEngineEx.h
– setPlaybackAudioFrameParameters:
required method
设置播放的声音格式。
- (int)setPlaybackAudioFrameParameters:(nullable NERtcAudioFrameRequestFormat *)format
Parameters
format |
指定 onNERtcEngineAudioFrameDidRecord 中返回数据的采样率和数据的通道数。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
设置播放的声音格式。
该方法设置 onNERtcEngineAudioFrameWillPlayback 回调的播放声音格式。
Note:
- 该方法在加入房间前后均可设置或修改。
- 取消监听,重置为空。
Declared In
INERtcEngineEx.h
– setMixedAudioFrameParameters:
required method
设置录制和播放声音混音后的数据格式。
- (int)setMixedAudioFrameParameters:(nullable NERtcAudioFrameRequestFormat *)format
Parameters
format |
指定 onNERtcEngineMixedAudioFrame 中返回数据的采样率和数据的通道数。允许传入 nil,默认为 nil,表示使用音频的原始格式。详细信息请参考NERtcAudioFrameRequestFormat。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
设置录制和播放声音混音后的数据格式。
该方法设置 onNERtcEngineMixedAudioFrame 回调的声音格式。
- 该方法在加入房间前后均可设置或修改,leaveChannel 后重置为空。
- 目前只支持设置采样率。
- 未调用该接口设置数据格式时,回调中的采样率返回 SDK 默认值。
Declared In
INERtcEngineEx.h
– setAudioFrameObserver:
required method
注册语音观测器对象。
- (int)setAudioFrameObserver:(nullable id<NERtcEngineAudioFrameObserver>)observer
Parameters
observer |
音频数据帧观测器。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
注册语音观测器对象。
该方法用于设置音频采集/播放PCM回调,可用于声音处理等操作。当需要引擎返回onPlaybackFrame等回调时,需要使用该方法注册回调。
Note: 该方法在加入房间前后均可设置或修改。
Declared In
INERtcEngineEx.h
– enableAudioVolumeIndication:interval:
required method
启用说话者音量提示。
- (int)enableAudioVolumeIndication:(BOOL)enable interval:(uint64_t)interval
Parameters
enable |
是否启用说话者音量提示。 |
---|---|
interval |
指定音量提示的时间间隔。单位为毫秒。必须设置为 100 毫秒的整数倍值,建议设置为 200 毫秒以上。 |
Return Value
操作返回值,成功则返回 0
Discussion
启用说话者音量提示。
该方法允许 SDK 定期向 App 反馈本地发流用户和瞬时音量最高的远端用户(最多 3 位)的音量相关信息,即当前谁在说话以及说话者的音量。
启用该方法后,只要房间内有发流用户,无论是否有人说话,SDK 都会在加入房间后根据预设的时间间隔触发 onRemoteAudioVolumeIndication 回调。
Declared In
INERtcEngineEx.h
– adjustRecordingSignalVolume:
required method
调节采集信号音量。
- (int)adjustRecordingSignalVolume:(uint32_t)volume
Parameters
volume |
采集信号音量,取值范围为 [0, 400]。其中:
|
---|
Return Value
操作返回值,成功则返回 0
Discussion
调节采集信号音量。
Declared In
INERtcEngineEx.h
– adjustPlaybackSignalVolume:
required method
调节本地播放的所有远端用户信号音量。
- (int)adjustPlaybackSignalVolume:(uint32_t)volume
Parameters
volume |
播放音量。取值范围为 [0, 400]。其中:
|
---|
Return Value
操作返回值,成功则返回 0
Discussion
调节本地播放的所有远端用户信号音量。
Declared In
INERtcEngineEx.h
– setLocalVoicePitch:
required method
设置本地语音音调。
- (int)setLocalVoicePitch:(double)pitch
Parameters
pitch |
语音频率。可以在 [0.5, 2.0] 范围内设置。取值越小,则音调越低。默认值为 1.0,表示不需要修改音调。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
设置本地语音音调。
该方法改变本地说话人声音的音调。
Note:
- 通话结束后该设置会重置,默认为 1.0。
- 此方法与 setAudioEffectPreset 互斥,调用此方法后,已设置的变声效果会被取消。
Declared In
INERtcEngineEx.h
– setLocalVoiceEqualizationOfBandFrequency:withGain:
required method
设置本地语音音效均衡,即自定义设置本地人声均衡波段的中心频率。
- (int)setLocalVoiceEqualizationOfBandFrequency:(NERtcAudioEqualizationBandFrequency)bandFrequency withGain:(NSInteger)gain
Parameters
bandFrequency |
频谱子带索引,取值范围是 [0-9],分别代表 10 个频带,对应的中心频率是 [31,62,125,250,500,1k,2k,4k,8k,16k] Hz。 |
---|---|
gain |
每个 band 的增益,单位是 dB,每一个值的范围是 [-15,15],默认值为 0。 |
Return Value
操作返回值,成功则返回 0
Discussion
设置本地语音音效均衡,即自定义设置本地人声均衡波段的中心频率。
Note: 该方法在加入房间前后都能调用,通话结束后重置为默认关闭状态。
Declared In
INERtcEngineEx.h
– setVoiceBeautifierPreset:
required method
设置 SDK 预设的美声效果。
- (int)setVoiceBeautifierPreset:(NERtcVoiceBeautifierType)type
Parameters
type |
预设的美声效果模式。默认关闭美声效果。详细信息请参考 NERtcVoiceBeautifierType。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
设置 SDK 预设的美声效果。
调用该方法可以为本地发流用户设置 SDK 预设的人声美声效果。
Note: 该方法在加入房间前后都能调用,通话结束后重置为默认关闭状态。
Declared In
INERtcEngineEx.h
– setAudioEffectPreset:
required method
设置 SDK 预设的人声的变声音效。
- (int)setAudioEffectPreset:(NERtcVoiceChangerType)type
Parameters
type |
预设的变声音效。默认关闭变声音效。详细信息请参考 NERtcVoiceChangerType。 |
---|
Return Value
操作返回值,成功则返回 0
Discussion
设置 SDK 预设的人声的变声音效。
设置变声音效可以将人声原因调整为多种特殊效果,改变声音特性。
Note:
- 此方法在加入房间前后都能调用,通话结束后重置为默认关闭状态。
- 此方法和 setLocalVoicePitch 互斥,调用此方法后,本地语音语调会恢复为默认值 1.0。
Declared In
INERtcEngineEx.h
– uploadSdkInfo
required method
上传 SDK 信息。
- (int)uploadSdkInfo
Return Value
操作返回值,成功则返回 0
Discussion
上传 SDK 信息。
上传的信息包括 log 和 Audio dump 等文件。
Note: 只能在加入房间后调用。
Declared In
INERtcEngineEx.h
– sendSEIMsg:streamChannelType:
required method
指定主流或辅流通道发送媒体增强补充信息(SEI)。
- (int)sendSEIMsg:(NSData *)data streamChannelType:(NERtcStreamChannelType)type
Parameters
data |
自定义 SEI 数据。 |
---|---|
type |
发送 SEI 时,使用的流通道类型。详细信息请参考 NERtcStreamChannelType。 |
Return Value
操作返回值,成功则返回 0 - 成功: 成功进入待发送队列,会在最近的视频帧之后发送该数据。 - 失败: 数据被限制发送,可能发送的频率太高,队列已经满了,或者数据大小超过最大值 4k。
Discussion
指定主流或辅流通道发送媒体增强补充信息(SEI)。
在本端推流传输音视频流数据同时,发送流媒体补充增强信息来同步一些其他附加信息。当推流方发送 SEI 后,拉流方可通过监听 onRecvSEIMsg 的回调获取 SEI 内容。
- 调用时机:视频流(主流、辅流)开启后,可调用此函数。
- 数据长度限制: SEI 最大数据长度为 4096 字节,超限会发送失败。如果频繁发送大量数据会导致视频码率增大,可能会导致视频画质下降甚至卡顿。
- 发送频率限制:最高为视频发送的帧率,建议不超过 10 次/秒。
- 生效时间:调用本接口之后,最快在下一帧视频数据帧之后发送 SEI 数据,最慢在接下来的 5 帧视频之后发送。
Note:
- SEI 数据跟随视频帧发送,由于在弱网环境下可能丢帧,SEI 数据也可能随之丢失,所以建议在发送频率限制之内多次发送,保证接收端收到的概率。
- 指定通道发送 SEI 之前,需要提前开启对应的数据流通道。
- 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
Declared In
INERtcEngineEx.h
– sendSEIMsg:
required method
通过主流通道发送媒体增强补充信息(SEI)。
- (int)sendSEIMsg:(NSData *)data
Parameters
data |
自定义 SEI 数据。 |
---|
Return Value
操作返回值,成功则返回 0 - 成功: 成功进入待发送队列,会在最近的视频帧之后发送该数据 - 失败: 数据被限制发送,可能发送的频率太高,队列已经满了,或者数据大小超过最大值 4k
Discussion
通过主流通道发送媒体增强补充信息(SEI)。
在本端推流传输音视频流数据同时,发送流媒体补充增强信息来同步一些其他附加信息。当推流方发送 SEI 后,拉流方可通过监听 onRecvSEIMsg 的回调获取 SEI 内容。
- 调用时机:视频流(主流、辅流)开启后,可调用此函数。
- 数据长度限制: SEI 最大数据长度为 4096 字节,超限会发送失败。如果频繁发送大量数据会导致视频码率增大,可能会导致视频画质下降甚至卡顿。
- 发送频率限制:最高为视频发送的帧率,建议不超过 10 次/秒。
- 生效时间:调用本接口之后,最快在下一帧视频数据帧之后发送 SEI 数据,最慢在接下来的 5 帧视频之后发送。
Note:
- SEI 数据跟随视频帧发送,由于在弱网环境下可能丢帧,SEI 数据也可能随之丢失,所以建议在发送频率限制之内多次发送,保证接收端收到的概率。
- 调用本接口时,默认使用主流通道发送 SEI。
- 纯音频 SDK 禁用该接口,如需使用请前往云信官网下载并替换成视频 SDK。
Declared In
INERtcEngineEx.h