| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "base/bind.h" | 5 #include "base/bind.h" |
| 6 #include "base/callback_helpers.h" | 6 #include "base/callback_helpers.h" |
| 7 #include "base/run_loop.h" | 7 #include "base/run_loop.h" |
| 8 #include "base/strings/stringprintf.h" | 8 #include "base/strings/stringprintf.h" |
| 9 #include "media/base/audio_buffer_converter.h" | 9 #include "media/base/audio_buffer_converter.h" |
| 10 #include "media/base/audio_hardware_config.h" | 10 #include "media/base/audio_hardware_config.h" |
| (...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 88 AudioParameters out_params(AudioParameters::AUDIO_PCM_LOW_LATENCY, | 88 AudioParameters out_params(AudioParameters::AUDIO_PCM_LOW_LATENCY, |
| 89 kChannelLayout, | 89 kChannelLayout, |
| 90 kOutputSamplesPerSecond, | 90 kOutputSamplesPerSecond, |
| 91 SampleFormatToBytesPerChannel(kSampleFormat) * 8, | 91 SampleFormatToBytesPerChannel(kSampleFormat) * 8, |
| 92 512); | 92 512); |
| 93 hardware_config_.UpdateOutputConfig(out_params); | 93 hardware_config_.UpdateOutputConfig(out_params); |
| 94 ScopedVector<AudioDecoder> decoders; | 94 ScopedVector<AudioDecoder> decoders; |
| 95 decoders.push_back(decoder_); | 95 decoders.push_back(decoder_); |
| 96 sink_ = new FakeAudioRendererSink(); | 96 sink_ = new FakeAudioRendererSink(); |
| 97 renderer_.reset(new AudioRendererImpl(message_loop_.message_loop_proxy(), | 97 renderer_.reset(new AudioRendererImpl(message_loop_.message_loop_proxy(), |
| 98 sink_, | 98 sink_.get(), |
| 99 decoders.Pass(), | 99 decoders.Pass(), |
| 100 SetDecryptorReadyCB(), | 100 SetDecryptorReadyCB(), |
| 101 &hardware_config_)); | 101 &hardware_config_)); |
| 102 } | 102 } |
| 103 | 103 |
| 104 virtual ~AudioRendererImplTest() { | 104 virtual ~AudioRendererImplTest() { |
| 105 SCOPED_TRACE("~AudioRendererImplTest()"); | 105 SCOPED_TRACE("~AudioRendererImplTest()"); |
| 106 } | 106 } |
| 107 | 107 |
| 108 void ExpectUnsupportedAudioDecoder() { | 108 void ExpectUnsupportedAudioDecoder() { |
| (...skipping 263 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 372 reset_cb_ = reset_cb; | 372 reset_cb_ = reset_cb; |
| 373 return; | 373 return; |
| 374 } | 374 } |
| 375 | 375 |
| 376 message_loop_.PostTask(FROM_HERE, reset_cb); | 376 message_loop_.PostTask(FROM_HERE, reset_cb); |
| 377 } | 377 } |
| 378 | 378 |
| 379 void DeliverBuffer(AudioDecoder::Status status, | 379 void DeliverBuffer(AudioDecoder::Status status, |
| 380 const scoped_refptr<AudioBuffer>& buffer) { | 380 const scoped_refptr<AudioBuffer>& buffer) { |
| 381 CHECK(!decode_cb_.is_null()); | 381 CHECK(!decode_cb_.is_null()); |
| 382 if (buffer && !buffer->end_of_stream()) | 382 if (buffer.get() && !buffer->end_of_stream()) |
| 383 output_cb_.Run(buffer); | 383 output_cb_.Run(buffer); |
| 384 base::ResetAndReturn(&decode_cb_).Run(status); | 384 base::ResetAndReturn(&decode_cb_).Run(status); |
| 385 | 385 |
| 386 if (!reset_cb_.is_null()) | 386 if (!reset_cb_.is_null()) |
| 387 base::ResetAndReturn(&reset_cb_).Run(); | 387 base::ResetAndReturn(&reset_cb_).Run(); |
| 388 | 388 |
| 389 base::RunLoop().RunUntilIdle(); | 389 base::RunLoop().RunUntilIdle(); |
| 390 } | 390 } |
| 391 | 391 |
| 392 void OnEnded() { | 392 void OnEnded() { |
| (...skipping 326 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 719 // Start rendering with zero playback rate. Sink should be paused until | 719 // Start rendering with zero playback rate. Sink should be paused until |
| 720 // non-zero rate is set. | 720 // non-zero rate is set. |
| 721 renderer_->SetPlaybackRate(0.0f); | 721 renderer_->SetPlaybackRate(0.0f); |
| 722 renderer_->StartTicking(); | 722 renderer_->StartTicking(); |
| 723 EXPECT_EQ(FakeAudioRendererSink::kPaused, sink_->state()); | 723 EXPECT_EQ(FakeAudioRendererSink::kPaused, sink_->state()); |
| 724 renderer_->SetPlaybackRate(1.0f); | 724 renderer_->SetPlaybackRate(1.0f); |
| 725 EXPECT_EQ(FakeAudioRendererSink::kPlaying, sink_->state()); | 725 EXPECT_EQ(FakeAudioRendererSink::kPlaying, sink_->state()); |
| 726 } | 726 } |
| 727 | 727 |
| 728 } // namespace media | 728 } // namespace media |
| OLD | NEW |