Index: media/cdm/cdm_adapter.cc |
diff --git a/media/cdm/cdm_adapter.cc b/media/cdm/cdm_adapter.cc |
index 91e598c113e2294884cc2f5afc3ddc4477484a1f..6253599415ae000f86fd9a3ca75f17e1d33d0d84 100644 |
--- a/media/cdm/cdm_adapter.cc |
+++ b/media/cdm/cdm_adapter.cc |
@@ -26,6 +26,7 @@ |
#include "media/base/video_frame.h" |
#include "media/base/video_types.h" |
#include "media/cdm/cdm_allocator.h" |
+#include "media/cdm/cdm_file_io_provider.h" |
#include "media/cdm/cdm_helpers.h" |
#include "media/cdm/cdm_wrapper.h" |
#include "ui/gfx/geometry/rect.h" |
@@ -333,6 +334,7 @@ void CdmAdapter::Create( |
const base::FilePath& cdm_path, |
const CdmConfig& cdm_config, |
scoped_ptr<CdmAllocator> allocator, |
+ scoped_ptr<CdmFileIOProvider> file_io_provider, |
const SessionMessageCB& session_message_cb, |
const SessionClosedCB& session_closed_cb, |
const LegacySessionErrorCB& legacy_session_error_cb, |
@@ -347,9 +349,9 @@ void CdmAdapter::Create( |
DCHECK(!session_expiration_update_cb.is_null()); |
scoped_refptr<CdmAdapter> cdm = new CdmAdapter( |
- key_system, cdm_config, std::move(allocator), session_message_cb, |
- session_closed_cb, legacy_session_error_cb, session_keys_change_cb, |
- session_expiration_update_cb); |
+ key_system, cdm_config, std::move(allocator), std::move(file_io_provider), |
+ session_message_cb, session_closed_cb, legacy_session_error_cb, |
+ session_keys_change_cb, session_expiration_update_cb); |
// |cdm| ownership passed to the promise. |
scoped_ptr<CdmInitializedPromise> cdm_created_promise( |
@@ -362,6 +364,7 @@ CdmAdapter::CdmAdapter( |
const std::string& key_system, |
const CdmConfig& cdm_config, |
scoped_ptr<CdmAllocator> allocator, |
+ scoped_ptr<CdmFileIOProvider> file_io_provider, |
const SessionMessageCB& session_message_cb, |
const SessionClosedCB& session_closed_cb, |
const LegacySessionErrorCB& legacy_session_error_cb, |
@@ -377,6 +380,7 @@ CdmAdapter::CdmAdapter( |
audio_samples_per_second_(0), |
audio_channel_layout_(CHANNEL_LAYOUT_NONE), |
allocator_(std::move(allocator)), |
+ file_io_provider_(std::move(file_io_provider)), |
task_runner_(base::ThreadTaskRunnerHandle::Get()), |
weak_factory_(this) { |
DCHECK(!key_system_.empty()); |
@@ -895,9 +899,7 @@ void CdmAdapter::OnDeferredInitializationDone(cdm::StreamType stream_type, |
cdm::FileIO* CdmAdapter::CreateFileIO(cdm::FileIOClient* client) { |
DCHECK(task_runner_->BelongsToCurrentThread()); |
- // TODO(jrummell): This should use the mojo FileIO client. |
- NOTIMPLEMENTED(); |
- return nullptr; |
+ return file_io_provider_->CreateFileIO(client); |
} |
bool CdmAdapter::AudioFramesDataToAudioFrames( |