Commit 60e7fa15 authored by Yuchen Liu's avatar Yuchen Liu Committed by Commit Bot

[Chromecast] Flag to use the same AudioManager as Chrome on Android

Use AudioManagerAndroid, instead of CastAudioManagerAndroid on ATV.

The flag should only be used for dev and testing.

Bug: internal b/160753974
Test: Turn on the flag and verify in the log
Change-Id: Ie205d3f48d40d85b67272eeb143dbbc99d22bfe8
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2311677Reviewed-by: default avatarKenneth MacKay <kmackay@chromium.org>
Reviewed-by: default avatarSimeon Anfinrud <sanfin@chromium.org>
Commit-Queue: Yuchen Liu <yucliu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#790968}
parent 011b987a
...@@ -212,6 +212,12 @@ const char kForceUpdateRemoteUrl[] = "force-update-remote-url"; ...@@ -212,6 +212,12 @@ const char kForceUpdateRemoteUrl[] = "force-update-remote-url";
// means that dummy info will be used. // means that dummy info will be used.
const char kSysInfoFilePath[] = "sys-info-file-path"; const char kSysInfoFilePath[] = "sys-info-file-path";
// Uses AudioManagerAndroid, instead of CastAudioManagerAndroid. This will
// disable lots of Cast features, so it should only be used for development and
// testing.
const char kEnableChromeAudioManagerAndroid[] =
"enable-chrome-audio-manager-android";
} // namespace switches } // namespace switches
namespace chromecast { namespace chromecast {
......
...@@ -101,6 +101,8 @@ extern const char kForceUpdateRemoteUrl[]; ...@@ -101,6 +101,8 @@ extern const char kForceUpdateRemoteUrl[];
extern const char kSysInfoFilePath[]; extern const char kSysInfoFilePath[];
extern const char kEnableChromeAudioManagerAndroid[];
} // namespace switches } // namespace switches
namespace chromecast { namespace chromecast {
......
...@@ -104,6 +104,7 @@ ...@@ -104,6 +104,7 @@
#include "chromecast/media/audio/cast_audio_manager_android.h" //nogncheck #include "chromecast/media/audio/cast_audio_manager_android.h" //nogncheck
#include "components/cdm/browser/cdm_message_filter_android.h" #include "components/cdm/browser/cdm_message_filter_android.h"
#include "components/crash/core/app/crashpad.h" #include "components/crash/core/app/crashpad.h"
#include "media/audio/android/audio_manager_android.h"
#else #else
#include "chromecast/browser/memory_pressure_controller_impl.h" #include "chromecast/browser/memory_pressure_controller_impl.h"
#endif // defined(OS_ANDROID) #endif // defined(OS_ANDROID)
...@@ -276,6 +277,13 @@ CastContentBrowserClient::CreateAudioManager( ...@@ -276,6 +277,13 @@ CastContentBrowserClient::CreateAudioManager(
ServiceConnector::MakeRemote(kBrowserProcessClientId), ServiceConnector::MakeRemote(kBrowserProcessClientId),
BUILDFLAG(ENABLE_CAST_AUDIO_MANAGER_MIXER)); BUILDFLAG(ENABLE_CAST_AUDIO_MANAGER_MIXER));
#elif defined(OS_ANDROID) #elif defined(OS_ANDROID)
if (GetSwitchValueBoolean(switches::kEnableChromeAudioManagerAndroid,
false)) {
LOG(INFO) << "Use AudioManagerAndroid instead of CastAudioManagerAndroid.";
return std::make_unique<::media::AudioManagerAndroid>(
std::move(audio_thread), audio_log_factory);
}
return std::make_unique<media::CastAudioManagerAndroid>( return std::make_unique<media::CastAudioManagerAndroid>(
std::move(audio_thread), audio_log_factory, std::move(audio_thread), audio_log_factory,
base::BindRepeating(&CastContentBrowserClient::GetCmaBackendFactory, base::BindRepeating(&CastContentBrowserClient::GetCmaBackendFactory,
......
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