Pepper_56_C_interfaces
Pepper_56_C_interfaces
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
pp_content_decryptor.h
Go to the documentation of this file.
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
3  * found in the LICENSE file.
4  */
5 
6 /* From private/pp_content_decryptor.idl modified Wed Nov 8 11:16:43 2017. */
7 
8 #ifndef PPAPI_C_PRIVATE_PP_CONTENT_DECRYPTOR_H_
9 #define PPAPI_C_PRIVATE_PP_CONTENT_DECRYPTOR_H_
10 
11 #include "ppapi/c/pp_macros.h"
12 #include "ppapi/c/pp_stdint.h"
13 
32  uint32_t request_id;
43  uint32_t buffer_id;
50  int64_t timestamp;
51 };
52 PP_COMPILE_ASSERT_STRUCT_SIZE_IN_BYTES(PP_DecryptTrackingInfo, 16);
53 
84  uint32_t clear_bytes;
88  uint32_t cipher_bytes;
89 };
90 PP_COMPILE_ASSERT_STRUCT_SIZE_IN_BYTES(PP_DecryptSubsampleDescription, 8);
91 
104  uint32_t data_size;
114  uint8_t key_id[64];
115  uint32_t key_id_size;
119  uint8_t iv[16];
120  uint32_t iv_size;
130  uint32_t num_subsamples;
131 };
132 PP_COMPILE_ASSERT_STRUCT_SIZE_IN_BYTES(PP_EncryptedBlockInfo, 368);
144 typedef enum {
145  PP_DECRYPTEDFRAMEFORMAT_UNKNOWN = 0,
146  PP_DECRYPTEDFRAMEFORMAT_YV12 = 1,
147  PP_DECRYPTEDFRAMEFORMAT_I420 = 2
149 PP_COMPILE_ASSERT_SIZE_IN_BYTES(PP_DecryptedFrameFormat, 4);
150 
154 typedef enum {
155  PP_DECRYPTEDSAMPLEFORMAT_UNKNOWN = 0,
156  PP_DECRYPTEDSAMPLEFORMAT_U8 = 1,
157  PP_DECRYPTEDSAMPLEFORMAT_S16 = 2,
158  PP_DECRYPTEDSAMPLEFORMAT_S32 = 3,
159  PP_DECRYPTEDSAMPLEFORMAT_F32 = 4,
160  PP_DECRYPTEDSAMPLEFORMAT_PLANAR_S16 = 5,
161  PP_DECRYPTEDSAMPLEFORMAT_PLANAR_F32 = 6
163 PP_COMPILE_ASSERT_SIZE_IN_BYTES(PP_DecryptedSampleFormat, 4);
164 
169 typedef enum {
181 PP_COMPILE_ASSERT_SIZE_IN_BYTES(PP_DecryptResult, 4);
203  uint32_t data_size;
208 };
209 PP_COMPILE_ASSERT_STRUCT_SIZE_IN_BYTES(PP_DecryptedBlockInfo, 24);
222 typedef enum {
223  PP_DECRYPTEDFRAMEPLANES_Y = 0,
224  PP_DECRYPTEDFRAMEPLANES_U = 1,
225  PP_DECRYPTEDFRAMEPLANES_V = 2
227 PP_COMPILE_ASSERT_SIZE_IN_BYTES(PP_DecryptedFramePlanes, 4);
253  int32_t plane_offsets[3];
257  int32_t strides[3];
261  int32_t width;
265  int32_t height;
270 };
271 PP_COMPILE_ASSERT_STRUCT_SIZE_IN_BYTES(PP_DecryptedFrameInfo, 56);
272 
290  uint32_t data_size;
295  uint32_t padding;
300 };
301 PP_COMPILE_ASSERT_STRUCT_SIZE_IN_BYTES(PP_DecryptedSampleInfo, 32);
313 typedef enum {
314  PP_AUDIOCODEC_UNKNOWN = 0,
315  PP_AUDIOCODEC_VORBIS = 1,
316  PP_AUDIOCODEC_AAC = 2
317 } PP_AudioCodec;
318 PP_COMPILE_ASSERT_SIZE_IN_BYTES(PP_AudioCodec, 4);
343  int32_t channel_count;
357  uint32_t request_id;
358 };
359 PP_COMPILE_ASSERT_STRUCT_SIZE_IN_BYTES(PP_AudioDecoderConfig, 20);
371 typedef enum {
372  PP_VIDEOCODEC_UNKNOWN = 0,
373  PP_VIDEOCODEC_VP8 = 1,
374  PP_VIDEOCODEC_H264 = 2,
375  PP_VIDEOCODEC_VP9 = 3
376 } PP_VideoCodec;
377 PP_COMPILE_ASSERT_SIZE_IN_BYTES(PP_VideoCodec, 4);
378 
384 typedef enum {
385  PP_VIDEOCODECPROFILE_UNKNOWN = 0,
386  PP_VIDEOCODECPROFILE_NOT_NEEDED = 1,
387  PP_VIDEOCODECPROFILE_H264_BASELINE = 2,
388  PP_VIDEOCODECPROFILE_H264_MAIN = 3,
389  PP_VIDEOCODECPROFILE_H264_EXTENDED = 4,
390  PP_VIDEOCODECPROFILE_H264_HIGH = 5,
391  PP_VIDEOCODECPROFILE_H264_HIGH_10 = 6,
392  PP_VIDEOCODECPROFILE_H264_HIGH_422 = 7,
393  PP_VIDEOCODECPROFILE_H264_HIGH_444_PREDICTIVE = 8
395 PP_COMPILE_ASSERT_SIZE_IN_BYTES(PP_VideoCodecProfile, 4);
428  int32_t width;
432  int32_t height;
438  uint32_t request_id;
439 };
440 PP_COMPILE_ASSERT_STRUCT_SIZE_IN_BYTES(PP_VideoDecoderConfig, 24);
452 typedef enum {
453  PP_DECRYPTORSTREAMTYPE_AUDIO = 0,
454  PP_DECRYPTORSTREAMTYPE_VIDEO = 1
456 PP_COMPILE_ASSERT_SIZE_IN_BYTES(PP_DecryptorStreamType, 4);
457 
461 typedef enum {
462  PP_SESSIONTYPE_TEMPORARY = 0,
463  PP_SESSIONTYPE_PERSISTENT_LICENSE = 1,
464  PP_SESSIONTYPE_PERSISTENT_RELEASE = 2
466 PP_COMPILE_ASSERT_SIZE_IN_BYTES(PP_SessionType, 4);
467 
471 typedef enum {
472  PP_INITDATATYPE_CENC = 0,
473  PP_INITDATATYPE_KEYIDS = 1,
474  PP_INITDATATYPE_WEBM = 2
476 PP_COMPILE_ASSERT_SIZE_IN_BYTES(PP_InitDataType, 4);
477 
481 typedef enum {
482  PP_CDMEXCEPTIONCODE_NOTSUPPORTEDERROR = 1,
483  PP_CDMEXCEPTIONCODE_INVALIDSTATEERROR = 2,
484  PP_CDMEXCEPTIONCODE_INVALIDACCESSERROR = 3,
485  PP_CDMEXCEPTIONCODE_QUOTAEXCEEDEDERROR = 4,
486  PP_CDMEXCEPTIONCODE_UNKNOWNERROR = 5,
487  PP_CDMEXCEPTIONCODE_CLIENTERROR = 6,
488  PP_CDMEXCEPTIONCODE_OUTPUTERROR = 7
490 PP_COMPILE_ASSERT_SIZE_IN_BYTES(PP_CdmExceptionCode, 4);
491 
495 typedef enum {
496  PP_CDMMESSAGETYPE_LICENSE_REQUEST = 0,
497  PP_CDMMESSAGETYPE_LICENSE_RENEWAL = 1,
498  PP_CDMMESSAGETYPE_LICENSE_RELEASE = 2
500 PP_COMPILE_ASSERT_SIZE_IN_BYTES(PP_CdmMessageType, 4);
501 
505 typedef enum {
506  PP_CDMKEYSTATUS_USABLE = 0,
507  PP_CDMKEYSTATUS_INVALID = 1,
508  PP_CDMKEYSTATUS_EXPIRED = 2,
509  PP_CDMKEYSTATUS_OUTPUTRESTRICTED = 3,
510  PP_CDMKEYSTATUS_OUTPUTDOWNSCALED = 4,
511  PP_CDMKEYSTATUS_STATUSPENDING = 5,
512  PP_CDMKEYSTATUS_RELEASED = 6
514 PP_COMPILE_ASSERT_SIZE_IN_BYTES(PP_CdmKeyStatus, 4);
531  uint8_t key_id[512];
532  uint32_t key_id_size;
540  uint32_t system_code;
541 };
542 PP_COMPILE_ASSERT_STRUCT_SIZE_IN_BYTES(PP_KeyInformation, 524);
547 #endif /* PPAPI_C_PRIVATE_PP_CONTENT_DECRYPTOR_H_ */
548 
Definition: pp_content_decryptor.h:80
int32_t samples_per_second
Definition: pp_content_decryptor.h:351
uint8_t key_id[512]
Definition: pp_content_decryptor.h:531
PP_DecryptedFrameFormat format
Definition: pp_content_decryptor.h:424
int32_t bits_per_channel
Definition: pp_content_decryptor.h:347
PP_DecryptedFrameFormat
Definition: pp_content_decryptor.h:144
PP_VideoCodec
Definition: pp_content_decryptor.h:371
PP_DecryptorStreamType
Definition: pp_content_decryptor.h:452
struct PP_DecryptTrackingInfo tracking_info
Definition: pp_content_decryptor.h:207
struct PP_DecryptTrackingInfo tracking_info
Definition: pp_content_decryptor.h:299
int32_t height
Definition: pp_content_decryptor.h:432
int32_t channel_count
Definition: pp_content_decryptor.h:343
PP_VideoCodecProfile profile
Definition: pp_content_decryptor.h:420
struct PP_DecryptSubsampleDescription subsamples[32]
Definition: pp_content_decryptor.h:129
PP_CdmKeyStatus
Definition: pp_content_decryptor.h:505
uint32_t buffer_id
Definition: pp_content_decryptor.h:43
PP_CdmExceptionCode
Definition: pp_content_decryptor.h:481
PP_VideoCodecProfile
Definition: pp_content_decryptor.h:384
PP_DecryptResult result
Definition: pp_content_decryptor.h:245
uint32_t data_size
Definition: pp_content_decryptor.h:104
uint8_t iv[16]
Definition: pp_content_decryptor.h:119
Definition: pp_content_decryptor.h:194
uint32_t data_size
Definition: pp_content_decryptor.h:203
PP_SessionType
Definition: pp_content_decryptor.h:461
Definition: pp_content_decryptor.h:335
uint32_t request_id
Definition: pp_content_decryptor.h:357
Definition: pp_content_decryptor.h:412
int32_t width
Definition: pp_content_decryptor.h:261
Definition: pp_content_decryptor.h:26
PP_CdmKeyStatus key_status
Definition: pp_content_decryptor.h:536
uint32_t request_id
Definition: pp_content_decryptor.h:32
Definition: pp_content_decryptor.h:171
struct PP_DecryptTrackingInfo tracking_info
Definition: pp_content_decryptor.h:100
PP_DecryptResult result
Definition: pp_content_decryptor.h:282
PP_DecryptedSampleFormat format
Definition: pp_content_decryptor.h:286
PP_CdmMessageType
Definition: pp_content_decryptor.h:495
int32_t height
Definition: pp_content_decryptor.h:265
uint32_t cipher_bytes
Definition: pp_content_decryptor.h:88
PP_InitDataType
Definition: pp_content_decryptor.h:471
PP_DecryptedFrameFormat format
Definition: pp_content_decryptor.h:249
Definition: pp_content_decryptor.h:177
Definition: pp_content_decryptor.h:278
int32_t strides[3]
Definition: pp_content_decryptor.h:257
int32_t plane_offsets[3]
Definition: pp_content_decryptor.h:253
uint32_t request_id
Definition: pp_content_decryptor.h:438
Definition: pp_content_decryptor.h:179
Definition: pp_content_decryptor.h:175
PP_AudioCodec
Definition: pp_content_decryptor.h:313
uint32_t clear_bytes
Definition: pp_content_decryptor.h:84
uint8_t key_id[64]
Definition: pp_content_decryptor.h:114
Definition: pp_content_decryptor.h:527
PP_VideoCodec codec
Definition: pp_content_decryptor.h:416
uint32_t padding
Definition: pp_content_decryptor.h:295
struct PP_DecryptTrackingInfo tracking_info
Definition: pp_content_decryptor.h:269
PP_DecryptResult
Definition: pp_content_decryptor.h:169
uint32_t system_code
Definition: pp_content_decryptor.h:540
int32_t width
Definition: pp_content_decryptor.h:428
Definition: pp_content_decryptor.h:241
Definition: pp_content_decryptor.h:173
PP_DecryptResult result
Definition: pp_content_decryptor.h:198
int64_t timestamp
Definition: pp_content_decryptor.h:50
PP_DecryptedFramePlanes
Definition: pp_content_decryptor.h:222
PP_DecryptedSampleFormat
Definition: pp_content_decryptor.h:154
uint32_t data_size
Definition: pp_content_decryptor.h:290
Definition: pp_content_decryptor.h:96
PP_AudioCodec codec
Definition: pp_content_decryptor.h:339