![]() |
libgpac
Documentation of the core library of GPAC
|
#include <gpac/filters.h>#include <gpac/constants.h>#include <gpac/crypt_tools.h>#include <gpac/crypt.h>#include <gpac/base_coding.h>#include <gpac/download.h>#include <gpac/network.h>#include <gpac/internal/media_dev.h>Data Structures | |
| struct | CENCDecKey |
| struct | GF_CENCDecStream |
| struct | GF_CENCDecCtx |
| struct | ClearKeyParam |
Macros | |
| #define | CK_MAX_BUF 1000 |
| #define | OFFS(_n) #_n, offsetof(GF_CENCDecCtx, _n) |
Enumerations | |
| enum | { DECRYPT_STATE_ERROR =1 , DECRYPT_STATE_SETUP , DECRYPT_STATE_PLAY } |
| enum | { DECRYPT_FULL =0 , DECRYPT_NOKEY , DECRYPT_SKIP } |
Functions | |
| static GF_Err | cenc_dec_setup_isma (GF_CENCDecCtx *ctx, GF_CENCDecStream *cstr, u32 scheme_type, u32 scheme_version, const char *scheme_uri, const char *kms_uri) |
| static GF_Err | cenc_dec_access_isma (GF_CENCDecCtx *ctx, GF_CENCDecStream *cstr, Bool is_play) |
| static GF_Err | cenc_dec_process_isma (GF_CENCDecCtx *ctx, GF_CENCDecStream *cstr, GF_FilterPacket *in_pck) |
| static GF_Err | cenc_dec_load_keys (GF_CENCDecCtx *ctx, GF_CENCDecStream *cstr) |
| static void | ck_http_io (void *usr_cbk, GF_NETIO_Parameter *par) |
| static GF_Err | rfmt_dec_b64 (u8 *data, u8 *output, u32 osize) |
| static GF_Err | cenc_dec_set_clearkey (GF_CENCDecCtx *ctx, GF_CENCDecStream *cstr, char *ck_url, u8 *ck_kid) |
| static GF_Err | cenc_dec_set_hls_key (GF_CENCDecCtx *ctx, GF_CENCDecStream *cstr, char *key_url, u8 *key_IV) |
| static GF_Err | cenc_dec_push_iv (GF_CENCDecStream *cstr, u32 key_idx, u8 *IV, u32 iv_size, u32 const_iv_size, const u8 *const_iv) |
| static GF_Err | cenc_dec_load_pssh (GF_CENCDecCtx *ctx, GF_CENCDecStream *cstr, const GF_PropertyValue *pssh_prop, Bool is_pck_pssh, const GF_PropertyValue *cinfo_prop) |
| static GF_Err | cenc_dec_setup_cenc (GF_CENCDecCtx *ctx, GF_CENCDecStream *cstr, u32 scheme_type, u32 scheme_version, const char *scheme_uri, const char *kms_uri) |
| static GF_Err | cenc_dec_hls_saes (GF_CENCDecCtx *ctx, GF_CENCDecStream *cstr, u32 scheme_type, u32 scheme_version, const char *scheme_uri, const char *kms_uri) |
| static GF_Err | cenc_dec_setup_adobe (GF_CENCDecCtx *ctx, GF_CENCDecStream *cstr, u32 scheme_type, u32 scheme_version, const char *scheme_uri, const char *kms_uri) |
| static GF_Err | cenc_dec_access_cenc (GF_CENCDecCtx *ctx, GF_CENCDecStream *cstr, Bool is_play) |
| static GF_Err | cenc_dec_access_adobe (GF_CENCDecCtx *ctx, GF_CENCDecStream *cstr, Bool is_play) |
| u8 | key_info_get_iv_size (const u8 *key_info, u32 nb_keys, u32 idx, u8 *const_iv_size, const u8 **const_iv) |
| static GF_Err | cenc_dec_process_cenc (GF_CENCDecCtx *ctx, GF_CENCDecStream *cstr, GF_FilterPacket *in_pck) |
| static GF_Err | cenc_dec_process_hls_saes (GF_CENCDecCtx *ctx, GF_CENCDecStream *cstr, GF_FilterPacket *in_pck) |
| static GF_Err | cenc_dec_process_adobe (GF_CENCDecCtx *ctx, GF_CENCDecStream *cstr, GF_FilterPacket *in_pck) |
| static void | cenc_dec_stream_del (GF_CENCDecStream *cstr) |
| static GF_Err | cenc_dec_configure_pid (GF_Filter *filter, GF_FilterPid *pid, Bool is_remove) |
| static Bool | cenc_dec_process_event (GF_Filter *filter, const GF_FilterEvent *evt) |
| static GF_Err | cenc_dec_process (GF_Filter *filter) |
| static GF_Err | cenc_dec_initialize (GF_Filter *filter) |
| static void | cenc_dec_finalize (GF_Filter *filter) |
| const GF_FilterRegister * | cenc_decrypt_register (GF_FilterSession *session) |
Variables | |
| static const GF_FilterCapability | CENCDecCaps [] |
| static const GF_FilterArgs | GF_CENCDecArgs [] |
| GF_FilterRegister | CENCDecRegister |
| struct GF_CENCDecStream |
| Data Fields | ||
|---|---|---|
| GF_FilterPid * | ipid | |
| GF_FilterPid * | opid | |
| u32 | state | |
| u32 | pssh_crc | |
| u32 | scheme_type | |
| u32 | scheme_version | |
| GF_Err | key_error | |
| CENCDecKey * | crypts | |
| u32 | nb_crypts | |
| char | salt[8] | |
| u64 | last_IV | |
| u32 | nb_allow_play | |
| Bool | is_oma | |
| Bool | is_adobe | |
| u32 | preview_range | |
| Bool | is_nalu | |
| Bool | selective_encryption | |
| u32 | IV_length | |
| u32 | KI_length | |
| Bool | is_cenc | |
| Bool | is_cbc | |
| u32 | KID_count | |
| Bool | inband_keys | |
| bin128 * | KIDs | |
| bin128 * | keys | |
| const GF_PropertyValue * | cenc_ki | |
| u32 | multikey | |
| const GF_PropertyValue * | cenc_pattern | |
| Bool | crypt_init | |
| Bool | is_hls | |
| bin128 | hls_IV | |
| char * | hls_key_url | |
| Bool | is_hls_saes | |
| u32 | codec_id | |
| Bool | force_hls_iv | |
| Bool | gpac_master_leaf | |
| bin128 | master_key | |
| u32 | clearkey_crc | |
| struct GF_CENCDecCtx |
| Data Fields | ||
|---|---|---|
| const char * | cfile | |
| u32 | decrypt | |
| GF_PropUIntList | drop_keys | |
| GF_PropStringList | kids | |
| GF_PropStringList | keys | |
| GF_CryptInfo * | cinfo | |
| Bool | hls_cenc_patch_iv | |
| GF_Filter * | filter | |
| GF_List * | streams | |
| GF_BitStream * | bs_r | |
| GF_DownloadManager * | dm | |
| #define CK_MAX_BUF 1000 |
| #define OFFS | ( | _n | ) | #_n, offsetof(GF_CENCDecCtx, _n) |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
| u8 key_info_get_iv_size | ( | const u8 * | key_info, |
| u32 | nb_keys, | ||
| u32 | idx, | ||
| u8 * | const_iv_size, | ||
| const u8 ** | const_iv | ||
| ) |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
| const GF_FilterRegister * cenc_decrypt_register | ( | GF_FilterSession * | session | ) |
|
static |
|
static |
| GF_FilterRegister CENCDecRegister |