GPAC
Open Source Multimedia Framework. For more information, check out http://gpac.wp.mines-telecom.fr
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups
drm_sample.c File Reference
+ Include dependency graph for drm_sample.c:

Functions

GF_ISMASamplegf_isom_ismacryp_new_sample ()
 
void gf_isom_ismacryp_delete_sample (GF_ISMASample *samp)
 
GF_ISMASamplegf_isom_ismacryp_sample_from_data (char *data, u32 dataLength, Bool use_selective_encryption, u8 KI_length, u8 IV_length)
 
GF_Err gf_isom_ismacryp_sample_to_sample (GF_ISMASample *s, GF_ISOSample *dest)
 
static GF_ProtectionInfoBoxgf_isom_get_sinf_entry (GF_TrackBox *trak, u32 sampleDescriptionIndex, u32 scheme_type, GF_SampleEntryBox **out_sea)
 
GF_ISMASamplegf_isom_get_ismacryp_sample (GF_ISOFile *the_file, u32 trackNumber, GF_ISOSample *samp, u32 sampleDescriptionIndex)
 
u32 gf_isom_is_media_encrypted (GF_ISOFile *the_file, u32 trackNumber, u32 sampleDescriptionIndex)
 
Bool gf_isom_is_ismacryp_media (GF_ISOFile *the_file, u32 trackNumber, u32 sampleDescriptionIndex)
 
Bool gf_isom_is_omadrm_media (GF_ISOFile *the_file, u32 trackNumber, u32 sampleDescriptionIndex)
 
GF_Err gf_isom_get_ismacryp_info (GF_ISOFile *the_file, u32 trackNumber, u32 sampleDescriptionIndex, u32 *outOriginalFormat, u32 *outSchemeType, u32 *outSchemeVersion, const char **outSchemeURI, const char **outKMS_URI, Bool *outSelectiveEncryption, u32 *outIVLength, u32 *outKeyIndicationLength)
 
GF_Err gf_isom_get_omadrm_info (GF_ISOFile *the_file, u32 trackNumber, u32 sampleDescriptionIndex, u32 *outOriginalFormat, u32 *outSchemeType, u32 *outSchemeVersion, const char **outContentID, const char **outRightsIssuerURL, const char **outTextualHeaders, u32 *outTextualHeadersLen, u64 *outPlaintextLength, u32 *outEncryptionType, Bool *outSelectiveEncryption, u32 *outIVLength, u32 *outKeyIndicationLength)
 
GF_Err gf_isom_remove_track_protection (GF_ISOFile *the_file, u32 trackNumber, u32 sampleDescriptionIndex)
 
GF_Err gf_isom_change_ismacryp_protection (GF_ISOFile *the_file, u32 trackNumber, u32 sampleDescriptionIndex, char *scheme_uri, char *kms_uri)
 
static GF_Err gf_isom_set_protected_entry (GF_ISOFile *the_file, u32 trackNumber, u32 desc_index, u32 scheme_type, u32 scheme_version, Bool is_isma, GF_ProtectionInfoBox **out_sinf)
 
GF_Err gf_isom_set_ismacryp_protection (GF_ISOFile *the_file, u32 trackNumber, u32 desc_index, u32 scheme_type, u32 scheme_version, char *scheme_uri, char *kms_URI, Bool selective_encryption, u32 KI_length, u32 IV_length)
 
GF_Err gf_isom_set_oma_protection (GF_ISOFile *the_file, u32 trackNumber, u32 desc_index, char *contentID, char *kms_URI, u32 encryption_type, u64 plainTextLength, char *textual_headers, u32 textual_headers_len, Bool selective_encryption, u32 KI_length, u32 IV_length)
 
GF_Err gf_isom_get_original_format_type (GF_ISOFile *the_file, u32 trackNumber, u32 sampleDescriptionIndex, u32 *outOriginalFormat)
 
Bool gf_isom_is_cenc_media (GF_ISOFile *the_file, u32 trackNumber, u32 sampleDescriptionIndex)
 
GF_Err gf_isom_get_cenc_info (GF_ISOFile *the_file, u32 trackNumber, u32 sampleDescriptionIndex, u32 *outOriginalFormat, u32 *outSchemeType, u32 *outSchemeVersion, u32 *outIVLength)
 
GF_Err gf_isom_set_cenc_protection (GF_ISOFile *the_file, u32 trackNumber, u32 desc_index, u32 scheme_type, u32 scheme_version, u32 default_IsEncrypted, u8 default_IV_size, bin128 default_KID)
 
GF_Err gf_isom_remove_cenc_saiz (GF_ISOFile *the_file, u32 trackNumber)
 
GF_Err gf_isom_remove_cenc_saio (GF_ISOFile *the_file, u32 trackNumber)
 
