NERoomRtcController

@objcMembers
public class NERoomRtcController : NERoomRtcBaseController
extension NERoomRtcController: NERtcEngineAudioFrameObserver

房间音视频控制器

  • 功能是否是否支持

    Declaration

    Swift

    override public var isSupported: Bool { get }

————————- Public method ————————–

  • 加入音视频主房间

    Declaration

    Swift

    public func joinRtcChannel(_ callback: NECallback<AnyObject>? = nil)

    Parameters

    callback

    回调闭包

  • 离开音视频主房间

    Declaration

    Swift

    public func leaveRtcChannel(_ callback: NECallback<AnyObject>? = nil)

    Return Value

    回调闭包

  • 加入音视频子房间

    Since

    1.29.0

    Declaration

    Swift

    public func joinRtcChannel(channelName: String, callback: NECallback<AnyObject>? = nil)

    Parameters

    channelName

    频道名称

    callback

    回调

  • 离开音视频子房间

    Since

    1.29.0

    Declaration

    Swift

    public func leaveRtcChannel(channelName: String, callback: NECallback<AnyObject>? = nil)

    Parameters

    channelName

    频道名称

    callback

    回调

  • 开启或关闭对应频道本地媒体流(主流)的发送。 该方法用于开始或停止向网络发送本地音频或视频数据。 该方法不影响接收或播放远端媒体流,也不会影响本地音频或视频的采集状态。 该方法在加入房间前后均可调用。

    Since

    1.29.0

    Declaration

    Swift

    public func enableMediaPub(channelName: String, mediaType: NERoomRtcMediaPublishType, enable: Bool) -> Int

    Parameters

    channelName

    频道名称

    mediaType

    媒体发布类型,暂时仅支持音频。

    enable

    是否发布本地媒体流。true(默认):发布本地媒体流。false:不发布本地媒体流

    Return Value

    0 成功,否则失败

  • 调节对应房间本地播放的所有远端用户的信号音量。通过此接口可以实现调节所有远端用户在本地播放的混音音量。

    Since

    1.29.0

    Declaration

    Swift

    public func adjustChannelPlaybackSignalVolume(channelName: String, volume: UInt32) -> Int

    Parameters

    channelName

    频道名称

    volume

    采集信号音量,取值范围为 [0, 400]。0:静音。100:(默认)原始音量。400:最大可为原始音量的 4 倍(自带溢出保护)

    Return Value

    0 成功,否则失败

  • 启用说话者音量提示。 该方法允许 SDK 定期向 App 反馈本地发流用户和瞬时音量最高的远端用户(最多 3 位)的音量相关信息, 即当前谁在说话以及说话者的音量。启用该方法后,只要房间内有发流用户,无论是否有人说话, SDK 都会在加入房间后根据预设的时间间隔触发[NERoomListener.onRtcRemoteAudioVolumeIndication] 回调

    Since

    1.29.0

    Declaration

    Swift

    public func enableAudioVolumeIndication(channelName: String, enable: Bool, interval: UInt64, enableVad: Bool) -> Int

    Parameters

    channelName

    频道名称

    enable

    是否启用说话者音量提示。

    interval

    指定音量提示的时间间隔。单位为毫秒。必须设置为 100 毫秒的整数倍值,建议设置为 200 毫秒以上。

    enableVad

    是否启用本地采集人声监测。

    Return Value

    0 成功,否则失败

  • 开启/关闭本地音频设备

    Since

    1.29.0

    Declaration

    Swift

    public func enableLocalAudio(channelName: String, enable: Bool) -> Int

    Parameters

    channelName

    频道名称

    enable

    是否开启

    Return Value

    0 成功,否则失败

