音频频谱
registerAudioSpectrumDelegate:
注册音频频谱观测器。
- (int)registerAudioSpectrumDelegate:(id<AgoraAudioSpectrumDelegate> _Nullable )delegate;
详情
成功注册音频频谱观测器并调用 enableAudioSpectrumMonitor: 开启音频频谱监测后,SDK 会按照你设置的时间间隔报告你在 AgoraAudioSpectrumDelegate 类中实现的回调。
参数
- delegate
音频频谱观测器。详见 AgoraAudioSpectrumDelegate。
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。详见错误码了解详情和解决建议。
unregisterAudioSpectrumDelegate:
取消注册音频频谱观测器。
- (int) unregisterAudioSpectrumDelegate:(id<AgoraAudioSpectrumDelegate> _Nullable)delegate;
详情
调用 registerAudioSpectrumDelegate: 后,如果你想取消注册音频频谱观测器,请调用该方法。
参数
- delegate
- 音频频谱观测器。详见 AgoraAudioSpectrumDelegate。
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。详见错误码了解详情和解决建议。
disableAudioSpectrumMonitor
关闭音频频谱监测。
- (int)disableAudioSpectrumMonitor;
详情
调用 enableAudioSpectrumMonitor: 后,如果你想关闭音频频谱监测,请调用该方法。
该方法在加入频道前后均可调用。
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。详见错误码了解详情和解决建议。
enableAudioSpectrumMonitor:
开启音频频谱监测。
- (int)enableAudioSpectrumMonitor:(int)intervalInMS;
详情
如果你想获取本地或远端用户的音频频谱数据,请注册音频频谱观测器并开启音频频谱监测。
该方法在加入频道前后均可调用。
参数
- intervalInMS
SDK 触发 onLocalAudioSpectrum: 和 onRemoteAudioSpectrum: 回调的时间间隔(毫秒)。 默认值为 100 毫秒。取值不得少于 10 毫秒,否则该方法会调用失败。
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。详见错误码了解详情和解决建议。
- -2: 参数设置错误。
onLocalAudioSpectrum:
获取本地音频频谱。
- (BOOL)onLocalAudioSpectrum:(NSArray<NSNumber *> * _Nullable)audioSpectrumData;
详情
成功调用 registerAudioSpectrumDelegate: 实现 AgoraAudioSpectrumDelegate 中的 onLocalAudioSpectrum: 回调并调用 enableAudioSpectrumMonitor: 开启音频频谱监测后,SDK 会按照你设置的时间间隔触发该回调,报告编码前的本地音频数据的频谱。
参数
- audioSpectrumData
- 本地用户的音频频谱数据。声网将声音频率分为 256 个频域,通过该参数报告各频域的能量值,每个能量值的取值范围为 [-300,1],单位为 dBFS。
返回值
YES
: 接收。NO
: 不接收。
onRemoteAudioSpectrum:
获取远端音频频谱。
- (BOOL)onRemoteAudioSpectrum:(NSArray<AgoraAudioSpectrumInfo *> * _Nullable)AudioSpectrumInfo;
详情
成功调用 registerAudioSpectrumDelegate: 实现 AgoraAudioSpectrumDelegate 中的 onRemoteAudioSpectrum: 回调并调用 enableAudioSpectrumMonitor: 开启音频频谱监测后,SDK 会按照你设置的时间间隔触发该回调,报告接收到的远端音频数据的频谱。
参数
- AudioSpectrumInfo
- 远端用户的音频频谱信息,详见 AgoraAudioSpectrumInfo。 数组数量等于 SDK 监测到的远端用户数量,数组为空表示没有监测到远端用户的音频频谱。
返回值
YES
: 接收。NO
: 不接收。