| Index: media/audio/linux/audio_manager_linux.cc
|
| diff --git a/media/audio/linux/audio_manager_linux.cc b/media/audio/linux/audio_manager_linux.cc
|
| index 90543d7ab8e232731cf0d19b2f2f282c4e98c3f9..fa8612573fe95397f905062cfd531aa20af5684b 100644
|
| --- a/media/audio/linux/audio_manager_linux.cc
|
| +++ b/media/audio/linux/audio_manager_linux.cc
|
| @@ -19,7 +19,7 @@
|
| #include "media/audio/linux/alsa_output.h"
|
| #include "media/audio/linux/alsa_wrapper.h"
|
| #if defined(USE_PULSEAUDIO)
|
| -#include "media/audio/pulse/pulse_output.h"
|
| +#include "media/audio/pulse/audio_manager_pulse.h"
|
| #endif
|
| #include "media/base/limits.h"
|
| #include "media/base/media_switches.h"
|
| @@ -41,25 +41,8 @@ static const char* kInvalidAudioInputDevices[] = {
|
| "surround",
|
| };
|
|
|
| -// Implementation of AudioManager.
|
| -bool AudioManagerLinux::HasAudioOutputDevices() {
|
| - return HasAnyAlsaAudioDevice(kStreamPlayback);
|
| -}
|
| -
|
| -bool AudioManagerLinux::HasAudioInputDevices() {
|
| - return HasAnyAlsaAudioDevice(kStreamCapture);
|
| -}
|
| -
|
| -AudioManagerLinux::AudioManagerLinux()
|
| - : wrapper_(new AlsaWrapper()) {
|
| - SetMaxOutputStreamsAllowed(kMaxOutputStreams);
|
| -}
|
| -
|
| -AudioManagerLinux::~AudioManagerLinux() {
|
| - Shutdown();
|
| -}
|
| -
|
| -void AudioManagerLinux::ShowAudioInputSettings() {
|
| +// static
|
| +void AudioManagerLinux::ShowLinuxAudioInputSettings() {
|
| scoped_ptr<base::Environment> env(base::Environment::Create());
|
| CommandLine command_line(CommandLine::NO_PROGRAM);
|
| switch (base::nix::GetDesktopEnvironment(env.get())) {
|
| @@ -83,6 +66,28 @@ void AudioManagerLinux::ShowAudioInputSettings() {
|
| base::LaunchProcess(command_line, base::LaunchOptions(), NULL);
|
| }
|
|
|
| +// Implementation of AudioManager.
|
| +bool AudioManagerLinux::HasAudioOutputDevices() {
|
| + return HasAnyAlsaAudioDevice(kStreamPlayback);
|
| +}
|
| +
|
| +bool AudioManagerLinux::HasAudioInputDevices() {
|
| + return HasAnyAlsaAudioDevice(kStreamCapture);
|
| +}
|
| +
|
| +AudioManagerLinux::AudioManagerLinux()
|
| + : wrapper_(new AlsaWrapper()) {
|
| + SetMaxOutputStreamsAllowed(kMaxOutputStreams);
|
| +}
|
| +
|
| +AudioManagerLinux::~AudioManagerLinux() {
|
| + Shutdown();
|
| +}
|
| +
|
| +void AudioManagerLinux::ShowAudioInputSettings() {
|
| + ShowLinuxAudioInputSettings();
|
| +}
|
| +
|
| void AudioManagerLinux::GetAudioInputDeviceNames(
|
| media::AudioDeviceNames* device_names) {
|
| DCHECK(device_names->empty());
|
| @@ -248,12 +253,6 @@ AudioInputStream* AudioManagerLinux::MakeLowLatencyInputStream(
|
|
|
| AudioOutputStream* AudioManagerLinux::MakeOutputStream(
|
| const AudioParameters& params) {
|
| -#if defined(USE_PULSEAUDIO)
|
| - if (CommandLine::ForCurrentProcess()->HasSwitch(switches::kUsePulseAudio)) {
|
| - return new PulseAudioOutputStream(params, this);
|
| - }
|
| -#endif
|
| -
|
| std::string device_name = AlsaPcmOutputStream::kAutoSelectDevice;
|
| if (CommandLine::ForCurrentProcess()->HasSwitch(
|
| switches::kAlsaOutputDevice)) {
|
| @@ -282,6 +281,14 @@ AudioManager* CreateAudioManager() {
|
| }
|
| #endif
|
|
|
| +#if defined(USE_PULSEAUDIO)
|
| + if (CommandLine::ForCurrentProcess()->HasSwitch(switches::kUsePulseAudio)) {
|
| + AudioManager* manager = AudioManagerPulse::Create();
|
| + if (manager)
|
| + return manager;
|
| + }
|
| +#endif
|
| +
|
| return new AudioManagerLinux();
|
| }
|
|
|
|
|