OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 // Implementation of AudioInputStream for Mac OS X using the special AUHAL | 5 // Implementation of AudioInputStream for Mac OS X using the special AUHAL |
6 // input Audio Unit present in OS 10.4 and later. | 6 // input Audio Unit present in OS 10.4 and later. |
7 // The AUHAL input Audio Unit is for low-latency audio I/O. | 7 // The AUHAL input Audio Unit is for low-latency audio I/O. |
8 // | 8 // |
9 // Overview of operation: | 9 // Overview of operation: |
10 // | 10 // |
(...skipping 146 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
157 // The UID refers to the current input audio device. | 157 // The UID refers to the current input audio device. |
158 const AudioDeviceID input_device_id_; | 158 const AudioDeviceID input_device_id_; |
159 | 159 |
160 // Provides a mechanism for encapsulating one or more buffers of audio data. | 160 // Provides a mechanism for encapsulating one or more buffers of audio data. |
161 AudioBufferList audio_buffer_list_; | 161 AudioBufferList audio_buffer_list_; |
162 | 162 |
163 // Temporary storage for recorded data. The InputProc() renders into this | 163 // Temporary storage for recorded data. The InputProc() renders into this |
164 // array as soon as a frame of the desired buffer size has been recorded. | 164 // array as soon as a frame of the desired buffer size has been recorded. |
165 scoped_ptr<uint8[]> audio_data_buffer_; | 165 scoped_ptr<uint8[]> audio_data_buffer_; |
166 | 166 |
167 // True after successfull Start(), false after successful Stop(). | 167 // True after successful Start(), false after successful Stop(). |
168 bool started_; | 168 bool started_; |
169 | 169 |
170 // Fixed capture hardware latency in frames. | 170 // Fixed capture hardware latency in frames. |
171 double hardware_latency_frames_; | 171 double hardware_latency_frames_; |
172 | 172 |
173 // The number of channels in each frame of audio data, which is used | 173 // The number of channels in each frame of audio data, which is used |
174 // when querying the volume of each channel. | 174 // when querying the volume of each channel. |
175 int number_of_channels_in_frame_; | 175 int number_of_channels_in_frame_; |
176 | 176 |
177 // FIFO used to accumulates recorded data. | 177 // FIFO used to accumulates recorded data. |
(...skipping 24 matching lines...) Expand all Loading... |
202 // Set to true if the audio unit's IO buffer was changed when Open() was | 202 // Set to true if the audio unit's IO buffer was changed when Open() was |
203 // called. | 203 // called. |
204 bool buffer_size_was_changed_; | 204 bool buffer_size_was_changed_; |
205 | 205 |
206 DISALLOW_COPY_AND_ASSIGN(AUAudioInputStream); | 206 DISALLOW_COPY_AND_ASSIGN(AUAudioInputStream); |
207 }; | 207 }; |
208 | 208 |
209 } // namespace media | 209 } // namespace media |
210 | 210 |
211 #endif // MEDIA_AUDIO_MAC_AUDIO_LOW_LATENCY_INPUT_MAC_H_ | 211 #endif // MEDIA_AUDIO_MAC_AUDIO_LOW_LATENCY_INPUT_MAC_H_ |
OLD | NEW |