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

Side by Side Diff: media/audio/linux/audio_manager_linux.cc

Issue 2966005: Add recording capability to AudioManager, and implemented on windows using the WaveIn APIs. (Closed)
Patch Set: Patch Created 10 years, 5 months 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 unified diff | Download patch
« no previous file with comments | « media/audio/linux/audio_manager_linux.h ('k') | media/audio/mac/audio_manager_mac.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2006-2009 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "media/audio/linux/audio_manager_linux.h" 5 #include "media/audio/linux/audio_manager_linux.h"
6 6
7 #include "base/at_exit.h" 7 #include "base/at_exit.h"
8 #include "base/command_line.h" 8 #include "base/command_line.h"
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "media/audio/fake_audio_output_stream.h" 10 #include "media/audio/fake_audio_output_stream.h"
11 #include "media/audio/linux/alsa_output.h" 11 #include "media/audio/linux/alsa_output.h"
12 #include "media/audio/linux/alsa_wrapper.h" 12 #include "media/audio/linux/alsa_wrapper.h"
13 #include "media/base/media_switches.h" 13 #include "media/base/media_switches.h"
14 14
15 15
16 namespace { 16 namespace {
17 17
18 AudioManagerLinux* g_audio_manager = NULL; 18 AudioManagerLinux* g_audio_manager = NULL;
19 } // namespace 19 } // namespace
20 20
21 // Implementation of AudioManager. 21 // Implementation of AudioManager.
22 bool AudioManagerLinux::HasAudioOutputDevices() { 22 bool AudioManagerLinux::HasAudioOutputDevices() {
23 // TODO(ajwong): Make this actually query audio devices. 23 // TODO(ajwong): Make this actually query audio devices.
24 return true; 24 return true;
25 } 25 }
26 26
27 bool AudioManagerLinux::HasAudioInputDevices() {
28 // TODO(satish): implement.
29 return false;
30 }
31
32 AudioInputStream* AudioManagerLinux::MakeAudioInputStream(
33 Format format,
34 int channels,
35 int sample_rate,
36 char bits_per_sample,
37 uint32 samples_per_packet) {
38 // TODO(satish): implement.
39 return NULL;
40 }
41
27 AudioOutputStream* AudioManagerLinux::MakeAudioOutputStream( 42 AudioOutputStream* AudioManagerLinux::MakeAudioOutputStream(
28 Format format, 43 Format format,
29 int channels, 44 int channels,
30 int sample_rate, 45 int sample_rate,
31 char bits_per_sample) { 46 char bits_per_sample) {
32 // Early return for testing hook. Do this before checking for 47 // Early return for testing hook. Do this before checking for
33 // |initialized_|. 48 // |initialized_|.
34 if (format == AudioManager::AUDIO_MOCK) { 49 if (format == AudioManager::AUDIO_MOCK) {
35 return FakeAudioOutputStream::MakeFakeStream(); 50 return FakeAudioOutputStream::MakeFakeStream();
36 } 51 }
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
96 } 111 }
97 112
98 AudioManager* AudioManager::GetAudioManager() { 113 AudioManager* AudioManager::GetAudioManager() {
99 if (!g_audio_manager) { 114 if (!g_audio_manager) {
100 g_audio_manager = new AudioManagerLinux(); 115 g_audio_manager = new AudioManagerLinux();
101 g_audio_manager->Init(); 116 g_audio_manager->Init();
102 base::AtExitManager::RegisterCallback(&DestroyAudioManagerLinux, NULL); 117 base::AtExitManager::RegisterCallback(&DestroyAudioManagerLinux, NULL);
103 } 118 }
104 return g_audio_manager; 119 return g_audio_manager;
105 } 120 }
OLDNEW
« no previous file with comments | « media/audio/linux/audio_manager_linux.h ('k') | media/audio/mac/audio_manager_mac.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698