————————- 开关音视频流 ————————–

  • 断开音频,音频断开后将会中断自己与房间里其他人的音频互通,断开后房间里其他成员将听不到你的声音,你也将听不到其他成员的声音

    Declaration

    Swift

    public func disconnectMyAudio(_ callback: NECallback<AnyObject>? = nil)

    Parameters

    callback

    结果回调

  • 恢复音频,恢复音频后将恢复自己与其他人的音频互通,恢复后你可以听到其他人的声音,但是其他人能否听到你的声音还是要取决于你的isAudioOn状态

    Declaration

    Swift

    public func reconnectMyAudio(_ callback: NECallback<AnyObject>? = nil)

    Parameters

    callback

    结果回调

  • 开启本地静音,并关闭本地上行音频流。

    Declaration

    Swift

    public func muteMyAudio(_ callback: NECallback<AnyObject>? = nil)

    Parameters

    callback

    回调闭包

  • 开启本地静音,并根据 enableMediaPub 参数决定是否关闭本地上行音频流。

    Declaration

    Swift

    public func muteMyAudio(enableMediaPub: Bool, callback: NECallback<AnyObject>? = nil)

    Parameters

    enableMediaPub

    开启静音后是否允许发送音频流,默认为false,即不发送。如果设置为true,则本地开启静音后,会继续发送本地音频流(此时为静音包,其他端听不到本端声音)。

    callback

    回调闭包

  • 开启或关闭本地媒体流(主流)的发送。

    Declaration

    Swift

    public func enableMediaPub(mediaType: NERoomRtcMediaPublishType, enable: Bool) -> Int

    Parameters

    mediaType

    媒体发布类型,暂时仅支持音频 enable:是否发布本地媒体流。

  • 关闭本地静音,并开启本地上行音频流

    Declaration

    Swift

    public func unmuteMyAudio(_ callback: NECallback<AnyObject>? = nil)

    Parameters

    callback

    回调闭包

  • 关闭本地静音,并根据 enableMediaPub 参数决定是否开启本地上行音频流

    Declaration

    Swift

    public func unmuteMyAudio(enableMediaPub: Bool, callback: NECallback<AnyObject>? = nil)

    Parameters

    enableMediaPub

    关闭静音后是否允许发送音频流,默认为true,即发送。如果设置为false,则本地关闭静音后,不会发送本地音频流(此时其他端听不到本端声音)。

    callback

    回调闭包

  • 开关自己的麦克风设备

    Declaration

    Swift

    public func setRecordDeviceMute(muted: Bool) -> Int32

    Parameters

    muted

    TRUE关闭,FALSE打开

    Return Value

    0成功其他失败

  • 关闭成员音频

    Declaration

    Swift

    public func muteMemberAudio(userUuid: String,
                                callback: NECallback<AnyObject>?)

    Parameters

    userUuid

    成员ID

    callback

    回调

  • 打开成员音频

    Declaration

    Swift

    public func unmuteMemberAudio(userUuid: String,
                                  callback: NECallback<AnyObject>? = nil)

    Parameters

    userUuid

    成员ID

    callback

    回调

  • 关闭本端视频

    Declaration

    Swift

    public func muteMyVideo(_ callback: NECallback<AnyObject>? = nil)

    Parameters

    callback

    回调闭包

  • 打开本端视频

    Declaration

    Swift

    public func unmuteMyVideo(_ callback: NECallback<AnyObject>? = nil)

    Parameters

    callback

    回调闭包

  • 关闭成员视频

    Declaration

    Swift

    public func muteMemberVideo(userUuid: String,
                                callback: NECallback<AnyObject>?)

    Parameters

    userUuid

    成员ID

    callback

    回调

  • 打开成员视频

    Declaration

    Swift

    public func unmuteMemberVideo(userUuid: String,
                                  callback: NECallback<AnyObject>?)

    Parameters

    userUuid

    成员ID

    callback

    回调

————————- 屏幕共享 ————————–

