音频频谱
disableAudioSpectrumMonitor
禁用音频频谱监测。
Objective-C
- (int)disableAudioSpectrumMonitor NS_SWIFT_NAME(disableAudioSpectrumMonitor());
如果你已调用 enableAudioSpectrumMonitor: 方法启用音频频谱监测,可以调用此方法禁用该功能。
信息
你可以在加入频道前或后调用此方法。
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
enableAudioSpectrumMonitor:
开启音频频谱监测。
Objective-C
- (int)enableAudioSpectrumMonitor:(int)intervalInMS NS_SWIFT_NAME(enableAudioSpectrumMonitor(_:));
如果你希望获取本地或远端用户的音频频谱数据,可以注册音频频谱观察器并调用该方法。
信息
你可以在加入频道前或加入频道后调用该方法。
适用场景
你可以在加入频道前或加入频道后调用此方法。
参数
- intervalInMS
- SDK 触发 onLocalAudioSpectrum: 和 onRemoteAudioSpectrum: 回调的时间间隔(单位为毫秒,默认值为 100)。该参数不能小于 10,否则调用该方法会失败。
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
- -2:参数无效。
registerAudioSpectrumDelegate:
注册音频频谱观察者。
Objective-C
- (int)registerAudioSpectrumDelegate:(id<AgoraAudioSpectrumDelegate> _Nullable )delegate NS_SWIFT_NAME(registerAudioSpectrumDelegate(_:));
成功注册音频频谱观察者并调用 enableAudioSpectrumMonitor: 启用音频频谱监测后,SDK 会根据你设置的时间间隔,触发你在 AgoraAudioSpectrumDelegate 中实现的回调。
信息
你可以在加入频道前或加入频道后调用此方法。
参数
- delegate
- 音频频谱观察者。详见 AgoraAudioSpectrumDelegate。
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
unregisterAudioSpectrumDelegate:
取消注册音频频谱观察者。
Objective-C
- (int)unregisterAudioSpectrumDelegate:(id<AgoraAudioSpectrumDelegate> _Nullable)delegate NS_SWIFT_NAME(unregisterAudioSpectrumDelegate(_:));
如果你已调用 registerAudioSpectrumDelegate: 方法注册了音频频谱观察者,想要关闭音频频谱监测时,可以调用该方法。
信息
你可以在加入频道前或加入频道后调用此方法。
参数
- delegate
- 音频频谱观察者。详见 AgoraAudioSpectrumDelegate。
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
onLocalAudioSpectrum:
获取本地音频频谱数据。
Objective-C
- (BOOL)onLocalAudioSpectrum:(NSArray<NSNumber *> * _Nullable)audioSpectrumData NS_SWIFT_NAME(onLocalAudioSpectrum(_:));
成功调用 registerAudioSpectrumDelegate: 实现 AgoraAudioSpectrumDelegate 中的 onLocalAudioSpectrum: 回调,并调用 enableAudioSpectrumMonitor: 启用音频频谱监测后,SDK 会按照你设置的时间间隔触发该回调,在编码前报告接收到的远端音频数据频谱。
参数
- audioSpectrumData
- 本地用户的音频频谱数据。声网将音频频率划分为 256 个频率域,并通过该参数报告每个频率域的能量值。每个能量值的取值范围为 [-300, 1],单位为 dBFS。
返回值
- YES:接收到音频频谱数据。
- NO:未接收到音频频谱数据。
onRemoteAudioSpectrum:
获取远端音频频谱信息回调。
Objective-C
- (BOOL)onRemoteAudioSpectrum:(NSArray<AgoraAudioSpectrumInfo *> * _Nullable)AudioSpectrumInfo NS_SWIFT_NAME(onRemoteAudioSpectrum(_:));
你调用 registerAudioSpectrumDelegate: 注册 AgoraAudioSpectrumDelegate 协议并实现 onRemoteAudioSpectrum: 回调,同时调用 enableAudioSpectrumMonitor: 启用音频频谱监测后,该回调会按照设置的时间间隔触发,用于报告接收到的远端音频频谱数据。
触发时机
该回调在接收到远端音频频谱数据时被触发。
参数
- AudioSpectrumInfo
- 远端用户的音频频谱信息。数组的数量为 SDK 监测到的远端用户数量。若该数组为 nil,表示未检测到远端用户的音频频谱。详见 AgoraAudioSpectrumInfo。
返回值
- YES:已接收到频谱数据。
- NO:未接收到频谱数据。