OLD | NEW |
1 // Copyright (c) 2011 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 #ifndef MEDIA_AUDIO_AUDIO_BUFFERS_STATE_H_ | 5 #ifndef MEDIA_AUDIO_AUDIO_BUFFERS_STATE_H_ |
6 #define MEDIA_AUDIO_AUDIO_BUFFERS_STATE_H_ | 6 #define MEDIA_AUDIO_AUDIO_BUFFERS_STATE_H_ |
7 | 7 |
8 #include "base/time.h" | 8 #include "base/time.h" |
9 #include "media/base/media_export.h" | |
10 | 9 |
11 // AudioBuffersState struct stores current state of audio buffers along with | 10 // AudioBuffersState struct stores current state of audio buffers along with |
12 // the timestamp of the moment this state corresponds to. It is used for audio | 11 // the timestamp of the moment this state corresponds to. It is used for audio |
13 // synchronization. | 12 // synchronization. |
14 struct MEDIA_EXPORT AudioBuffersState { | 13 struct AudioBuffersState { |
15 AudioBuffersState(); | 14 AudioBuffersState(); |
16 AudioBuffersState(int pending_bytes, int hardware_delay_bytes); | 15 AudioBuffersState(int pending_bytes, int hardware_delay_bytes); |
17 | 16 |
18 int total_bytes(); | 17 int total_bytes(); |
19 | 18 |
20 // Number of bytes we currently have in our software buffer. | 19 // Number of bytes we currently have in our software buffer. |
21 int pending_bytes; | 20 int pending_bytes; |
22 | 21 |
23 // Number of bytes that have been written to the device, but haven't | 22 // Number of bytes that have been written to the device, but haven't |
24 // been played yet. | 23 // been played yet. |
25 int hardware_delay_bytes; | 24 int hardware_delay_bytes; |
26 | 25 |
27 // Timestamp of the moment when the buffers state was captured. It is used | 26 // Timestamp of the moment when the buffers state was captured. It is used |
28 // to account for the time it takes to deliver AudioBuffersState from | 27 // to account for the time it takes to deliver AudioBuffersState from |
29 // the browser process to the renderer. | 28 // the browser process to the renderer. |
30 base::Time timestamp; | 29 base::Time timestamp; |
31 }; | 30 }; |
32 | 31 |
33 | 32 |
34 #endif // MEDIA_AUDIO_AUDIO_BUFFERS_STATE_H_ | 33 #endif // MEDIA_AUDIO_AUDIO_BUFFERS_STATE_H_ |
OLD | NEW |