Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1313)

Unified Diff: content/renderer/media/crypto/renderer_cdm_manager.cc

Issue 1160983002: Allows support for persistent session types in BrowserCdm. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase conflicts with https://codereview.chromium.org/1166453002 Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « content/renderer/media/crypto/renderer_cdm_manager.h ('k') | media/base/android/media_drm_bridge.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/renderer/media/crypto/renderer_cdm_manager.cc
diff --git a/content/renderer/media/crypto/renderer_cdm_manager.cc b/content/renderer/media/crypto/renderer_cdm_manager.cc
index be9c5eaade78eb7f789b12b200a7c036cf73c75d..150130f5609809db452784e438b75eddd6177de8 100644
--- a/content/renderer/media/crypto/renderer_cdm_manager.cc
+++ b/content/renderer/media/crypto/renderer_cdm_manager.cc
@@ -74,11 +74,28 @@ void RendererCdmManager::SetServerCertificate(
void RendererCdmManager::CreateSessionAndGenerateRequest(
int cdm_id,
uint32_t promise_id,
+ media::MediaKeys::SessionType session_type,
CdmHostMsg_CreateSession_InitDataType init_data_type,
const std::vector<uint8_t>& init_data) {
DCHECK(GetMediaKeys(cdm_id)) << "|cdm_id| not registered.";
- Send(new CdmHostMsg_CreateSessionAndGenerateRequest(
- routing_id(), cdm_id, promise_id, init_data_type, init_data));
+ CdmHostMsg_CreateSessionAndGenerateRequest_Params params;
+ params.render_frame_id = routing_id();
+ params.cdm_id = cdm_id;
+ params.promise_id = promise_id;
+ params.session_type = session_type;
+ params.init_data_type = init_data_type;
+ params.init_data = init_data;
+ Send(new CdmHostMsg_CreateSessionAndGenerateRequest(params));
+}
+
+void RendererCdmManager::LoadSession(
+ int cdm_id,
+ uint32_t promise_id,
+ media::MediaKeys::SessionType session_type,
+ const std::string& session_id) {
+ DCHECK(GetMediaKeys(cdm_id)) << "|cdm_id| not registered.";
+ Send(new CdmHostMsg_LoadSession(routing_id(), cdm_id, promise_id,
+ session_type, session_id));
}
void RendererCdmManager::UpdateSession(int cdm_id,
@@ -98,6 +115,14 @@ void RendererCdmManager::CloseSession(int cdm_id,
session_id));
}
+void RendererCdmManager::RemoveSession(int cdm_id,
+ uint32_t promise_id,
+ const std::string& session_id) {
+ DCHECK(GetMediaKeys(cdm_id)) << "|cdm_id| not registered.";
+ Send(new CdmHostMsg_RemoveSession(routing_id(), cdm_id, promise_id,
+ session_id));
+}
+
void RendererCdmManager::DestroyCdm(int cdm_id) {
DCHECK(GetMediaKeys(cdm_id)) << "|cdm_id| not registered.";
Send(new CdmHostMsg_DestroyCdm(routing_id(), cdm_id));
« no previous file with comments | « content/renderer/media/crypto/renderer_cdm_manager.h ('k') | media/base/android/media_drm_bridge.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698