summaryrefslogtreecommitdiffstats
path: root/media/audio
diff options
context:
space:
mode:
authorxians <xians@chromium.org>2014-08-27 03:21:31 -0700
committerCommit bot <commit-bot@chromium.org>2014-08-27 10:22:14 +0000
commit2da7a5b3ead29495a3d2640343ab18c93e2805b5 (patch)
tree92f4456858de08a0e20e2e43679cdc28dc04691a /media/audio
parentee0fd44359e1b292ab8a903c0329d315caea0204 (diff)
downloadchromium_src-2da7a5b3ead29495a3d2640343ab18c93e2805b5.zip
chromium_src-2da7a5b3ead29495a3d2640343ab18c93e2805b5.tar.gz
chromium_src-2da7a5b3ead29495a3d2640343ab18c93e2805b5.tar.bz2
Remove the last piece of deprecated synchronous IO code.
BUG=337096 TEST=bots Review URL: https://codereview.chromium.org/460373002 Cr-Commit-Position: refs/heads/master@{#292132}
Diffstat (limited to 'media/audio')
-rw-r--r--media/audio/alsa/audio_manager_alsa.cc4
-rw-r--r--media/audio/android/audio_android_unittest.cc2
-rw-r--r--media/audio/android/audio_manager_android.cc6
-rw-r--r--media/audio/audio_output_device.h7
-rw-r--r--media/audio/audio_output_device_unittest.cc2
-rw-r--r--media/audio/audio_output_resampler.cc2
-rw-r--r--media/audio/audio_parameters.cc19
-rw-r--r--media/audio/audio_parameters.h14
-rw-r--r--media/audio/cras/audio_manager_cras.cc4
-rw-r--r--media/audio/cras/cras_unified.cc70
-rw-r--r--media/audio/cras/cras_unified.h8
-rw-r--r--media/audio/fake_audio_manager.cc4
-rw-r--r--media/audio/mac/audio_manager_mac.cc13
-rw-r--r--media/audio/openbsd/audio_manager_openbsd.cc4
-rw-r--r--media/audio/pulse/audio_manager_pulse.cc4
-rw-r--r--media/audio/win/audio_low_latency_input_win.cc2
-rw-r--r--media/audio/win/audio_low_latency_input_win_unittest.cc1
-rw-r--r--media/audio/win/audio_manager_win.cc12
-rw-r--r--media/audio/win/core_audio_util_win.cc4
19 files changed, 27 insertions, 155 deletions
diff --git a/media/audio/alsa/audio_manager_alsa.cc b/media/audio/alsa/audio_manager_alsa.cc
index beb60ba..7624834 100644
--- a/media/audio/alsa/audio_manager_alsa.cc
+++ b/media/audio/alsa/audio_manager_alsa.cc
@@ -311,7 +311,6 @@ AudioParameters AudioManagerAlsa::GetPreferredOutputStreamParameters(
int sample_rate = kDefaultSampleRate;
int buffer_size = kDefaultOutputBufferSize;
int bits_per_sample = 16;
- int input_channels = 0;
if (input_params.IsValid()) {
// Some clients, such as WebRTC, have a more limited use case and work
// acceptably with a smaller buffer size. The check below allows clients
@@ -321,7 +320,6 @@ AudioParameters AudioManagerAlsa::GetPreferredOutputStreamParameters(
sample_rate = input_params.sample_rate();
bits_per_sample = input_params.bits_per_sample();
channel_layout = input_params.channel_layout();
- input_channels = input_params.input_channels();
buffer_size = std::min(input_params.frames_per_buffer(), buffer_size);
}
@@ -330,7 +328,7 @@ AudioParameters AudioManagerAlsa::GetPreferredOutputStreamParameters(
buffer_size = user_buffer_size;
return AudioParameters(
- AudioParameters::AUDIO_PCM_LOW_LATENCY, channel_layout, input_channels,
+ AudioParameters::AUDIO_PCM_LOW_LATENCY, channel_layout,
sample_rate, bits_per_sample, buffer_size, AudioParameters::NO_EFFECTS);
}
diff --git a/media/audio/android/audio_android_unittest.cc b/media/audio/android/audio_android_unittest.cc
index 177953d..68e74a4 100644
--- a/media/audio/android/audio_android_unittest.cc
+++ b/media/audio/android/audio_android_unittest.cc
@@ -598,7 +598,6 @@ class AudioAndroidInputTest : public AudioAndroidOutputTest,
AudioParameters::NO_EFFECTS;
AudioParameters params(audio_input_parameters().format(),
audio_input_parameters().channel_layout(),
- audio_input_parameters().input_channels(),
audio_input_parameters().sample_rate(),
audio_input_parameters().bits_per_sample(),
audio_input_parameters().frames_per_buffer(),
@@ -805,7 +804,6 @@ TEST_P(AudioAndroidInputTest,
AudioParameters native_params = GetInputStreamParameters();
AudioParameters params(native_params.format(),
native_params.channel_layout(),
- native_params.input_channels(),
native_params.sample_rate(),
native_params.bits_per_sample(),
native_params.sample_rate() / 100,
diff --git a/media/audio/android/audio_manager_android.cc b/media/audio/android/audio_manager_android.cc
index 48f203a..090f853 100644
--- a/media/audio/android/audio_manager_android.cc
+++ b/media/audio/android/audio_manager_android.cc
@@ -138,7 +138,7 @@ AudioParameters AudioManagerAndroid::GetInputStreamParameters(
buffer_size = user_buffer_size;
AudioParameters params(
- AudioParameters::AUDIO_PCM_LOW_LATENCY, channel_layout, 0,
+ AudioParameters::AUDIO_PCM_LOW_LATENCY, channel_layout,
GetNativeOutputSampleRate(), 16, buffer_size, effects);
return params;
}
@@ -274,13 +274,11 @@ AudioParameters AudioManagerAndroid::GetPreferredOutputStreamParameters(
int sample_rate = GetNativeOutputSampleRate();
int buffer_size = GetOptimalOutputFrameSize(sample_rate, 2);
int bits_per_sample = 16;
- int input_channels = 0;
if (input_params.IsValid()) {
// Use the client's input parameters if they are valid.
sample_rate = input_params.sample_rate();
bits_per_sample = input_params.bits_per_sample();
channel_layout = input_params.channel_layout();
- input_channels = input_params.input_channels();
buffer_size = GetOptimalOutputFrameSize(
sample_rate, ChannelLayoutToChannelCount(channel_layout));
}
@@ -290,7 +288,7 @@ AudioParameters AudioManagerAndroid::GetPreferredOutputStreamParameters(
buffer_size = user_buffer_size;
return AudioParameters(
- AudioParameters::AUDIO_PCM_LOW_LATENCY, channel_layout, input_channels,
+ AudioParameters::AUDIO_PCM_LOW_LATENCY, channel_layout,
sample_rate, bits_per_sample, buffer_size, AudioParameters::NO_EFFECTS);
}
diff --git a/media/audio/audio_output_device.h b/media/audio/audio_output_device.h
index 8449e9f..0d53d8b 100644
--- a/media/audio/audio_output_device.h
+++ b/media/audio/audio_output_device.h
@@ -81,11 +81,8 @@ class MEDIA_EXPORT AudioOutputDevice
scoped_ptr<AudioOutputIPC> ipc,
const scoped_refptr<base::SingleThreadTaskRunner>& io_task_runner);
- // Initialize function for clients wishing to have unified input and
- // output, |params| may specify |input_channels| > 0, representing a
- // number of input channels which will be at the same sample-rate
- // and buffer-size as the output as specified in |params|. |session_id| is
- // used for the browser to select the correct input device.
+ // Initialize the stream using |session_id|, which is used for the browser
+ // to select the correct input device.
void InitializeWithSessionId(const AudioParameters& params,
RenderCallback* callback,
int session_id);
diff --git a/media/audio/audio_output_device_unittest.cc b/media/audio/audio_output_device_unittest.cc
index 92d9425..0e1fd1e5 100644
--- a/media/audio/audio_output_device_unittest.cc
+++ b/media/audio/audio_output_device_unittest.cc
@@ -126,7 +126,7 @@ int AudioOutputDeviceTest::CalculateMemorySize() {
AudioOutputDeviceTest::AudioOutputDeviceTest() {
default_audio_parameters_.Reset(
AudioParameters::AUDIO_PCM_LINEAR,
- CHANNEL_LAYOUT_STEREO, 2, 0, 48000, 16, 1024);
+ CHANNEL_LAYOUT_STEREO, 2, 48000, 16, 1024);
audio_output_ipc_ = new MockAudioOutputIPC();
audio_device_ = new AudioOutputDevice(
diff --git a/media/audio/audio_output_resampler.cc b/media/audio/audio_output_resampler.cc
index 15633bb..cf966e0 100644
--- a/media/audio/audio_output_resampler.cc
+++ b/media/audio/audio_output_resampler.cc
@@ -221,7 +221,7 @@ bool AudioOutputResampler::OpenStream() {
// Finally fall back to a fake audio output device.
output_params_.Reset(
AudioParameters::AUDIO_FAKE, params_.channel_layout(),
- params_.channels(), params_.input_channels(), params_.sample_rate(),
+ params_.channels(), params_.sample_rate(),
params_.bits_per_sample(), params_.frames_per_buffer());
Initialize();
if (dispatcher_->OpenStream()) {
diff --git a/media/audio/audio_parameters.cc b/media/audio/audio_parameters.cc
index 62b825f..7532f34 100644
--- a/media/audio/audio_parameters.cc
+++ b/media/audio/audio_parameters.cc
@@ -16,7 +16,6 @@ AudioParameters::AudioParameters()
bits_per_sample_(0),
frames_per_buffer_(0),
channels_(0),
- input_channels_(0),
effects_(NO_EFFECTS) {
}
@@ -29,12 +28,10 @@ AudioParameters::AudioParameters(Format format, ChannelLayout channel_layout,
bits_per_sample_(bits_per_sample),
frames_per_buffer_(frames_per_buffer),
channels_(ChannelLayoutToChannelCount(channel_layout)),
- input_channels_(0),
effects_(NO_EFFECTS) {
}
AudioParameters::AudioParameters(Format format, ChannelLayout channel_layout,
- int input_channels,
int sample_rate, int bits_per_sample,
int frames_per_buffer, int effects)
: format_(format),
@@ -43,37 +40,33 @@ AudioParameters::AudioParameters(Format format, ChannelLayout channel_layout,
bits_per_sample_(bits_per_sample),
frames_per_buffer_(frames_per_buffer),
channels_(ChannelLayoutToChannelCount(channel_layout)),
- input_channels_(input_channels),
effects_(effects) {
}
AudioParameters::AudioParameters(Format format, ChannelLayout channel_layout,
- int channels, int input_channels,
- int sample_rate, int bits_per_sample,
- int frames_per_buffer, int effects)
+ int channels, int sample_rate,
+ int bits_per_sample, int frames_per_buffer,
+ int effects)
: format_(format),
channel_layout_(channel_layout),
sample_rate_(sample_rate),
bits_per_sample_(bits_per_sample),
frames_per_buffer_(frames_per_buffer),
channels_(channels),
- input_channels_(input_channels),
effects_(effects) {
if (channel_layout != CHANNEL_LAYOUT_DISCRETE)
DCHECK_EQ(channels, ChannelLayoutToChannelCount(channel_layout));
}
void AudioParameters::Reset(Format format, ChannelLayout channel_layout,
- int channels, int input_channels,
- int sample_rate, int bits_per_sample,
- int frames_per_buffer) {
+ int channels, int sample_rate,
+ int bits_per_sample, int frames_per_buffer) {
if (channel_layout != CHANNEL_LAYOUT_DISCRETE)
DCHECK_EQ(channels, ChannelLayoutToChannelCount(channel_layout));
format_ = format;
channel_layout_ = channel_layout;
channels_ = channels;
- input_channels_ = input_channels;
sample_rate_ = sample_rate;
bits_per_sample_ = bits_per_sample;
frames_per_buffer_ = frames_per_buffer;
@@ -86,8 +79,6 @@ bool AudioParameters::IsValid() const {
(channels_ <= media::limits::kMaxChannels) &&
(channel_layout_ > CHANNEL_LAYOUT_UNSUPPORTED) &&
(channel_layout_ <= CHANNEL_LAYOUT_MAX) &&
- (input_channels_ >= 0) &&
- (input_channels_ <= media::limits::kMaxChannels) &&
(sample_rate_ >= media::limits::kMinSampleRate) &&
(sample_rate_ <= media::limits::kMaxSampleRate) &&
(bits_per_sample_ > 0) &&
diff --git a/media/audio/audio_parameters.h b/media/audio/audio_parameters.h
index b23d26f..03fe043 100644
--- a/media/audio/audio_parameters.h
+++ b/media/audio/audio_parameters.h
@@ -58,17 +58,14 @@ class MEDIA_EXPORT AudioParameters {
int sample_rate, int bits_per_sample,
int frames_per_buffer);
AudioParameters(Format format, ChannelLayout channel_layout,
- int input_channels,
int sample_rate, int bits_per_sample,
int frames_per_buffer, int effects);
AudioParameters(Format format, ChannelLayout channel_layout,
- int channels, int input_channels,
- int sample_rate, int bits_per_sample,
+ int channels, int sample_rate, int bits_per_sample,
int frames_per_buffer, int effects);
void Reset(Format format, ChannelLayout channel_layout,
- int channels, int input_channels,
- int sample_rate, int bits_per_sample,
+ int channels, int sample_rate, int bits_per_sample,
int frames_per_buffer);
// Checks that all values are in the expected range. All limits are specified
@@ -94,7 +91,6 @@ class MEDIA_EXPORT AudioParameters {
int bits_per_sample() const { return bits_per_sample_; }
int frames_per_buffer() const { return frames_per_buffer_; }
int channels() const { return channels_; }
- int input_channels() const { return input_channels_; }
int effects() const { return effects_; }
// Comparison with other AudioParams.
@@ -103,7 +99,6 @@ class MEDIA_EXPORT AudioParameters {
sample_rate_ == other.sample_rate() &&
channel_layout_ == other.channel_layout() &&
channels_ == other.channels() &&
- input_channels_ == other.input_channels() &&
bits_per_sample_ == other.bits_per_sample() &&
frames_per_buffer_ == other.frames_per_buffer() &&
effects_ == other.effects();
@@ -120,9 +115,6 @@ class MEDIA_EXPORT AudioParameters {
int channels_; // Number of channels. Value set based on
// |channel_layout|.
- int input_channels_; // Optional number of input channels.
- // Normally 0, but can be set to specify
- // synchronized I/O.
int effects_; // Bitmask using PlatformEffectsMask.
};
@@ -132,8 +124,6 @@ inline bool operator<(const AudioParameters& a, const AudioParameters& b) {
return a.format() < b.format();
if (a.channels() != b.channels())
return a.channels() < b.channels();
- if (a.input_channels() != b.input_channels())
- return a.input_channels() < b.input_channels();
if (a.sample_rate() != b.sample_rate())
return a.sample_rate() < b.sample_rate();
if (a.bits_per_sample() != b.bits_per_sample())
diff --git a/media/audio/cras/audio_manager_cras.cc b/media/audio/cras/audio_manager_cras.cc
index abc78dd..ef46176 100644
--- a/media/audio/cras/audio_manager_cras.cc
+++ b/media/audio/cras/audio_manager_cras.cc
@@ -124,12 +124,10 @@ AudioParameters AudioManagerCras::GetPreferredOutputStreamParameters(
int sample_rate = kDefaultSampleRate;
int buffer_size = kMinimumOutputBufferSize;
int bits_per_sample = 16;
- int input_channels = 0;
if (input_params.IsValid()) {
sample_rate = input_params.sample_rate();
bits_per_sample = input_params.bits_per_sample();
channel_layout = input_params.channel_layout();
- input_channels = input_params.input_channels();
buffer_size =
std::min(kMaximumOutputBufferSize,
std::max(buffer_size, input_params.frames_per_buffer()));
@@ -140,7 +138,7 @@ AudioParameters AudioManagerCras::GetPreferredOutputStreamParameters(
buffer_size = user_buffer_size;
return AudioParameters(
- AudioParameters::AUDIO_PCM_LOW_LATENCY, channel_layout, input_channels,
+ AudioParameters::AUDIO_PCM_LOW_LATENCY, channel_layout,
sample_rate, bits_per_sample, buffer_size, AudioParameters::NO_EFFECTS);
}
diff --git a/media/audio/cras/cras_unified.cc b/media/audio/cras/cras_unified.cc
index 25af383..42d9222 100644
--- a/media/audio/cras/cras_unified.cc
+++ b/media/audio/cras/cras_unified.cc
@@ -21,30 +21,6 @@ namespace media {
// 5) Finally Close() is called. It cleans up and notifies the audio manager,
// which likely will destroy this object.
//
-// For output-only streams, a unified stream is created with 0 input channels.
-//
-// Simplified data flow for unified streams:
-//
-// +-------------+ +------------------+
-// | CRAS Server | | Chrome Client |
-// +------+------+ Add Stream +---------+--------+
-// |<----------------------------------|
-// | |
-// | buffer_frames captured to shm |
-// |---------------------------------->|
-// | | UnifiedCallback()
-// | | ReadWriteAudio()
-// | |
-// | buffer_frames written to shm |
-// |<----------------------------------|
-// | |
-// ... Repeats for each block. ...
-// | |
-// | |
-// | Remove stream |
-// |<----------------------------------|
-// | |
-//
// Simplified data flow for output only streams:
//
// +-------------+ +------------------+
@@ -86,18 +62,6 @@ CrasUnifiedStream::CrasUnifiedStream(const AudioParameters& params,
DCHECK(manager_);
DCHECK(params_.channels() > 0);
- // Must have at least one input or output. If there are both they must be the
- // same.
- int input_channels = params_.input_channels();
-
- if (input_channels) {
- // A unified stream for input and output.
- DCHECK(params_.channels() == input_channels);
- stream_direction_ = CRAS_STREAM_UNIFIED;
- input_bus_ = AudioBus::Create(input_channels,
- params_.frames_per_buffer());
- }
-
output_bus_ = AudioBus::Create(params);
}
@@ -325,9 +289,6 @@ uint32 CrasUnifiedStream::DispatchCallback(size_t frames,
case CRAS_STREAM_INPUT:
NOTREACHED() << "CrasUnifiedStream doesn't support input streams.";
return 0;
- case CRAS_STREAM_UNIFIED:
- return ReadWriteAudio(frames, input_samples, output_samples,
- input_ts, output_ts);
default:
break;
}
@@ -335,37 +296,6 @@ uint32 CrasUnifiedStream::DispatchCallback(size_t frames,
return 0;
}
-// Note these are run from a real time thread, so don't waste cycles here.
-uint32 CrasUnifiedStream::ReadWriteAudio(size_t frames,
- uint8* input_samples,
- uint8* output_samples,
- const timespec* input_ts,
- const timespec* output_ts) {
- DCHECK_EQ(frames, static_cast<size_t>(output_bus_->frames()));
- DCHECK(source_callback_);
-
- uint32 bytes_per_sample = bytes_per_frame_ / params_.channels();
- input_bus_->FromInterleaved(input_samples, frames, bytes_per_sample);
-
- // Determine latency and pass that on to the source. We have the capture time
- // of the first input sample and the playback time of the next audio sample
- // passed from the audio server, add them together for total latency.
- uint32 total_delay_bytes;
- timespec latency_ts = {0, 0};
- cras_client_calc_capture_latency(input_ts, &latency_ts);
- total_delay_bytes = GetBytesLatency(latency_ts);
- cras_client_calc_playback_latency(output_ts, &latency_ts);
- total_delay_bytes += GetBytesLatency(latency_ts);
-
- int frames_filled = source_callback_->OnMoreData(
- output_bus_.get(),
- AudioBuffersState(0, total_delay_bytes));
-
- output_bus_->ToInterleaved(frames_filled, bytes_per_sample, output_samples);
-
- return frames_filled;
-}
-
uint32 CrasUnifiedStream::WriteAudio(size_t frames,
uint8* buffer,
const timespec* sample_ts) {
diff --git a/media/audio/cras/cras_unified.h b/media/audio/cras/cras_unified.h
index db1d9fe..7e946e0 100644
--- a/media/audio/cras/cras_unified.h
+++ b/media/audio/cras/cras_unified.h
@@ -70,13 +70,6 @@ class MEDIA_EXPORT CrasUnifiedStream : public AudioOutputStream {
const timespec* input_ts,
const timespec* output_ts);
- // Receives input samples and write output samples for a unified I/O stream.
- uint32 ReadWriteAudio(size_t frames,
- uint8* input_samples,
- uint8* output_samples,
- const timespec* input_ts,
- const timespec* output_ts);
-
// Writes audio for a playback stream.
uint32 WriteAudio(size_t frames, uint8* buffer, const timespec* sample_ts);
@@ -108,7 +101,6 @@ class MEDIA_EXPORT CrasUnifiedStream : public AudioOutputStream {
AudioSourceCallback* source_callback_;
// Container for exchanging data with AudioSourceCallback::OnMoreData().
- scoped_ptr<AudioBus> input_bus_;
scoped_ptr<AudioBus> output_bus_;
// Direciton of the stream.
diff --git a/media/audio/fake_audio_manager.cc b/media/audio/fake_audio_manager.cc
index e5d9bd4..a181a2f 100644
--- a/media/audio/fake_audio_manager.cc
+++ b/media/audio/fake_audio_manager.cc
@@ -58,17 +58,15 @@ AudioParameters FakeAudioManager::GetPreferredOutputStreamParameters(
int sample_rate = kDefaultSampleRate;
int buffer_size = kDefaultOutputBufferSize;
int bits_per_sample = 16;
- int input_channels = 0;
if (input_params.IsValid()) {
sample_rate = input_params.sample_rate();
bits_per_sample = input_params.bits_per_sample();
channel_layout = input_params.channel_layout();
- input_channels = input_params.input_channels();
buffer_size = std::min(input_params.frames_per_buffer(), buffer_size);
}
return AudioParameters(
- AudioParameters::AUDIO_PCM_LOW_LATENCY, channel_layout, input_channels,
+ AudioParameters::AUDIO_PCM_LOW_LATENCY, channel_layout,
sample_rate, bits_per_sample, buffer_size, AudioParameters::NO_EFFECTS);
}
diff --git a/media/audio/mac/audio_manager_mac.cc b/media/audio/mac/audio_manager_mac.cc
index eabce32..336a8c4 100644
--- a/media/audio/mac/audio_manager_mac.cc
+++ b/media/audio/mac/audio_manager_mac.cc
@@ -674,20 +674,9 @@ AudioParameters AudioManagerMac::GetPreferredOutputStreamParameters(
channel_layout = CHANNEL_LAYOUT_DISCRETE;
}
- const int input_channels =
- has_valid_input_params ? input_params.input_channels() : 0;
- if (input_channels > 0) {
- // TODO(xians): given the limitations of the AudioOutputStream
- // back-ends used with synchronized I/O, we hard-code to stereo.
- // Specifically, this is a limitation of AudioSynchronizedStream which
- // can be removed as part of the work to consolidate these back-ends.
- channel_layout = CHANNEL_LAYOUT_STEREO;
- }
-
return AudioParameters(
AudioParameters::AUDIO_PCM_LOW_LATENCY, channel_layout, output_channels,
- input_channels, hardware_sample_rate, 16, buffer_size,
- AudioParameters::NO_EFFECTS);
+ hardware_sample_rate, 16, buffer_size, AudioParameters::NO_EFFECTS);
}
void AudioManagerMac::InitializeOnAudioThread() {
diff --git a/media/audio/openbsd/audio_manager_openbsd.cc b/media/audio/openbsd/audio_manager_openbsd.cc
index ec482d8..618fb0c 100644
--- a/media/audio/openbsd/audio_manager_openbsd.cc
+++ b/media/audio/openbsd/audio_manager_openbsd.cc
@@ -127,12 +127,10 @@ AudioParameters AudioManagerOpenBSD::GetPreferredOutputStreamParameters(
int sample_rate = kDefaultSampleRate;
int buffer_size = kDefaultOutputBufferSize;
int bits_per_sample = 16;
- int input_channels = 0;
if (input_params.IsValid()) {
sample_rate = input_params.sample_rate();
bits_per_sample = input_params.bits_per_sample();
channel_layout = input_params.channel_layout();
- input_channels = input_params.input_channels();
buffer_size = std::min(buffer_size, input_params.frames_per_buffer());
}
@@ -141,7 +139,7 @@ AudioParameters AudioManagerOpenBSD::GetPreferredOutputStreamParameters(
buffer_size = user_buffer_size;
return AudioParameters(
- AudioParameters::AUDIO_PCM_LOW_LATENCY, channel_layout, input_channels,
+ AudioParameters::AUDIO_PCM_LOW_LATENCY, channel_layout,
sample_rate, bits_per_sample, buffer_size, AudioParameters::NO_EFFECTS);
}
diff --git a/media/audio/pulse/audio_manager_pulse.cc b/media/audio/pulse/audio_manager_pulse.cc
index 03ff17d..c752a9e 100644
--- a/media/audio/pulse/audio_manager_pulse.cc
+++ b/media/audio/pulse/audio_manager_pulse.cc
@@ -176,12 +176,10 @@ AudioParameters AudioManagerPulse::GetPreferredOutputStreamParameters(
ChannelLayout channel_layout = CHANNEL_LAYOUT_STEREO;
int buffer_size = kMinimumOutputBufferSize;
int bits_per_sample = 16;
- int input_channels = 0;
int sample_rate = GetNativeSampleRate();
if (input_params.IsValid()) {
bits_per_sample = input_params.bits_per_sample();
channel_layout = input_params.channel_layout();
- input_channels = input_params.input_channels();
buffer_size =
std::min(kMaximumOutputBufferSize,
std::max(buffer_size, input_params.frames_per_buffer()));
@@ -192,7 +190,7 @@ AudioParameters AudioManagerPulse::GetPreferredOutputStreamParameters(
buffer_size = user_buffer_size;
return AudioParameters(
- AudioParameters::AUDIO_PCM_LOW_LATENCY, channel_layout, input_channels,
+ AudioParameters::AUDIO_PCM_LOW_LATENCY, channel_layout,
sample_rate, bits_per_sample, buffer_size, AudioParameters::NO_EFFECTS);
}
diff --git a/media/audio/win/audio_low_latency_input_win.cc b/media/audio/win/audio_low_latency_input_win.cc
index d29d1b4..29a2e7d 100644
--- a/media/audio/win/audio_low_latency_input_win.cc
+++ b/media/audio/win/audio_low_latency_input_win.cc
@@ -282,7 +282,7 @@ AudioParameters WASAPIAudioInputStream::GetInputStreamParameters(
// Use 10ms frame size as default.
int frames_per_buffer = sample_rate / 100;
return AudioParameters(
- AudioParameters::AUDIO_PCM_LOW_LATENCY, channel_layout, 0, sample_rate,
+ AudioParameters::AUDIO_PCM_LOW_LATENCY, channel_layout, sample_rate,
16, frames_per_buffer, effects);
}
diff --git a/media/audio/win/audio_low_latency_input_win_unittest.cc b/media/audio/win/audio_low_latency_input_win_unittest.cc
index eee1887..9ce7acf 100644
--- a/media/audio/win/audio_low_latency_input_win_unittest.cc
+++ b/media/audio/win/audio_low_latency_input_win_unittest.cc
@@ -208,7 +208,6 @@ class AudioInputStreamWrapper {
AudioInputStream* CreateInputStream() {
AudioInputStream* ais = audio_man_->MakeAudioInputStream(
AudioParameters(format(), default_params_.channel_layout(),
- default_params_.input_channels(),
sample_rate(), bits_per_sample(), frames_per_buffer_,
default_params_.effects()),
AudioManagerBase::kDefaultDeviceId);
diff --git a/media/audio/win/audio_manager_win.cc b/media/audio/win/audio_manager_win.cc
index eb05ca0..b4e5e77 100644
--- a/media/audio/win/audio_manager_win.cc
+++ b/media/audio/win/audio_manager_win.cc
@@ -305,7 +305,7 @@ AudioParameters AudioManagerWin::GetInputStreamParameters(
if (!core_audio_supported()) {
// Windows Wave implementation is being used.
parameters = AudioParameters(
- AudioParameters::AUDIO_PCM_LINEAR, CHANNEL_LAYOUT_STEREO, 0, 48000,
+ AudioParameters::AUDIO_PCM_LINEAR, CHANNEL_LAYOUT_STEREO, 48000,
16, kFallbackBufferSize, AudioParameters::NO_EFFECTS);
} else {
parameters = WASAPIAudioInputStream::GetInputStreamParameters(device_id);
@@ -314,9 +314,8 @@ AudioParameters AudioManagerWin::GetInputStreamParameters(
int user_buffer_size = GetUserBufferSize();
if (user_buffer_size) {
parameters.Reset(parameters.format(), parameters.channel_layout(),
- parameters.channels(), parameters.input_channels(),
- parameters.sample_rate(), parameters.bits_per_sample(),
- user_buffer_size);
+ parameters.channels(), parameters.sample_rate(),
+ parameters.bits_per_sample(), user_buffer_size);
}
return parameters;
@@ -422,7 +421,6 @@ AudioParameters AudioManagerWin::GetPreferredOutputStreamParameters(
int sample_rate = 48000;
int buffer_size = kFallbackBufferSize;
int bits_per_sample = 16;
- int input_channels = 0;
int effects = AudioParameters::NO_EFFECTS;
bool use_input_params = !core_audio_supported();
if (core_audio_supported()) {
@@ -487,7 +485,7 @@ AudioParameters AudioManagerWin::GetPreferredOutputStreamParameters(
}
}
}
- input_channels = input_params.input_channels();
+
effects |= input_params.effects();
if (use_input_params) {
// If WASAPI isn't supported we'll fallback to WaveOut, which will take
@@ -507,7 +505,7 @@ AudioParameters AudioManagerWin::GetPreferredOutputStreamParameters(
buffer_size = user_buffer_size;
return AudioParameters(
- AudioParameters::AUDIO_PCM_LOW_LATENCY, channel_layout, input_channels,
+ AudioParameters::AUDIO_PCM_LOW_LATENCY, channel_layout,
sample_rate, bits_per_sample, buffer_size, effects);
}
diff --git a/media/audio/win/core_audio_util_win.cc b/media/audio/win/core_audio_util_win.cc
index 29e955ef..a01229c 100644
--- a/media/audio/win/core_audio_util_win.cc
+++ b/media/audio/win/core_audio_util_win.cc
@@ -698,8 +698,8 @@ HRESULT CoreAudioUtil::GetPreferredAudioParameters(
if (role == eCommunications) {
// Raise the 'DUCKING' flag for default communication devices.
*params = AudioParameters(params->format(), params->channel_layout(),
- params->channels(), params->input_channels(), params->sample_rate(),
- params->bits_per_sample(), params->frames_per_buffer(),
+ params->channels(), params->sample_rate(), params->bits_per_sample(),
+ params->frames_per_buffer(),
params->effects() | AudioParameters::DUCKING);
}