summaryrefslogtreecommitdiffstats
path: root/media/audio
diff options
context:
space:
mode:
authorsail@chromium.org <sail@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-03-12 23:51:47 +0000
committersail@chromium.org <sail@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-03-12 23:51:47 +0000
commit7f6c0ed1f4e27706774e0fbd4150ffb2b80df993 (patch)
tree0b4cc63a5b1500d91bbd23c97cace16174a7fcd5 /media/audio
parent56cd431f064ec4edd4b68a0d47eba03145f77fef (diff)
downloadchromium_src-7f6c0ed1f4e27706774e0fbd4150ffb2b80df993.zip
chromium_src-7f6c0ed1f4e27706774e0fbd4150ffb2b80df993.tar.gz
chromium_src-7f6c0ed1f4e27706774e0fbd4150ffb2b80df993.tar.bz2
Revert 187677 "This patch enables pulse as the default IO handli..."
This broke the ChromeOS bots. See: http://build.chromium.org/p/chromium.chromiumos/builders/ChromiumOS%20%28daisy%29/builds/7853/steps/cbuildbot/logs/stdio chromeos-chrome-27.0.1439.0_alpha-r1: In file included from media/audio/pulse/audio_manager_pulse.cc:5:0: chromeos-chrome-27.0.1439.0_alpha-r1: ./media/audio/pulse/audio_manager_pulse.h:8:30: fatal error: pulse/pulseaudio.h: No such file or directory > This patch enables pulse as the default IO handling in Chrome. > > Right now we have the dynamic linking for pulse library, for the machine without pulse, it will automatically fall back to ALSA. > > In order to enable pulse as the default IO, libpulse-dev package is required to build Chrome on linux. Previously libpulse-dev is only required if building chromeOS, right now it is also required by building chrome. > > > Note, we still have some small issues for the pulse implementations, so this patch needs to be landed after https://codereview.chromium.org/12328097/, > https://codereview.chromium.org/12316131/, https://codereview.chromium.org/12310102/ and > https://codereview.chromium.org/12613005/ > > > BUG=178101 > TEST=compile on linux > > Review URL: https://chromiumcodereview.appspot.com/12310101 TBR=xians@chromium.org Review URL: https://codereview.chromium.org/12567014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@187701 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media/audio')
-rw-r--r--media/audio/linux/audio_manager_linux.cc22
-rw-r--r--media/audio/openbsd/audio_manager_openbsd.cc33
-rw-r--r--media/audio/openbsd/audio_manager_openbsd.h3
3 files changed, 18 insertions, 40 deletions
diff --git a/media/audio/linux/audio_manager_linux.cc b/media/audio/linux/audio_manager_linux.cc
index 02118af..8cf8355 100644
--- a/media/audio/linux/audio_manager_linux.cc
+++ b/media/audio/linux/audio_manager_linux.cc
@@ -7,7 +7,6 @@
#include "base/command_line.h"
#include "base/environment.h"
#include "base/logging.h"
-#include "base/metrics/histogram.h"
#include "base/nix/xdg_util.h"
#include "base/process_util.h"
#include "base/stl_util.h"
@@ -20,7 +19,9 @@
#include "media/audio/linux/alsa_input.h"
#include "media/audio/linux/alsa_output.h"
#include "media/audio/linux/alsa_wrapper.h"
+#if defined(USE_PULSEAUDIO)
#include "media/audio/pulse/audio_manager_pulse.h"
+#endif
#include "media/base/channel_layout.h"
#include "media/base/limits.h"
#include "media/base/media_switches.h"
@@ -45,13 +46,6 @@ static const char* kInvalidAudioInputDevices[] = {
"surround",
};
-enum LinuxAudioIO {
- kPulse,
- kAlsa,
- kCras,
- kAudioIOMax // Must always be last!
-};
-
// static
void AudioManagerLinux::ShowLinuxAudioInputSettings() {
scoped_ptr<base::Environment> env(base::Environment::Create());
@@ -327,18 +321,18 @@ AudioInputStream* AudioManagerLinux::MakeInputStream(
AudioManager* CreateAudioManager() {
#if defined(USE_CRAS)
if (CommandLine::ForCurrentProcess()->HasSwitch(switches::kUseCras)) {
- UMA_HISTOGRAM_ENUMERATION("Media.LinuxAudioIO", kCras, kAudioIOMax);
return new AudioManagerCras();
}
#endif
- AudioManager* manager = AudioManagerPulse::Create();
- if (manager) {
- UMA_HISTOGRAM_ENUMERATION("Media.LinuxAudioIO", kPulse, kAudioIOMax);
- return manager;
+#if defined(USE_PULSEAUDIO)
+ if (CommandLine::ForCurrentProcess()->HasSwitch(switches::kUsePulseAudio)) {
+ AudioManager* manager = AudioManagerPulse::Create();
+ if (manager)
+ return manager;
}
+#endif
- UMA_HISTOGRAM_ENUMERATION("Media.LinuxAudioIO", kAlsa, kAudioIOMax);
return new AudioManagerLinux();
}
diff --git a/media/audio/openbsd/audio_manager_openbsd.cc b/media/audio/openbsd/audio_manager_openbsd.cc
index 681f219..fd74df5 100644
--- a/media/audio/openbsd/audio_manager_openbsd.cc
+++ b/media/audio/openbsd/audio_manager_openbsd.cc
@@ -4,23 +4,19 @@
#include "media/audio/openbsd/audio_manager_openbsd.h"
-#include <fcntl.h>
-
#include "base/command_line.h"
-#include "base/file_path.h"
#include "base/stl_util.h"
#include "media/audio/audio_output_dispatcher.h"
#include "media/audio/audio_parameters.h"
#include "media/audio/audio_util.h"
+#if defined(USE_PULSEAUDIO)
#include "media/audio/pulse/pulse_output.h"
-#include "media/audio/pulse/pulse_stubs.h"
+#endif
#include "media/base/channel_layout.h"
#include "media/base/limits.h"
#include "media/base/media_switches.h"
-using media_audio_pulse::kModulePulse;
-using media_audio_pulse::InitializeStubs;
-using media_audio_pulse::StubPathMap;
+#include <fcntl.h>
namespace media {
@@ -30,9 +26,6 @@ static const int kMaxOutputStreams = 50;
// Default sample rate for input and output streams.
static const int kDefaultSampleRate = 48000;
-static const base::FilePath::CharType kPulseLib[] =
- FILE_PATH_LITERAL("libpulse.so.0");
-
// Implementation of AudioManager.
static bool HasAudioHardware() {
int fd;
@@ -65,19 +58,8 @@ AudioParameters AudioManagerOpenBSD::GetInputStreamParameters(
kDefaultSampleRate, 16, kDefaultInputBufferSize);
}
-AudioManagerOpenBSD::AudioManagerOpenBSD()
- : pulse_library_is_initialized_(false) {
+AudioManagerOpenBSD::AudioManagerOpenBSD() {
SetMaxOutputStreamsAllowed(kMaxOutputStreams);
- StubPathMap paths;
-
- // Check if the pulse library is avialbale.
- paths[kModulePulse].push_back(kPulseLib);
- if (!InitializeStubs(paths)) {
- DLOG(WARNING) << "Failed on loading the Pulse library and symbols";
- return;
- }
-
- pulse_library_is_initialized_ = true;
}
AudioManagerOpenBSD::~AudioManagerOpenBSD() {
@@ -136,11 +118,16 @@ AudioParameters AudioManagerOpenBSD::GetPreferredOutputStreamParameters(
sample_rate, bits_per_sample, buffer_size);
}
+
AudioOutputStream* AudioManagerOpenBSD::MakeOutputStream(
const AudioParameters& params) {
- if (pulse_library_is_initialized_)
+#if defined(USE_PULSEAUDIO)
+ if (CommandLine::ForCurrentProcess()->HasSwitch(switches::kUsePulseAudio)) {
return new PulseAudioOutputStream(params, this);
+ }
+#endif
+ NOTIMPLEMENTED();
return NULL;
}
diff --git a/media/audio/openbsd/audio_manager_openbsd.h b/media/audio/openbsd/audio_manager_openbsd.h
index d981612..14c5636 100644
--- a/media/audio/openbsd/audio_manager_openbsd.h
+++ b/media/audio/openbsd/audio_manager_openbsd.h
@@ -42,9 +42,6 @@ class MEDIA_EXPORT AudioManagerOpenBSD : public AudioManagerBase {
// Called by MakeLinearOutputStream and MakeLowLatencyOutputStream.
AudioOutputStream* MakeOutputStream(const AudioParameters& params);
- // Flag to indicate whether the pulse library has been initialized or not.
- bool pulse_library_is_initialized_;
-
DISALLOW_COPY_AND_ASSIGN(AudioManagerOpenBSD);
};