————————- 订阅操作 ————————–

  • 订阅指定远端用户的视频流

    Declaration

    Swift

    @discardableResult
    public func subscribeRemoteVideoStream(userUuid: String,
                                           streamType: NEVideoStreamType) -> Int
  • 取消订阅指定远端用户的视频流

    Declaration

    Swift

    @discardableResult
    public func unsubscribeRemoteVideoStream(userUuid: String,
                                             streamType: NEVideoStreamType) -> Int
  • 订阅指定远端用户辅流视频

    Declaration

    Swift

    @discardableResult
    public func subscribeRemoteVideoSubStream(userUuid: String) -> Int
  • 取消订阅远端辅流

    Declaration

    Swift

    @discardableResult
    public func unsubscribeRemoteVideoSubStream(userUuid: String) -> Int
  • 设置远端用户视图

    Declaration

    Swift

    @discardableResult
    public func setupRemoteVideoCanvas(videoView: NERoomVideoView?,
                                       userUuid: String) -> Int
  • 设置远端的辅流视频画布

    Declaration

    Swift

    @discardableResult
    public func setupRemoteVideoSubStreamCanvas(videoView: NERoomVideoView?,
                                                userUuid: String) -> Int
  • 调节本地播放的指定远端用户的信号音量

    加入房间后,您可以多次调用该方法设置本地播放的不同远端用户的音量; 也可以反复调节本地播放的某个远端用户的音量

    • Return: 0: 代表成功 否则失败

    Declaration

    Swift

    @discardableResult
    public func adjustUserPlaybackSignalVolume(userUuid: String,
                                               volume: UInt32) -> Int
  • 调节自己的采集音量

    • 0:静音。
    • 100:(默认)原始音量。
    • 400:最大可为原始音量的 4 倍(自带溢出保护)。

    Declaration

    Swift

    @discardableResult
    public func adjustRecordingSignalVolume(volume: UInt32) -> Int
  • 设置本地语音音调,该方法改变本地说话人声音的音调。 通话结束后该设置会重置,默认为 1.0。 此方法与 setAudioEffectPreset 互斥,调用此方法后,已设置的变声效果会被取消。

    Declaration

    Swift

    @discardableResult
    public func setLocalVoicePitch(pitch: Double) -> Int
  • 设置本地语音混响参数 该方法改变本地说话人声音的混响效果 此方法在加入房间前后都能调用,通话结束后混响参数会重置为默认值

    Declaration

    Swift

    @discardableResult
    public func setLocalVoiceReverbParam(_ param: NERoomReverbParam) -> Int
    • bandGain: 每个 band 的增益,单位是 dB,每一个值的范围是 [-15,15],默认值为 0。

    Declaration

    Swift

    @discardableResult
    public func setLocalVoiceEqualization(_ bandFrequency: NERoomAudioEqualizationBandFrequency,
                                          bandGain: Int) -> Int

————————- 跨频道转发 ————————–

  • 开始跨频道转发

    该方法可用于实现跨房间连麦等场景。支持同时转发到 4 个房间,同一个房间可以有多个转发进来的媒体流

    Declaration

    Swift

    public func startChannelMediaRelay(callback: NECallback<AnyObject>? = nil)

    Parameters

    callback

    回调闭包

  • 结束跨频道转发

    主播离开房间时,跨房间媒体流转发自动停止,您也可以在需要的时候随时调用 stopChannelMediaRelay 方法,此时主播会退出所有目标房间

    Declaration

    Swift

    public func stopChannelMediaRelay(callback: NECallback<AnyObject>? = nil)

    Parameters

    callback

    回调闭包

