Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(843)

Unified Diff: media/audio/audio_output_controller.cc

Issue 2443573003: Factor out AudioOutputDelegate from AudioRendererHost. (Closed)
Patch Set: Simplify. Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: media/audio/audio_output_controller.cc
diff --git a/media/audio/audio_output_controller.cc b/media/audio/audio_output_controller.cc
index ae879c2fdc106629d4d4b7b004f91fd79373de00..3d5040f0075e28a41664ff44bda0f68ac7f087f2 100644
--- a/media/audio/audio_output_controller.cc
+++ b/media/audio/audio_output_controller.cc
@@ -26,7 +26,7 @@ AudioOutputController::AudioOutputController(
EventHandler* handler,
const AudioParameters& params,
const std::string& output_device_id,
- SyncReader* sync_reader)
+ std::unique_ptr<SyncReader> sync_reader)
: audio_manager_(audio_manager),
params_(params),
handler_(handler),
@@ -35,7 +35,7 @@ AudioOutputController::AudioOutputController(
diverting_to_stream_(NULL),
volume_(1.0),
state_(kEmpty),
- sync_reader_(sync_reader),
+ sync_reader_(std::move(sync_reader)),
message_loop_(audio_manager->GetTaskRunner()),
power_monitor_(
params.sample_rate(),
@@ -60,7 +60,7 @@ scoped_refptr<AudioOutputController> AudioOutputController::Create(
EventHandler* event_handler,
const AudioParameters& params,
const std::string& output_device_id,
- SyncReader* sync_reader) {
+ std::unique_ptr<SyncReader> sync_reader) {
CHECK(audio_manager);
CHECK_EQ(AudioManager::Get(), audio_manager);
DCHECK(sync_reader);
@@ -68,8 +68,9 @@ scoped_refptr<AudioOutputController> AudioOutputController::Create(
if (!params.IsValid())
return NULL;
- scoped_refptr<AudioOutputController> controller(new AudioOutputController(
- audio_manager, event_handler, params, output_device_id, sync_reader));
+ scoped_refptr<AudioOutputController> controller(
+ new AudioOutputController(audio_manager, event_handler, params,
+ output_device_id, std::move(sync_reader)));
controller->message_loop_->PostTask(FROM_HERE, base::Bind(
&AudioOutputController::DoCreate, controller, false));
return controller;
@@ -137,14 +138,14 @@ void AudioOutputController::DoCreate(bool is_for_device_change) {
audio_manager_->MakeAudioOutputStreamProxy(params_, output_device_id_);
if (!stream_) {
state_ = kError;
- handler_->OnError();
+ handler_->OnControllerError();
return;
}
if (!stream_->Open()) {
DoStopCloseAndClearStream();
state_ = kError;
- handler_->OnError();
+ handler_->OnControllerError();
return;
}
@@ -161,7 +162,7 @@ void AudioOutputController::DoCreate(bool is_for_device_change) {
// And then report we have been created if we haven't done so already.
if (!is_for_device_change)
- handler_->OnCreated();
+ handler_->OnControllerCreated();
}
void AudioOutputController::DoPlay() {
@@ -196,7 +197,7 @@ void AudioOutputController::DoPlay() {
FROM_HERE, TimeDelta::FromSeconds(5), this,
&AudioOutputController::WedgeCheck);
- handler_->OnPlaying();
+ handler_->OnControllerPlaying();
}
void AudioOutputController::StopStream() {
@@ -229,7 +230,7 @@ void AudioOutputController::DoPause() {
// a better way to know when it should exit PPB_Audio_Shared::Run().
sync_reader_->UpdatePendingBytes(std::numeric_limits<uint32_t>::max(), 0);
- handler_->OnPaused();
+ handler_->OnControllerPaused();
}
void AudioOutputController::DoClose() {
@@ -290,7 +291,7 @@ void AudioOutputController::DoSwitchOutputDevice(
void AudioOutputController::DoReportError() {
DCHECK(message_loop_->BelongsToCurrentThread());
if (state_ != kClosed)
- handler_->OnError();
+ handler_->OnControllerError();
}
int AudioOutputController::OnMoreData(base::TimeDelta delay,

Powered by Google App Engine
This is Rietveld 408576698