| Index: content/renderer/media/webmediaplayer_params.h
|
| diff --git a/content/renderer/media/webmediaplayer_params.h b/content/renderer/media/webmediaplayer_params.h
|
| index 87105fef85551d547a9af42821fa5d2345542b7b..cfaff62cc1d0801cea329ac3a0cc238f8afb0ef3 100644
|
| --- a/content/renderer/media/webmediaplayer_params.h
|
| +++ b/content/renderer/media/webmediaplayer_params.h
|
| @@ -7,9 +7,21 @@
|
|
|
| #include "base/callback.h"
|
| #include "base/memory/ref_counted.h"
|
| +#include "content/renderer/media/crypto/encrypted_media_player_support.h"
|
| +
|
| +namespace base {
|
| +class SingleThreadTaskRunner;
|
| +}
|
| +
|
| +namespace blink {
|
| +class WebMediaPlayerClient;
|
| +}
|
|
|
| namespace media {
|
| +class AudioHardwareConfig;
|
| class AudioRendererSink;
|
| +class GpuVideoAcceleratorFactories;
|
| +class MediaLog;
|
| }
|
|
|
| namespace content {
|
| @@ -18,10 +30,26 @@ namespace content {
|
| // to plumb arguments through various abstraction layers.
|
| class WebMediaPlayerParams {
|
| public:
|
| - // Parameters may be null.
|
| + // Callback used to create EncryptedMediaPlayerSupport instances. This
|
| + // callback must always return a valid EncryptedMediaPlayerSupport object.
|
| + typedef base::Callback<scoped_ptr<EncryptedMediaPlayerSupport>(
|
| + blink::WebMediaPlayerClient*)> EncryptedMediaPlayerSupportCreateCB;
|
| +
|
| + // |defer_load_cb|, |audio_renderer_sink|, and |compositor_task_runner| may be
|
| + // null.
|
| WebMediaPlayerParams(
|
| const base::Callback<void(const base::Closure&)>& defer_load_cb,
|
| - const scoped_refptr<media::AudioRendererSink>& audio_renderer_sink);
|
| + const scoped_refptr<media::AudioRendererSink>& audio_renderer_sink,
|
| + const media::AudioHardwareConfig& audio_hardware_config,
|
| + const scoped_refptr<media::MediaLog>& media_log,
|
| + const scoped_refptr<media::GpuVideoAcceleratorFactories>& gpu_factories,
|
| + const scoped_refptr<base::SingleThreadTaskRunner>&
|
| + media_task_runner,
|
| + const scoped_refptr<base::SingleThreadTaskRunner>&
|
| + compositor_task_runner,
|
| + const EncryptedMediaPlayerSupportCreateCB&
|
| + encrypted_media_player_support_cb);
|
| +
|
| ~WebMediaPlayerParams();
|
|
|
| base::Callback<void(const base::Closure&)> defer_load_cb() const {
|
| @@ -32,9 +60,41 @@ class WebMediaPlayerParams {
|
| return audio_renderer_sink_;
|
| }
|
|
|
| + const media::AudioHardwareConfig& audio_hardware_config() const {
|
| + return audio_hardware_config_;
|
| + }
|
| +
|
| + const scoped_refptr<media::MediaLog>& media_log() const {
|
| + return media_log_;
|
| + }
|
| +
|
| + const scoped_refptr<media::GpuVideoAcceleratorFactories>&
|
| + gpu_factories() const {
|
| + return gpu_factories_;
|
| + }
|
| +
|
| + const scoped_refptr<base::SingleThreadTaskRunner>&
|
| + media_task_runner() const {
|
| + return media_task_runner_;
|
| + }
|
| +
|
| + const scoped_refptr<base::SingleThreadTaskRunner>&
|
| + compositor_task_runner() const {
|
| + return compositor_task_runner_;
|
| + }
|
| +
|
| + scoped_ptr<EncryptedMediaPlayerSupport>
|
| + CreateEncryptedMediaPlayerSupport(blink::WebMediaPlayerClient* client) const;
|
| +
|
| private:
|
| base::Callback<void(const base::Closure&)> defer_load_cb_;
|
| scoped_refptr<media::AudioRendererSink> audio_renderer_sink_;
|
| + const media::AudioHardwareConfig& audio_hardware_config_;
|
| + scoped_refptr<media::MediaLog> media_log_;
|
| + scoped_refptr<media::GpuVideoAcceleratorFactories> gpu_factories_;
|
| + scoped_refptr<base::SingleThreadTaskRunner> media_task_runner_;
|
| + scoped_refptr<base::SingleThreadTaskRunner> compositor_task_runner_;
|
| + EncryptedMediaPlayerSupportCreateCB encrypted_media_player_support_cb_;
|
|
|
| DISALLOW_IMPLICIT_CONSTRUCTORS(WebMediaPlayerParams);
|
| };
|
|
|