Commit cf8b4f92 authored by Alex Leung's avatar Alex Leung Committed by Commit Bot

Use browser as mojo_media_services for cast_audio_only builds.

Bug: b:117117082
Change-Id: I14fdddd09de741e763cb9ba6cf69abb58bfdf9ef
Reviewed-on: https://chromium-review.googlesource.com/c/1258317Reviewed-by: default avatarChrome Cunningham <chcunningham@chromium.org>
Reviewed-by: default avatarLuke Halliwell <halliwell@chromium.org>
Commit-Queue: Alex Leung <alexleung@google.com>
Cr-Commit-Position: refs/heads/master@{#596372}
parent d55bc9fe
......@@ -9,6 +9,7 @@ include_rules = [
"+media/audio",
"+media/base",
"+media/cdm",
"+media/filters",
"+mojo/core/embedder/embedder.h",
"+mojo/public/cpp/bindings/binding.h",
"+ui/gfx/geometry",
......
......@@ -4,13 +4,19 @@
#include "chromecast/media/service/cast_mojo_media_client.h"
#include "build/build_config.h"
#include "chromecast/media/cma/backend/cma_backend_factory.h"
#include "chromecast/media/service/cast_renderer.h"
#include "chromecast/public/media/media_pipeline_backend.h"
#include "media/base/audio_decoder.h"
#include "media/base/cdm_factory.h"
#include "media/base/media_log.h"
#include "media/base/overlay_info.h"
#if defined(OS_ANDROID)
#include "media/filters/android/media_codec_audio_decoder.h"
#endif // defined(OS_ANDROID)
namespace chromecast {
namespace media {
......@@ -53,5 +59,13 @@ std::unique_ptr<::media::CdmFactory> CastMojoMediaClient::CreateCdmFactory(
return create_cdm_factory_cb_.Run();
}
std::unique_ptr<::media::AudioDecoder> CastMojoMediaClient::CreateAudioDecoder(
scoped_refptr<base::SingleThreadTaskRunner> task_runner) {
#if defined(OS_ANDROID)
return std::make_unique<::media::MediaCodecAudioDecoder>(task_runner);
#endif // defined(OS_ANDROID)
return nullptr;
}
} // namespace media
} // namespace chromecast
......@@ -39,6 +39,8 @@ class CastMojoMediaClient : public ::media::MojoMediaClient {
const std::string& audio_device_id) override;
std::unique_ptr<::media::CdmFactory> CreateCdmFactory(
service_manager::mojom::InterfaceProvider* host_interfaces) override;
std::unique_ptr<::media::AudioDecoder> CreateAudioDecoder(
scoped_refptr<base::SingleThreadTaskRunner> task_runner) override;
private:
service_manager::Connector* connector_;
......
......@@ -186,12 +186,20 @@ if (enable_mojo_media) {
_default_mojo_media_host = "browser"
} else if (is_android) {
# Both chrome for Android and cast for Android belongs to this case
_default_mojo_media_services = [
"cdm",
"audio_decoder",
"video_decoder",
]
_default_mojo_media_host = "gpu"
if (is_cast_audio_only) {
_default_mojo_media_services = [
"cdm",
"audio_decoder",
]
_default_mojo_media_host = "browser"
} else {
_default_mojo_media_services = [
"cdm",
"audio_decoder",
"video_decoder",
]
_default_mojo_media_host = "gpu"
}
} else if (is_chromeos || is_mac || is_win) {
_default_mojo_media_services = [ "video_decoder" ]
_default_mojo_media_host = "gpu"
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment