RealtimeOutgoingAudioSourceLibWebRTC.h [plain text]
#pragma once
#if USE(LIBWEBRTC)
#include "RealtimeOutgoingAudioSource.h"
namespace WebCore {
class RealtimeOutgoingAudioSourceLibWebRTC final : public RealtimeOutgoingAudioSource {
public:
static Ref<RealtimeOutgoingAudioSourceLibWebRTC> create(Ref<MediaStreamTrackPrivate>&& audioTrackPrivate)
{
return adoptRef(*new RealtimeOutgoingAudioSourceLibWebRTC(WTFMove(audioTrackPrivate)));
}
private:
explicit RealtimeOutgoingAudioSourceLibWebRTC(Ref<MediaStreamTrackPrivate>&&);
~RealtimeOutgoingAudioSourceLibWebRTC();
void audioSamplesAvailable(const MediaTime&, const PlatformAudioData&, const AudioStreamDescription&, size_t) final;
bool isReachingBufferedAudioDataHighLimit() final;
bool isReachingBufferedAudioDataLowLimit() final;
bool hasBufferedEnoughData() final;
void pullAudioData() final;
};
}
#endif // USE(LIBWEBRTC)