Pepper_31_C_interfaces
Public Attributes | List of all members
PPP_ContentDecryptor_Samsung_0_6 Struct Reference

#include <ppp_content_decryptor_samsung.h>

Collaboration diagram for PPP_ContentDecryptor_Samsung_0_6:
Collaboration graph

Public Attributes

void(* GenerateKeyRequest )(PP_Instance instance, struct PP_Var key_system, struct PP_Var type, struct PP_Var init_data)
 
void(* AddKey )(PP_Instance instance, struct PP_Var session_id, struct PP_Var key, struct PP_Var init_data)
 
void(* CancelKeyRequest )(PP_Instance instance, struct PP_Var session_id)
 
void(* Decrypt )(PP_Instance instance, PP_Resource encrypted_block, const struct PP_EncryptedBlockInfo *encrypted_block_info)
 

Detailed Description

PPP_ContentDecryptor_Samsung structure contains the function pointers the decryption plugin must implement to provide services needed by the browser. This interface provides the plugin side support for the Content Decryption Module (CDM) for v0.1 of the proposed Encrypted Media Extensions: http://goo.gl/rbdnR

Definition at line 51 of file ppp_content_decryptor_samsung.h.

Member Data Documentation

void(* PPP_ContentDecryptor_Samsung_0_6::AddKey)(PP_Instance instance, struct PP_Var session_id, struct PP_Var key, struct PP_Var init_data)

Provides a key or license to the decryptor for decrypting media data.

When the CDM needs more information to complete addition of the key it will call KeyMessage() on the PPB_ContentDecryptor_Samsung interface, which the browser passes to the application. When the key is ready to use, the CDM must call call KeyAdded() on the PPB_ContentDecryptor_Samsung interface, and the browser must notify the web application.

Parameters
[in]session_idA PP_Var of type PP_VARTYPE_STRING containing the session ID.
[in]keyA PP_Var of type PP_VARTYPE_ARRAYBUFFER containing the decryption key, license, or other message for the given session ID.
[in]init_dataA PP_Var of type PP_VARTYPE_ARRAYBUFFER containing container specific initialization data.

Definition at line 98 of file ppp_content_decryptor_samsung.h.

void(* PPP_ContentDecryptor_Samsung_0_6::CancelKeyRequest)(PP_Instance instance, struct PP_Var session_id)

Cancels a pending key request for the specified session ID.

Parameters
[in]session_idA PP_Var of type PP_VARTYPE_STRING containing the session ID.

Definition at line 108 of file ppp_content_decryptor_samsung.h.

void(* PPP_ContentDecryptor_Samsung_0_6::Decrypt)(PP_Instance instance, PP_Resource encrypted_block, const struct PP_EncryptedBlockInfo *encrypted_block_info)

Decrypts the block and returns the unencrypted block via DeliverBlock() on the PPB_ContentDecryptor_Samsung interface. The returned block contains encoded data.

Parameters
[in]resourceA PP_Resource corresponding to a PPB_Buffer_Dev resource that contains an encrypted data block.
[in]encrypted_block_infoA PP_EncryptedBlockInfo that contains all auxiliary information needed for decryption of the encrypted_block.

Definition at line 123 of file ppp_content_decryptor_samsung.h.

void(* PPP_ContentDecryptor_Samsung_0_6::GenerateKeyRequest)(PP_Instance instance, struct PP_Var key_system, struct PP_Var type, struct PP_Var init_data)

Generates a key request. key_system specifies the key or licensing system to use. type contains the MIME type of init_data. init_data is a data buffer containing data for use in generating the request.

Note: GenerateKeyRequest() must create the session ID used in other methods on this interface. The session ID must be provided to the browser by the CDM via KeyMessage() on the PPB_ContentDecryptor_Samsung interface.

Parameters
[in]key_systemA PP_Var of type PP_VARTYPE_STRING containing the name of the key system.
[in]typeA PP_Var of type PP_VARTYPE_STRING containing the MIME type for init_data.
[in]init_dataA PP_Var of type PP_VARTYPE_ARRAYBUFFER containing container specific initialization data.

Definition at line 72 of file ppp_content_decryptor_samsung.h.


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