————————- 扬声器 ————————–

  • 开启/关闭 AI 降噪功能,默认不会开启。开启 AI 降噪之后,在嘈杂的环境中可以针对背景人声、键盘声等非稳态噪声进行定向降噪,同时也会提升对于环境稳态噪声的抑制,保留更纯粹的人声。

    Declaration

    Swift

    @discardableResult
    public func enableAudioAINS(enable: Bool) -> Int
  • 开启/关闭本端音频共享

    Declaration

    Swift

    @discardableResult
    public func enableLoopbackRecording(enable: Bool) -> Int
  • 打开或关闭扬声器

    Declaration

    Swift

    @discardableResult
    public func setSpeakerphoneOn(on: Bool) -> Int
  • 查询扬声器是否开启

    Declaration

    Swift

    @discardableResult
    public func isSpeakerphoneOn() -> Bool
  • 停止音频dump

    Declaration

    Swift

    @discardableResult
    public func stopAudioDump() -> Int
  • 打开音频dump

    Declaration

    Swift

    @discardableResult
    public func startAudioDump(type: NEAudioDumpType) -> Int
  • 启用说话者音量提示

    该方法允许 SDK 定期向 App 反馈本地发流用户和瞬时音量最高的远端用户(最多 3 位)的音量相关信息, 即当前谁在说话以及说话者的音量。启用该方法后,只要房间内有发流用户,无论是否有人说话, SDK 都会在加入房间后根据预设的时间间隔触发 onRemoteAudioVolumeIndication 回调

    Declaration

    Swift

    @discardableResult
    public func enableAudioVolumeIndication(enable: Bool,
                                            interval: Int) -> Int
  • 启用说话者音量提示。

    Declaration

    Swift

    @discardableResult
    public func enableAudioVolumeIndication(enable: Bool, interval: Int, vad: Bool) -> Int
  • 开启耳返

    Declaration

    Swift

    @discardableResult
    public func enableEarback(volume: UInt32) -> Int
  • 关闭耳返

    Declaration

    Swift

    @discardableResult
    public func disableEarback() -> Int
  • 播放指定音效文件

    Declaration

    Swift

    @discardableResult
    public func playEffect(effectId: UInt32,
                           option: NERoomCreateAudioEffectOption) -> Int
  • 设置音效文件的播放位置

    Declaration

    Swift

    @discardableResult
    public func setEffectPosition(effectId: UInt32, postion: UInt64) -> Int
  • 设置音效发送音量

    Declaration

    Swift

    @discardableResult
    public func setEffectSendVolume(effectId: UInt32,
                                    volume: UInt32) -> Int
  • 获取指定音效文件发送音量

    Declaration

    Swift

    @discardableResult
    public func getEffectSendVolume(effectId: UInt32) -> UInt32
  • 设置音效播放音量

    Declaration

    Swift

    @discardableResult
    public func setEffectPlaybackVolume(effectId: UInt32,
                                        volume: UInt32) -> Int
  • 获取音效的回放音量

    Declaration

    Swift

    @discardableResult
    public func getEffectPlaybackVolume(effectId: UInt32) -> UInt32
  • 暂停播放指定音效文件。

    Declaration

    Swift

    @discardableResult
    public func pauseEffect(effectId: UInt32) -> Int
  • 暂停播放所有音效文件。

    Declaration

    Swift

    @discardableResult
    public func pauseAllEffects() -> Int
  • 恢复播放指定音效文件。

    Declaration

    Swift

    @discardableResult
    public func resumeEffect(effectId: UInt32) -> Int
  • 恢复播放所有音效文件。

    Declaration

    Swift

    @discardableResult
    public func resumeAllEffects() -> Int
  • 停止播放指定音效文件

    Declaration

    Swift

    @discardableResult
    public func stopEffect(effectId: UInt32) -> Int
  • 关闭所有音效

    Declaration

    Swift

    @discardableResult
    public func stopAllEffects() -> Int
  • 获取当前音效播放进度

    Declaration

    Swift

    @discardableResult
    public func getEffectCurrentPosition(effectId: UInt32) -> UInt64
  • 设置音效文件的播放位置。

    Declaration

    Swift

    @discardableResult
    public func setEffectPosition(effectId: UInt32, position: UInt64) -> Int32
  • 获取音效文件时长

    Declaration

    Swift

    @discardableResult
    public func getEffectDuration(effectId: UInt32) -> UInt64
  • 调节音效升降key。 发起音效后可调解。伴音结束后再发起需要重新设置。 音调pitch取值范围为 [-12,12],每相邻两个值的音高距离相差半音。取值的绝对值越大,音调升高或降低得越多。

    Declaration

    Swift

    @discardableResult
    public func setEffectPitch(effectId: UInt32, pitch: Int32) -> Int32
  • 获取当前调节音效升降key。

    Declaration

    Swift

    @discardableResult
    public func getEffectPitch(effectId: UInt32) -> Int32
  • 开启混音

    Declaration

    Swift

    @discardableResult
    public func startAudioMixing(option: NERoomCreateAudioMixingOption) -> Int
  • 停止播放音乐文件及混音

    Declaration

    Swift

    @discardableResult
    public func stopAudioMixing() -> Int
  • 设置混音发送音量

    Declaration

    Swift

    @discardableResult
    public func setAudioMixingSendVolume(volume: UInt32) -> Int
  • 设置混音播放音量

    Declaration

    Swift

    @discardableResult
    public func setAudioMixingPlaybackVolume(volume: UInt32) -> Int
  • 获取混音播放进度

    Declaration

    Swift

    @discardableResult
    public func getAudioMixingCurrentPosition() -> UInt64
  • 暂停播放音乐文件及混音

    Declaration

    Swift

    @discardableResult
    public func pauseAudioMixing() -> Int
  • 恢复播放伴奏

    该方法恢复混音,继续播放伴奏。请在房间内调用该方法

    Declaration

    Swift

    @discardableResult
    public func resumeAudioMixing() -> Int
  • 调节伴音升降key。 发起伴音后可调解。伴音结束后再发起需要重新设置。 音调pitch取值范围为 [-12,12],每相邻两个值的音高距离相差半音。取值的绝对值越大,音调升高或降低得越多。

    Declaration

    Swift

    @discardableResult
    public func setAudioMixingPitch(pitch: Int32) -> Int32
  • 获取当前调节伴音升降key。 发起伴音后可调解。伴音结束后再发起需要重新设置。 音调pitch取值范围为 [-12,12],每相邻两个值的音高距离相差半音。取值的绝对值越大,音调升高或降低得越多。

    Declaration

    Swift

    @discardableResult
    public func getAudioMixingPitch() -> Int32
  • 订阅远端音频

    Declaration

    Swift

    @discardableResult
    public func subscribeRemoteAudio(userUuid: String) -> Int
  • 取消订阅远端音频

    Declaration

    Swift

    @discardableResult
    public func unsubscribeRemoteAudio(userUuid: String) -> Int
  • 订阅远端音频辅流

    Declaration

    Swift

    @discardableResult
    public func subscribeRemoteAudioSubStream(_ userUuid: String) -> Int
  • 取消订阅远端音频辅流

    Declaration

    Swift

    @discardableResult
    public func unsubscribeRemoteAudioSubStream(_ userUuid: String) -> Int
  • 设置Rtc成员角色

    Declaration

    Swift

    @discardableResult
    public func setClientRole(_ role: NERoomRtcClientRole) -> Int
  • 暂停本地麦克风采集,调用后远端用户听不到本端声音。 该方法仅修改本地媒体状态,不会改变用户的音频开关状态[NERoomMember.isAudioOn]

    Declaration

    Swift

    @discardableResult
    public func pauseLocalAudioRecording() -> Int
  • 恢复本地麦克风采集,调用后远端用户可以听到本端声音。 该方法仅修改本地媒体状态,不会改变成员的音频开关状态[NERoomMember.isAudioOn]

    Declaration

    Swift

    @discardableResult
    public func resumeLocalAudioRecording() -> Int
  • 暂停本地视频采集。 该方法仅修改本地媒体状态,不会改变用户的视频开关状态[NERoomMember.isVideoOn]

    Declaration

    Swift

    @discardableResult
    public func pauseLocalVideoCapture() -> Int
  • 恢复本地视频采集。 该方法仅修改本地媒体状态,不会改变成员的视频开关状态[NERoomMember.isVideoOn]

    Declaration

    Swift

    @discardableResult
    public func resumeLocalVideoCapture() -> Int
  • 调节本地播放的所有远端用户的信号音量。 通过此接口可以实现调节所有远端用户在本地播放的混音音量。

    Declaration

    Swift

    @discardableResult
    public func adjustPlaybackSignalVolume(_ volume: Int) -> Int
  • 尝试关闭房间内成员的系统音频共享,会进行权限校验。

    Declaration

    Swift

    public func stopMemberSystemAudioShare(userUuid: String, callback: NECallback<AnyObject>? = nil)

    Parameters

    userUuid

    用户Id

    callback

    回调

