NERoomRtcAudioFrameObserver

@objc
public protocol NERoomRtcAudioFrameObserver : NSObjectProtocol
  • 采集音频数据回调,用于声音处理等操作

    • 返回音频数据支持读写
    • 有本地音频数据驱动就会回调 允许修改 frame 里 void *data 所指向的内容,不允许修改 format

    Declaration

    Swift

    @objc
    optional func onRecordingAudioFrame(_ audioFrame: NERoomRtcAudioFrame)

    Parameters

    audioFrame

    音频帧数据

  • 本地音频辅流数据回调,用于自定义辅流数据

    • 返回音频数据支持读写,但是该回调一般用于自定义音频辅流数据,建议使用写模式,读模式暂无什么意义。
      • 开启辅流就会回调。
      • 需要同步返回,engine 将会继续音频处理流程。 允许修改 frame 里 void *data 所指向的内容,不允许修改 format

    Declaration

    Swift

    @objc
    optional func onRecordSubStreamAudioFrame(_ audioFrame: NERoomRtcAudioFrame)

    Parameters

    audioFrame

    音频帧数据

  • 获取某一远端用户混音前的音频数据。

    成功注册音频观测器后,如果订阅了远端音频(默认订阅)且远端用户开启音频后,SDK 会在捕捉到混音前的音频数据时,触发该回调,将音频数据回调给用户。

    • 返回音频数据只读。
    • 不支持修改 frame 里 void *data 所指向的内容,不支持修改 format。

    Declaration

    Swift

    @objc
    optional func onPlaybackAudioFrameBeforeMixing(withUserId userId: String,
                                                   audioFrame: NERoomRtcAudioFrame)

    Parameters

    userId

    远端房间成员的uuid

    audioFrame

    音频帧数据

  • 获取某一远端用户混音前的音频辅流数据

    • 返回音频数据只读

    Declaration

    Swift

    @objc
    optional func onPlaybackSubStreamAudioFrameBeforeMixing(withUserId: String,
                                                            audioFrame: NERoomRtcAudioFrame,
                                                            channelId: UInt64)

    Parameters

    withUserId

    远端房间成员的uuid

    audioFrame

    音频帧数据

    channelId

    房间 ID。在多房间场景下,channelId 用于识别不同的房间

  • 获取本地用户和所有远端用户混音后的原始音频数据

    • 该回调为只读模式。
    • 返回音频数据只读。
    • 有本地音频数据驱动就会回调。 不支持修改 frame 里 void *data 所指向的内容,不允许修改 format

    Declaration

    Swift

    @objc
    optional func onMixedAudioFrame(_ audioFrame: NERoomRtcAudioFrame)

    Parameters

    audioFrame

    音频帧数据