Index: media/mojo/interfaces/content_decryption_module.mojom |
diff --git a/media/mojo/interfaces/content_decryption_module.mojom b/media/mojo/interfaces/content_decryption_module.mojom |
index d6949f4461a7041cce051e1cf628cd7f9f604a6a..fe373a0dadb1a0db7a428d23b321d753472612ab 100644 |
--- a/media/mojo/interfaces/content_decryption_module.mojom |
+++ b/media/mojo/interfaces/content_decryption_module.mojom |
@@ -38,7 +38,7 @@ struct CdmPromiseResult { |
bool success; |
CdmException exception; |
uint32 system_code; |
- string error_message; |
+ string? error_message; |
}; |
// Transport layer of media::CdmKeyInformation (see |
@@ -103,18 +103,10 @@ interface ContentDecryptionModule { |
// |session_id|. |
RemoveSession(string session_id) => (CdmPromiseResult result); |
- // Assigns the |cdm_id| to the CDM, and retrieves the |decryptor| associated |
- // with this CDM instance. |
- // A CDM implementation must choose to support either an explicit or implicit |
- // decryptor: |
- // - Explicit (non-null) decryptor: The client (e.g. media pipeline) will use |
- // the |decryptor| directly to decrypt (and decode) encrypted buffers. |
- // - Implicit (null) decryptor: The client (e.g. media pipeline) will use the |
- // |cdm_id| to locate a decryptor and associate it with the client. |
- // Note: In Chromium GetCdmContext() is a sync call. But we don't have an easy |
- // way to support sync calls on a mojo interface. Instead the client should |
- // generate a client side ID and pass it to the service. |
- GetCdmContext(int32 cdm_id, Decryptor&? decryptor); |
+ // Retrieves the |decryptor| associated with this CDM instance. |
+ // If the returned |decryptor| is not null, it will be used by the client |
+ // (e.g. media pipeline) directly to decrypt (and decode) encrypted buffers. |
+ GetDecryptor(Decryptor&? decryptor); |
}; |
// Session callbacks. See media/base/media_keys.h for details. |