#include "services/audio/processing_audio_fifo.h"
#include "base/metrics/histogram_functions.h"
#include "base/strings/stringprintf.h"
#include "base/trace_event/trace_event.h"
#include "media/base/audio_bus.h"
#include "media/base/audio_parameters.h"
namespace audio {
class ProcessingAudioFifo::StatsReporter { … };
struct ProcessingAudioFifo::CaptureData { … };
ProcessingAudioFifo::ProcessingAudioFifo(
const media::AudioParameters& input_params,
int fifo_size,
ProcessAudioCallback processing_callback,
LogCallback log_callback)
: … { … }
ProcessingAudioFifo::~ProcessingAudioFifo() { … }
void ProcessingAudioFifo::AttachOnProcessedCallbackForTesting(
base::RepeatingClosure on_processed_callback) { … }
void ProcessingAudioFifo::StopProcessingLoop() { … }
ProcessingAudioFifo::CaptureData* ProcessingAudioFifo::GetDataAtIndex(int idx) { … }
void ProcessingAudioFifo::Start() { … }
void ProcessingAudioFifo::StartForTesting(
base::WaitableEvent* fake_new_data_captured) { … }
void ProcessingAudioFifo::StartInternal(base::WaitableEvent* new_data_captured,
base::Thread::Options options) { … }
void ProcessingAudioFifo::PushData(
const media::AudioBus* audio_bus,
base::TimeTicks capture_time,
double volume,
bool key_pressed,
const media::AudioGlitchInfo& audio_glitch_info) { … }
void ProcessingAudioFifo::ProcessAudioLoop(
base::WaitableEvent* new_data_captured) { … }
}