OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 // Delegate calls from WebCore::MediaPlayerPrivate to Chrome's video player. | 5 // Delegate calls from WebCore::MediaPlayerPrivate to Chrome's video player. |
6 // It contains Pipeline which is the actual media player pipeline, it glues | 6 // It contains Pipeline which is the actual media player pipeline, it glues |
7 // the media player pipeline, data source, audio renderer and renderer. | 7 // the media player pipeline, data source, audio renderer and renderer. |
8 // Pipeline would creates multiple threads and access some public methods | 8 // Pipeline would creates multiple threads and access some public methods |
9 // of this class, so we need to be extra careful about concurrent access of | 9 // of this class, so we need to be extra careful about concurrent access of |
10 // methods and members. | 10 // methods and members. |
(...skipping 17 matching lines...) Expand all Loading... |
28 #include "base/memory/scoped_ptr.h" | 28 #include "base/memory/scoped_ptr.h" |
29 #include "base/memory/weak_ptr.h" | 29 #include "base/memory/weak_ptr.h" |
30 #include "base/threading/thread.h" | 30 #include "base/threading/thread.h" |
31 #include "cc/layers/video_frame_provider.h" | 31 #include "cc/layers/video_frame_provider.h" |
32 #include "content/renderer/media/crypto/proxy_decryptor.h" | 32 #include "content/renderer/media/crypto/proxy_decryptor.h" |
33 #include "media/base/audio_renderer_sink.h" | 33 #include "media/base/audio_renderer_sink.h" |
34 #include "media/base/decryptor.h" | 34 #include "media/base/decryptor.h" |
35 #include "media/base/media_keys.h" | 35 #include "media/base/media_keys.h" |
36 #include "media/base/pipeline.h" | 36 #include "media/base/pipeline.h" |
37 #include "media/base/text_track.h" | 37 #include "media/base/text_track.h" |
38 #include "media/filters/gpu_video_decoder.h" | |
39 #include "media/filters/skcanvas_video_renderer.h" | 38 #include "media/filters/skcanvas_video_renderer.h" |
40 #include "skia/ext/platform_canvas.h" | 39 #include "skia/ext/platform_canvas.h" |
41 #include "third_party/WebKit/public/platform/WebGraphicsContext3D.h" | 40 #include "third_party/WebKit/public/platform/WebGraphicsContext3D.h" |
42 #include "third_party/WebKit/public/web/WebAudioSourceProvider.h" | 41 #include "third_party/WebKit/public/web/WebAudioSourceProvider.h" |
43 #include "third_party/WebKit/public/web/WebMediaPlayer.h" | 42 #include "third_party/WebKit/public/web/WebMediaPlayer.h" |
44 #include "third_party/WebKit/public/web/WebMediaPlayerClient.h" | 43 #include "third_party/WebKit/public/web/WebMediaPlayerClient.h" |
45 #include "url/gurl.h" | 44 #include "url/gurl.h" |
46 | 45 |
47 class RenderAudioSourceProvider; | 46 class RenderAudioSourceProvider; |
48 | 47 |
49 namespace WebKit { | 48 namespace WebKit { |
50 class WebFrame; | 49 class WebFrame; |
51 } | 50 } |
52 | 51 |
53 namespace base { | 52 namespace base { |
54 class MessageLoopProxy; | 53 class MessageLoopProxy; |
55 } | 54 } |
56 | 55 |
57 namespace media { | 56 namespace media { |
58 class ChunkDemuxer; | 57 class ChunkDemuxer; |
59 class FFmpegDemuxer; | 58 class FFmpegDemuxer; |
| 59 class GpuVideoDecoderFactories; |
60 class MediaLog; | 60 class MediaLog; |
61 } | 61 } |
62 | 62 |
63 namespace webkit { | 63 namespace webkit { |
64 class WebLayerImpl; | 64 class WebLayerImpl; |
65 } | 65 } |
66 | 66 |
67 namespace content { | 67 namespace content { |
68 class BufferedDataSource; | 68 class BufferedDataSource; |
69 class WebAudioSourceProviderImpl; | 69 class WebAudioSourceProviderImpl; |
(...skipping 242 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
312 | 312 |
313 scoped_refptr<media::MediaLog> media_log_; | 313 scoped_refptr<media::MediaLog> media_log_; |
314 | 314 |
315 // Since accelerated compositing status is only known after the first layout, | 315 // Since accelerated compositing status is only known after the first layout, |
316 // we delay reporting it to UMA until that time. | 316 // we delay reporting it to UMA until that time. |
317 bool accelerated_compositing_reported_; | 317 bool accelerated_compositing_reported_; |
318 | 318 |
319 bool incremented_externally_allocated_memory_; | 319 bool incremented_externally_allocated_memory_; |
320 | 320 |
321 // Factories for supporting GpuVideoDecoder. May be null. | 321 // Factories for supporting GpuVideoDecoder. May be null. |
322 scoped_refptr<media::GpuVideoDecoder::Factories> gpu_factories_; | 322 scoped_refptr<media::GpuVideoDecoderFactories> gpu_factories_; |
323 | 323 |
324 // Routes audio playback to either AudioRendererSink or WebAudio. | 324 // Routes audio playback to either AudioRendererSink or WebAudio. |
325 scoped_refptr<WebAudioSourceProviderImpl> audio_source_provider_; | 325 scoped_refptr<WebAudioSourceProviderImpl> audio_source_provider_; |
326 | 326 |
327 bool is_local_source_; | 327 bool is_local_source_; |
328 bool supports_save_; | 328 bool supports_save_; |
329 | 329 |
330 // The decryptor that manages decryption keys and decrypts encrypted frames. | 330 // The decryptor that manages decryption keys and decrypts encrypted frames. |
331 scoped_ptr<ProxyDecryptor> decryptor_; | 331 scoped_ptr<ProxyDecryptor> decryptor_; |
332 | 332 |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
367 | 367 |
368 // Text track objects get a unique index value when they're created. | 368 // Text track objects get a unique index value when they're created. |
369 int text_track_index_; | 369 int text_track_index_; |
370 | 370 |
371 DISALLOW_COPY_AND_ASSIGN(WebMediaPlayerImpl); | 371 DISALLOW_COPY_AND_ASSIGN(WebMediaPlayerImpl); |
372 }; | 372 }; |
373 | 373 |
374 } // namespace content | 374 } // namespace content |
375 | 375 |
376 #endif // CONTENT_RENDERER_MEDIA_WEBMEDIAPLAYER_IMPL_H_ | 376 #endif // CONTENT_RENDERER_MEDIA_WEBMEDIAPLAYER_IMPL_H_ |
OLD | NEW |