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 AudioHardwareConfig; | |
51 class AudioSplicer; | 50 class AudioSplicer; |
52 class DecryptingDemuxerStream; | 51 class DecryptingDemuxerStream; |
53 | 52 |
54 class MEDIA_EXPORT AudioRendererImpl | 53 class MEDIA_EXPORT AudioRendererImpl |
55 : public AudioRenderer, | 54 : public AudioRenderer, |
56 public TimeSource, | 55 public TimeSource, |
57 public base::PowerObserver, | 56 public base::PowerObserver, |
58 NON_EXPORTED_BASE(public AudioRendererSink::RenderCallback) { | 57 NON_EXPORTED_BASE(public AudioRendererSink::RenderCallback) { |
59 public: | 58 public: |
60 // |task_runner| is the thread on which AudioRendererImpl will execute. | 59 // |task_runner| is the thread on which AudioRendererImpl will execute. |
(...skipping 238 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
299 | 298 |
300 // NOTE: Weak pointers must be invalidated before all other member variables. | 299 // NOTE: Weak pointers must be invalidated before all other member variables. |
301 base::WeakPtrFactory<AudioRendererImpl> weak_factory_; | 300 base::WeakPtrFactory<AudioRendererImpl> weak_factory_; |
302 | 301 |
303 DISALLOW_COPY_AND_ASSIGN(AudioRendererImpl); | 302 DISALLOW_COPY_AND_ASSIGN(AudioRendererImpl); |
304 }; | 303 }; |
305 | 304 |
306 } // namespace media | 305 } // namespace media |
307 | 306 |
308 #endif // MEDIA_RENDERERS_AUDIO_RENDERER_IMPL_H_ | 307 #endif // MEDIA_RENDERERS_AUDIO_RENDERER_IMPL_H_ |
OLD | NEW |