音频频谱
registerAudioSpectrumObserver
注册音频频谱观测器。
virtual int registerAudioSpectrumObserver(agora::media::IAudioSpectrumObserver * observer) = 0;
成功注册音频频谱观测器并调用 enableAudioSpectrumMonitor
开启音频频谱监测后,SDK 会按照你设置的时间间隔报告你在 IAudioSpectrumObserver
类中实现的回调。
注意: 该方法在加入频道前后均可调用。
参数
参数名 | 描述 |
---|---|
observer | 音频频谱观测器。详见 |
返回值
-
0: 方法调用成功。
-
< 0: 方法调用失败。详见
错误码
了解详情和解决建议。
unregisterAudioSpectrumObserver
取消注册音频频谱观测器。
virtual int unregisterAudioSpectrumObserver(agora::media::IAudioSpectrumObserver * observer) = 0;
调用 registerAudioSpectrumObserver
后,如果你想取消注册音频频谱观测器,请调用该方法。
注意: 该方法在加入频道前后均可调用。
参数
参数名 | 描述 |
---|---|
observer | 音频频谱观测器。详见 |
返回值
-
0: 方法调用成功。
-
< 0: 方法调用失败。详见
错误码
了解详情和解决建议。
disableAudioSpectrumMonitor
关闭音频频谱监测。
virtual int disableAudioSpectrumMonitor() = 0;
调用 enableAudioSpectrumMonitor
后,如果你想关闭音频频谱监测,请调用该方法。
注意:
该方法在加入频道前后均可调用。
返回值
-
0: 方法调用成功。
-
< 0: 方法调用失败。详见
错误码
了解详情和解决建议。
enableAudioSpectrumMonitor
开启音频频谱监测。
virtual int enableAudioSpectrumMonitor(int intervalInMS = 100) = 0;
如果你想获取本地或远端用户的音频频谱数据,请注册音频频谱观测器并开启音频频谱监测。
注意:
该方法在加入频道前后均可调用。
参数
参数名 | 描述 |
---|---|
intervalInMS | SDK 触发 |
返回值
-
0: 方法调用成功。
-
< 0: 方法调用失败。
-
-2: 参数设置错误。
-
onLocalAudioSpectrum
获取本地音频频谱。
virtual bool onLocalAudioSpectrum(const AudioSpectrumData& data) = 0;
成功调用 registerAudioSpectrumObserver
实现 IAudioSpectrumObserver
中的 onLocalAudioSpectrum
回调并调用 enableAudioSpectrumMonitor
开启音频频谱监测后,SDK 会按照你设置的时间间隔触发该回调,报告编码后的本地音频数据的频谱。
参数
参数名 | 描述 |
---|---|
data | 本地用户的音频频谱数据。详见 |
返回值
是否接收频谱数据:
-
true
: 接收。 -
false
: 不接收。
onRemoteAudioSpectrum
获取远端音频频谱。
virtual bool onRemoteAudioSpectrum(const UserAudioSpectrumInfo * spectrums, unsigned int spectrumNumber) = 0;
成功调用 registerAudioSpectrumObserver
实现 IAudioSpectrumObserver
中的 onRemoteAudioSpectrum
回调并调用 enableAudioSpectrumMonitor
开启音频频谱监测后,SDK 会按照你设置的时间间隔触发该回调,报告接收到的远端音频数据的频谱。
参数
参数名 | 描述 |
---|---|
spectrums | 远端用户的音频频谱信息,详见 |
spectrumNumber | 远端用户的数量。 |
返回值
是否接收频谱数据:
-
true
: 接收。 -
false
: 不接收。