Pepper_56_C_interfaces
Pepper_56_C_interfaces
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
PP_EncryptedBlockInfo Struct Reference

#include <pp_content_decryptor.h>

Public Attributes

struct PP_DecryptTrackingInfo tracking_info
 
uint32_t data_size
 
uint8_t key_id [64]
 
uint32_t key_id_size
 
uint8_t iv [16]
 
uint32_t iv_size
 
struct
PP_DecryptSubsampleDescription 
subsamples [32]
 
uint32_t num_subsamples
 

Detailed Description

The PP_EncryptedBlockInfo struct contains all the information needed to decrypt an encrypted block.

Member Data Documentation

uint32_t PP_EncryptedBlockInfo::data_size

Size in bytes of data to be decrypted (data_offset included).

uint8_t PP_EncryptedBlockInfo::iv[16]

Initialization vector of the block to be decrypted.

uint8_t PP_EncryptedBlockInfo::key_id[64]

Key ID of the block to be decrypted.

For WebM the key ID can be as large as 2048 bytes in theory. But it's not used in current implementations. If we really need to support it, we should move key ID out as a separate parameter, e.g. as a PP_Var, or make the whole PP_EncryptedBlockInfo as a PP_Resource.

struct PP_DecryptSubsampleDescription PP_EncryptedBlockInfo::subsamples[32]

Subsample information of the block to be decrypted.

We need to have a fixed size of |subsamples| here. Choose 32 because it is sufficient for almost all real life scenarios. Note that in theory the number of subsamples could be larger than 32. If that happens, playback will fail.

struct PP_DecryptTrackingInfo PP_EncryptedBlockInfo::tracking_info

Information needed by the client to track the block to be decrypted.


The documentation for this struct was generated from the following file: