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

Side by Side Diff: ppapi/api/private/ppb_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>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 */
(...skipping 28 matching lines...) Expand all
39 * 39 *
40 * @param[in] web_session_id A <code>PP_Var</code> of type 40 * @param[in] web_session_id A <code>PP_Var</code> of type
41 * <code>PP_VARTYPE_STRING</code> containing the session's ID attribute. 41 * <code>PP_VARTYPE_STRING</code> containing the session's ID attribute.
42 */ 42 */
43 void PromiseResolvedWithSession( 43 void PromiseResolvedWithSession(
44 [in] PP_Instance instance, 44 [in] PP_Instance instance,
45 [in] uint32_t promise_id, 45 [in] uint32_t promise_id,
46 [in] PP_Var web_session_id); 46 [in] PP_Var web_session_id);
47 47
48 /** 48 /**
49 * A promise has been resolved by the CDM.
ddorwin 2014/08/22 20:49:21 These versions that have specific purposes should
jrummell 2014/08/25 21:54:37 Done.
50 *
51 * @param[in] promise_id Identifies the promise that the CDM resolved.
52 *
53 * @param[in] key_ids A <code>PP_Var</code> of type
54 * <code>PP_VARTYPE_ARRAY</code> containing the session's usable key IDs.
ddorwin 2014/08/22 20:49:21 Do we need to define the element type?
jrummell 2014/08/25 21:54:37 Not sure. I can't find any other IDL files returni
55 */
56 void PromiseResolvedWithKeyIds(
57 [in] PP_Instance instance,
58 [in] uint32_t promise_id,
59 [in] PP_Var key_ids);
ddorwin 2014/08/22 20:49:21 key_ids_array?
jrummell 2014/08/25 21:54:37 Done.
60
61 /**
49 * A promise has been rejected by the CDM due to an error. 62 * A promise has been rejected by the CDM due to an error.
50 * 63 *
51 * @param[in] promise_id Identifies the promise that the CDM rejected. 64 * @param[in] promise_id Identifies the promise that the CDM rejected.
52 * 65 *
53 * @param[in] exception_code A <code>PP_CdmExceptionCode</code> containing 66 * @param[in] exception_code A <code>PP_CdmExceptionCode</code> containing
54 * the exception code. 67 * the exception code.
55 * 68 *
56 * @param[in] system_code A system error code. 69 * @param[in] system_code A system error code.
57 * 70 *
58 * @param[in] error_description A <code>PP_Var</code> of type 71 * @param[in] error_description A <code>PP_Var</code> of type
(...skipping 14 matching lines...) Expand all
73 * on the <code>PPP_ContentDecryptor_Private</code> interface, the plugin 86 * on the <code>PPP_ContentDecryptor_Private</code> interface, the plugin
74 * must send a message containing the license request. 87 * must send a message containing the license request.
75 * 88 *
76 * Note that <code>SessionMessage()</code> can be used for purposes other than 89 * Note that <code>SessionMessage()</code> can be used for purposes other than
77 * responses to <code>CreateSession()</code> calls. See also the text 90 * responses to <code>CreateSession()</code> calls. See also the text
78 * in the comment for <code>SessionReady()</code>, which describes a sequence 91 * in the comment for <code>SessionReady()</code>, which describes a sequence
79 * of <code>UpdateSession()</code> and <code>SessionMessage()</code> calls 92 * of <code>UpdateSession()</code> and <code>SessionMessage()</code> calls
80 * required to prepare for decryption. 93 * required to prepare for decryption.
81 * 94 *
82 * @param[in] web_session_id A <code>PP_Var</code> of type 95 * @param[in] web_session_id A <code>PP_Var</code> of type
83 * <code>PP_VARTYPE_STRING</code> containing the session's ID attribute for 96 * <code>PP_VARTYPE_STRING</code> containing the session's ID attribute for
ddorwin 2014/08/22 20:49:21 This sentence structure/description is appropriate
jrummell 2014/08/25 21:54:37 Done.
84 * which the message is intended. 97 * which the message is intended.
85 * 98 *
86 * @param[in] message A <code>PP_Var</code> of type 99 * @param[in] message A <code>PP_Var</code> of type
87 * <code>PP_VARTYPE_ARRAY_BUFFER</code> that contains the message. 100 * <code>PP_VARTYPE_ARRAY_BUFFER</code> that contains the message.
88 * 101 *
89 * @param[in] destination_url A <code>PP_Var</code> of type 102 * @param[in] destination_url A <code>PP_Var</code> of type
90 * <code>PP_VARTYPE_STRING</code> containing the destination URL for the 103 * <code>PP_VARTYPE_STRING</code> containing the destination URL for the
91 * message. 104 * message.
92 */ 105 */
93 void SessionMessage( 106 void SessionMessage(
94 [in] PP_Instance instance, 107 [in] PP_Instance instance,
95 [in] PP_Var web_session_id, 108 [in] PP_Var web_session_id,
96 [in] PP_Var message, 109 [in] PP_Var message,
97 [in] PP_Var destination_url); 110 [in] PP_Var destination_url);
98 111
99 /** 112 /**
113 * The keys for a session have changed.
114 *
115 * @param[in] web_session_id A <code>PP_Var</code> of type
116 * <code>PP_VARTYPE_STRING</code> containing the session's ID attribute of
ddorwin 2014/08/22 20:49:21 ditto here and below.
jrummell 2014/08/25 21:54:37 Done.
117 * the session that has a change in keys.
118 *
119 * @param[in] has_additional_usable_key A <code>PP_Bool</code> indicating if
120 * a new usable key has been added.
121 */
122 void SessionKeysChange(
123 [in] PP_Instance instance,
124 [in] PP_Var web_session_id,
125 [in] PP_Bool has_additional_usable_key);
126
127 /**
128 * The expiration time for a session has changed.
129 *
130 * @param[in] web_session_id A <code>PP_Var</code> of type
131 * <code>PP_VARTYPE_STRING</code> containing the session's ID attribute of
132 * the session that has a new expiration time.
133 *
134 * @param[in] new_expiry_time A <code>PP_Time</code> indicating the new
135 * expiry time of the session. The value is defined as the number of seconds
136 * since the Epoch (00:00:00 UTC, January 1, 1970).
137 */
138 void SessionExpirationChange(
139 [in] PP_Instance instance,
140 [in] PP_Var web_session_id,
141 [in] PP_Time new_expiry_time);
142
143 /**
100 * The session is now ready to decrypt the media stream. 144 * The session is now ready to decrypt the media stream.
101 * 145 *
102 * Note: The above describes the most simple case. Depending on the key 146 * Note: The above describes the most simple case. Depending on the key
103 * system, a series of <code>SessionMessage()</code> calls from the CDM will 147 * system, a series of <code>SessionMessage()</code> calls from the CDM will
104 * be sent to the browser, and then on to the web application. The web 148 * be sent to the browser, and then on to the web application. The web
105 * application must then provide more data to the CDM by directing the browser 149 * application must then provide more data to the CDM by directing the browser
106 * to pass the data to the CDM via calls to <code>UpdateSession()</code> on 150 * to pass the data to the CDM via calls to <code>UpdateSession()</code> on
107 * the <code>PPP_ContentDecryptor_Private</code> interface. 151 * the <code>PPP_ContentDecryptor_Private</code> interface.
108 * The CDM must call <code>SessionReady()</code> when the sequence is 152 * The CDM must call <code>SessionReady()</code> when the sequence is
109 * completed, and, in response, the browser must notify the web application. 153 * completed, and, in response, the browser must notify the web application.
(...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after
282 * 326 *
283 * @param[in] decrypted_sample_info A <code>PP_DecryptedSampleInfo</code> that 327 * @param[in] decrypted_sample_info A <code>PP_DecryptedSampleInfo</code> that
284 * contains the tracking info and result code associated with the decrypted 328 * contains the tracking info and result code associated with the decrypted
285 * samples. 329 * samples.
286 */ 330 */
287 void DeliverSamples( 331 void DeliverSamples(
288 [in] PP_Instance instance, 332 [in] PP_Instance instance,
289 [in] PP_Resource audio_frames, 333 [in] PP_Resource audio_frames,
290 [in] PP_DecryptedSampleInfo decrypted_sample_info); 334 [in] PP_DecryptedSampleInfo decrypted_sample_info);
291 }; 335 };
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698