GF_Err gf_cenc_set_pssh (GF_ISOFile *mp4, bin128 systemID, u32 version, u32 KID_count, bin128 *KIDs, char *data, u32 len)
 
GF_Err gf_isom_remove_samp_enc_box (GF_ISOFile *the_file, u32 trackNumber)
 
GF_Err gf_isom_remove_samp_group_box (GF_ISOFile *the_file, u32 trackNumber)
 
GF_Err gf_isom_remove_pssh_box (GF_ISOFile *the_file)
 
GF_PIFFSampleEncryptionBoxgf_isom_create_piff_psec_box (u8 version, u32 flags, u32 AlgorithmID, u8 IV_size, bin128 KID)
 
GF_SampleEncryptionBoxgf_isom_create_samp_enc_box (u8 version, u32 flags)
 
GF_Err gf_isom_cenc_allocate_storage (GF_ISOFile *the_file, u32 trackNumber, u32 container_type, u32 AlgorithmID, u8 IV_size, bin128 KID)
 
void gf_isom_cenc_set_saiz_saio (GF_SampleEncryptionBox *senc, GF_SampleTableBox *stbl, GF_TrackFragmentBox *traf, u32 len)
 
void gf_isom_cenc_merge_saiz_saio (GF_SampleEncryptionBox *senc, GF_SampleTableBox *stbl, u32 offset, u32 len)
 
GF_Err gf_isom_track_cenc_add_sample_info (GF_ISOFile *the_file, u32 trackNumber, u32 container_type, char *buf, u32 len)
 
void gf_isom_cenc_samp_aux_info_del (GF_CENCSampleAuxInfo *samp)
 
Bool gf_isom_cenc_has_saiz_saio (GF_SampleTableBox *stbl, GF_TrackFragmentBox *traf)
 
static GF_Err gf_isom_cenc_get_sai_by_saiz_saio (GF_MediaBox *mdia, u32 sampleNumber, GF_CENCSampleAuxInfo **sai)
 
GF_Err gf_isom_cenc_get_sample_aux_info (GF_ISOFile *the_file, u32 trackNumber, u32 sampleNumber, GF_CENCSampleAuxInfo **sai, u32 *container_type)
 
void gf_isom_cenc_get_default_info (GF_ISOFile *the_file, u32 trackNumber, u32 sampleDescriptionIndex, u32 *default_IsEncrypted, u8 *default_IV_size, bin128 *default_KID)
 
void gf_isom_ipmpx_remove_tool_list (GF_ISOFile *the_file)
 

Function Documentation

GF_ISMASample* gf_isom_ismacryp_new_sample ( )

