| Index: media/mojo/services/mojo_media_client.cc
|
| diff --git a/media/mojo/services/mojo_media_client.cc b/media/mojo/services/mojo_media_client.cc
|
| index 3d05f1b7925e37e0f8479599c38246f8a65c20f2..f9dd4442b7848985b3fd30dc0914c8aa45f47d85 100644
|
| --- a/media/mojo/services/mojo_media_client.cc
|
| +++ b/media/mojo/services/mojo_media_client.cc
|
| @@ -10,6 +10,8 @@ namespace media {
|
|
|
| PlatformMojoMediaClient::~PlatformMojoMediaClient(){};
|
|
|
| +void PlatformMojoMediaClient::Initialize() {}
|
| +
|
| scoped_ptr<RendererFactory> PlatformMojoMediaClient::CreateRendererFactory(
|
| const scoped_refptr<MediaLog>& media_log) {
|
| return nullptr;
|
| @@ -34,36 +36,39 @@ namespace internal {
|
| extern scoped_ptr<PlatformMojoMediaClient> CreatePlatformMojoMediaClient();
|
| } // namespace internal
|
|
|
| -static base::LazyInstance<MojoMediaClient>::Leaky g_mojo_media_client =
|
| - LAZY_INSTANCE_INITIALIZER;
|
| -
|
| // static
|
| -MojoMediaClient* MojoMediaClient::Get() {
|
| - return g_mojo_media_client.Pointer();
|
| +scoped_ptr<MojoMediaClient> MojoMediaClient::Create() {
|
| + return make_scoped_ptr(
|
| + new MojoMediaClient(internal::CreatePlatformMojoMediaClient()));
|
| +}
|
| +
|
| +void MojoMediaClient::Initialize() {
|
| + platform_client_->Initialize();
|
| }
|
|
|
| scoped_ptr<RendererFactory> MojoMediaClient::CreateRendererFactory(
|
| const scoped_refptr<MediaLog>& media_log) {
|
| - return mojo_media_client_->CreateRendererFactory(media_log);
|
| + return platform_client_->CreateRendererFactory(media_log);
|
| }
|
|
|
| scoped_refptr<AudioRendererSink> MojoMediaClient::CreateAudioRendererSink() {
|
| - return mojo_media_client_->CreateAudioRendererSink();
|
| + return platform_client_->CreateAudioRendererSink();
|
| }
|
|
|
| scoped_ptr<VideoRendererSink> MojoMediaClient::CreateVideoRendererSink(
|
| const scoped_refptr<base::SingleThreadTaskRunner>& task_runner) {
|
| - return mojo_media_client_->CreateVideoRendererSink(task_runner);
|
| + return platform_client_->CreateVideoRendererSink(task_runner);
|
| }
|
|
|
| scoped_ptr<CdmFactory> MojoMediaClient::CreateCdmFactory(
|
| mojo::ServiceProvider* service_provider) {
|
| - return mojo_media_client_->CreateCdmFactory(service_provider);
|
| + return platform_client_->CreateCdmFactory(service_provider);
|
| }
|
|
|
| -MojoMediaClient::MojoMediaClient()
|
| - : mojo_media_client_(internal::CreatePlatformMojoMediaClient()) {
|
| - DCHECK(mojo_media_client_);
|
| +MojoMediaClient::MojoMediaClient(
|
| + scoped_ptr<PlatformMojoMediaClient> platform_client)
|
| + : platform_client_(std::move(platform_client)) {
|
| + DCHECK(platform_client_);
|
| }
|
|
|
| MojoMediaClient::~MojoMediaClient() {
|
|
|