// Copyright 2014 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #include "media/mojo/services/renderer_config.h" namespace media { namespace internal { extern scoped_ptr CreatePlatformRendererConfig(); } // namespace internal static base::LazyInstance::Leaky g_platform_config = LAZY_INSTANCE_INITIALIZER; // static RendererConfig* RendererConfig::Get() { return g_platform_config.Pointer(); } ScopedVector RendererConfig::GetAudioDecoders( const scoped_refptr& media_task_runner, const LogCB& media_log_cb) { return renderer_config_->GetAudioDecoders(media_task_runner, media_log_cb); } ScopedVector RendererConfig::GetVideoDecoders( const scoped_refptr& media_task_runner, const LogCB& media_log_cb) { return renderer_config_->GetVideoDecoders(media_task_runner, media_log_cb); } scoped_refptr RendererConfig::GetAudioRendererSink() { return renderer_config_->GetAudioRendererSink(); } scoped_ptr RendererConfig::GetVideoRendererSink() { return renderer_config_->GetVideoRendererSink(); } const AudioHardwareConfig& RendererConfig::GetAudioHardwareConfig() { return renderer_config_->GetAudioHardwareConfig(); } RendererConfig::RendererConfig() : renderer_config_(internal::CreatePlatformRendererConfig().Pass()) { } RendererConfig::~RendererConfig() { } } // namespace media