summaryrefslogtreecommitdiff
path: root/chromium/media/cdm
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/media/cdm')
-rw-r--r--chromium/media/cdm/aes_decryptor.cc4
-rw-r--r--chromium/media/cdm/aes_decryptor.h4
-rw-r--r--chromium/media/cdm/aes_decryptor_unittest.cc42
-rw-r--r--chromium/media/cdm/cdm_adapter.cc23
-rw-r--r--chromium/media/cdm/cdm_adapter.h4
-rw-r--r--chromium/media/cdm/cdm_adapter_unittest.cc25
-rw-r--r--chromium/media/cdm/cdm_paths_unittest.cc6
-rw-r--r--chromium/media/cdm/library_cdm/cdm_paths.gni6
-rw-r--r--chromium/media/cdm/library_cdm/clear_key_cdm/BUILD.gn1
-rw-r--r--chromium/media/cdm/library_cdm/clear_key_cdm/cdm_video_decoder.cc3
-rw-r--r--chromium/media/cdm/library_cdm/clear_key_cdm/clear_key_cdm.cc13
-rw-r--r--chromium/media/cdm/library_cdm/clear_key_cdm/clear_key_persistent_session_cdm.cc12
-rw-r--r--chromium/media/cdm/win/media_foundation_cdm_factory.cc4
-rw-r--r--chromium/media/cdm/win/media_foundation_cdm_session.cc2
14 files changed, 77 insertions, 72 deletions
diff --git a/chromium/media/cdm/aes_decryptor.cc b/chromium/media/cdm/aes_decryptor.cc
index d18d6ebeccd..7a1ffda30be 100644
--- a/chromium/media/cdm/aes_decryptor.cc
+++ b/chromium/media/cdm/aes_decryptor.cc
@@ -511,12 +511,12 @@ void AesDecryptor::InitializeVideoDecoder(const VideoDecoderConfig& config,
}
void AesDecryptor::DecryptAndDecodeAudio(scoped_refptr<DecoderBuffer> encrypted,
- const AudioDecodeCB& audio_decode_cb) {
+ AudioDecodeCB audio_decode_cb) {
NOTREACHED() << "AesDecryptor does not support audio decoding";
}
void AesDecryptor::DecryptAndDecodeVideo(scoped_refptr<DecoderBuffer> encrypted,
- const VideoDecodeCB& video_decode_cb) {
+ VideoDecodeCB video_decode_cb) {
NOTREACHED() << "AesDecryptor does not support video decoding";
}
diff --git a/chromium/media/cdm/aes_decryptor.h b/chromium/media/cdm/aes_decryptor.h
index 228a45593a5..962c27a1aed 100644
--- a/chromium/media/cdm/aes_decryptor.h
+++ b/chromium/media/cdm/aes_decryptor.h
@@ -78,9 +78,9 @@ class MEDIA_EXPORT AesDecryptor : public ContentDecryptionModule,
void InitializeVideoDecoder(const VideoDecoderConfig& config,
DecoderInitCB init_cb) override;
void DecryptAndDecodeAudio(scoped_refptr<DecoderBuffer> encrypted,
- const AudioDecodeCB& audio_decode_cb) override;
+ AudioDecodeCB audio_decode_cb) override;
void DecryptAndDecodeVideo(scoped_refptr<DecoderBuffer> encrypted,
- const VideoDecodeCB& video_decode_cb) override;
+ VideoDecodeCB video_decode_cb) override;
void ResetDecoder(StreamType stream_type) override;
void DeinitializeDecoder(StreamType stream_type) override;
bool CanAlwaysDecrypt() override;
diff --git a/chromium/media/cdm/aes_decryptor_unittest.cc b/chromium/media/cdm/aes_decryptor_unittest.cc
index f2b32bb9dec..49a298e4cd8 100644
--- a/chromium/media/cdm/aes_decryptor_unittest.cc
+++ b/chromium/media/cdm/aes_decryptor_unittest.cc
@@ -252,14 +252,15 @@ class AesDecryptorTest : public testing::TestWithParam<TestType> {
void SetUp() override {
if (GetParam() == TestType::kAesDecryptor) {
OnCdmCreated(
- new AesDecryptor(base::Bind(&MockCdmClient::OnSessionMessage,
- base::Unretained(&cdm_client_)),
- base::Bind(&MockCdmClient::OnSessionClosed,
- base::Unretained(&cdm_client_)),
- base::Bind(&MockCdmClient::OnSessionKeysChange,
- base::Unretained(&cdm_client_)),
- base::Bind(&MockCdmClient::OnSessionExpirationUpdate,
- base::Unretained(&cdm_client_))),
+ new AesDecryptor(
+ base::BindRepeating(&MockCdmClient::OnSessionMessage,
+ base::Unretained(&cdm_client_)),
+ base::BindRepeating(&MockCdmClient::OnSessionClosed,
+ base::Unretained(&cdm_client_)),
+ base::BindRepeating(&MockCdmClient::OnSessionKeysChange,
+ base::Unretained(&cdm_client_)),
+ base::BindRepeating(&MockCdmClient::OnSessionExpirationUpdate,
+ base::Unretained(&cdm_client_))),
std::string());
} else if (GetParam() == TestType::kCdmAdapter) {
#if BUILDFLAG(ENABLE_LIBRARY_CDMS)
@@ -283,18 +284,19 @@ class AesDecryptorTest : public testing::TestWithParam<TestType> {
std::unique_ptr<CdmAllocator> allocator(new SimpleCdmAllocator());
std::unique_ptr<CdmAuxiliaryHelper> cdm_helper(
new MockCdmAuxiliaryHelper(std::move(allocator)));
- CdmAdapter::Create(helper_->KeySystemName(),
- cdm_config, create_cdm_func, std::move(cdm_helper),
- base::Bind(&MockCdmClient::OnSessionMessage,
- base::Unretained(&cdm_client_)),
- base::Bind(&MockCdmClient::OnSessionClosed,
- base::Unretained(&cdm_client_)),
- base::Bind(&MockCdmClient::OnSessionKeysChange,
- base::Unretained(&cdm_client_)),
- base::Bind(&MockCdmClient::OnSessionExpirationUpdate,
- base::Unretained(&cdm_client_)),
- base::BindOnce(&AesDecryptorTest::OnCdmCreated,
- base::Unretained(this)));
+ CdmAdapter::Create(
+ helper_->KeySystemName(), cdm_config, create_cdm_func,
+ std::move(cdm_helper),
+ base::BindRepeating(&MockCdmClient::OnSessionMessage,
+ base::Unretained(&cdm_client_)),
+ base::BindRepeating(&MockCdmClient::OnSessionClosed,
+ base::Unretained(&cdm_client_)),
+ base::BindRepeating(&MockCdmClient::OnSessionKeysChange,
+ base::Unretained(&cdm_client_)),
+ base::BindRepeating(&MockCdmClient::OnSessionExpirationUpdate,
+ base::Unretained(&cdm_client_)),
+ base::BindOnce(&AesDecryptorTest::OnCdmCreated,
+ base::Unretained(this)));
base::RunLoop().RunUntilIdle();
#else
diff --git a/chromium/media/cdm/cdm_adapter.cc b/chromium/media/cdm/cdm_adapter.cc
index af8394152d7..145c8e69bcc 100644
--- a/chromium/media/cdm/cdm_adapter.cc
+++ b/chromium/media/cdm/cdm_adapter.cc
@@ -226,14 +226,14 @@ CdmAdapter::CdmAdapter(
DCHECK(session_expiration_update_cb_);
helper_->SetFileReadCB(
- base::Bind(&CdmAdapter::OnFileRead, weak_factory_.GetWeakPtr()));
+ base::BindRepeating(&CdmAdapter::OnFileRead, weak_factory_.GetWeakPtr()));
}
CdmAdapter::~CdmAdapter() {
DVLOG(1) << __func__;
// Reject any outstanding promises and close all the existing sessions.
- cdm_promise_adapter_.Clear();
+ cdm_promise_adapter_.Clear(CdmPromiseAdapter::ClearReason::kDestruction);
if (audio_init_cb_)
std::move(audio_init_cb_).Run(false);
@@ -540,7 +540,7 @@ void CdmAdapter::InitializeVideoDecoder(const VideoDecoderConfig& config,
}
void CdmAdapter::DecryptAndDecodeAudio(scoped_refptr<DecoderBuffer> encrypted,
- const AudioDecodeCB& audio_decode_cb) {
+ AudioDecodeCB audio_decode_cb) {
DVLOG(3) << __func__ << ": "
<< encrypted->AsHumanReadableString(/*verbose=*/true);
DCHECK(task_runner_->BelongsToCurrentThread());
@@ -562,7 +562,8 @@ void CdmAdapter::DecryptAndDecodeAudio(scoped_refptr<DecoderBuffer> encrypted,
const Decryptor::AudioFrames empty_frames;
if (status != cdm::kSuccess) {
DVLOG(1) << __func__ << ": status = " << status;
- audio_decode_cb.Run(ToMediaDecryptorStatus(status), empty_frames);
+ std::move(audio_decode_cb)
+ .Run(ToMediaDecryptorStatus(status), empty_frames);
return;
}
@@ -571,15 +572,15 @@ void CdmAdapter::DecryptAndDecodeAudio(scoped_refptr<DecoderBuffer> encrypted,
if (!AudioFramesDataToAudioFrames(std::move(audio_frames),
&audio_frame_list)) {
DVLOG(1) << __func__ << " unable to convert Audio Frames";
- audio_decode_cb.Run(Decryptor::kError, empty_frames);
+ std::move(audio_decode_cb).Run(Decryptor::kError, empty_frames);
return;
}
- audio_decode_cb.Run(Decryptor::kSuccess, audio_frame_list);
+ std::move(audio_decode_cb).Run(Decryptor::kSuccess, audio_frame_list);
}
void CdmAdapter::DecryptAndDecodeVideo(scoped_refptr<DecoderBuffer> encrypted,
- const VideoDecodeCB& video_decode_cb) {
+ VideoDecodeCB video_decode_cb) {
DVLOG(3) << __func__ << ": "
<< encrypted->AsHumanReadableString(/*verbose=*/true);
DCHECK(task_runner_->BelongsToCurrentThread());
@@ -604,7 +605,7 @@ void CdmAdapter::DecryptAndDecodeVideo(scoped_refptr<DecoderBuffer> encrypted,
if (status != cdm::kSuccess) {
DVLOG(1) << __func__ << ": status = " << status;
- video_decode_cb.Run(ToMediaDecryptorStatus(status), nullptr);
+ std::move(video_decode_cb).Run(ToMediaDecryptorStatus(status), nullptr);
return;
}
@@ -613,13 +614,13 @@ void CdmAdapter::DecryptAndDecodeVideo(scoped_refptr<DecoderBuffer> encrypted,
GetNaturalSize(visible_rect, pixel_aspect_ratio_));
if (!decoded_frame) {
DLOG(ERROR) << __func__ << ": TransformToVideoFrame failed.";
- video_decode_cb.Run(Decryptor::kError, nullptr);
+ std::move(video_decode_cb).Run(Decryptor::kError, nullptr);
return;
}
- decoded_frame->metadata()->protected_video = is_video_encrypted_;
+ decoded_frame->metadata().protected_video = is_video_encrypted_;
- video_decode_cb.Run(Decryptor::kSuccess, decoded_frame);
+ std::move(video_decode_cb).Run(Decryptor::kSuccess, decoded_frame);
}
void CdmAdapter::ResetDecoder(StreamType stream_type) {
diff --git a/chromium/media/cdm/cdm_adapter.h b/chromium/media/cdm/cdm_adapter.h
index 5a8b0e93d77..812f8ff07ab 100644
--- a/chromium/media/cdm/cdm_adapter.h
+++ b/chromium/media/cdm/cdm_adapter.h
@@ -106,9 +106,9 @@ class MEDIA_EXPORT CdmAdapter final : public ContentDecryptionModule,
void InitializeVideoDecoder(const VideoDecoderConfig& config,
DecoderInitCB init_cb) final;
void DecryptAndDecodeAudio(scoped_refptr<DecoderBuffer> encrypted,
- const AudioDecodeCB& audio_decode_cb) final;
+ AudioDecodeCB audio_decode_cb) final;
void DecryptAndDecodeVideo(scoped_refptr<DecoderBuffer> encrypted,
- const VideoDecodeCB& video_decode_cb) final;
+ VideoDecodeCB video_decode_cb) final;
void ResetDecoder(StreamType stream_type) final;
void DeinitializeDecoder(StreamType stream_type) final;
diff --git a/chromium/media/cdm/cdm_adapter_unittest.cc b/chromium/media/cdm/cdm_adapter_unittest.cc
index 3b8cc935370..6e27a40a24b 100644
--- a/chromium/media/cdm/cdm_adapter_unittest.cc
+++ b/chromium/media/cdm/cdm_adapter_unittest.cc
@@ -140,18 +140,19 @@ class CdmAdapterTestBase : public testing::Test,
std::unique_ptr<StrictMock<MockCdmAuxiliaryHelper>> cdm_helper(
new StrictMock<MockCdmAuxiliaryHelper>(std::move(allocator)));
cdm_helper_ = cdm_helper.get();
- CdmAdapter::Create(GetKeySystemName(), cdm_config, GetCreateCdmFunc(),
- std::move(cdm_helper),
- base::Bind(&MockCdmClient::OnSessionMessage,
- base::Unretained(&cdm_client_)),
- base::Bind(&MockCdmClient::OnSessionClosed,
- base::Unretained(&cdm_client_)),
- base::Bind(&MockCdmClient::OnSessionKeysChange,
- base::Unretained(&cdm_client_)),
- base::Bind(&MockCdmClient::OnSessionExpirationUpdate,
- base::Unretained(&cdm_client_)),
- base::BindOnce(&CdmAdapterTestBase::OnCdmCreated,
- base::Unretained(this), expected_result));
+ CdmAdapter::Create(
+ GetKeySystemName(), cdm_config, GetCreateCdmFunc(),
+ std::move(cdm_helper),
+ base::BindRepeating(&MockCdmClient::OnSessionMessage,
+ base::Unretained(&cdm_client_)),
+ base::BindRepeating(&MockCdmClient::OnSessionClosed,
+ base::Unretained(&cdm_client_)),
+ base::BindRepeating(&MockCdmClient::OnSessionKeysChange,
+ base::Unretained(&cdm_client_)),
+ base::BindRepeating(&MockCdmClient::OnSessionExpirationUpdate,
+ base::Unretained(&cdm_client_)),
+ base::BindOnce(&CdmAdapterTestBase::OnCdmCreated,
+ base::Unretained(this), expected_result));
RunUntilIdle();
ASSERT_EQ(expected_result == SUCCESS, !!cdm_);
}
diff --git a/chromium/media/cdm/cdm_paths_unittest.cc b/chromium/media/cdm/cdm_paths_unittest.cc
index 2e0fe96ea54..1cc84ce8ba5 100644
--- a/chromium/media/cdm/cdm_paths_unittest.cc
+++ b/chromium/media/cdm/cdm_paths_unittest.cc
@@ -18,7 +18,7 @@
// TODO(crbug.com/971433). Move the CDMs out of the install directory on
// ChromeOS.
#if (defined(OS_MAC) || defined(OS_WIN) || defined(OS_LINUX) || \
- BUILDFLAG(IS_LACROS))
+ BUILDFLAG(IS_CHROMEOS_LACROS))
#define CDM_USE_PLATFORM_SPECIFIC_PATH
#endif
@@ -37,9 +37,9 @@ const char kComponentPlatform[] =
"mac";
#elif defined(OS_WIN)
"win";
-#elif BUILDFLAG(IS_ASH)
+#elif BUILDFLAG(IS_CHROMEOS_ASH)
"cros";
-#elif defined(OS_LINUX)
+#elif defined(OS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)
"linux";
#else
"unsupported_platform";
diff --git a/chromium/media/cdm/library_cdm/cdm_paths.gni b/chromium/media/cdm/library_cdm/cdm_paths.gni
index 1842847e7e7..21fd5f6c0f1 100644
--- a/chromium/media/cdm/library_cdm/cdm_paths.gni
+++ b/chromium/media/cdm/library_cdm/cdm_paths.gni
@@ -11,9 +11,9 @@ import("//build/config/chromeos/ui_mode.gni")
# OS name for components is close to "target_os" but has some differences.
# Explicitly define what we use to avoid confusion.
-if (is_ash) {
+if (is_chromeos_ash) {
component_os = "cros"
-} else if (is_linux) {
+} else if (is_linux || is_chromeos_lacros) {
component_os = "linux"
} else if (is_win) {
component_os = "win"
@@ -31,7 +31,7 @@ component_arch = "$current_cpu"
# - |cdm_platform_specific_path| is exported as a BUILDFLAG to cdm_paths.cc.
# - When updating the condition here, also update the condition on the define
# of CDM_USE_PLATFORM_SPECIFIC_PATH in cdm_paths_unittest.cc.
-if (is_win || is_mac || is_linux) {
+if (is_win || is_mac || is_linux || is_chromeos_lacros) {
cdm_platform_specific_path =
"_platform_specific/$component_os" + "_" + "$component_arch"
diff --git a/chromium/media/cdm/library_cdm/clear_key_cdm/BUILD.gn b/chromium/media/cdm/library_cdm/clear_key_cdm/BUILD.gn
index 25b1dfee1ef..90e72773781 100644
--- a/chromium/media/cdm/library_cdm/clear_key_cdm/BUILD.gn
+++ b/chromium/media/cdm/library_cdm/clear_key_cdm/BUILD.gn
@@ -35,7 +35,6 @@ loadable_module("clear_key_cdm") {
"//media:shared_memory_support", # For media::AudioBus.
"//media/cdm:cdm_api", # For content_decryption_module.h
"//media/cdm/library_cdm:cdm_host_proxy",
- "//third_party/libaom:libaom_buildflags",
"//third_party/libyuv",
"//url",
]
diff --git a/chromium/media/cdm/library_cdm/clear_key_cdm/cdm_video_decoder.cc b/chromium/media/cdm/library_cdm/clear_key_cdm/cdm_video_decoder.cc
index c1fc8867088..ddd43745e84 100644
--- a/chromium/media/cdm/library_cdm/clear_key_cdm/cdm_video_decoder.cc
+++ b/chromium/media/cdm/library_cdm/clear_key_cdm/cdm_video_decoder.cc
@@ -27,7 +27,6 @@
#include "media/cdm/cdm_type_conversion.h"
#include "media/cdm/library_cdm/cdm_host_proxy.h"
#include "media/media_buildflags.h"
-#include "third_party/libaom/libaom_buildflags.h"
#include "third_party/libyuv/include/libyuv/planar_functions.h"
#if BUILDFLAG(ENABLE_LIBVPX)
@@ -257,7 +256,7 @@ class VideoDecoderAdapter final : public CdmVideoDecoder {
void OnVideoFrameReady(scoped_refptr<VideoFrame> video_frame) {
// Do not queue EOS frames, which is not needed.
- if (video_frame->metadata()->end_of_stream)
+ if (video_frame->metadata().end_of_stream)
return;
decoded_video_frames_.push(std::move(video_frame));
diff --git a/chromium/media/cdm/library_cdm/clear_key_cdm/clear_key_cdm.cc b/chromium/media/cdm/library_cdm/clear_key_cdm/clear_key_cdm.cc
index 5ad5056e830..1211f1bcd61 100644
--- a/chromium/media/cdm/library_cdm/clear_key_cdm/clear_key_cdm.cc
+++ b/chromium/media/cdm/library_cdm/clear_key_cdm/clear_key_cdm.cc
@@ -327,11 +327,14 @@ ClearKeyCdm::ClearKeyCdm(HostInterface* host, const std::string& key_system)
cdm_host_proxy_(new CdmHostProxyImpl<HostInterface>(host)),
cdm_(new ClearKeyPersistentSessionCdm(
cdm_host_proxy_.get(),
- base::Bind(&ClearKeyCdm::OnSessionMessage, base::Unretained(this)),
- base::Bind(&ClearKeyCdm::OnSessionClosed, base::Unretained(this)),
- base::Bind(&ClearKeyCdm::OnSessionKeysChange, base::Unretained(this)),
- base::Bind(&ClearKeyCdm::OnSessionExpirationUpdate,
- base::Unretained(this)))),
+ base::BindRepeating(&ClearKeyCdm::OnSessionMessage,
+ base::Unretained(this)),
+ base::BindRepeating(&ClearKeyCdm::OnSessionClosed,
+ base::Unretained(this)),
+ base::BindRepeating(&ClearKeyCdm::OnSessionKeysChange,
+ base::Unretained(this)),
+ base::BindRepeating(&ClearKeyCdm::OnSessionExpirationUpdate,
+ base::Unretained(this)))),
key_system_(key_system) {
DCHECK(g_is_cdm_module_initialized);
}
diff --git a/chromium/media/cdm/library_cdm/clear_key_cdm/clear_key_persistent_session_cdm.cc b/chromium/media/cdm/library_cdm/clear_key_cdm/clear_key_persistent_session_cdm.cc
index 6e2dcba4167..c3428123dd4 100644
--- a/chromium/media/cdm/library_cdm/clear_key_cdm/clear_key_persistent_session_cdm.cc
+++ b/chromium/media/cdm/library_cdm/clear_key_cdm/clear_key_persistent_session_cdm.cc
@@ -99,10 +99,10 @@ ClearKeyPersistentSessionCdm::ClearKeyPersistentSessionCdm(
session_message_cb_(session_message_cb),
session_closed_cb_(session_closed_cb) {
cdm_ = base::MakeRefCounted<AesDecryptor>(
- base::Bind(&ClearKeyPersistentSessionCdm::OnSessionMessage,
- weak_factory_.GetWeakPtr()),
- base::Bind(&ClearKeyPersistentSessionCdm::OnSessionClosed,
- weak_factory_.GetWeakPtr()),
+ base::BindRepeating(&ClearKeyPersistentSessionCdm::OnSessionMessage,
+ weak_factory_.GetWeakPtr()),
+ base::BindRepeating(&ClearKeyPersistentSessionCdm::OnSessionClosed,
+ weak_factory_.GetWeakPtr()),
session_keys_change_cb, session_expiration_update_cb);
}
@@ -129,8 +129,8 @@ void ClearKeyPersistentSessionCdm::CreateSessionAndGenerateRequest(
// Since it's a persistent session, we need to save the session ID after
// it's been created.
new_promise = std::make_unique<NewPersistentSessionCdmPromise>(
- base::Bind(&ClearKeyPersistentSessionCdm::AddPersistentSession,
- weak_factory_.GetWeakPtr()),
+ base::BindOnce(&ClearKeyPersistentSessionCdm::AddPersistentSession,
+ weak_factory_.GetWeakPtr()),
std::move(promise));
}
cdm_->CreateSessionAndGenerateRequest(session_type, init_data_type, init_data,
diff --git a/chromium/media/cdm/win/media_foundation_cdm_factory.cc b/chromium/media/cdm/win/media_foundation_cdm_factory.cc
index 3d3a924a06a..c314a5d9175 100644
--- a/chromium/media/cdm/win/media_foundation_cdm_factory.cc
+++ b/chromium/media/cdm/win/media_foundation_cdm_factory.cc
@@ -185,7 +185,7 @@ HRESULT MediaFoundationCdmFactory::CreateMFCdmFactory(
RETURN_IF_FAILED(CoCreateInstance(CLSID_MFMediaEngineClassFactory, nullptr,
CLSCTX_INPROC_SERVER,
IID_PPV_ARGS(&class_factory)));
- auto key_system_str = base::UTF8ToUTF16(key_system);
+ auto key_system_str = base::UTF8ToWide(key_system);
RETURN_IF_FAILED(class_factory->CreateContentDecryptionModuleFactory(
key_system_str.c_str(), IID_PPV_ARGS(&cdm_factory)));
return S_OK;
@@ -198,7 +198,7 @@ HRESULT MediaFoundationCdmFactory::CreateCdmInternal(
ComPtr<IMFContentDecryptionModuleFactory> cdm_factory;
RETURN_IF_FAILED(CreateMFCdmFactory(key_system, cdm_factory));
- auto key_system_str = base::UTF8ToUTF16(key_system);
+ auto key_system_str = base::UTF8ToWide(key_system);
if (!cdm_factory->IsTypeSupported(key_system_str.c_str(), nullptr)) {
DLOG(ERROR) << key_system << " not supported by MF CdmFactory";
return MF_NOT_SUPPORTED_ERR;
diff --git a/chromium/media/cdm/win/media_foundation_cdm_session.cc b/chromium/media/cdm/win/media_foundation_cdm_session.cc
index 37b5666dda8..e5bbe438a5f 100644
--- a/chromium/media/cdm/win/media_foundation_cdm_session.cc
+++ b/chromium/media/cdm/win/media_foundation_cdm_session.cc
@@ -282,7 +282,7 @@ bool MediaFoundationCdmSession::SetSessionId() {
return false;
}
- auto session_id_str = base::UTF16ToUTF8(session_id.get());
+ auto session_id_str = base::WideToUTF8(session_id.get());
if (session_id_str.empty()) {
bool success = std::move(session_id_cb_).Run("");
DCHECK(!success) << "Empty session ID should not be accepted";