
Defines | |
| #define | MP4_BOX_HEADERSIZE(p_box) |
| #define | MP4_GETX_PRIVATE(dst, code, size) |
| #define | MP4_GET1BYTE(dst) MP4_GETX_PRIVATE( dst, *p_peek, 1 ) |
| #define | MP4_GET2BYTES(dst) MP4_GETX_PRIVATE( dst, GetWBE(p_peek), 2 ) |
| #define | MP4_GET3BYTES(dst) MP4_GETX_PRIVATE( dst, Get24bBE(p_peek), 3 ) |
| #define | MP4_GET4BYTES(dst) MP4_GETX_PRIVATE( dst, GetDWBE(p_peek), 4 ) |
| #define | MP4_GET8BYTES(dst) MP4_GETX_PRIVATE( dst, GetQWBE(p_peek), 8 ) |
| #define | MP4_GETFOURCC(dst) |
| #define | MP4_GETVERSIONFLAGS(p_void) |
| #define | MP4_GETSTRINGZ(p_str) |
| #define | MP4_READBOX_ENTER(MP4_Box_data_TYPE_t) |
| #define | MP4_READBOX_EXIT(i_code) |
| #define | MP4_BOX_TYPE_ASCII() ( ((char*)&p_box->i_type)[0] != (char)0xA9 ) |
| #define | es_descriptor p_box->data.p_esds->es_descriptor |
Functions | |
| static uint32_t | Get24bBE (const uint8_t *p) |
| static void | GetUUID (UUID_t *p_uuid, const uint8_t *p_buff) |
| static void | CreateUUID (UUID_t *p_uuid, uint32_t i_fourcc) |
| static void | MP4_ConvertDate2Str (char *psz, uint64_t i_date) |
| static MP4_Box_t * | MP4_ReadBox (stream_t *p_stream, MP4_Box_t *p_father) |
| int | MP4_ReadBoxCommon (stream_t *p_stream, MP4_Box_t *p_box) |
| static int | MP4_NextBox (stream_t *p_stream, MP4_Box_t *p_box) |
| static int | MP4_ReadBoxContainerRaw (stream_t *p_stream, MP4_Box_t *p_container) |
| static int | MP4_ReadBoxContainer (stream_t *p_stream, MP4_Box_t *p_container) |
| static void | MP4_FreeBox_Common (MP4_Box_t *p_box) |
| static int | MP4_ReadBoxSkip (stream_t *p_stream, MP4_Box_t *p_box) |
| static int | MP4_ReadBox_ftyp (stream_t *p_stream, MP4_Box_t *p_box) |
| static void | MP4_FreeBox_ftyp (MP4_Box_t *p_box) |
| static int | MP4_ReadBox_mvhd (stream_t *p_stream, MP4_Box_t *p_box) |
| static int | MP4_ReadBox_tkhd (stream_t *p_stream, MP4_Box_t *p_box) |
| static int | MP4_ReadBox_mdhd (stream_t *p_stream, MP4_Box_t *p_box) |
| static int | MP4_ReadBox_hdlr (stream_t *p_stream, MP4_Box_t *p_box) |
| static void | MP4_FreeBox_hdlr (MP4_Box_t *p_box) |
| static int | MP4_ReadBox_vmhd (stream_t *p_stream, MP4_Box_t *p_box) |
| static int | MP4_ReadBox_smhd (stream_t *p_stream, MP4_Box_t *p_box) |
| static int | MP4_ReadBox_hmhd (stream_t *p_stream, MP4_Box_t *p_box) |
| static int | MP4_ReadBox_url (stream_t *p_stream, MP4_Box_t *p_box) |
| static void | MP4_FreeBox_url (MP4_Box_t *p_box) |
| static int | MP4_ReadBox_urn (stream_t *p_stream, MP4_Box_t *p_box) |
| static void | MP4_FreeBox_urn (MP4_Box_t *p_box) |
| static int | MP4_ReadBox_dref (stream_t *p_stream, MP4_Box_t *p_box) |
| static void | MP4_FreeBox_stts (MP4_Box_t *p_box) |
| static int | MP4_ReadBox_stts (stream_t *p_stream, MP4_Box_t *p_box) |
| static void | MP4_FreeBox_ctts (MP4_Box_t *p_box) |
| static int | MP4_ReadBox_ctts (stream_t *p_stream, MP4_Box_t *p_box) |
| static int | MP4_ReadLengthDescriptor (uint8_t **pp_peek, int64_t *i_read) |
| static void | MP4_FreeBox_esds (MP4_Box_t *p_box) |
| static int | MP4_ReadBox_esds (stream_t *p_stream, MP4_Box_t *p_box) |
| static void | MP4_FreeBox_avcC (MP4_Box_t *p_box) |
| static int | MP4_ReadBox_avcC (stream_t *p_stream, MP4_Box_t *p_box) |
| static int | MP4_ReadBox_dac3 (stream_t *p_stream, MP4_Box_t *p_box) |
| static int | MP4_ReadBox_enda (stream_t *p_stream, MP4_Box_t *p_box) |
| static int | MP4_ReadBox_gnre (stream_t *p_stream, MP4_Box_t *p_box) |
| static int | MP4_ReadBox_trkn (stream_t *p_stream, MP4_Box_t *p_box) |
| static int | MP4_ReadBox_sample_soun (stream_t *p_stream, MP4_Box_t *p_box) |
| static void | MP4_FreeBox_sample_soun (MP4_Box_t *p_box) |
| int | MP4_ReadBox_sample_vide (stream_t *p_stream, MP4_Box_t *p_box) |
| void | MP4_FreeBox_sample_vide (MP4_Box_t *p_box) |
| static int | MP4_ReadBox_sample_mp4s (stream_t *p_stream, MP4_Box_t *p_box) |
| static int | MP4_ReadBox_sample_text (stream_t *p_stream, MP4_Box_t *p_box) |
| static int | MP4_ReadBox_sample_tx3g (stream_t *p_stream, MP4_Box_t *p_box) |
| static int | MP4_ReadBox_stsd (stream_t *p_stream, MP4_Box_t *p_box) |
| static int | MP4_ReadBox_stsz (stream_t *p_stream, MP4_Box_t *p_box) |
| static void | MP4_FreeBox_stsz (MP4_Box_t *p_box) |
| static void | MP4_FreeBox_stsc (MP4_Box_t *p_box) |
| static int | MP4_ReadBox_stsc (stream_t *p_stream, MP4_Box_t *p_box) |
| static int | MP4_ReadBox_stco_co64 (stream_t *p_stream, MP4_Box_t *p_box) |
| static void | MP4_FreeBox_stco_co64 (MP4_Box_t *p_box) |
| static int | MP4_ReadBox_stss (stream_t *p_stream, MP4_Box_t *p_box) |
| static void | MP4_FreeBox_stss (MP4_Box_t *p_box) |
| static void | MP4_FreeBox_stsh (MP4_Box_t *p_box) |
| static int | MP4_ReadBox_stsh (stream_t *p_stream, MP4_Box_t *p_box) |
| static int | MP4_ReadBox_stdp (stream_t *p_stream, MP4_Box_t *p_box) |
| static void | MP4_FreeBox_stdp (MP4_Box_t *p_box) |
| static void | MP4_FreeBox_padb (MP4_Box_t *p_box) |
| static int | MP4_ReadBox_padb (stream_t *p_stream, MP4_Box_t *p_box) |
| static void | MP4_FreeBox_elst (MP4_Box_t *p_box) |
| static int | MP4_ReadBox_elst (stream_t *p_stream, MP4_Box_t *p_box) |
| static int | MP4_ReadBox_cprt (stream_t *p_stream, MP4_Box_t *p_box) |
| static void | MP4_FreeBox_cprt (MP4_Box_t *p_box) |
| static int | MP4_ReadBox_dcom (stream_t *p_stream, MP4_Box_t *p_box) |
| static int | MP4_ReadBox_cmvd (stream_t *p_stream, MP4_Box_t *p_box) |
| static void | MP4_FreeBox_cmvd (MP4_Box_t *p_box) |
| static int | MP4_ReadBox_cmov (stream_t *p_stream, MP4_Box_t *p_box) |
| static int | MP4_ReadBox_rdrf (stream_t *p_stream, MP4_Box_t *p_box) |
| static void | MP4_FreeBox_rdrf (MP4_Box_t *p_box) |
| static int | MP4_ReadBox_rmdr (stream_t *p_stream, MP4_Box_t *p_box) |
| static int | MP4_ReadBox_rmqu (stream_t *p_stream, MP4_Box_t *p_box) |
| static int | MP4_ReadBox_rmvc (stream_t *p_stream, MP4_Box_t *p_box) |
| static int | MP4_ReadBox_frma (stream_t *p_stream, MP4_Box_t *p_box) |
| static int | MP4_ReadBox_skcr (stream_t *p_stream, MP4_Box_t *p_box) |
| static int | MP4_ReadBox_drms (stream_t *p_stream, MP4_Box_t *p_box) |
| static int | MP4_ReadBox_0xa9xxx (stream_t *p_stream, MP4_Box_t *p_box) |
| static void | MP4_FreeBox_0xa9xxx (MP4_Box_t *p_box) |
| static void | MP4_FreeBox_chpl (MP4_Box_t *p_box) |
| static int | MP4_ReadBox_chpl (stream_t *p_stream, MP4_Box_t *p_box) |
| static int | MP4_ReadBox_tref_generic (stream_t *p_stream, MP4_Box_t *p_box) |
| static void | MP4_FreeBox_tref_generic (MP4_Box_t *p_box) |
| static int | MP4_ReadBox_meta (stream_t *p_stream, MP4_Box_t *p_box) |
| static int | MP4_ReadBox_default (stream_t *p_stream, MP4_Box_t *p_box) |
| void | MP4_BoxFree (stream_t *s, MP4_Box_t *p_box) |
| MP4_Box_t * | MP4_BoxGetRoot (stream_t *s) |
| static void | __MP4_BoxDumpStructure (stream_t *s, MP4_Box_t *p_box, unsigned int i_level) |
| void | MP4_BoxDumpStructure (stream_t *s, MP4_Box_t *p_box) |
| static void | __get_token (char **ppsz_path, char **ppsz_token, int *pi_number) |
| static void | __MP4_BoxGet (MP4_Box_t **pp_result, MP4_Box_t *p_box, const char *psz_fmt, va_list args) |
| MP4_Box_t * | MP4_BoxGet (MP4_Box_t *p_box, const char *psz_fmt,...) |
| int | MP4_BoxCount (MP4_Box_t *p_box, const char *psz_fmt,...) |
Variables | |
| struct { | |
| uint32_t i_type | |
| int(* MP4_ReadBox_function )(stream_t *p_stream, MP4_Box_t *p_box) | |
| void(* MP4_FreeBox_function )(MP4_Box_t *p_box) | |
| } | MP4_Box_Function [] |
| #define es_descriptor p_box->data.p_esds->es_descriptor |
Referenced by MP4_ReadBox_esds().
| #define MP4_BOX_HEADERSIZE | ( | p_box | ) |
Value:
( 8 + ( p_box->i_shortsize == 1 ? 8 : 0 ) \
+ ( p_box->i_type == FOURCC_uuid ? 16 : 0 ) )
Referenced by MP4_ReadBox_dref(), MP4_ReadBox_sample_mp4s(), MP4_ReadBox_sample_soun(), MP4_ReadBox_sample_vide(), MP4_ReadBox_stsd(), MP4_ReadBoxContainer(), and MP4_ReadBoxSkip().
| #define MP4_BOX_TYPE_ASCII | ( | ) | ( ((char*)&p_box->i_type)[0] != (char)0xA9 ) |
Referenced by __MP4_BoxDumpStructure(), MP4_BoxFree(), MP4_ReadBox_default(), MP4_ReadBox_drms(), MP4_ReadBoxCommon(), and MP4_ReadBoxSkip().
Referenced by MP4_ReadBox_0xa9xxx(), MP4_ReadBox_avcC(), MP4_ReadBox_elst(), MP4_ReadBox_enda(), MP4_ReadBox_esds(), MP4_ReadBox_gnre(), MP4_ReadBox_hmhd(), MP4_ReadBox_mdhd(), MP4_ReadBox_mvhd(), MP4_ReadBox_rmvc(), MP4_ReadBox_sample_soun(), MP4_ReadBox_sample_text(), MP4_ReadBox_sample_tx3g(), MP4_ReadBox_sample_vide(), MP4_ReadBox_smhd(), MP4_ReadBox_stdp(), MP4_ReadBox_tkhd(), and MP4_ReadBox_vmhd().
Referenced by MP4_ReadBox_dac3(), and MP4_ReadBox_esds().
Referenced by MP4_ReadBox_0xa9xxx(), MP4_ReadBox_chpl(), MP4_ReadBox_cmvd(), MP4_ReadBox_ctts(), MP4_ReadBox_dref(), MP4_ReadBox_elst(), MP4_ReadBox_esds(), MP4_ReadBox_ftyp(), MP4_ReadBox_gnre(), MP4_ReadBox_hdlr(), MP4_ReadBox_hmhd(), MP4_ReadBox_mdhd(), MP4_ReadBox_mvhd(), MP4_ReadBox_padb(), MP4_ReadBox_rdrf(), MP4_ReadBox_rmdr(), MP4_ReadBox_rmqu(), MP4_ReadBox_rmvc(), MP4_ReadBox_sample_soun(), MP4_ReadBox_sample_text(), MP4_ReadBox_sample_tx3g(), MP4_ReadBox_sample_vide(), MP4_ReadBox_skcr(), MP4_ReadBox_stco_co64(), MP4_ReadBox_stsc(), MP4_ReadBox_stsd(), MP4_ReadBox_stsh(), MP4_ReadBox_stss(), MP4_ReadBox_stsz(), MP4_ReadBox_stts(), MP4_ReadBox_tkhd(), MP4_ReadBox_tref_generic(), MP4_ReadBox_trkn(), and MP4_ReadBoxCommon().
| #define MP4_GETFOURCC | ( | dst | ) |
Value:
MP4_GETX_PRIVATE( dst, \ VLC_FOURCC(p_peek[0],p_peek[1],p_peek[2],p_peek[3]), 4)
Referenced by MP4_ReadBox_0xa9xxx(), MP4_ReadBox_dcom(), MP4_ReadBox_frma(), MP4_ReadBox_ftyp(), MP4_ReadBox_gnre(), MP4_ReadBox_hdlr(), MP4_ReadBox_rdrf(), MP4_ReadBox_rmvc(), MP4_ReadBox_trkn(), and MP4_ReadBoxCommon().
| #define MP4_GETSTRINGZ | ( | p_str | ) |
Value:
if( (i_read > 0) && (p_peek[0]) ) \ { \ const int __i_copy__ = strnlen( (char*)p_peek, i_read-1 ); \ p_str = malloc( __i_copy__+1 ); \ if( p_str ) \ { \ memcpy( p_str, p_peek, __i_copy__ ); \ p_str[__i_copy__] = 0; \ } \ p_peek += __i_copy__ + 1; \ i_read -= __i_copy__ + 1; \ } \ else \ { \ p_str = NULL; \ }
Referenced by MP4_ReadBox_cprt(), MP4_ReadBox_url(), and MP4_ReadBox_urn().
| #define MP4_GETVERSIONFLAGS | ( | p_void | ) |
Value:
MP4_GET1BYTE( p_void->i_version ); \ MP4_GET3BYTES( p_void->i_flags )
Referenced by MP4_ReadBox_chpl(), MP4_ReadBox_cprt(), MP4_ReadBox_ctts(), MP4_ReadBox_dref(), MP4_ReadBox_elst(), MP4_ReadBox_esds(), MP4_ReadBox_hdlr(), MP4_ReadBox_hmhd(), MP4_ReadBox_mdhd(), MP4_ReadBox_mvhd(), MP4_ReadBox_padb(), MP4_ReadBox_rdrf(), MP4_ReadBox_rmdr(), MP4_ReadBox_rmvc(), MP4_ReadBox_smhd(), MP4_ReadBox_stco_co64(), MP4_ReadBox_stdp(), MP4_ReadBox_stsc(), MP4_ReadBox_stsd(), MP4_ReadBox_stsh(), MP4_ReadBox_stss(), MP4_ReadBox_stsz(), MP4_ReadBox_stts(), MP4_ReadBox_tkhd(), MP4_ReadBox_url(), MP4_ReadBox_urn(), and MP4_ReadBox_vmhd().
| #define MP4_READBOX_ENTER | ( | MP4_Box_data_TYPE_t | ) |
Value:
int64_t i_read = p_box->i_size; \
uint8_t *p_peek, *p_buff; \
int i_actually_read; \
if( !( p_peek = p_buff = malloc( i_read ) ) ) \
{ \
return( 0 ); \
} \
i_actually_read = stream_Read( p_stream, p_peek, i_read ); \
if( i_actually_read < 0 || (int64_t)i_actually_read < i_read )\
{ \
free( p_buff ); \
return( 0 ); \
} \
p_peek += MP4_BOX_HEADERSIZE( p_box ); \
i_read -= MP4_BOX_HEADERSIZE( p_box ); \
if( !( p_box->data.p_data = calloc( 1, sizeof( MP4_Box_data_TYPE_t ) ) ) ) \
{ \
free( p_buff ); \
return( 0 ); \
}
Referenced by MP4_ReadBox_0xa9xxx(), MP4_ReadBox_avcC(), MP4_ReadBox_chpl(), MP4_ReadBox_cmvd(), MP4_ReadBox_cprt(), MP4_ReadBox_ctts(), MP4_ReadBox_dac3(), MP4_ReadBox_dcom(), MP4_ReadBox_dref(), MP4_ReadBox_drms(), MP4_ReadBox_elst(), MP4_ReadBox_enda(), MP4_ReadBox_esds(), MP4_ReadBox_frma(), MP4_ReadBox_ftyp(), MP4_ReadBox_gnre(), MP4_ReadBox_hdlr(), MP4_ReadBox_hmhd(), MP4_ReadBox_mdhd(), MP4_ReadBox_mvhd(), MP4_ReadBox_padb(), MP4_ReadBox_rdrf(), MP4_ReadBox_rmdr(), MP4_ReadBox_rmqu(), MP4_ReadBox_rmvc(), MP4_ReadBox_sample_soun(), MP4_ReadBox_sample_text(), MP4_ReadBox_sample_tx3g(), MP4_ReadBox_sample_vide(), MP4_ReadBox_skcr(), MP4_ReadBox_smhd(), MP4_ReadBox_stco_co64(), MP4_ReadBox_stdp(), MP4_ReadBox_stsc(), MP4_ReadBox_stsd(), MP4_ReadBox_stsh(), MP4_ReadBox_stss(), MP4_ReadBox_stsz(), MP4_ReadBox_stts(), MP4_ReadBox_tkhd(), MP4_ReadBox_tref_generic(), MP4_ReadBox_trkn(), MP4_ReadBox_url(), MP4_ReadBox_urn(), and MP4_ReadBox_vmhd().
| #define MP4_READBOX_EXIT | ( | i_code | ) |
Value:
do \ { \ free( p_buff ); \ if( i_read < 0 ) \ msg_Warn( p_stream, "Not enough data" ); \ return( i_code ); \ } while (0)
Referenced by MP4_ReadBox_0xa9xxx(), MP4_ReadBox_avcC(), MP4_ReadBox_chpl(), MP4_ReadBox_cmvd(), MP4_ReadBox_cprt(), MP4_ReadBox_ctts(), MP4_ReadBox_dac3(), MP4_ReadBox_dcom(), MP4_ReadBox_dref(), MP4_ReadBox_drms(), MP4_ReadBox_elst(), MP4_ReadBox_enda(), MP4_ReadBox_esds(), MP4_ReadBox_frma(), MP4_ReadBox_ftyp(), MP4_ReadBox_gnre(), MP4_ReadBox_hdlr(), MP4_ReadBox_hmhd(), MP4_ReadBox_mdhd(), MP4_ReadBox_mvhd(), MP4_ReadBox_padb(), MP4_ReadBox_rdrf(), MP4_ReadBox_rmdr(), MP4_ReadBox_rmqu(), MP4_ReadBox_rmvc(), MP4_ReadBox_sample_soun(), MP4_ReadBox_sample_text(), MP4_ReadBox_sample_tx3g(), MP4_ReadBox_sample_vide(), MP4_ReadBox_skcr(), MP4_ReadBox_smhd(), MP4_ReadBox_stco_co64(), MP4_ReadBox_stdp(), MP4_ReadBox_stsc(), MP4_ReadBox_stsd(), MP4_ReadBox_stsh(), MP4_ReadBox_stss(), MP4_ReadBox_stsz(), MP4_ReadBox_stts(), MP4_ReadBox_tkhd(), MP4_ReadBox_tref_generic(), MP4_ReadBox_trkn(), MP4_ReadBox_url(), MP4_ReadBox_urn(), and MP4_ReadBox_vmhd().
| static void __get_token | ( | char ** | ppsz_path, | |
| char ** | ppsz_token, | |||
| int * | pi_number | |||
| ) | [static] |
Referenced by __MP4_BoxGet().
| static void __MP4_BoxDumpStructure | ( | stream_t * | s, | |
| MP4_Box_t * | p_box, | |||
| unsigned int | i_level | |||
| ) | [static] |
References i, MP4_Box_s::i_size, MP4_Box_s::i_type, MP4_BOX_TYPE_ASCII, msg_Dbg, MP4_Box_s::p_first, MP4_Box_s::p_next, and gen_builder::str.
Referenced by MP4_BoxDumpStructure().
| static void __MP4_BoxGet | ( | MP4_Box_t ** | pp_result, | |
| MP4_Box_t * | p_box, | |||
| const char * | psz_fmt, | |||
| va_list | args | |||
| ) | [static] |
References __get_token(), FREENULL, i_fourcc, MP4_Box_s::i_type, MP4_Box_s::p_father, MP4_Box_s::p_first, MP4_Box_s::p_next, vasprintf(), and VLC_FOURCC.
Referenced by MP4_BoxCount(), and MP4_BoxGet().
| static void CreateUUID | ( | UUID_t * | p_uuid, | |
| uint32_t | i_fourcc | |||
| ) | [static] |
Referenced by MP4_BoxGetRoot(), and MP4_ReadBoxCommon().
| static uint32_t Get24bBE | ( | const uint8_t * | p | ) | [static] |
| static void GetUUID | ( | UUID_t * | p_uuid, | |
| const uint8_t * | p_buff | |||
| ) | [static] |
Referenced by MP4_ReadBoxCommon().
| int MP4_BoxCount | ( | MP4_Box_t * | p_box, | |
| const char * | psz_fmt, | |||
| ... | ||||
| ) |
References __MP4_BoxGet(), MP4_Box_s::i_type, and MP4_Box_s::p_next.
References __MP4_BoxDumpStructure().
References MP4_Box_s::data, MP4_Box_s::i_type, i_type, MP4_Box_Function, MP4_BOX_TYPE_ASCII, MP4_BoxFree(), MP4_FreeBox_function, msg_Warn, MP4_Box_data_s::p_data, MP4_Box_s::p_first, and MP4_Box_s::p_next.
Referenced by MP4_BoxFree(), and MP4_ReadBox().
References __MP4_BoxGet().
Referenced by Control(), LoadChapter(), MP4_BoxGetRoot(), MP4_ReadBox_cmov(), MP4_ReadBox_default(), MP4_TrackCreate(), TrackCreateChunksIndex(), TrackCreateES(), TrackCreateSamplesIndex(), and TrackTimeToSampleChunk().
References CreateUUID(), MP4_Box_s::data, FOURCC_skip, MP4_Box_s::i_pos, MP4_Box_s::i_shortsize, MP4_Box_s::i_size, MP4_Box_s::i_type, MP4_Box_s::i_uuid, MP4_BoxGet(), MP4_ReadBoxContainerRaw(), MP4_Box_data_s::p_cmov, MP4_Box_data_s::p_data, MP4_Box_s::p_father, MP4_Box_s::p_first, MP4_Box_s::p_last, MP4_Box_data_cmov_s::p_moov, MP4_Box_s::p_next, p_stream, stream_Size(), and VLC_FOURCC.
| static void MP4_ConvertDate2Str | ( | char * | psz, | |
| uint64_t | i_date | |||
| ) | [static] |
Referenced by MP4_ReadBox_mdhd(), MP4_ReadBox_mvhd(), and MP4_ReadBox_tkhd().
| static void MP4_FreeBox_0xa9xxx | ( | MP4_Box_t * | p_box | ) | [static] |
References MP4_Box_s::data, FREENULL, MP4_Box_data_s::p_0xa9xxx, and MP4_Box_data_0xa9xxx_t::psz_text.
| static void MP4_FreeBox_avcC | ( | MP4_Box_t * | p_box | ) | [static] |
References MP4_Box_s::data, FREENULL, i, MP4_Box_data_avcC_t::i_avcC, MP4_Box_data_avcC_t::i_pps, MP4_Box_data_avcC_t::i_pps_length, MP4_Box_data_avcC_t::i_sps, MP4_Box_data_avcC_t::i_sps_length, MP4_Box_data_avcC_t::p_avcC, MP4_Box_data_s::p_avcC, MP4_Box_data_avcC_t::pps, and MP4_Box_data_avcC_t::sps.
| static void MP4_FreeBox_chpl | ( | MP4_Box_t * | p_box | ) | [static] |
| static void MP4_FreeBox_cmvd | ( | MP4_Box_t * | p_box | ) | [static] |
References MP4_Box_s::data, FREENULL, MP4_Box_data_s::p_cmvd, and MP4_Box_data_cmvd_s::p_data.
| static void MP4_FreeBox_Common | ( | MP4_Box_t * | p_box | ) | [static] |
| static void MP4_FreeBox_cprt | ( | MP4_Box_t * | p_box | ) | [static] |
References MP4_Box_s::data, FREENULL, MP4_Box_data_s::p_cprt, and MP4_Box_data_cprt_s::psz_notice.
| static void MP4_FreeBox_ctts | ( | MP4_Box_t * | p_box | ) | [static] |
| static void MP4_FreeBox_elst | ( | MP4_Box_t * | p_box | ) | [static] |
| static void MP4_FreeBox_esds | ( | MP4_Box_t * | p_box | ) | [static] |
| static void MP4_FreeBox_ftyp | ( | MP4_Box_t * | p_box | ) | [static] |
References MP4_Box_s::data, FREENULL, MP4_Box_data_ftyp_s::i_compatible_brands, and MP4_Box_data_s::p_ftyp.
| static void MP4_FreeBox_hdlr | ( | MP4_Box_t * | p_box | ) | [static] |
References MP4_Box_s::data, FREENULL, MP4_Box_data_s::p_hdlr, and MP4_Box_data_hdlr_s::psz_name.
| static void MP4_FreeBox_padb | ( | MP4_Box_t * | p_box | ) | [static] |
| static void MP4_FreeBox_rdrf | ( | MP4_Box_t * | p_box | ) | [static] |
References MP4_Box_s::data, FREENULL, MP4_Box_data_s::p_rdrf, and MP4_Box_data_rdrf_t::psz_ref.
| static void MP4_FreeBox_sample_soun | ( | MP4_Box_t * | p_box | ) | [static] |
| void MP4_FreeBox_sample_vide | ( | MP4_Box_t * | p_box | ) |
| static void MP4_FreeBox_stco_co64 | ( | MP4_Box_t * | p_box | ) | [static] |
References MP4_Box_s::data, FREENULL, MP4_Box_data_co64_s::i_chunk_offset, and MP4_Box_data_s::p_co64.
| static void MP4_FreeBox_stdp | ( | MP4_Box_t * | p_box | ) | [static] |
References MP4_Box_s::data, FREENULL, MP4_Box_data_stdp_s::i_priority, and MP4_Box_data_s::p_stdp.
| static void MP4_FreeBox_stsc | ( | MP4_Box_t * | p_box | ) | [static] |
| static void MP4_FreeBox_stsh | ( | MP4_Box_t * | p_box | ) | [static] |
| static void MP4_FreeBox_stss | ( | MP4_Box_t * | p_box | ) | [static] |
References MP4_Box_s::data, FREENULL, MP4_Box_data_stss_s::i_sample_number, and MP4_Box_data_s::p_stss.
| static void MP4_FreeBox_stsz | ( | MP4_Box_t * | p_box | ) | [static] |
References MP4_Box_s::data, FREENULL, MP4_Box_data_stsz_s::i_entry_size, and MP4_Box_data_s::p_stsz.
| static void MP4_FreeBox_stts | ( | MP4_Box_t * | p_box | ) | [static] |
| static void MP4_FreeBox_tref_generic | ( | MP4_Box_t * | p_box | ) | [static] |
| static void MP4_FreeBox_url | ( | MP4_Box_t * | p_box | ) | [static] |
References MP4_Box_s::data, FREENULL, MP4_Box_data_s::p_url, and MP4_Box_data_url_s::psz_location.
| static void MP4_FreeBox_urn | ( | MP4_Box_t * | p_box | ) | [static] |
References MP4_Box_s::i_pos, MP4_Box_s::i_size, MP4_ReadBoxCommon(), msg_Dbg, MP4_Box_s::p_father, and stream_Seek().
Referenced by MP4_ReadBoxContainerRaw().
References MP4_Box_s::i_size, MP4_Box_s::i_type, i_type, MP4_Box_Function, MP4_BoxFree(), MP4_ReadBox_function, MP4_ReadBoxCommon(), msg_Dbg, msg_Warn, and MP4_Box_s::p_father.
Referenced by MP4_ReadBox_cmov(), and MP4_ReadBoxContainerRaw().
References MP4_Box_s::data, i, MP4_Box_data_avcC_t::i_avcC, MP4_Box_data_avcC_t::i_length_size, MP4_Box_data_avcC_t::i_level, MP4_Box_data_avcC_t::i_pps, MP4_Box_data_avcC_t::i_pps_length, MP4_Box_data_avcC_t::i_profile, MP4_Box_data_avcC_t::i_profile_compatibility, MP4_Box_data_avcC_t::i_reserved1, MP4_Box_data_avcC_t::i_reserved2, MP4_Box_data_avcC_t::i_sps, MP4_Box_data_avcC_t::i_sps_length, MP4_Box_data_avcC_t::i_version, MP4_GET1BYTE, MP4_GET2BYTES, MP4_READBOX_ENTER, MP4_READBOX_EXIT, msg_Dbg, MP4_Box_data_avcC_t::p_avcC, MP4_Box_data_s::p_avcC, MP4_Box_data_avcC_t::pps, and MP4_Box_data_avcC_t::sps.
References MP4_Box_data_cmvd_s::b_compressed, MP4_Box_s::data, FOURCC_foov, FOURCC_moov, FOURCC_zlib, MP4_Box_data_dcom_s::i_algorithm, MP4_Box_data_cmvd_s::i_compressed_size, MP4_Box_s::i_type, MP4_Box_data_cmvd_s::i_uncompressed_size, MP4_BoxGet(), MP4_ReadBox(), MP4_ReadBoxContainer(), msg_Dbg, msg_Err, msg_Warn, MP4_Box_data_s::p_cmov, MP4_Box_data_s::p_cmvd, MP4_Box_data_cmvd_s::p_data, md5_s::p_data, MP4_Box_data_s::p_dcom, MP4_Box_s::p_father, MP4_Box_data_cmov_s::p_moov, stream_Delete(), stream_MemoryNew, and VLC_OBJECT.
References MP4_Box_s::data, MP4_Box_data_dac3_t::i_acmod, MP4_Box_data_dac3_t::i_bitrate_code, MP4_Box_data_dac3_t::i_bsid, MP4_Box_data_dac3_t::i_bsmod, MP4_Box_data_dac3_t::i_fscod, MP4_Box_data_dac3_t::i_lfeon, MP4_GET3BYTES, MP4_READBOX_ENTER, MP4_READBOX_EXIT, msg_Dbg, and MP4_Box_data_s::p_dac3.
References MP4_Box_s::data, FOURCC_mdia, FOURCC_sbtl, FOURCC_soun, FOURCC_stsd, FOURCC_text, FOURCC_tx3g, FOURCC_vide, MP4_Box_data_hdlr_s::i_handler_type, MP4_Box_s::i_type, MP4_BOX_TYPE_ASCII, MP4_BoxGet(), MP4_ReadBox_sample_soun(), MP4_ReadBox_sample_text(), MP4_ReadBox_sample_tx3g(), MP4_ReadBox_sample_vide(), msg_Warn, MP4_Box_s::p_father, MP4_Box_data_s::p_hdlr, and unknown.
References MP4_Box_s::data, drms_free(), drms_init(), FOURCC_drmi, FOURCC_drms, MP4_Box_s::i_type, MP4_BOX_TYPE_ASCII, MP4_READBOX_ENTER, MP4_READBOX_EXIT, msg_Err, MP4_Box_data_sample_vide_s::p_drms, MP4_Box_data_sample_soun_s::p_drms, MP4_Box_s::p_father, MP4_Box_data_s::p_sample_soun, and MP4_Box_data_s::p_sample_vide.
References MP4_Box_s::data, i, MP4_Box_data_elst_s::i_entry_count, MP4_Box_data_elst_s::i_media_rate_fraction, MP4_Box_data_elst_s::i_media_rate_integer, MP4_Box_data_elst_s::i_media_time, MP4_Box_data_elst_s::i_segment_duration, MP4_Box_data_elst_s::i_version, MP4_GET2BYTES, MP4_GET4BYTES, MP4_GET8BYTES, MP4_GETVERSIONFLAGS, MP4_READBOX_ENTER, MP4_READBOX_EXIT, msg_Dbg, and MP4_Box_data_s::p_elst.
References MP4_Box_s::data, MP4_Box_data_hmhd_s::i_avg_bitrate, MP4_Box_data_hmhd_s::i_avg_PDU_size, MP4_Box_data_hmhd_s::i_max_bitrate, MP4_Box_data_hmhd_s::i_max_PDU_size, MP4_Box_data_hmhd_s::i_reserved, MP4_GET2BYTES, MP4_GET4BYTES, MP4_GETVERSIONFLAGS, MP4_READBOX_ENTER, MP4_READBOX_EXIT, msg_Dbg, and MP4_Box_data_s::p_hmhd.
References MP4_Box_s::data, GetWBE, i, MP4_Box_data_mdhd_s::i_creation_time, MP4_Box_data_mdhd_s::i_duration, MP4_Box_data_mdhd_s::i_language, MP4_Box_data_mdhd_s::i_language_code, MP4_Box_data_mdhd_s::i_modification_time, MP4_Box_data_mdhd_s::i_predefined, MP4_Box_data_mdhd_s::i_timescale, MP4_Box_data_mdhd_s::i_version, MP4_ConvertDate2Str(), MP4_GET2BYTES, MP4_GET4BYTES, MP4_GET8BYTES, MP4_GETVERSIONFLAGS, MP4_READBOX_ENTER, MP4_READBOX_EXIT, msg_Dbg, and MP4_Box_data_s::p_mdhd.
References MP4_ReadBoxContainerRaw(), and stream_Read().
References MP4_Box_s::data, i, MP4_Box_data_mvhd_s::i_creation_time, MP4_Box_data_mvhd_s::i_duration, MP4_Box_data_mvhd_s::i_matrix, MP4_Box_data_mvhd_s::i_modification_time, MP4_Box_data_mvhd_s::i_next_track_id, MP4_Box_data_mvhd_s::i_predefined, MP4_Box_data_mvhd_s::i_rate, MP4_Box_data_mvhd_s::i_reserved1, MP4_Box_data_mvhd_s::i_reserved2, MP4_Box_data_mvhd_s::i_timescale, MP4_Box_data_mvhd_s::i_version, MP4_Box_data_mvhd_s::i_volume, MP4_ConvertDate2Str(), MP4_GET2BYTES, MP4_GET4BYTES, MP4_GET8BYTES, MP4_GETVERSIONFLAGS, MP4_READBOX_ENTER, MP4_READBOX_EXIT, msg_Dbg, and MP4_Box_data_s::p_mvhd.
References count, MP4_Box_s::data, i, MP4_Box_data_padb_s::i_pad1, MP4_Box_data_padb_s::i_pad2, MP4_Box_data_padb_s::i_reserved1, MP4_Box_data_padb_s::i_reserved2, MP4_Box_data_padb_s::i_sample_count, MP4_GET4BYTES, MP4_GETVERSIONFLAGS, MP4_READBOX_ENTER, MP4_READBOX_EXIT, msg_Dbg, and MP4_Box_data_s::p_padb.
References MP4_Box_s::i_pos, MP4_BOX_HEADERSIZE, MP4_ReadBoxContainerRaw(), and stream_Seek().
References config_GetUserDir(), MP4_Box_s::data, drms_alloc(), FOURCC_drms, FOURCC_samr, FOURCC_sawb, i, MP4_Box_data_sample_soun_s::i_bytes_per_frame, MP4_Box_data_sample_soun_s::i_bytes_per_packet, MP4_Box_data_sample_soun_s::i_bytes_per_sample, MP4_Box_data_sample_soun_s::i_channelcount, MP4_Box_data_sample_soun_s::i_data_reference_index, MP4_Box_s::i_pos, MP4_Box_data_sample_soun_s::i_predefined, MP4_Box_data_sample_soun_s::i_qt_description, MP4_Box_data_sample_soun_s::i_qt_revision_level, MP4_Box_data_sample_soun_s::i_qt_vendor, MP4_Box_data_sample_soun_s::i_qt_version, MP4_Box_data_sample_soun_s::i_reserved1, MP4_Box_data_sample_soun_s::i_reserved3, MP4_Box_data_sample_soun_s::i_sample_per_packet, MP4_Box_data_sample_soun_s::i_sampleratehi, MP4_Box_data_sample_soun_s::i_sampleratelo, MP4_Box_data_sample_soun_s::i_samplesize, MP4_Box_s::i_type, MP4_BOX_HEADERSIZE, MP4_GET1BYTE, MP4_GET2BYTES, MP4_GET4BYTES, MP4_GET8BYTES, MP4_READBOX_ENTER, MP4_READBOX_EXIT, MP4_ReadBoxContainerRaw(), msg_Dbg, msg_Err, MP4_Box_data_sample_soun_s::p_drms, MP4_Box_data_sample_soun_s::p_qt_description, MP4_Box_data_s::p_sample_soun, stream_Seek(), and VLC_HOME_DIR.
Referenced by MP4_ReadBox_default().
References MP4_Box_s::data, MP4_Box_data_sample_text_t::i_background_color, MP4_Box_data_sample_text_t::i_data_reference_index, MP4_Box_data_sample_text_t::i_display_flags, MP4_Box_data_sample_text_t::i_justification_horizontal, MP4_Box_data_sample_text_t::i_justification_vertical, MP4_Box_data_sample_text_t::i_reserved1, MP4_Box_data_sample_text_t::i_reserved2, MP4_Box_data_sample_text_t::i_text_box_bottom, MP4_Box_data_sample_text_t::i_text_box_left, MP4_Box_data_sample_text_t::i_text_box_right, MP4_Box_data_sample_text_t::i_text_box_top, MP4_GET2BYTES, MP4_GET4BYTES, MP4_READBOX_ENTER, MP4_READBOX_EXIT, msg_Dbg, and MP4_Box_data_s::p_sample_text.
Referenced by MP4_ReadBox_default().
References MP4_Box_s::data, MP4_Box_data_sample_text_t::i_background_color, MP4_Box_data_sample_text_t::i_data_reference_index, MP4_Box_data_sample_text_t::i_display_flags, MP4_Box_data_sample_text_t::i_justification_horizontal, MP4_Box_data_sample_text_t::i_justification_vertical, MP4_Box_data_sample_text_t::i_reserved1, MP4_Box_data_sample_text_t::i_reserved2, MP4_Box_data_sample_text_t::i_text_box_bottom, MP4_Box_data_sample_text_t::i_text_box_left, MP4_Box_data_sample_text_t::i_text_box_right, MP4_Box_data_sample_text_t::i_text_box_top, MP4_GET1BYTE, MP4_GET2BYTES, MP4_GET4BYTES, MP4_READBOX_ENTER, MP4_READBOX_EXIT, msg_Dbg, and MP4_Box_data_s::p_sample_text.
Referenced by MP4_ReadBox_default().
References config_GetUserDir(), MP4_Box_s::data, drms_alloc(), FOURCC_drmi, i, MP4_Box_data_sample_vide_s::i_compressorname, MP4_Box_data_sample_vide_s::i_data_reference_index, MP4_Box_data_sample_vide_s::i_depth, MP4_Box_data_sample_vide_s::i_height, MP4_Box_data_sample_vide_s::i_horizresolution, MP4_Box_s::i_pos, MP4_Box_data_sample_vide_s::i_qt_color_table, MP4_Box_data_sample_vide_s::i_qt_data_size, MP4_Box_data_sample_vide_s::i_qt_frame_count, MP4_Box_data_sample_vide_s::i_qt_image_description, MP4_Box_data_sample_vide_s::i_qt_revision_level, MP4_Box_data_sample_vide_s::i_qt_spatial_quality, MP4_Box_data_sample_vide_s::i_qt_temporal_quality, MP4_Box_data_sample_vide_s::i_qt_vendor, MP4_Box_data_sample_vide_s::i_qt_version, MP4_Box_data_sample_vide_s::i_reserved1, MP4_Box_s::i_type, MP4_Box_data_sample_vide_s::i_vertresolution, MP4_Box_data_sample_vide_s::i_width, MP4_BOX_HEADERSIZE, MP4_GET1BYTE, MP4_GET2BYTES, MP4_GET4BYTES, MP4_READBOX_ENTER, MP4_READBOX_EXIT, MP4_ReadBoxContainerRaw(), msg_Dbg, msg_Err, MP4_Box_data_sample_vide_s::p_drms, MP4_Box_data_sample_vide_s::p_qt_image_description, MP4_Box_data_s::p_sample_vide, stream_Seek(), and VLC_HOME_DIR.
Referenced by MP4_ReadBox_default(), and matroska_segment_c::Select().
References MP4_Box_s::data, i, MP4_Box_data_stsc_s::i_entry_count, MP4_Box_data_stsc_s::i_first_chunk, MP4_Box_data_stsc_s::i_sample_description_index, MP4_Box_data_stsc_s::i_samples_per_chunk, MP4_GET4BYTES, MP4_GETVERSIONFLAGS, MP4_READBOX_ENTER, MP4_READBOX_EXIT, msg_Dbg, and MP4_Box_data_s::p_stsc.
References MP4_Box_s::data, i, MP4_Box_data_stss_s::i_entry_count, MP4_Box_data_stsh_s::i_entry_count, MP4_Box_data_stsh_s::i_shadowed_sample_number, MP4_Box_data_stsh_s::i_sync_sample_number, MP4_GET4BYTES, MP4_GETVERSIONFLAGS, MP4_READBOX_ENTER, MP4_READBOX_EXIT, msg_Dbg, MP4_Box_data_s::p_stsh, and MP4_Box_data_s::p_stss.
References MP4_Box_s::data, i, MP4_Box_data_mvhd_s::i_creation_time, MP4_Box_data_tkhd_s::i_creation_time, MP4_Box_data_mvhd_s::i_duration, MP4_Box_data_tkhd_s::i_duration, MP4_Box_data_tkhd_s::i_height, MP4_Box_data_tkhd_s::i_layer, MP4_Box_data_tkhd_s::i_matrix, MP4_Box_data_mvhd_s::i_modification_time, MP4_Box_data_tkhd_s::i_modification_time, MP4_Box_data_tkhd_s::i_predefined, MP4_Box_data_tkhd_s::i_reserved, MP4_Box_data_tkhd_s::i_reserved2, MP4_Box_data_tkhd_s::i_reserved3, MP4_Box_data_tkhd_s::i_track_ID, MP4_Box_data_tkhd_s::i_version, MP4_Box_data_tkhd_s::i_volume, MP4_Box_data_tkhd_s::i_width, MP4_ConvertDate2Str(), MP4_GET2BYTES, MP4_GET4BYTES, MP4_GET8BYTES, MP4_GETVERSIONFLAGS, MP4_READBOX_ENTER, MP4_READBOX_EXIT, msg_Dbg, MP4_Box_data_s::p_mvhd, and MP4_Box_data_s::p_tkhd.
References CreateUUID(), MP4_Box_s::data, FOURCC_uuid, GetUUID(), MP4_Box_s::i_pos, MP4_Box_s::i_shortsize, MP4_Box_s::i_size, MP4_Box_s::i_type, MP4_Box_s::i_uuid, MP4_BOX_TYPE_ASCII, MP4_GET4BYTES, MP4_GET8BYTES, MP4_GETFOURCC, msg_Dbg, MP4_Box_data_s::p_data, MP4_Box_s::p_father, MP4_Box_s::p_first, MP4_Box_s::p_last, MP4_Box_s::p_next, stream_Peek(), and stream_Tell().
Referenced by MP4_NextBox(), MP4_ReadBox(), and matroska_segment_c::Select().
References MP4_Box_s::i_pos, MP4_Box_s::i_size, MP4_BOX_HEADERSIZE, MP4_ReadBoxContainerRaw(), and stream_Seek().
Referenced by MP4_ReadBox_cmov(), and MP4_ReadBoxSkip().
References MP4_Box_s::i_pos, MP4_Box_s::i_size, MP4_NextBox(), MP4_ReadBox(), MP4_Box_s::p_first, MP4_Box_s::p_last, MP4_Box_s::p_next, and stream_Tell().
Referenced by MP4_BoxGetRoot(), MP4_ReadBox_dref(), MP4_ReadBox_meta(), MP4_ReadBox_sample_mp4s(), MP4_ReadBox_sample_soun(), MP4_ReadBox_sample_vide(), MP4_ReadBox_stsd(), and MP4_ReadBoxContainer().
| static int MP4_ReadLengthDescriptor | ( | uint8_t ** | pp_peek, | |
| int64_t * | i_read | |||
| ) | [static] |
Referenced by MP4_ReadBox_esds().
| uint32_t i_type |
struct { ... } MP4_Box_Function[] [static] |
Referenced by MP4_BoxFree(), and MP4_ReadBox().
| void(* MP4_FreeBox_function)(MP4_Box_t *p_box) |
Referenced by MP4_BoxFree().
| int(* MP4_ReadBox_function)(stream_t *p_stream, MP4_Box_t *p_box) |
Referenced by MP4_ReadBox().
1.5.6