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

Unified Diff: media/audio/win/audio_manager_win.cc

Issue 8491044: Link things together and enable the device selection for linux and mac. (Closed) Base URL: http://src.chromium.org/svn/trunk/src/
Patch Set: fixing unittests Created 9 years, 1 month 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/win/audio_manager_win.cc
diff --git a/media/audio/win/audio_manager_win.cc b/media/audio/win/audio_manager_win.cc
index e9c1d20ca79f297ab72dca2371621f9a01e5e209..476abd9fe3ef64517052b544325d3073c1ac5f1a 100644
--- a/media/audio/win/audio_manager_win.cc
+++ b/media/audio/win/audio_manager_win.cc
@@ -140,7 +140,7 @@ AudioOutputStream* AudioManagerWin::MakeAudioOutputStream(
// Factory for the implementations of AudioInputStream.
AudioInputStream* AudioManagerWin::MakeAudioInputStream(
- const AudioParameters& params) {
+ const AudioParameters& params, const std::string& device_uid) {
if (!params.IsValid() || (params.channels > kWinMaxInputChannels))
return NULL;
@@ -153,12 +153,18 @@ AudioInputStream* AudioManagerWin::MakeAudioInputStream(
if (base::win::GetVersion() <= base::win::VERSION_XP) {
// Fall back to Windows Wave implementation on Windows XP or lower.
DLOG(INFO) << "Using WaveIn since WASAPI requires at least Vista.";
- return new PCMWaveInAudioInputStream(this, params, kNumInputBuffers,
- WAVE_MAPPER);
+ // TODO(xians): Handle the non-default device.
+ if ((device_uid == AudioManagerBase::kDefaultDeviceId) ||
+ device_uid.empty())
+ return new PCMWaveInAudioInputStream(this, params, kNumInputBuffers,
+ WAVE_MAPPER);
} else {
// TODO(henrika): improve possibility to specify audio endpoint.
// Use the default device (same as for Wave) for now to be compatible.
- return new WASAPIAudioInputStream(this, params, eConsole);
+ // TODO(xians): Handle the non-default device.
+ if ((device_uid == AudioManagerBase::kDefaultDeviceId) ||
+ device_uid.empty())
+ return new WASAPIAudioInputStream(this, params, eConsole);
}
}
return NULL;
@@ -274,7 +280,7 @@ void AudioManagerWin::GetAudioInputDeviceNames(
// default devices.
media::AudioDeviceName name;
name.device_name = AudioManagerBase::kDefaultDeviceName;
- name.unique_id = "0";
+ name.unique_id = AudioManagerBase::kDefaultDeviceId;
device_names->push_back(name);
}
}
« media/audio/linux/audio_manager_linux.cc ('K') | « media/audio/win/audio_manager_win.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698