————————- 加密 ————————–

  • 开启RTC媒体流加密

    • gmEncryptKey 加密密钥,由业务服务端生成密钥,必传
    • encryptionMode 加密方式,默认为GMCryptoSM4ECB加密方式(目前仅支持GMCryptoSM4ECB)

    Declaration

    Swift

    @discardableResult
    public func enableEncryption(gmEncryptKey: String, encryptionType: NERoomEncryptionMode) -> Int
  • 关闭RTC媒体流加密

    • encryptionMode 加密方式,默认为GMCryptoSM4ECB加密方式(目前仅支持GMCryptoSM4ECB)

    Declaration

    Swift

    @discardableResult
    public func disableEncryption() -> Int
  • 设置成员音频禁言 @param duration 禁言时长,单位秒 @param notifyExt 扩展信息 @param callback 回调
    相关回调:禁言音频成功后,会立即触发[NERoomListener.onMemberAudioBanStateChanged]回调

    Declaration

    Swift

    public func banMemberAudio(userUuid: String, duration: Int, notifyExt: String?, callback: NECallback<AnyObject>? = nil)
  • 设置成员视频禁言 @param duration 禁言时长,单位秒 @param notifyExt 扩展信息 @param callback 回调
    相关回调:禁言音频成功后,会立即触发[NERoomListener.onMemberVideoBanStateChanged]回调

    Declaration

    Swift

    public func banMemberVideo(userUuid: String, duration: Int, notifyExt: String?, callback: NECallback<AnyObject>? = nil)
  • 取消成员音频禁言 @param notifyExt 扩展信息 @param callback 回调
    相关回调:禁言音频成功后,会立即触发[NERoomListener.onMemberAudioBanStateChanged]回调

    Declaration

    Swift

    public func unbanMemberAudio(userUuid: String, notifyExt: String?, callback: NECallback<AnyObject>? = nil)
  • 取消成员视频禁言 @param notifyExt 扩展信息 @param callback 回调
    相关回调:禁言视频成功后,会立即触发[NERoomListener.onMemberVideoBanStatedChanged]回调

    Declaration

    Swift

    public func unbanMemberVideo(userUuid: String, notifyExt: String?, callback: NECallback<AnyObject>? = nil)
  • 获取音频禁言用户列表 @param callback 回调 todo 通过allMembers里面去过滤,不走服务端

    Declaration

    Swift

    public func getAudioBannedMembers(callback: NECallback<[NERoomMember]>)
  • 获取视频禁言用户列表 @param callback 回调 todo 通过allMembers里面去过滤,不走服务端

    Declaration

    Swift

    public func getVideoBannedMembers(callback: NECallback<[NERoomMember]>)
  • 开启/关闭字幕

    Since

    1.30.0

    Declaration

    Swift

    public func enableCaption(enable: Bool) -> Int

    Parameters

    enable

    是否开启

    Return Value

    0: 代表成功 否则失败

  • 设置字幕翻译语言。默认为 [NERoomCaptionTranslationLanguage.none],即不翻译。

    Since

    1.31.0

    Declaration

    Swift

    public func setCaptionTranslationLanguage(_ language: NERoomCaptionTranslationLanguage) -> Int

    Parameters

    language

    目标翻译语言 [NERoomCaptionTranslationLanguage]

    Return Value

    0: 代表成功 否则失败

  • 开启/关闭本地视频设备

    Since

    1.32.0

    Declaration

    Swift

    public func enableLocalVideo(enable: Bool) -> Int

    Parameters

    enable

    是否开启

    Return Value

    0: 代表成功 否则失败

  • 获取本地系统时间与服务端时间差值

    可以用于做时间对齐, 系统时间 - offset 可得到当前服务端时间

    Declaration

    Swift

    @discardableResult
    func getNtpTimeOffset() -> Int64
  • 对齐本地系统与服务端的时间

    Declaration

    Swift

    func setStreamAlignmentProperty(_ enable: Bool)

    Parameters

    enable

    是否开启精准对齐功能 true: 开启 false: 关闭

  • 设置自己的音频只能被房间内指定的人订阅,默认房间所有其他人都可以订阅自己的音频

    此接口需要在加入房间成功后调用 对于调用接口时不在房间的uid不生效

    • Return 0代表成功,否则失败

    Declaration

    Swift

    @discardableResult
    func setAudioSubscribeOnlyBy(_ userUuids: [String]) -> Int
  • 通过主流通道发送媒体增强补充信息(SEI)

    在本端推流传输音视频流数据同时,发送流媒体补充增强信息来同步一些其他附加信息。当推流方发送 SEI 后,拉流方可通过监听 onRecvSEIMsg 的回调获取 SEI 内容

    • 调用时机:视频流(主流、辅流)开启后,可调用此函数
    • 数据长度限制: SEI 最大数据长度为 4096字节,超限会发送失败。如果频繁发送大量数据会导致视频码率增大,可能会导致视频画质下降甚至卡顿
    • 发送频率限制:最高为视频发送的帧率,建议不超过 10 次/秒。
    • 生效时间:调用本接口之后,最快在下一帧视频数据帧之后发送 SEI 数据,最慢在接下来的 5 帧视频之后发送
    • 成功: 成功进入待发送队列,会在最近的视频帧之后发送该数据
    • 失败: 数据被限制发送,可能发送的频率太高,队列已经满了,或者数据大小超过最大值 4k

    Declaration

    Swift

    @discardableResult
    func sendSEIMsg(_ data: Data) -> Int
  • 设置音频帧监听

    Declaration

    Swift

    func setAudioFrame(withObserver ob: NERoomRtcAudioFrameObserver?)

    Parameters

    ob

    监听者

  • Rtc 参数设置

    Declaration

    Swift

    @discardableResult
    func setParameters(_ params: [String : Any]) -> Int
  • 设置房间场景

    房间场景可设置为通话或直播场景,不同的场景中 QoS 策略不同. 该方法必须在加入房间前调用,进入房间后无法再设置房间场景

    Declaration

    Swift

    @discardableResult
    func setChannelProfile(_ profileType: NERoomRtcChannelProfileType) -> Int
  • 设置音频编码属性

    该方法需要在 joinChannel 之前设置,joinChannel 后设置不生效

    Declaration

    Swift

    @discardableResult
    func setAudioProfile(_ profile: NERoomRtcAudioProfileType,
                         scenario: NERoomRtcAudioScenarioType) -> Int
  • 设置录制和播放声音混音后的数据格式

    Declaration

    Swift

    @discardableResult
    func setMixedAudioFrameParameters(_ format: NERoomRtcAudioFrameRequestFormat? = nil) -> Int
  • 设置采集的音频格式

    该方法设置 onRecordingAudioFrame 回调的录制声音格式

    Declaration

    Swift

    @discardableResult
    func setRecordingAudioFrameParameters(_ format: NERoomRtcAudioFrameRequestFormat? = nil)
      -> Int
  • 开启音频辅流

    Declaration

    Swift

    @discardableResult
    func enableLocalSubstreamAudio() -> Int
  • 关闭音频辅流

    Declaration

    Swift

    @discardableResult
    func disableLocalSubstreamAudio() -> Int
  • Declaration

    Swift

    public func onNERtcEngineAudioFrameDidRecord(_ frame: NERtcAudioFrame)
  • Declaration

    Swift

    public func onNERtcEnginePlaybackAudioFrameBeforeMixing(withUserID userID: UInt64,
                                                            frame: NERtcAudioFrame)
  • Declaration

    Swift

    public func onNERtcEnginePlaybackAudioFrameBeforeMixing(withUserID userID: UInt64,
                                                            frame: NERtcAudioFrame,
                                                            channelId _: UInt64)
  • Declaration

    Swift

    public func onNERtcEnginePlaybackSubStreamAudioFrameBeforeMixing(withUserID userID: UInt64,
                                                                     frame: NERtcAudioFrame,
                                                                     channelId: UInt64)
  • Declaration

    Swift

    public func onNERtcEngineMixedAudioFrame(_ frame: NERtcAudioFrame)
  • Declaration

    Swift

    public func onNERtcEngineSubStreamAudioFrameDidRecord(_ frame: NERtcAudioFrame)