| Index: media/audio/pulse/pulse_input.cc
|
| diff --git a/media/audio/pulse/pulse_input.cc b/media/audio/pulse/pulse_input.cc
|
| index 9d31cddd735ff291713ae24c5e6e6f410008df8d..d5cb94ece22fa09dff7aed7e730d463de037b689 100644
|
| --- a/media/audio/pulse/pulse_input.cc
|
| +++ b/media/audio/pulse/pulse_input.cc
|
| @@ -34,6 +34,8 @@ PulseAudioInputStream::PulseAudioInputStream(AudioManagerPulse* audio_manager,
|
| context_state_changed_(false) {
|
| DCHECK(mainloop);
|
| DCHECK(context);
|
| + CHECK(params_.IsValid());
|
| + audio_bus_ = AudioBus::Create(params_);
|
| }
|
|
|
| PulseAudioInputStream::~PulseAudioInputStream() {
|
| @@ -272,8 +274,11 @@ void PulseAudioInputStream::ReadData() {
|
| int packet_size = params_.GetBytesPerBuffer();
|
| while (buffer_->forward_bytes() >= packet_size) {
|
| buffer_->Read(audio_data_buffer_.get(), packet_size);
|
| - callback_->OnData(this, audio_data_buffer_.get(), packet_size,
|
| - hardware_delay, normalized_volume);
|
| + audio_bus_->FromInterleaved(audio_data_buffer_.get(),
|
| + audio_bus_->frames(),
|
| + params_.bits_per_sample() / 8);
|
| + callback_->OnData(
|
| + this, audio_bus_.get(), hardware_delay, normalized_volume);
|
|
|
| if (buffer_->forward_bytes() < packet_size)
|
| break;
|
|
|