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 24d407236a585109d54aaebdebd26b4eefd6327e..3f4019674fa50f816bc8f766e8311c6cfd6c51e1 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 |
@@ -111,18 +111,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. |