| Index: remoting/host/audio_scheduler.cc
|
| diff --git a/remoting/host/audio_scheduler.cc b/remoting/host/audio_scheduler.cc
|
| index 38f107304eaec9fdbbd77d014c4cea8c04b1bded..5d777d565bb782eee26efb57f8518011cd80a240 100644
|
| --- a/remoting/host/audio_scheduler.cc
|
| +++ b/remoting/host/audio_scheduler.cc
|
| @@ -5,7 +5,6 @@
|
| #include "remoting/host/audio_scheduler.h"
|
|
|
| #include "base/bind.h"
|
| -#include "base/callback.h"
|
| #include "base/location.h"
|
| #include "base/logging.h"
|
| #include "base/single_thread_task_runner.h"
|
| @@ -20,7 +19,7 @@ namespace remoting {
|
| scoped_refptr<AudioScheduler> AudioScheduler::Create(
|
| scoped_refptr<base::SingleThreadTaskRunner> audio_task_runner,
|
| scoped_refptr<base::SingleThreadTaskRunner> network_task_runner,
|
| - AudioCapturer* audio_capturer,
|
| + scoped_ptr<AudioCapturer> audio_capturer,
|
| scoped_ptr<AudioEncoder> audio_encoder,
|
| protocol::AudioStub* audio_stub) {
|
| DCHECK(network_task_runner->BelongsToCurrentThread());
|
| @@ -30,16 +29,15 @@ scoped_refptr<AudioScheduler> AudioScheduler::Create(
|
|
|
| scoped_refptr<AudioScheduler> scheduler = new AudioScheduler(
|
| audio_task_runner, network_task_runner,
|
| - audio_capturer, audio_encoder.Pass(), audio_stub);
|
| + audio_capturer.Pass(), audio_encoder.Pass(), audio_stub);
|
| audio_task_runner->PostTask(
|
| FROM_HERE, base::Bind(&AudioScheduler::StartOnAudioThread, scheduler));
|
|
|
| return scheduler;
|
| }
|
|
|
| -void AudioScheduler::Stop(const base::Closure& done_task) {
|
| +void AudioScheduler::Stop() {
|
| DCHECK(network_task_runner_->BelongsToCurrentThread());
|
| - DCHECK(!done_task.is_null());
|
| DCHECK(audio_stub_);
|
|
|
| // Clear |audio_stub_| to prevent audio packets being delivered to the client.
|
| @@ -47,18 +45,18 @@ void AudioScheduler::Stop(const base::Closure& done_task) {
|
|
|
| audio_task_runner_->PostTask(
|
| FROM_HERE,
|
| - base::Bind(&AudioScheduler::StopOnAudioThread, this, done_task));
|
| + base::Bind(&AudioScheduler::StopOnAudioThread, this));
|
| }
|
|
|
| AudioScheduler::AudioScheduler(
|
| scoped_refptr<base::SingleThreadTaskRunner> audio_task_runner,
|
| scoped_refptr<base::SingleThreadTaskRunner> network_task_runner,
|
| - AudioCapturer* audio_capturer,
|
| + scoped_ptr<AudioCapturer> audio_capturer,
|
| scoped_ptr<AudioEncoder> audio_encoder,
|
| protocol::AudioStub* audio_stub)
|
| : audio_task_runner_(audio_task_runner),
|
| network_task_runner_(network_task_runner),
|
| - audio_capturer_(audio_capturer),
|
| + audio_capturer_(audio_capturer.Pass()),
|
| audio_encoder_(audio_encoder.Pass()),
|
| audio_stub_(audio_stub),
|
| network_stopped_(false),
|
| @@ -76,21 +74,19 @@ void AudioScheduler::StartOnAudioThread() {
|
| base::Bind(&AudioScheduler::EncodeAudioPacket, this));
|
| }
|
|
|
| -void AudioScheduler::StopOnAudioThread(const base::Closure& done_task) {
|
| +void AudioScheduler::StopOnAudioThread() {
|
| DCHECK(audio_task_runner_->BelongsToCurrentThread());
|
| audio_capturer_->Stop();
|
| -
|
| - network_task_runner_->PostTask(FROM_HERE, done_task);
|
| }
|
|
|
| -void AudioScheduler::SetEnabled(bool enabled) {
|
| +void AudioScheduler::Pause(bool pause) {
|
| if (!audio_task_runner_->BelongsToCurrentThread()) {
|
| audio_task_runner_->PostTask(
|
| - FROM_HERE, base::Bind(&AudioScheduler::SetEnabled, this, enabled));
|
| + FROM_HERE, base::Bind(&AudioScheduler::Pause, this, pause));
|
| return;
|
| }
|
|
|
| - enabled_ = enabled;
|
| + enabled_ = !pause;
|
| }
|
|
|
| void AudioScheduler::EncodeAudioPacket(scoped_ptr<AudioPacket> packet) {
|
|
|