OLD | NEW |
1 // Copyright (c) 2010 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 // Audio rendering unit utilizing audio output stream provided by browser | 5 // Audio rendering unit utilizing audio output stream provided by browser |
6 // process through IPC. | 6 // process through IPC. |
7 // | 7 // |
8 // Relationship of classes. | 8 // Relationship of classes. |
9 // | 9 // |
10 // AudioRendererHost AudioRendererImpl | 10 // AudioRendererHost AudioRendererImpl |
11 // ^ ^ | 11 // ^ ^ |
12 // | | | 12 // | | |
13 // v IPC v | 13 // v IPC v |
14 // ResourceMessageFilter <---------> AudioMessageFilter | 14 // RenderMessageFilter <---------> AudioMessageFilter |
15 // | 15 // |
16 // Implementation of interface with audio device is in AudioRendererHost and | 16 // Implementation of interface with audio device is in AudioRendererHost and |
17 // it provides services and entry points in ResourceMessageFilter, allowing | 17 // it provides services and entry points in RenderMessageFilter, allowing |
18 // usage of IPC calls to interact with audio device. AudioMessageFilter acts | 18 // usage of IPC calls to interact with audio device. AudioMessageFilter acts |
19 // as a portal for IPC calls and does no more than delegation. | 19 // as a portal for IPC calls and does no more than delegation. |
20 // | 20 // |
21 // Transportation of audio buffer is done by using shared memory, after | 21 // Transportation of audio buffer is done by using shared memory, after |
22 // OnCreateStream is executed, OnCreated would be called along with a | 22 // OnCreateStream is executed, OnCreated would be called along with a |
23 // SharedMemoryHandle upon successful creation of audio output stream in the | 23 // SharedMemoryHandle upon successful creation of audio output stream in the |
24 // browser process. The same piece of shared memory would be used during the | 24 // browser process. The same piece of shared memory would be used during the |
25 // lifetime of this unit. | 25 // lifetime of this unit. |
26 // | 26 // |
27 // This class lives inside three threads during it's lifetime, namely: | 27 // This class lives inside three threads during it's lifetime, namely: |
(...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
148 // State variables for prerolling. | 148 // State variables for prerolling. |
149 bool prerolling_; | 149 bool prerolling_; |
150 | 150 |
151 // Remaining bytes for prerolling to complete. | 151 // Remaining bytes for prerolling to complete. |
152 uint32 preroll_bytes_; | 152 uint32 preroll_bytes_; |
153 | 153 |
154 DISALLOW_COPY_AND_ASSIGN(AudioRendererImpl); | 154 DISALLOW_COPY_AND_ASSIGN(AudioRendererImpl); |
155 }; | 155 }; |
156 | 156 |
157 #endif // CHROME_RENDERER_MEDIA_AUDIO_RENDERER_IMPL_H_ | 157 #endif // CHROME_RENDERER_MEDIA_AUDIO_RENDERER_IMPL_H_ |
OLD | NEW |