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

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: rebase2 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
« no previous file with comments | « media/audio/win/audio_manager_win.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 4e413941d3b7f2d407922bb974422c017d47392c..c999f61209d66a137e00a1e315b2eaa5d153c607 100644
--- a/media/audio/win/audio_manager_win.cc
+++ b/media/audio/win/audio_manager_win.cc
@@ -148,8 +148,9 @@ AudioOutputStream* AudioManagerWin::MakeAudioOutputStream(
// Factory for the implementations of AudioInputStream.
AudioInputStream* AudioManagerWin::MakeAudioInputStream(
- const AudioParameters& params) {
- if (!params.IsValid() || (params.channels > kWinMaxInputChannels))
+ const AudioParameters& params, const std::string& device_id) {
+ if (!params.IsValid() || (params.channels > kWinMaxInputChannels) ||
+ device_id.empty())
return NULL;
if (params.format == AudioParameters::AUDIO_MOCK) {
@@ -161,12 +162,16 @@ 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_id == AudioManagerBase::kDefaultDeviceId)
+ 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_id == AudioManagerBase::kDefaultDeviceId)
+ return new WASAPIAudioInputStream(this, params, eConsole);
}
}
return NULL;
@@ -282,7 +287,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);
}
}
« no previous file with comments | « 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