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

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

Issue 11477002: Fix in process PPAPI decryption. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Run generator.py on a linux box, and cross fingers...? Created 8 years 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 | Annotate | Revision Log
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 115 matching lines...) Expand 10 before | Expand all | Expand 10 after
126 [in] PP_Var key_system, 126 [in] PP_Var key_system,
127 [in] PP_Var session_id, 127 [in] PP_Var session_id,
128 [in] int32_t media_error, 128 [in] int32_t media_error,
129 [in] int32_t system_code); 129 [in] int32_t system_code);
130 130
131 /** 131 /**
132 * Called after the <code>Decrypt()</code> method on the 132 * Called after the <code>Decrypt()</code> method on the
133 * <code>PPP_ContentDecryptor_Private</code> interface completes to 133 * <code>PPP_ContentDecryptor_Private</code> interface completes to
134 * deliver decrypted_block to the browser for decoding and rendering. 134 * deliver decrypted_block to the browser for decoding and rendering.
135 * 135 *
136 * The plugin must not hold a reference to the encrypted buffer resource
137 * provided to <code>Decrypt()</code> when it calls this method. The browser
138 * will reuse the buffer in a subsequent <code>Decrypt()</code> call.
139 *
136 * @param[in] decrypted_block A <code>PP_Resource</code> corresponding to a 140 * @param[in] decrypted_block A <code>PP_Resource</code> corresponding to a
137 * <code>PPB_Buffer_Dev</code> resource that contains a decrypted data 141 * <code>PPB_Buffer_Dev</code> resource that contains a decrypted data
138 * block. 142 * block.
139 * 143 *
140 * @param[in] decrypted_block_info A <code>PP_DecryptedBlockInfo</code> that 144 * @param[in] decrypted_block_info A <code>PP_DecryptedBlockInfo</code> that
141 * contains the result code and tracking info associated with the 145 * contains the result code and tracking info associated with the
142 * <code>decrypted_block</code>. 146 * <code>decrypted_block</code>.
143 */ 147 */
144 void DeliverBlock( 148 void DeliverBlock(
145 [in] PP_Instance instance, 149 [in] PP_Instance instance,
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
200 void DecoderResetDone( 204 void DecoderResetDone(
201 [in] PP_Instance instance, 205 [in] PP_Instance instance,
202 [in] PP_DecryptorStreamType decoder_type, 206 [in] PP_DecryptorStreamType decoder_type,
203 [in] uint32_t request_id); 207 [in] uint32_t request_id);
204 208
205 /** 209 /**
206 * Called after the <code>DecryptAndDecode()</code> method on the 210 * Called after the <code>DecryptAndDecode()</code> method on the
207 * <code>PPP_ContentDecryptor_Private</code> interface completes to deliver 211 * <code>PPP_ContentDecryptor_Private</code> interface completes to deliver
208 * a decrypted and decoded video frame to the browser for rendering. 212 * a decrypted and decoded video frame to the browser for rendering.
209 * 213 *
214 * The plugin must not hold a reference to the encrypted buffer resource
215 * provided to <code>DecryptAndDecode()</code> when it calls this method. The
216 * browser will reuse the buffer in a subsequent
217 * <code>DecryptAndDecode()</code> call.
218 *
210 * @param[in] decrypted_frame A <code>PP_Resource</code> corresponding to a 219 * @param[in] decrypted_frame A <code>PP_Resource</code> corresponding to a
211 * <code>PPB_Buffer_Dev</code> resource that contains a video frame. 220 * <code>PPB_Buffer_Dev</code> resource that contains a video frame.
212 * 221 *
213 * @param[in] decrypted_frame_info A <code>PP_DecryptedFrameInfo</code> that 222 * @param[in] decrypted_frame_info A <code>PP_DecryptedFrameInfo</code> that
214 * contains the result code, tracking info, and buffer format associated with 223 * contains the result code, tracking info, and buffer format associated with
215 * <code>decrypted_frame</code>. 224 * <code>decrypted_frame</code>.
216 */ 225 */
217 void DeliverFrame( 226 void DeliverFrame(
218 [in] PP_Instance instance, 227 [in] PP_Instance instance,
219 [in] PP_Resource decrypted_frame, 228 [in] PP_Resource decrypted_frame,
220 [in] PP_DecryptedFrameInfo decrypted_frame_info); 229 [in] PP_DecryptedFrameInfo decrypted_frame_info);
221 230
222 /** 231 /**
223 * Called after the <code>DecryptAndDecode()</code> method on the 232 * Called after the <code>DecryptAndDecode()</code> method on the
224 * <code>PPP_ContentDecryptor_Private</code> interface completes to 233 * <code>PPP_ContentDecryptor_Private</code> interface completes to deliver
225 * deliver a buffer of decrypted and decoded audio samples to the browser for 234 * a buffer of decrypted and decoded audio samples to the browser for
226 * rendering. 235 * rendering.
227 * 236 *
237 * The plugin must not hold a reference to the encrypted buffer resource
238 * provided to <code>DecryptAndDecode()</code> when it calls this method. The
239 * browser will reuse the buffer in a subsequent
240 * <code>DecryptAndDecode()</code> call.
241 *
228 * <code>audio_frames</code> can contain multiple audio output buffers. Each 242 * <code>audio_frames</code> can contain multiple audio output buffers. Each
229 * buffer is serialized in this format: 243 * buffer is serialized in this format:
230 * 244 *
231 * |<------------------- serialized audio buffer ------------------->| 245 * |<------------------- serialized audio buffer ------------------->|
232 * | int64_t timestamp | int64_t length | length bytes of audio data | 246 * | int64_t timestamp | int64_t length | length bytes of audio data |
233 * 247 *
234 * For example, with three audio output buffers, |audio_frames| will look 248 * For example, with three audio output buffers, |audio_frames| will look
235 * like this: 249 * like this:
236 * 250 *
237 * |<---------------- audio_frames ------------------>| 251 * |<---------------- audio_frames ------------------>|
238 * | audio buffer 0 | audio buffer 1 | audio buffer 2 | 252 * | audio buffer 0 | audio buffer 1 | audio buffer 2 |
239 * 253 *
240 * @param[in] audio_frames A <code>PP_Resource</code> corresponding to a 254 * @param[in] audio_frames A <code>PP_Resource</code> corresponding to a
241 * <code>PPB_Buffer_Dev</code> resource that contains a decrypted buffer 255 * <code>PPB_Buffer_Dev</code> resource that contains a decrypted buffer
242 * of decoded audio samples. 256 * of decoded audio samples.
243 * 257 *
244 * @param[in] decrypted_block_info A <code>PP_DecryptedBlockInfo</code> that 258 * @param[in] decrypted_block_info A <code>PP_DecryptedBlockInfo</code> that
245 * contains the tracking info and result code associated with the 259 * contains the tracking info and result code associated with the
246 * <code>decrypted_block</code>. 260 * <code>decrypted_block</code>.
247 */ 261 */
248 void DeliverSamples( 262 void DeliverSamples(
249 [in] PP_Instance instance, 263 [in] PP_Instance instance,
250 [in] PP_Resource audio_frames, 264 [in] PP_Resource audio_frames,
251 [in] PP_DecryptedBlockInfo decrypted_block_info); 265 [in] PP_DecryptedBlockInfo decrypted_block_info);
252 }; 266 };
OLDNEW
« no previous file with comments | « no previous file | ppapi/c/private/ppb_content_decryptor_private.h » ('j') | ppapi/proxy/ppp_content_decryptor_private_proxy.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698