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

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

Issue 24192004: Changes to the EME Pepper API (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 7 years, 3 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
« no previous file with comments | « media/cdm/ppapi/cdm_wrapper.cc ('k') | ppapi/api/private/ppp_content_decryptor_private.idl » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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>PPB_ContentDecryptor_Private</code> 7 * This file defines the <code>PPB_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 */
11 11
12 [generate_thunk] 12 [generate_thunk]
13 13
14 label Chrome { 14 label Chrome {
15 M24 = 0.6 15 M31 = 0.7
16 }; 16 };
17 17
18 /** 18 /**
19 * <code>PPB_ContentDecryptor_Private</code> structure contains the function 19 * <code>PPB_ContentDecryptor_Private</code> structure contains the function
20 * pointers the browser must implement to support plugins implementing the 20 * pointers the browser must implement to support plugins implementing the
21 * <code>PPP_ContentDecryptor_Private</code> interface. This interface provides 21 * <code>PPP_ContentDecryptor_Private</code> interface. This interface provides
22 * browser side support for the Content Decryption Module (CDM) for v0.1 of the 22 * browser side support for the Content Decryption Module (CDM) for v0.1 of the
23 * proposed Encrypted Media Extensions: http://goo.gl/rbdnR 23 * proposed Encrypted Media Extensions: http://goo.gl/rbdnR
24 */ 24 */
25 interface PPB_ContentDecryptor_Private { 25 interface PPB_ContentDecryptor_Private {
26 /** 26 /**
27 * The decryptor requires a key that has not been provided.
28 *
29 * Sent when the decryptor encounters encrypted content, but it does not have
30 * the key required to decrypt the data. The plugin will call this method in
31 * response to a call to the <code>Decrypt()</code> method on the
32 * <code>PPP_ContentDecryptor_Private<code> interface.
33 *
34 * The browser must notify the application that a key is needed, and, in
35 * response, the web application must direct the browser to call
36 * <code>AddKey()</code> on the <code>PPP_ContentDecryptor_Private</code>
37 * interface.
38 *
39 * @param[in] key_system A <code>PP_Var</code> of type
40 * <code>PP_VARTYPE_STRING</code> containing the name of the key system.
41 *
42 * @param[in] session_id A <code>PP_Var</code> of type
43 * <code>PP_VARTYPE_STRING</code> containing the session ID.
44 *
45 * @param[in] init_data A <code>PP_Var</code> of type
46 * <code>PP_VARTYPE_ARRAY_BUFFER</code> containing container-specific
47 * initialization data.
48 */
49 void NeedKey(
50 [in] PP_Instance instance,
51 [in] PP_Var key_system,
52 [in] PP_Var session_id,
53 [in] PP_Var init_data);
54
55 /**
56 * A key has been added as the result of a call to the <code>AddKey()</code> 27 * A key has been added as the result of a call to the <code>AddKey()</code>
57 * method on the <code>PPP_ContentDecryptor_Private</code> interface. 28 * method on the <code>PPP_ContentDecryptor_Private</code> interface.
58 * 29 *
59 * Note: The above describes the most simple case. Depending on the key 30 * Note: The above describes the most simple case. Depending on the key
60 * system, a series of <code>KeyMessage()</code> calls from the CDM will be 31 * system, a series of <code>KeyMessage()</code> calls from the CDM will be
61 * sent to the browser, and then on to the web application. The web 32 * sent to the browser, and then on to the web application. The web
62 * application must then provide more data to the CDM by directing the browser 33 * application must then provide more data to the CDM by directing the browser
63 * to pass the data to the CDM via calls to <code>AddKey()</code> on the 34 * to pass the data to the CDM via calls to <code>AddKey()</code> on the
64 * <code>PPP_ContentDecryptor_Private</code> interface. 35 * <code>PPP_ContentDecryptor_Private</code> interface.
65 * The CDM must call <code>KeyAdded()</code> when the sequence is completed, 36 * The CDM must call <code>KeyAdded()</code> when the sequence is completed,
(...skipping 193 matching lines...) Expand 10 before | Expand all | Expand 10 after
259 * 230 *
260 * @param[in] decrypted_block_info A <code>PP_DecryptedBlockInfo</code> that 231 * @param[in] decrypted_block_info A <code>PP_DecryptedBlockInfo</code> that
261 * contains the tracking info and result code associated with the 232 * contains the tracking info and result code associated with the
262 * <code>decrypted_block</code>. 233 * <code>decrypted_block</code>.
263 */ 234 */
264 void DeliverSamples( 235 void DeliverSamples(
265 [in] PP_Instance instance, 236 [in] PP_Instance instance,
266 [in] PP_Resource audio_frames, 237 [in] PP_Resource audio_frames,
267 [in] PP_DecryptedBlockInfo decrypted_block_info); 238 [in] PP_DecryptedBlockInfo decrypted_block_info);
268 }; 239 };
OLDNEW
« no previous file with comments | « media/cdm/ppapi/cdm_wrapper.cc ('k') | ppapi/api/private/ppp_content_decryptor_private.idl » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698