creates a new empty ISMA sample

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gf_isom_ismacryp_delete_sample ( GF_ISMASample samp)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_ISMASample* gf_isom_ismacryp_sample_from_data ( char *  data,
u32  dataLength,
Bool  use_selective_encryption,
u8  KI_length,
u8  IV_length 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_isom_ismacryp_sample_to_sample ( GF_ISMASample s,
GF_ISOSample dest 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static GF_ProtectionInfoBox* gf_isom_get_sinf_entry ( GF_TrackBox trak,
u32  sampleDescriptionIndex,
u32  scheme_type,
GF_SampleEntryBox **  out_sea 
)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_ISMASample* gf_isom_get_ismacryp_sample ( GF_ISOFile *  the_file,
u32  trackNumber,
GF_ISOSample samp,
u32  sampleDescriptionIndex 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u32 gf_isom_is_media_encrypted ( GF_ISOFile *  the_file,
u32  trackNumber,
u32  sampleDescriptionIndex 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Bool gf_isom_is_ismacryp_media ( GF_ISOFile *  the_file,
u32  trackNumber,
u32  sampleDescriptionIndex 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Bool gf_isom_is_omadrm_media ( GF_ISOFile *  the_file,
u32  trackNumber,
u32  sampleDescriptionIndex 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_isom_get_ismacryp_info ( GF_ISOFile *  the_file,
u32  trackNumber,
u32  sampleDescriptionIndex,
u32 outOriginalFormat,
u32 outSchemeType,
u32 outSchemeVersion,
const char **  outSchemeURI,
const char **  outKMS_URI,
Bool outSelectiveEncryption,
u32 outIVLength,
u32 outKeyIndicationLength 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_isom_get_omadrm_info ( GF_ISOFile *  the_file,
u32  trackNumber,
u32  sampleDescriptionIndex,
u32 outOriginalFormat,
u32 outSchemeType,
u32 outSchemeVersion,
const char **  outContentID,
const char **  outRightsIssuerURL,
const char **  outTextualHeaders,
u32 outTextualHeadersLen,
u64 outPlaintextLength,
u32 outEncryptionType,
Bool outSelectiveEncryption,
u32 outIVLength,
u32 outKeyIndicationLength 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_isom_remove_track_protection ( GF_ISOFile *  the_file,
u32  trackNumber,
u32  sampleDescriptionIndex 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_isom_change_ismacryp_protection ( GF_ISOFile *  the_file,
u32  trackNumber,
u32  sampleDescriptionIndex,
char *  scheme_uri,
char *  kms_uri 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static GF_Err gf_isom_set_protected_entry ( GF_ISOFile *  the_file,
u32  trackNumber,
u32  desc_index,
u32  scheme_type,
u32  scheme_version,
Bool  is_isma,
GF_ProtectionInfoBox **  out_sinf 
)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_isom_set_ismacryp_protection ( GF_ISOFile *  the_file,
u32  trackNumber,
u32  desc_index,
u32  scheme_type,
u32  scheme_version,
char *  scheme_uri,
char *  kms_URI,
Bool  selective_encryption,
u32  KI_length,
u32  IV_length 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_isom_set_oma_protection ( GF_ISOFile *  the_file,
u32  trackNumber,
u32  desc_index,
char *  contentID,
char *  kms_URI,
u32  encryption_type,
u64  plainTextLength,
char *  textual_headers,
u32  textual_headers_len,
Bool  selective_encryption,
u32  KI_length,
u32  IV_length 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_isom_get_original_format_type ( GF_ISOFile *  the_file,
u32  trackNumber,
u32  sampleDescriptionIndex,
u32 outOriginalFormat 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Bool gf_isom_is_cenc_media ( GF_ISOFile *  the_file,
u32  trackNumber,
u32  sampleDescriptionIndex 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_isom_get_cenc_info ( GF_ISOFile *  the_file,
u32  trackNumber,
u32  sampleDescriptionIndex,
u32 outOriginalFormat,
u32 outSchemeType,
u32 outSchemeVersion,
u32 outIVLength 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_isom_set_cenc_protection ( GF_ISOFile *  the_file,
u32  trackNumber,
u32  desc_index,
u32  scheme_type,
u32  scheme_version,
u32  default_IsEncrypted,
u8  default_IV_size,
bin128  default_KID 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_isom_remove_cenc_saiz ( GF_ISOFile *  the_file,
u32  trackNumber 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_isom_remove_cenc_saio ( GF_ISOFile *  the_file,
u32  trackNumber 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_cenc_set_pssh ( GF_ISOFile *  mp4,
bin128  systemID,
u32  version,
u32  KID_count,
bin128 KIDs,
char *  data,
u32  len 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_isom_remove_samp_enc_box ( GF_ISOFile *  the_file,
u32  trackNumber 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_isom_remove_samp_group_box ( GF_ISOFile *  the_file,
u32  trackNumber 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_isom_remove_pssh_box ( GF_ISOFile *  the_file)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_PIFFSampleEncryptionBox* gf_isom_create_piff_psec_box ( u8  version,
u32  flags,
u32  AlgorithmID,
u8  IV_size,
bin128  KID 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_SampleEncryptionBox* gf_isom_create_samp_enc_box ( u8  version,
u32  flags 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_isom_cenc_allocate_storage ( GF_ISOFile *  the_file,
u32  trackNumber,
u32  container_type,
u32  AlgorithmID,
u8  IV_size,
bin128  KID 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gf_isom_cenc_set_saiz_saio ( GF_SampleEncryptionBox senc,
GF_SampleTableBox stbl,
GF_TrackFragmentBox traf,
u32  len 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gf_isom_cenc_merge_saiz_saio ( GF_SampleEncryptionBox senc,
GF_SampleTableBox stbl,
u32  offset,
u32  len 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_isom_track_cenc_add_sample_info ( GF_ISOFile *  the_file,
u32  trackNumber,
u32  container_type,
char *  buf,
u32  len 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gf_isom_cenc_samp_aux_info_del ( GF_CENCSampleAuxInfo samp)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Bool gf_isom_cenc_has_saiz_saio ( GF_SampleTableBox stbl,
GF_TrackFragmentBox traf 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static GF_Err gf_isom_cenc_get_sai_by_saiz_saio ( GF_MediaBox mdia,
u32  sampleNumber,
GF_CENCSampleAuxInfo **  sai 
)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_isom_cenc_get_sample_aux_info ( GF_ISOFile *  the_file,
u32  trackNumber,
u32  sampleNumber,
GF_CENCSampleAuxInfo **  sai,
u32 container_type 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gf_isom_cenc_get_default_info ( GF_ISOFile *  the_file,
u32  trackNumber,
u32  sampleDescriptionIndex,
u32 default_IsEncrypted,
u8 default_IV_size,
bin128 default_KID 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gf_isom_ipmpx_remove_tool_list ( GF_ISOFile *  the_file)

+ Here is the call graph for this function:

+ Here is the caller graph for this function: