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 // Audio rendering unit utilizing an AudioRendererSink to output data. | 5 // Audio rendering unit utilizing an AudioRendererSink to output data. |
6 // | 6 // |
7 // This class lives inside three threads during it's lifetime, namely: | 7 // This class lives inside three threads during it's lifetime, namely: |
8 // 1. Render thread | 8 // 1. Render thread |
9 // Where the object is created. | 9 // Where the object is created. |
10 // 2. Media thread (provided via constructor) | 10 // 2. Media thread (provided via constructor) |
(...skipping 29 matching lines...) Expand all Loading... |
40 namespace base { | 40 namespace base { |
41 class SingleThreadTaskRunner; | 41 class SingleThreadTaskRunner; |
42 class TickClock; | 42 class TickClock; |
43 } | 43 } |
44 | 44 |
45 namespace media { | 45 namespace media { |
46 | 46 |
47 class AudioBufferConverter; | 47 class AudioBufferConverter; |
48 class AudioBus; | 48 class AudioBus; |
49 class AudioClock; | 49 class AudioClock; |
50 class DecryptingDemuxerStream; | |
51 | 50 |
52 class MEDIA_EXPORT AudioRendererImpl | 51 class MEDIA_EXPORT AudioRendererImpl |
53 : public AudioRenderer, | 52 : public AudioRenderer, |
54 public TimeSource, | 53 public TimeSource, |
55 public base::PowerObserver, | 54 public base::PowerObserver, |
56 NON_EXPORTED_BASE(public AudioRendererSink::RenderCallback) { | 55 NON_EXPORTED_BASE(public AudioRendererSink::RenderCallback) { |
57 public: | 56 public: |
58 // |task_runner| is the thread on which AudioRendererImpl will execute. | 57 // |task_runner| is the thread on which AudioRendererImpl will execute. |
59 // | 58 // |
60 // |sink| is used as the destination for the rendered audio. | 59 // |sink| is used as the destination for the rendered audio. |
(...skipping 237 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
298 | 297 |
299 // NOTE: Weak pointers must be invalidated before all other member variables. | 298 // NOTE: Weak pointers must be invalidated before all other member variables. |
300 base::WeakPtrFactory<AudioRendererImpl> weak_factory_; | 299 base::WeakPtrFactory<AudioRendererImpl> weak_factory_; |
301 | 300 |
302 DISALLOW_COPY_AND_ASSIGN(AudioRendererImpl); | 301 DISALLOW_COPY_AND_ASSIGN(AudioRendererImpl); |
303 }; | 302 }; |
304 | 303 |
305 } // namespace media | 304 } // namespace media |
306 | 305 |
307 #endif // MEDIA_RENDERERS_AUDIO_RENDERER_IMPL_H_ | 306 #endif // MEDIA_RENDERERS_AUDIO_RENDERER_IMPL_H_ |
OLD | NEW |