namespace Agora.Rtc
{
///
///
/// The audio spectrum observer.
///
///
public abstract class IAudioSpectrumObserver
{
///
///
/// Gets the statistics of a local audio spectrum.
/// After successfully calling RegisterAudioSpectrumObserver to implement the OnLocalAudioSpectrum Callback in IAudioSpectrumObserver and calling EnableAudioSpectrumMonitor to enable audio spectrum monitoring, the SDK will trigger the Callback as the time interval you set to report the received remote audio data spectrum.
///
///
/// The audio spectrum data of the local user. See AudioSpectrumData .
///
///
/// Whether you have received the spectrum data:true: Spectrum data is received.false: No spectrum data is received.
///
///
public virtual bool OnLocalAudioSpectrum(AudioSpectrumData data)
{
return true;
}
///
///
/// Gets the remote audio spectrum.
/// After successfully calling RegisterAudioSpectrumObserver to implement the OnRemoteAudioSpectrum Callback in the IAudioSpectrumObserver and calling EnableAudioSpectrumMonitor to enable audio spectrum monitoring, the SDK will trigger the Callback as the time interval you set to report the received remote audio data spectrum.
///
///
/// The audio spectrum information of the remote user, see UserAudioSpectrumInfo . The number of arrays is the number of remote users monitored by the SDK. If the array is null, it means that no audio spectrum of remote users is detected.
///
/// The number of remote users.
///
///
/// Whether you have received the spectrum data:true: Spectrum data is received.false: No spectrum data is received.
///
///
public virtual bool OnRemoteAudioSpectrum(UserAudioSpectrumInfo[] spectrums, uint spectrumNumber)
{
return true;
}
}
}