OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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/cras/audio_manager_cras.h" | 5 #include "media/audio/cras/audio_manager_cras.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 | 8 |
9 #include "base/command_line.h" | 9 #include "base/command_line.h" |
10 #include "base/environment.h" | 10 #include "base/environment.h" |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
42 static const int kMaximumOutputBufferSize = 8192; | 42 static const int kMaximumOutputBufferSize = 8192; |
43 | 43 |
44 // Default input buffer size. | 44 // Default input buffer size. |
45 static const int kDefaultInputBufferSize = 1024; | 45 static const int kDefaultInputBufferSize = 1024; |
46 | 46 |
47 bool AudioManagerCras::HasAudioOutputDevices() { | 47 bool AudioManagerCras::HasAudioOutputDevices() { |
48 return true; | 48 return true; |
49 } | 49 } |
50 | 50 |
51 bool AudioManagerCras::HasAudioInputDevices() { | 51 bool AudioManagerCras::HasAudioInputDevices() { |
52 return true; | 52 return has_input_devices_; |
53 } | 53 } |
54 | 54 |
55 AudioManagerCras::AudioManagerCras(AudioLogFactory* audio_log_factory) | 55 AudioManagerCras::AudioManagerCras(AudioLogFactory* audio_log_factory) |
56 : AudioManagerBase(audio_log_factory), | 56 : AudioManagerBase(audio_log_factory), |
57 has_keyboard_mic_(false) { | 57 has_keyboard_mic_(false), |
| 58 has_input_devices_(false) { |
58 SetMaxOutputStreamsAllowed(kMaxOutputStreams); | 59 SetMaxOutputStreamsAllowed(kMaxOutputStreams); |
59 } | 60 } |
60 | 61 |
61 AudioManagerCras::~AudioManagerCras() { | 62 AudioManagerCras::~AudioManagerCras() { |
62 Shutdown(); | 63 Shutdown(); |
63 } | 64 } |
64 | 65 |
65 void AudioManagerCras::ShowAudioInputSettings() { | 66 void AudioManagerCras::ShowAudioInputSettings() { |
66 NOTIMPLEMENTED(); | 67 NOTIMPLEMENTED(); |
67 } | 68 } |
(...skipping 24 matching lines...) Expand all Loading... |
92 return AudioParameters( | 93 return AudioParameters( |
93 AudioParameters::AUDIO_PCM_LOW_LATENCY, CHANNEL_LAYOUT_STEREO, | 94 AudioParameters::AUDIO_PCM_LOW_LATENCY, CHANNEL_LAYOUT_STEREO, |
94 kDefaultSampleRate, 16, buffer_size, effects); | 95 kDefaultSampleRate, 16, buffer_size, effects); |
95 } | 96 } |
96 | 97 |
97 void AudioManagerCras::SetHasKeyboardMic() { | 98 void AudioManagerCras::SetHasKeyboardMic() { |
98 DCHECK(GetTaskRunner()->BelongsToCurrentThread()); | 99 DCHECK(GetTaskRunner()->BelongsToCurrentThread()); |
99 has_keyboard_mic_ = true; | 100 has_keyboard_mic_ = true; |
100 } | 101 } |
101 | 102 |
| 103 void AudioManagerCras::SetHasInputDevices(bool has_input_devices) { |
| 104 DCHECK(GetTaskRunner()->BelongsToCurrentThread()); |
| 105 has_input_devices_ = has_input_devices; |
| 106 } |
| 107 |
102 AudioOutputStream* AudioManagerCras::MakeLinearOutputStream( | 108 AudioOutputStream* AudioManagerCras::MakeLinearOutputStream( |
103 const AudioParameters& params) { | 109 const AudioParameters& params) { |
104 DCHECK_EQ(AudioParameters::AUDIO_PCM_LINEAR, params.format()); | 110 DCHECK_EQ(AudioParameters::AUDIO_PCM_LINEAR, params.format()); |
105 return MakeOutputStream(params); | 111 return MakeOutputStream(params); |
106 } | 112 } |
107 | 113 |
108 AudioOutputStream* AudioManagerCras::MakeLowLatencyOutputStream( | 114 AudioOutputStream* AudioManagerCras::MakeLowLatencyOutputStream( |
109 const AudioParameters& params, | 115 const AudioParameters& params, |
110 const std::string& device_id) { | 116 const std::string& device_id) { |
111 DLOG_IF(ERROR, !device_id.empty()) << "Not implemented!"; | 117 DLOG_IF(ERROR, !device_id.empty()) << "Not implemented!"; |
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
172 case 24: | 178 case 24: |
173 return SND_PCM_FORMAT_S24; | 179 return SND_PCM_FORMAT_S24; |
174 case 32: | 180 case 32: |
175 return SND_PCM_FORMAT_S32; | 181 return SND_PCM_FORMAT_S32; |
176 default: | 182 default: |
177 return SND_PCM_FORMAT_UNKNOWN; | 183 return SND_PCM_FORMAT_UNKNOWN; |
178 } | 184 } |
179 } | 185 } |
180 | 186 |
181 } // namespace media | 187 } // namespace media |
OLD | NEW |