diff options
author | joi@chromium.org <joi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-09-16 15:17:36 +0000 |
---|---|---|
committer | joi@chromium.org <joi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-09-16 15:17:36 +0000 |
commit | 73bb099092b34e95a73543134abb014ba44bd2cf (patch) | |
tree | 989d9e0919debd332d1023c324c6d13921d8783f /media | |
parent | 3318a73e06101a692de1e61ad2599120e98cfb0d (diff) | |
download | chromium_src-73bb099092b34e95a73543134abb014ba44bd2cf.zip chromium_src-73bb099092b34e95a73543134abb014ba44bd2cf.tar.gz chromium_src-73bb099092b34e95a73543134abb014ba44bd2cf.tar.bz2 |
Implement GetAudioOutputDevices for remaining platforms, consolidate tests.
For Android and Cras, returning just the default device matches
current behavior for input devices, although this may need to be
improved in the future. For OpenBSD, the current code seems to rely on
the device names list being empty, so just removing the NOTREACHED() in
AudioManagerBase's empty implementation does the trick there.
Note that audio_input_device_unittest.cc really should be named
audio_manager_unittest.cc since AudioManager is the interface it tests.
I will do this rename in a separate follow-up change to better
preserve change history.
TBR=vrk@chromium.org
BUG=276894
Review URL: https://chromiumcodereview.appspot.com/23475037
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@223342 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media')
-rw-r--r-- | media/audio/android/audio_manager_android.cc | 20 | ||||
-rw-r--r-- | media/audio/android/audio_manager_android.h | 4 | ||||
-rw-r--r-- | media/audio/audio_input_device_unittest.cc | 166 | ||||
-rw-r--r-- | media/audio/audio_manager_base.cc | 2 | ||||
-rw-r--r-- | media/audio/audio_manager_unittest.cc | 145 | ||||
-rw-r--r-- | media/audio/cras/audio_manager_cras.cc | 28 | ||||
-rw-r--r-- | media/audio/cras/audio_manager_cras.h | 9 | ||||
-rw-r--r-- | media/audio/linux/audio_manager_linux.cc | 4 | ||||
-rw-r--r-- | media/audio/linux/audio_manager_linux.h | 8 | ||||
-rw-r--r-- | media/audio/mac/audio_manager_mac.h | 8 | ||||
-rw-r--r-- | media/audio/mock_audio_manager.cc | 4 | ||||
-rw-r--r-- | media/audio/pulse/audio_manager_pulse.h | 8 | ||||
-rw-r--r-- | media/audio/win/audio_manager_win.h | 10 | ||||
-rw-r--r-- | media/audio/win/device_enumeration_win.cc | 10 | ||||
-rw-r--r-- | media/media.gyp | 1 |
15 files changed, 217 insertions, 210 deletions
diff --git a/media/audio/android/audio_manager_android.cc b/media/audio/android/audio_manager_android.cc index e6eed7f..04b226f 100644 --- a/media/audio/android/audio_manager_android.cc +++ b/media/audio/android/audio_manager_android.cc @@ -16,6 +16,13 @@ namespace media { +static void AddDefaultDevice(AudioDeviceNames* device_names) { + DCHECK(device_names->empty()); + device_names->push_front( + AudioDeviceName(AudioManagerBase::kDefaultDeviceName, + AudioManagerBase::kDefaultDeviceId)); +} + // Maximum number of output streams that can be open simultaneously. static const int kMaxOutputStreams = 10; @@ -51,10 +58,13 @@ bool AudioManagerAndroid::HasAudioInputDevices() { } void AudioManagerAndroid::GetAudioInputDeviceNames( - media::AudioDeviceNames* device_names) { - DCHECK(device_names->empty()); - device_names->push_front( - media::AudioDeviceName(kDefaultDeviceName, kDefaultDeviceId)); + AudioDeviceNames* device_names) { + AddDefaultDevice(device_names); +} + +void AudioManagerAndroid::GetAudioOutputDeviceNames( + AudioDeviceNames* device_names) { + AddDefaultDevice(device_names); } AudioParameters AudioManagerAndroid::GetInputStreamParameters( @@ -90,7 +100,7 @@ AudioOutputStream* AudioManagerAndroid::MakeAudioOutputStream( AudioInputStream* AudioManagerAndroid::MakeAudioInputStream( const AudioParameters& params, const std::string& device_id) { AudioInputStream* stream = - AudioManagerBase::MakeAudioInputStream(params, device_id); + AudioManagerBase::MakeAudioInputStream(params, device_id); return stream; } diff --git a/media/audio/android/audio_manager_android.h b/media/audio/android/audio_manager_android.h index 0be3a65..ed2b2c3 100644 --- a/media/audio/android/audio_manager_android.h +++ b/media/audio/android/audio_manager_android.h @@ -20,7 +20,9 @@ class MEDIA_EXPORT AudioManagerAndroid : public AudioManagerBase { virtual bool HasAudioOutputDevices() OVERRIDE; virtual bool HasAudioInputDevices() OVERRIDE; virtual void GetAudioInputDeviceNames( - media::AudioDeviceNames* device_names) OVERRIDE; + AudioDeviceNames* device_names) OVERRIDE; + virtual void GetAudioOutputDeviceNames( + AudioDeviceNames* device_names) OVERRIDE; virtual AudioParameters GetInputStreamParameters( const std::string& device_id) OVERRIDE; diff --git a/media/audio/audio_input_device_unittest.cc b/media/audio/audio_input_device_unittest.cc index 61a9783..352e504 100644 --- a/media/audio/audio_input_device_unittest.cc +++ b/media/audio/audio_input_device_unittest.cc @@ -9,12 +9,20 @@ #include "media/audio/audio_manager_base.h" #include "testing/gtest/include/gtest/gtest.h" +#if defined(OS_LINUX) +#include "media/audio/linux/audio_manager_linux.h" +#endif // defined(OS_LINUX) + #if defined(OS_WIN) #include "base/win/scoped_com_initializer.h" #include "media/audio/win/audio_manager_win.h" #include "media/audio/win/wavein_input_win.h" #endif +#if defined(USE_PULSEAUDIO) +#include "media/audio/pulse/audio_manager_pulse.h" +#endif // defined(USE_PULSEAUDIO) + namespace media { // Test fixture which allows us to override the default enumeration API on @@ -64,6 +72,7 @@ class AudioInputDeviceTest // Helper method which verifies that the device list starts with a valid // default record followed by non-default device names. static void CheckDeviceNames(const AudioDeviceNames& device_names) { + VLOG(2) << "Got " << device_names.size() << " audio devices."; if (!device_names.empty()) { AudioDeviceNames::const_iterator it = device_names.begin(); @@ -78,6 +87,8 @@ class AudioInputDeviceTest while (it != device_names.end()) { EXPECT_FALSE(it->device_name.empty()); EXPECT_FALSE(it->unique_id.empty()); + VLOG(2) << "Device ID(" << it->unique_id + << "), label: " << it->device_name; EXPECT_NE(std::string(AudioManagerBase::kDefaultDeviceName), it->device_name); EXPECT_NE(std::string(AudioManagerBase::kDefaultDeviceId), @@ -92,10 +103,14 @@ class AudioInputDeviceTest } } - bool CanRunAudioTest() { + bool CanRunInputTest() { return audio_manager_->HasAudioInputDevices(); } + bool CanRunOutputTest() { + return audio_manager_->HasAudioOutputDevices(); + } + scoped_ptr<AudioManager> audio_manager_; #if defined(OS_WIN) @@ -105,8 +120,8 @@ class AudioInputDeviceTest }; // Test that devices can be enumerated. -TEST_F(AudioInputDeviceTest, EnumerateDevices) { - if (!CanRunAudioTest()) +TEST_F(AudioInputDeviceTest, EnumerateInputDevices) { + if (!CanRunInputTest()) return; AudioDeviceNames device_names; @@ -114,6 +129,16 @@ TEST_F(AudioInputDeviceTest, EnumerateDevices) { CheckDeviceNames(device_names); } +// Test that devices can be enumerated. +TEST_F(AudioInputDeviceTest, EnumerateOutputDevices) { + if (!CanRunOutputTest()) + return; + + AudioDeviceNames device_names; + audio_manager_->GetAudioOutputDeviceNames(&device_names); + CheckDeviceNames(device_names); +} + // Run additional tests for Windows since enumeration can be done using // two different APIs. MMDevice is default for Vista and higher and Wave // is default for XP and lower. @@ -121,8 +146,8 @@ TEST_F(AudioInputDeviceTest, EnumerateDevices) { // Override default enumeration API and force usage of Windows MMDevice. // This test will only run on Windows Vista and higher. -TEST_F(AudioInputDeviceTest, EnumerateDevicesWinMMDevice) { - if (!CanRunAudioTest()) +TEST_F(AudioInputDeviceTest, EnumerateInputDevicesWinMMDevice) { + if (!CanRunInputTest()) return; AudioDeviceNames device_names; @@ -135,10 +160,24 @@ TEST_F(AudioInputDeviceTest, EnumerateDevicesWinMMDevice) { CheckDeviceNames(device_names); } +TEST_F(AudioInputDeviceTest, EnumerateOutputDevicesWinMMDevice) { + if (!CanRunOutputTest()) + return; + + AudioDeviceNames device_names; + if (!SetMMDeviceEnumeration()) { + // Usage of MMDevice will fail on XP and lower. + LOG(WARNING) << "MM device enumeration is not supported."; + return; + } + audio_manager_->GetAudioOutputDeviceNames(&device_names); + CheckDeviceNames(device_names); +} + // Override default enumeration API and force usage of Windows Wave. // This test will run on Windows XP, Windows Vista and Windows 7. -TEST_F(AudioInputDeviceTest, EnumerateDevicesWinWave) { - if (!CanRunAudioTest()) +TEST_F(AudioInputDeviceTest, EnumerateInputDevicesWinWave) { + if (!CanRunInputTest()) return; AudioDeviceNames device_names; @@ -147,8 +186,18 @@ TEST_F(AudioInputDeviceTest, EnumerateDevicesWinWave) { CheckDeviceNames(device_names); } +TEST_F(AudioInputDeviceTest, EnumerateOutputDevicesWinWave) { + if (!CanRunOutputTest()) + return; + + AudioDeviceNames device_names; + SetWaveEnumeration(); + audio_manager_->GetAudioOutputDeviceNames(&device_names); + CheckDeviceNames(device_names); +} + TEST_F(AudioInputDeviceTest, WinXPDeviceIdUnchanged) { - if (!CanRunAudioTest()) + if (!CanRunInputTest()) return; AudioDeviceNames xp_device_names; @@ -165,7 +214,7 @@ TEST_F(AudioInputDeviceTest, WinXPDeviceIdUnchanged) { } TEST_F(AudioInputDeviceTest, ConvertToWinXPInputDeviceId) { - if (!CanRunAudioTest()) + if (!CanRunInputTest()) return; if (!SetMMDeviceEnumeration()) { @@ -194,6 +243,103 @@ TEST_F(AudioInputDeviceTest, ConvertToWinXPInputDeviceId) { } } -#endif +#endif // defined(OS_WIN) + +#if defined(USE_PULSEAUDIO) +// On Linux, there are two implementations available and both can +// sometimes be tested on a single system. These tests specifically +// test Pulseaudio. + +TEST_F(AudioInputDeviceTest, EnumerateInputDevicesPulseaudio) { + if (!CanRunInputTest()) + return; + + audio_manager_.reset(AudioManagerPulse::Create()); + if (audio_manager_.get()) { + AudioDeviceNames device_names; + audio_manager_->GetAudioInputDeviceNames(&device_names); + CheckDeviceNames(device_names); + } else { + LOG(WARNING) << "No pulseaudio on this system."; + } +} + +TEST_F(AudioInputDeviceTest, EnumerateOutputDevicesPulseaudio) { + if (!CanRunOutputTest()) + return; + + audio_manager_.reset(AudioManagerPulse::Create()); + if (audio_manager_.get()) { + AudioDeviceNames device_names; + audio_manager_->GetAudioOutputDeviceNames(&device_names); + CheckDeviceNames(device_names); + } else { + LOG(WARNING) << "No pulseaudio on this system."; + } +} +#endif // defined(USE_PULSEAUDIO) + +#if defined(USE_ALSA) +// On Linux, there are two implementations available and both can +// sometimes be tested on a single system. These tests specifically +// test Alsa. + +TEST_F(AudioInputDeviceTest, EnumerateInputDevicesAlsa) { + if (!CanRunInputTest()) + return; + + VLOG(2) << "Testing AudioManagerLinux."; + audio_manager_.reset(new AudioManagerLinux()); + AudioDeviceNames device_names; + audio_manager_->GetAudioInputDeviceNames(&device_names); + CheckDeviceNames(device_names); +} + +TEST_F(AudioInputDeviceTest, EnumerateOutputDevicesAlsa) { + if (!CanRunOutputTest()) + return; + + VLOG(2) << "Testing AudioManagerLinux."; + audio_manager_.reset(new AudioManagerLinux()); + AudioDeviceNames device_names; + audio_manager_->GetAudioOutputDeviceNames(&device_names); + CheckDeviceNames(device_names); +} +#endif // defined(USE_ALSA) + +TEST_F(AudioInputDeviceTest, GetDefaultOutputStreamParameters) { +#if defined(OS_WIN) || defined(OS_MACOSX) + if (!CanRunInputTest()) + return; + + AudioParameters params = audio_manager_->GetDefaultOutputStreamParameters(); + EXPECT_TRUE(params.IsValid()); +#endif // defined(OS_WIN) || defined(OS_MACOSX) +} + +TEST_F(AudioInputDeviceTest, GetAssociatedOutputDeviceID) { +#if defined(OS_WIN) || defined(OS_MACOSX) + if (!CanRunInputTest() || !CanRunOutputTest()) + return; + + AudioDeviceNames device_names; + audio_manager_->GetAudioInputDeviceNames(&device_names); + bool found_an_associated_device = false; + for (AudioDeviceNames::iterator it = device_names.begin(); + it != device_names.end(); + ++it) { + EXPECT_FALSE(it->unique_id.empty()); + EXPECT_FALSE(it->device_name.empty()); + std::string output_device_id( + audio_manager_->GetAssociatedOutputDeviceID(it->unique_id)); + if (!output_device_id.empty()) { + VLOG(2) << it->unique_id << " matches with " << output_device_id; + found_an_associated_device = true; + } + } + + EXPECT_TRUE(found_an_associated_device); +#endif // defined(OS_WIN) || defined(OS_MACOSX) +} } // namespace media diff --git a/media/audio/audio_manager_base.cc b/media/audio/audio_manager_base.cc index 1477ce3..246f8d2 100644 --- a/media/audio/audio_manager_base.cc +++ b/media/audio/audio_manager_base.cc @@ -310,8 +310,6 @@ void AudioManagerBase::GetAudioInputDeviceNames( void AudioManagerBase::GetAudioOutputDeviceNames( AudioDeviceNames* device_names) { - // TODO(joi): Remove this and keep pure virtual once implemented everywhere. - NOTREACHED() << "Don't use this yet, it's not ready on all platforms!"; } void AudioManagerBase::ReleaseOutputStream(AudioOutputStream* stream) { diff --git a/media/audio/audio_manager_unittest.cc b/media/audio/audio_manager_unittest.cc deleted file mode 100644 index 96300c9..0000000 --- a/media/audio/audio_manager_unittest.cc +++ /dev/null @@ -1,145 +0,0 @@ -// Copyright 2013 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include "base/logging.h" -#include "base/memory/scoped_ptr.h" -#include "media/audio/audio_manager.h" -#include "testing/gtest/include/gtest/gtest.h" - -#if defined(OS_LINUX) -#include "media/audio/linux/audio_manager_linux.h" -#endif // defined(OS_LINUX) - -#if defined(OS_WIN) -#include "media/audio/win/audio_manager_win.h" -#endif // defined(OS_WIN) - -#if defined(USE_PULSEAUDIO) -#include "media/audio/pulse/audio_manager_pulse.h" -#endif // defined(USE_PULSEAUDIO) - -namespace media { - -void GetAudioOutputDeviceNamesImpl(AudioManager* audio_manager) { - AudioDeviceNames device_names; - audio_manager->GetAudioOutputDeviceNames(&device_names); - - VLOG(2) << "Got " << device_names.size() << " audio output devices."; - for (AudioDeviceNames::iterator it = device_names.begin(); - it != device_names.end(); - ++it) { - EXPECT_FALSE(it->unique_id.empty()); - EXPECT_FALSE(it->device_name.empty()); - VLOG(2) << "Device ID(" << it->unique_id << "), label: " << it->device_name; - } -} - -// So that tests herein can be friends of AudioManagerWin. -// -// TODO(joi): Make this go away by unifying audio_manager_unittest.cc -// and audio_input_device_unittest.cc -class AudioManagerTest : public ::testing::Test { - public: - bool SetupForSecondTest(AudioManager* amw) { -#if defined(OS_WIN) - AudioManagerWin* audio_manager_win = static_cast<AudioManagerWin*>(amw); - if (audio_manager_win->enumeration_type() == - AudioManagerWin::kWaveEnumeration) { - // This will be true only if running on Windows XP. - VLOG(2) << "AudioManagerWin on WinXP; nothing more to test."; - } else { - VLOG(2) << "Testing AudioManagerWin in fallback WinXP mode."; - audio_manager_win->SetEnumerationType(AudioManagerWin::kWaveEnumeration); - return true; - } -#endif // defined(OS_WIN) - return false; - } -}; - -TEST_F(AudioManagerTest, GetAudioOutputDeviceNames) { - // On Linux, we may be able to test both the Alsa and Pulseaudio - // versions of the audio manager. -#if defined(USE_PULSEAUDIO) - { - VLOG(2) << "Testing AudioManagerPulse."; - scoped_ptr<AudioManager> pulse_audio_manager(AudioManagerPulse::Create()); - if (pulse_audio_manager.get()) - GetAudioOutputDeviceNamesImpl(pulse_audio_manager.get()); - else - LOG(WARNING) << "No pulseaudio on this system."; - } -#endif // defined(USE_PULSEAUDIO) -#if defined(USE_ALSA) - { - VLOG(2) << "Testing AudioManagerLinux."; - scoped_ptr<AudioManager> alsa_audio_manager(new AudioManagerLinux()); - GetAudioOutputDeviceNamesImpl(alsa_audio_manager.get()); - } -#endif // defined(USE_ALSA) - -#if defined(OS_MACOSX) - VLOG(2) << "Testing platform-default AudioManager."; - scoped_ptr<AudioManager> audio_manager(AudioManager::Create()); - GetAudioOutputDeviceNamesImpl(audio_manager.get()); -#endif // defined(OS_MACOSX) - -#if defined(OS_WIN) - { - // TODO(joi): Unify the tests in audio_input_device_unittest.cc - // with the tests in this file, and reuse the Windows-specific - // bits from that file. - VLOG(2) << "Testing AudioManagerWin in its default mode."; - scoped_ptr<AudioManager> audio_manager_win(AudioManager::Create()); - GetAudioOutputDeviceNamesImpl(audio_manager_win.get()); - - if (SetupForSecondTest(audio_manager_win.get())) { - GetAudioOutputDeviceNamesImpl(audio_manager_win.get()); - } - } -#endif // defined(OS_WIN) -} - -TEST_F(AudioManagerTest, GetDefaultOutputStreamParameters) { -#if defined(OS_WIN) || defined(OS_MACOSX) - scoped_ptr<AudioManager> audio_manager(AudioManager::Create()); - ASSERT_TRUE(audio_manager); - if (!audio_manager->HasAudioOutputDevices()) - return; - - AudioParameters params = audio_manager->GetDefaultOutputStreamParameters(); - EXPECT_TRUE(params.IsValid()); -#endif // defined(OS_WIN) || defined(OS_MACOSX) -} - -TEST_F(AudioManagerTest, GetAssociatedOutputDeviceID) { -#if defined(OS_WIN) || defined(OS_MACOSX) - scoped_ptr<AudioManager> audio_manager(AudioManager::Create()); - ASSERT_TRUE(audio_manager); - if (!audio_manager->HasAudioOutputDevices() || - !audio_manager->HasAudioInputDevices()) { - return; - } - - AudioDeviceNames device_names; - audio_manager->GetAudioInputDeviceNames(&device_names); - bool found_an_associated_device = false; - for (AudioDeviceNames::iterator it = device_names.begin(); - it != device_names.end(); - ++it) { - EXPECT_FALSE(it->unique_id.empty()); - EXPECT_FALSE(it->device_name.empty()); - std::string output_device_id( - audio_manager->GetAssociatedOutputDeviceID(it->unique_id)); - if (!output_device_id.empty()) { - VLOG(2) << it->unique_id << " matches with " << output_device_id; - found_an_associated_device = true; - } - } - - EXPECT_TRUE(found_an_associated_device); -#endif // defined(OS_WIN) || defined(OS_MACOSX) -} - -} // namespace media diff --git a/media/audio/cras/audio_manager_cras.cc b/media/audio/cras/audio_manager_cras.cc index 2764875..7ef65b2 100644 --- a/media/audio/cras/audio_manager_cras.cc +++ b/media/audio/cras/audio_manager_cras.cc @@ -16,6 +16,15 @@ namespace media { +static void AddDefaultDevice(AudioDeviceNames* device_names) { + DCHECK(device_names->empty()); + + // Cras will route audio from a proper physical device automatically. + device_names->push_back( + AudioDeviceName(AudioManagerBase::kDefaultDeviceName, + AudioManagerBase::kDefaultDeviceId)); +} + // Maximum number of output streams that can be open simultaneously. static const int kMaxOutputStreams = 50; @@ -45,10 +54,13 @@ void AudioManagerCras::ShowAudioInputSettings() { } void AudioManagerCras::GetAudioInputDeviceNames( - media::AudioDeviceNames* device_names) { - DCHECK(device_names->empty()); - GetCrasAudioInputDevices(device_names); - return; + AudioDeviceNames* device_names) { + AddDefaultDevice(device_names); +} + +void AudioManagerCras::GetAudioOutputDeviceNames( + AudioDeviceNames* device_names) { + AddDefaultDevice(device_names); } AudioParameters AudioManagerCras::GetInputStreamParameters( @@ -61,14 +73,6 @@ AudioParameters AudioManagerCras::GetInputStreamParameters( kDefaultSampleRate, 16, kDefaultInputBufferSize); } -void AudioManagerCras::GetCrasAudioInputDevices( - media::AudioDeviceNames* device_names) { - // Cras will route audio from a proper physical device automatically. - device_names->push_back( - AudioDeviceName(AudioManagerBase::kDefaultDeviceName, - AudioManagerBase::kDefaultDeviceId)); -} - AudioOutputStream* AudioManagerCras::MakeLinearOutputStream( const AudioParameters& params) { DCHECK_EQ(AudioParameters::AUDIO_PCM_LINEAR, params.format()); diff --git a/media/audio/cras/audio_manager_cras.h b/media/audio/cras/audio_manager_cras.h index 41e1876..35157b7 100644 --- a/media/audio/cras/audio_manager_cras.h +++ b/media/audio/cras/audio_manager_cras.h @@ -25,8 +25,10 @@ class MEDIA_EXPORT AudioManagerCras : public AudioManagerBase { virtual bool HasAudioOutputDevices() OVERRIDE; virtual bool HasAudioInputDevices() OVERRIDE; virtual void ShowAudioInputSettings() OVERRIDE; - virtual void GetAudioInputDeviceNames(media::AudioDeviceNames* device_names) - OVERRIDE; + virtual void GetAudioInputDeviceNames( + AudioDeviceNames* device_names) OVERRIDE; + virtual void GetAudioOutputDeviceNames( + AudioDeviceNames* device_names) OVERRIDE; virtual AudioParameters GetInputStreamParameters( const std::string& device_id) OVERRIDE; @@ -50,9 +52,6 @@ class MEDIA_EXPORT AudioManagerCras : public AudioManagerBase { const AudioParameters& input_params) OVERRIDE; private: - // Gets a list of available cras input devices. - void GetCrasAudioInputDevices(media::AudioDeviceNames* device_names); - // Called by MakeLinearOutputStream and MakeLowLatencyOutputStream. AudioOutputStream* MakeOutputStream(const AudioParameters& params); diff --git a/media/audio/linux/audio_manager_linux.cc b/media/audio/linux/audio_manager_linux.cc index 7596c2f..708e4f2 100644 --- a/media/audio/linux/audio_manager_linux.cc +++ b/media/audio/linux/audio_manager_linux.cc @@ -103,13 +103,13 @@ void AudioManagerLinux::ShowAudioInputSettings() { } void AudioManagerLinux::GetAudioInputDeviceNames( - media::AudioDeviceNames* device_names) { + AudioDeviceNames* device_names) { DCHECK(device_names->empty()); GetAlsaAudioDevices(kStreamCapture, device_names); } void AudioManagerLinux::GetAudioOutputDeviceNames( - media::AudioDeviceNames* device_names) { + AudioDeviceNames* device_names) { DCHECK(device_names->empty()); GetAlsaAudioDevices(kStreamPlayback, device_names); } diff --git a/media/audio/linux/audio_manager_linux.h b/media/audio/linux/audio_manager_linux.h index 2258e81..ab284df 100644 --- a/media/audio/linux/audio_manager_linux.h +++ b/media/audio/linux/audio_manager_linux.h @@ -25,10 +25,10 @@ class MEDIA_EXPORT AudioManagerLinux : public AudioManagerBase { virtual bool HasAudioOutputDevices() OVERRIDE; virtual bool HasAudioInputDevices() OVERRIDE; virtual void ShowAudioInputSettings() OVERRIDE; - virtual void GetAudioInputDeviceNames(media::AudioDeviceNames* device_names) - OVERRIDE; - virtual void GetAudioOutputDeviceNames(media::AudioDeviceNames* device_names) - OVERRIDE; + virtual void GetAudioInputDeviceNames( + AudioDeviceNames* device_names) OVERRIDE; + virtual void GetAudioOutputDeviceNames( + AudioDeviceNames* device_names) OVERRIDE; virtual AudioParameters GetInputStreamParameters( const std::string& device_id) OVERRIDE; diff --git a/media/audio/mac/audio_manager_mac.h b/media/audio/mac/audio_manager_mac.h index 9757315..d162554 100644 --- a/media/audio/mac/audio_manager_mac.h +++ b/media/audio/mac/audio_manager_mac.h @@ -27,10 +27,10 @@ class MEDIA_EXPORT AudioManagerMac : public AudioManagerBase { // Implementation of AudioManager. virtual bool HasAudioOutputDevices() OVERRIDE; virtual bool HasAudioInputDevices() OVERRIDE; - virtual void GetAudioInputDeviceNames(media::AudioDeviceNames* device_names) - OVERRIDE; - virtual void GetAudioOutputDeviceNames(media::AudioDeviceNames* device_names) - OVERRIDE; + virtual void GetAudioInputDeviceNames( + AudioDeviceNames* device_names) OVERRIDE; + virtual void GetAudioOutputDeviceNames( + AudioDeviceNames* device_names) OVERRIDE; virtual AudioParameters GetInputStreamParameters( const std::string& device_id) OVERRIDE; virtual std::string GetAssociatedOutputDeviceID( diff --git a/media/audio/mock_audio_manager.cc b/media/audio/mock_audio_manager.cc index 2ab2b70..a164332 100644 --- a/media/audio/mock_audio_manager.cc +++ b/media/audio/mock_audio_manager.cc @@ -33,11 +33,11 @@ void MockAudioManager::ShowAudioInputSettings() { } void MockAudioManager::GetAudioInputDeviceNames( - media::AudioDeviceNames* device_names) { + AudioDeviceNames* device_names) { } void MockAudioManager::GetAudioOutputDeviceNames( - media::AudioDeviceNames* device_names) { + AudioDeviceNames* device_names) { } media::AudioOutputStream* MockAudioManager::MakeAudioOutputStream( diff --git a/media/audio/pulse/audio_manager_pulse.h b/media/audio/pulse/audio_manager_pulse.h index 8fc4310..3639663 100644 --- a/media/audio/pulse/audio_manager_pulse.h +++ b/media/audio/pulse/audio_manager_pulse.h @@ -25,10 +25,10 @@ class MEDIA_EXPORT AudioManagerPulse : public AudioManagerBase { virtual bool HasAudioOutputDevices() OVERRIDE; virtual bool HasAudioInputDevices() OVERRIDE; virtual void ShowAudioInputSettings() OVERRIDE; - virtual void GetAudioInputDeviceNames(media::AudioDeviceNames* device_names) - OVERRIDE; - virtual void GetAudioOutputDeviceNames(media::AudioDeviceNames* device_names) - OVERRIDE; + virtual void GetAudioInputDeviceNames( + AudioDeviceNames* device_names) OVERRIDE; + virtual void GetAudioOutputDeviceNames( + AudioDeviceNames* device_names) OVERRIDE; virtual AudioParameters GetInputStreamParameters( const std::string& device_id) OVERRIDE; diff --git a/media/audio/win/audio_manager_win.h b/media/audio/win/audio_manager_win.h index b3e8de9..87e5358 100644 --- a/media/audio/win/audio_manager_win.h +++ b/media/audio/win/audio_manager_win.h @@ -25,10 +25,10 @@ class MEDIA_EXPORT AudioManagerWin : public AudioManagerBase { virtual bool HasAudioInputDevices() OVERRIDE; virtual string16 GetAudioInputDeviceModel() OVERRIDE; virtual void ShowAudioInputSettings() OVERRIDE; - virtual void GetAudioInputDeviceNames(AudioDeviceNames* device_names) - OVERRIDE; - virtual void GetAudioOutputDeviceNames(AudioDeviceNames* device_names) - OVERRIDE; + virtual void GetAudioInputDeviceNames( + AudioDeviceNames* device_names) OVERRIDE; + virtual void GetAudioOutputDeviceNames( + AudioDeviceNames* device_names) OVERRIDE; virtual AudioParameters GetInputStreamParameters( const std::string& device_id) OVERRIDE; virtual std::string GetAssociatedOutputDeviceID( @@ -62,8 +62,6 @@ class MEDIA_EXPORT AudioManagerWin : public AudioManagerBase { }; // Allow unit test to modify the utilized enumeration API. - // TODO(joi): Collapse these tests into one. - friend class AudioManagerTest; friend class AudioInputDeviceTest; EnumerationType enumeration_type_; diff --git a/media/audio/win/device_enumeration_win.cc b/media/audio/win/device_enumeration_win.cc index 50d0b7a..aa66afb 100644 --- a/media/audio/win/device_enumeration_win.cc +++ b/media/audio/win/device_enumeration_win.cc @@ -25,10 +25,8 @@ using base::win::ScopedCoMem; namespace media { -namespace { - -bool GetDeviceNamesWinImpl(EDataFlow data_flow, - AudioDeviceNames* device_names) { +static bool GetDeviceNamesWinImpl(EDataFlow data_flow, + AudioDeviceNames* device_names) { // It is assumed that this method is called from a COM thread, i.e., // CoInitializeEx() is not called here again to avoid STA/MTA conflicts. ScopedComPtr<IMMDeviceEnumerator> enumerator; @@ -103,7 +101,7 @@ bool GetDeviceNamesWinImpl(EDataFlow data_flow, template <UINT (__stdcall *NumDevsFunc)(), typename CAPSSTRUCT, MMRESULT (__stdcall *DevCapsFunc)(UINT_PTR, CAPSSTRUCT*, UINT)> -bool GetDeviceNamesWinXPImpl(AudioDeviceNames* device_names) { +static bool GetDeviceNamesWinXPImpl(AudioDeviceNames* device_names) { // Retrieve the number of active waveform input devices. UINT number_of_active_devices = NumDevsFunc(); if (number_of_active_devices == 0) @@ -138,8 +136,6 @@ bool GetDeviceNamesWinXPImpl(AudioDeviceNames* device_names) { return true; } -} // namespace - bool GetInputDeviceNamesWin(AudioDeviceNames* device_names) { return GetDeviceNamesWinImpl(eCapture, device_names); } diff --git a/media/media.gyp b/media/media.gyp index 706f606..f93e60b 100644 --- a/media/media.gyp +++ b/media/media.gyp @@ -848,7 +848,6 @@ 'audio/audio_input_unittest.cc', 'audio/audio_input_volume_unittest.cc', 'audio/audio_low_latency_input_output_unittest.cc', - 'audio/audio_manager_unittest.cc', 'audio/audio_output_controller_unittest.cc', 'audio/audio_output_device_unittest.cc', 'audio/audio_output_proxy_unittest.cc', |