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

Side by Side Diff: ppapi/api/private/ppp_content_decryptor_private.idl

Issue 496143002: Update Pepper interface for EME (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 4 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 unified diff | Download patch
OLDNEW
1 /* Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 /* Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 * Use of this source code is governed by a BSD-style license that can be 2 * Use of this source code is governed by a BSD-style license that can be
3 * found in the LICENSE file. 3 * found in the LICENSE file.
4 */ 4 */
5 5
6 /** 6 /**
7 * This file defines the <code>PPP_ContentDecryptor_Private</code> 7 * This file defines the <code>PPP_ContentDecryptor_Private</code>
8 * interface. Note: This is a special interface, only to be used for Content 8 * interface. Note: This is a special interface, only to be used for Content
9 * Decryption Modules, not normal plugins. 9 * Decryption Modules, not normal plugins.
10 */ 10 */
(...skipping 13 matching lines...) Expand all
24 * Initialize for the specified key system. 24 * Initialize for the specified key system.
25 * 25 *
26 * @param[in] key_system A <code>PP_Var</code> of type 26 * @param[in] key_system A <code>PP_Var</code> of type
27 * <code>PP_VARTYPE_STRING</code> containing the name of the key system. 27 * <code>PP_VARTYPE_STRING</code> containing the name of the key system.
28 */ 28 */
29 void Initialize( 29 void Initialize(
30 [in] PP_Instance instance, 30 [in] PP_Instance instance,
31 [in] PP_Var key_system); 31 [in] PP_Var key_system);
32 32
33 /** 33 /**
34 * Provides a server certificate to be used to encrypt messages to the
35 * license server.
36 *
37 * @param[in] promise_id A reference for the promise that gets resolved or
38 * rejected depending upon the success or failure of setti ng the certificate.
ddorwin 2014/08/22 20:49:21 setting
jrummell 2014/08/25 21:54:37 Done.
39 *
40 * @param[in] server_certificate A <code>PP_Var</code> of type
41 * <code>PP_VARTYPE_ARRAYBUFFER</code> containing the certificate to be used.
42 */
43 void SetServerCertificate(
44 [in] PP_Instance instance,
45 [in] uint32_t promise_id,
46 [in] PP_Var server_certificate);
47
48 /**
34 * Creates a session. <code>init_data_type</code> contains the MIME type of 49 * Creates a session. <code>init_data_type</code> contains the MIME type of
35 * <code>init_data</code>. <code>init_data</code> is a data buffer 50 * <code>init_data</code>. <code>init_data</code> is a data buffer
36 * containing data for use in generating the request. 51 * containing data for use in generating the request.
37 * 52 *
38 * Note: <code>CreateSession()</code> must create a web session ID and provide 53 * Note: <code>CreateSession()</code> must create a web session ID and provide
39 * it to the browser via <code>SessionCreated()</code> on the 54 * it to the browser via <code>SessionCreated()</code> on the
40 * <code>PPB_ContentDecryptor_Private</code> interface. 55 * <code>PPB_ContentDecryptor_Private</code> interface.
41 * 56 *
42 * @param[in] promise_id A reference for the promise that gets resolved or 57 * @param[in] promise_id A reference for the promise that gets resolved or
43 * rejected depending upon the success or failure when creating the session. 58 * rejected depending upon the success or failure when creating the session.
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
101 * <code>PP_VARTYPE_ARRAYBUFFER</code> containing the license or other 116 * <code>PP_VARTYPE_ARRAYBUFFER</code> containing the license or other
102 * message for the given session ID. 117 * message for the given session ID.
103 */ 118 */
104 void UpdateSession( 119 void UpdateSession(
105 [in] PP_Instance instance, 120 [in] PP_Instance instance,
106 [in] uint32_t promise_id, 121 [in] uint32_t promise_id,
107 [in] PP_Var web_session_id, 122 [in] PP_Var web_session_id,
108 [in] PP_Var response); 123 [in] PP_Var response);
109 124
110 /** 125 /**
111 * Release the specified session and related resources. 126 * Get the key IDs for keys in the session that the CDM knows are currently
127 * usable to decrypt media data.
112 * 128 *
113 * @param[in] promise_id A reference for the promise that gets resolved or 129 * @param[in] promise_id A reference for the promise that gets resolved or
114 * rejected depending upon the success or failure of releasing the session. 130 * rejected depending upon the success or failure of obtaining the key IDs.
115 * 131 *
116 * @param[in] web_session_id A <code>PP_Var</code> of type 132 * @param[in] web_session_id A <code>PP_Var</code> of type
117 * <code>PP_VARTYPE_STRING</code> containing the web session ID of the session 133 * <code>PP_VARTYPE_STRING</code> containing the web session ID of the session
118 * to be released. 134 * to be queried.
119 * 135 *
120 */ 136 */
121 void ReleaseSession( 137 void GetUsableKeyIds(
122 [in] PP_Instance instance, 138 [in] PP_Instance instance,
123 [in] uint32_t promise_id, 139 [in] uint32_t promise_id,
124 [in] PP_Var web_session_id); 140 [in] PP_Var web_session_id);
141
142 /**
143 * Close the specified session and related resources.
144 *
145 * @param[in] promise_id A reference for the promise that gets resolved or
146 * rejected depending upon the success or failure of closing the session.
147 *
148 * @param[in] web_session_id A <code>PP_Var</code> of type
149 * <code>PP_VARTYPE_STRING</code> containing the web session ID of the session
150 * to be closed.
151 *
152 */
153 void CloseSession(
154 [in] PP_Instance instance,
155 [in] uint32_t promise_id,
156 [in] PP_Var web_session_id);
157
158 /**
159 * Remove stored data associated with this session.
160 *
161 * @param[in] promise_id A reference for the promise that gets resolved or
162 * rejected depending upon the success or failure of removing the session
163 * data.
164 *
165 * @param[in] web_session_id A <code>PP_Var</code> of type
166 * <code>PP_VARTYPE_STRING</code> containing the web session ID of the session
167 * to be removed.
168 *
169 */
170 void RemoveSession(
171 [in] PP_Instance instance,
172 [in] uint32_t promise_id,
173 [in] PP_Var web_session_id);
125 174
126 /** 175 /**
127 * Decrypts the block and returns the unencrypted block via 176 * Decrypts the block and returns the unencrypted block via
128 * <code>DeliverBlock()</code> on the 177 * <code>DeliverBlock()</code> on the
129 * <code>PPB_ContentDecryptor_Private</code> interface. The returned block 178 * <code>PPB_ContentDecryptor_Private</code> interface. The returned block
130 * contains encoded data. 179 * contains encoded data.
131 * 180 *
132 * @param[in] resource A <code>PP_Resource</code> corresponding to a 181 * @param[in] resource A <code>PP_Resource</code> corresponding to a
133 * <code>PPB_Buffer_Dev</code> resource that contains an encrypted data 182 * <code>PPB_Buffer_Dev</code> resource that contains an encrypted data
134 * block. 183 * block.
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after
248 * @param[in] encrypted_block_info A <code>PP_EncryptedBlockInfo</code> that 297 * @param[in] encrypted_block_info A <code>PP_EncryptedBlockInfo</code> that
249 * contains all auxiliary information needed for decryption of the 298 * contains all auxiliary information needed for decryption of the
250 * <code>encrypted_block</code>. 299 * <code>encrypted_block</code>.
251 */ 300 */
252 void DecryptAndDecode( 301 void DecryptAndDecode(
253 [in] PP_Instance instance, 302 [in] PP_Instance instance,
254 [in] PP_DecryptorStreamType decoder_type, 303 [in] PP_DecryptorStreamType decoder_type,
255 [in] PP_Resource encrypted_buffer, 304 [in] PP_Resource encrypted_buffer,
256 [in] PP_EncryptedBlockInfo encrypted_block_info); 305 [in] PP_EncryptedBlockInfo encrypted_block_info);
257 }; 306 };
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698