chromium/services/audio/owning_audio_manager_accessor.cc

// Copyright 2018 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "services/audio/owning_audio_manager_accessor.h"

#include <memory>
#include <utility>

#include "base/feature_list.h"
#include "base/metrics/field_trial_params.h"
#include "base/metrics/histogram_macros.h"
#include "base/strings/string_number_conversions.h"
#include "base/task/sequenced_task_runner.h"
#include "base/task/single_thread_task_runner.h"
#include "base/time/default_tick_clock.h"
#include "base/time/time.h"
#include "media/audio/audio_features.h"
#include "media/audio/audio_manager.h"
#include "media/audio/audio_thread.h"
#include "media/audio/audio_thread_hang_monitor.h"
#include "services/audio/realtime_audio_thread.h"

HangAction;

namespace audio {

namespace {

// Ideally, this would be based on the incoming audio's buffer durations.
// However, we might deal with multiple streams, with multiple buffer durations.
// Using a 10ms constant instead is acceptable (and better than the default)
// since there are no super-strict realtime requirements (no system audio calls
// waiting on these threads).
constexpr base::TimeDelta kReatimeThreadPeriod =;

HangAction GetAudioThreadHangAction() {}

// Thread class for hosting owned AudioManager on the main thread of the
// service, with a separate worker thread (started on-demand) for running things
// that shouldn't be blocked by main-thread tasks.
class MainThread final : public media::AudioThread {};

MainThread::MainThread()
    :{}

MainThread::~MainThread() {}

void MainThread::Stop() {}

bool MainThread::IsHung() const {}

base::SingleThreadTaskRunner* MainThread::GetTaskRunner() {}

base::SingleThreadTaskRunner* MainThread::GetWorkerTaskRunner() {}

}  // namespace

OwningAudioManagerAccessor::OwningAudioManagerAccessor(
    AudioManagerFactoryCallback audio_manager_factory_cb)
    :{}

OwningAudioManagerAccessor::~OwningAudioManagerAccessor() {}

media::AudioManager* OwningAudioManagerAccessor::GetAudioManager() {}

void OwningAudioManagerAccessor::SetAudioLogFactory(
    media::AudioLogFactory* log_factory) {}

void OwningAudioManagerAccessor::Shutdown() {}

}  // namespace audio