libgpac
Documentation of the core library of GPAC
mp4box.h File Reference
#include <gpac/constants.h>
#include <gpac/download.h>
#include <gpac/network.h>
#include <gpac/isomedia.h>
#include <gpac/utf.h>
#include <gpac/filters.h>
#include <gpac/scene_manager.h>
+ Include dependency graph for mp4box.h:
+ This graph shows which files directly or indirectly include this file:

Data Structures

struct  TrackIdentifier
 

Macros

#define M4_LOG(_a, _b)   GF_LOG(_a, GF_LOG_APP, _b)
 

Enumerations

enum  GF_FileType {
  GF_FILE_TYPE_NOT_SUPPORTED = 0 , GF_FILE_TYPE_ISO_MEDIA = 1 , GF_FILE_TYPE_BT_WRL_X3DV = 2 , GF_FILE_TYPE_XMT_X3D = 3 ,
  GF_FILE_TYPE_SVG = 4 , GF_FILE_TYPE_SWF = 5 , GF_FILE_TYPE_LSR_SAF = 6
}
 

Functions

u32 parse_u32 (char *val, char *log_name)
 
s32 parse_s32 (char *val, char *log_name)
 
GF_Err convert_file_info (char *inName, TrackIdentifier *track_id)
 
Bool mp4box_check_isom_fileopt (char *opt)
 
Bool mp4box_check_non_extk_fileopt (char *opt)
 
GF_Err apply_high_dynamc_range_xml_desc (GF_ISOFile *movie, u32 track, char *file_name)
 
GF_Err import_file (GF_ISOFile *dest, char *inName, u32 import_flags, GF_Fraction force_fps, u32 frames_per_sample, GF_FilterSession *fsess, char **mux_args_if_first_pass, char **mux_sid_if_first_pass, u32 tk_idx)
 
GF_Err split_isomedia_file (GF_ISOFile *mp4, Double split_dur, u64 split_size_kb, char *inName, Double interleaving_time, Double chunk_start, u32 adjust_split_end, char *outName, Bool force_rap_split, const char *split_range_str, u32 fs_dump_flags)
 
GF_Err cat_isomedia_file (GF_ISOFile *mp4, char *fileName, u32 import_flags, GF_Fraction force_fps, u32 frames_per_sample, Bool force_cat, Bool align_timelines, Bool allow_add_in_command, Bool is_pl)
 
GF_Err apply_edits (GF_ISOFile *dest, u32 track, char *edits)
 
GF_Err EncodeFile (char *in, GF_ISOFile *mp4, GF_SMEncodeOptions *opts, FILE *logs)
 
GF_Err EncodeFileChunk (char *chunkFile, char *bifs, char *inputContext, char *outputContext)
 
GF_ISOFile * package_file (char *file_name, char *fcc, Bool make_wgt)
 
GF_Err dump_isom_cover_art (GF_ISOFile *file, char *inName, Bool is_final_name)
 
GF_Err dump_isom_chapters (GF_ISOFile *file, char *inName, Bool is_final_name, u32 dump_ogg)
 
GF_Err dump_isom_udta (GF_ISOFile *file, char *inName, Bool is_final_name, u32 dump_udta_type, u32 dump_udta_track)
 
GF_Err set_file_udta (GF_ISOFile *dest, u32 tracknum, u32 udta_type, char *src, Bool is_box_array, Bool is_string)
 
u32 id3_get_genre_tag (const char *name)
 
GF_Err dump_isom_scene (char *file, char *inName, Bool is_final_name, GF_SceneDumpFormat dump_mode, Bool do_log, Bool no_odf_conv)
 
void dump_isom_scene_stats (char *file, char *inName, Bool is_final_name, u32 stat_level)
 
u32 PrintNode (const char *name, u32 graph_type)
 
u32 PrintBuiltInNodes (char *arg_val, u32 dump_type)
 
u32 PrintBuiltInBoxes (char *arg_val, u32 do_cov)
 
GF_Err dump_isom_xml (GF_ISOFile *file, char *inName, Bool is_final_name, Bool do_track_dump, Bool merge_vtt_cues, const char *init_seg, Bool skip_samples)
 
void dump_isom_rtp (GF_ISOFile *file, char *inName, Bool is_final_name)
 
void dump_isom_sdp (GF_ISOFile *file, char *inName, Bool is_final_name)
 
void dump_isom_timestamps (GF_ISOFile *file, char *inName, Bool is_final_name, u32 skip_offset)
 
GF_Err dump_isom_nal (GF_ISOFile *file, GF_ISOTrackID trackID, char *inName, Bool is_final_name, u32 dump_flags)
 
void dump_isom_saps (GF_ISOFile *file, GF_ISOTrackID trackID, u32 dump_saps_mode, char *inName, Bool is_final_name)
 
void dump_isom_chunks (GF_ISOFile *file, char *inName, Bool is_final_name)
 
void dump_isom_ismacryp (GF_ISOFile *file, char *inName, Bool is_final_name)
 
void dump_isom_timed_text (GF_ISOFile *file, GF_ISOTrackID trackID, char *inName, Bool is_final_name, Bool is_convert, GF_TextDumpType dump_type)
 
void DumpTrackInfo (GF_ISOFile *file, GF_ISOTrackID trackID, Bool full_dump, Bool is_track_num, Bool dump_m4sys)
 
void DumpMovieInfo (GF_ISOFile *file, Bool full_dump)
 
u32 PrintLanguages (char *argv, u32 opt)
 
void dump_mpeg2_ts (char *mpeg2ts_file, char *pes_out_name, Bool prog_num)
 
void PrintStreamerUsage ()
 
int stream_file_rtp (int argc, char **argv)
 
int live_session (int argc, char **argv)
 
void PrintLiveUsage ()
 
u32 grab_live_m2ts (const char *grab_m2ts, const char *outName)
 
GF_Err rip_mpd (const char *mpd, const char *dst_file)
 
GF_Err cat_playlist (GF_ISOFile *dest, char *playlistName, u32 import_flags, GF_Fraction force_fps, u32 frames_per_sample, Bool force_cat, Bool align_timelines, Bool allow_add_in_command)
 
u32 parse_track_dump (char *arg, u32 dump_type)
 
u32 parse_track_action (char *arg, u32 act_type)
 
u32 parse_sdp_ext (char *arg_val, u32 param)
 
u32 parse_help (char *arg_val, u32 opt)
 
u32 parse_gendoc (char *name, u32 opt)
 
u32 parse_comp_box (char *arg_val, u32 opt)
 
u32 parse_dnal (char *arg_val, u32 opt)
 
u32 parse_dsap (char *arg_val, u32 opt)
 
u32 parse_bs_switch (char *arg_val, u32 opt)
 
u32 parse_cp_loc (char *arg_val, u32 opt)
 
u32 parse_pssh (char *arg_val, u32 opt)
 
u32 parse_sdtp (char *arg_val, u32 opt)
 
u32 parse_dash_profile (char *arg_val, u32 opt)
 
u32 parse_rap_ref (char *arg_val, u32 opt)
 
u32 parse_store_mode (char *arg_val, u32 opt)
 
u32 parse_base_url (char *arg_val, u32 opt)
 
u32 parse_multi_rtp (char *arg_val, u32 opt)
 
u32 parse_senc_param (char *arg_val, u32 opt)
 
u32 parse_cryp (char *arg_val, u32 opt)
 
u32 parse_fps (char *arg_val, u32 opt)
 
u32 parse_split (char *arg_val, u32 opt)
 
u32 parse_brand (char *b, u32 opt)
 
u32 parse_mpegu (char *arg_val, u32 opt)
 
u32 parse_file_info (char *arg_val, u32 opt)
 
u32 parse_boxpatch (char *arg_val, u32 opt)
 
u32 parse_aviraw (char *arg_val, u32 opt)
 
u32 parse_dump_udta (char *code, u32 opt)
 
u32 parse_dump_ts (char *arg_val, u32 opt)
 
u32 parse_ttxt (char *arg_val, u32 opt)
 
u32 parse_dashlive (char *arg, char *arg_val, u32 opt)
 
u32 parse_compress (char *arg_val, u32 opt)
 

Data Structure Documentation

◆ TrackIdentifier

struct TrackIdentifier
Data Fields
u32 ID_or_num
u8 type

Macro Definition Documentation

◆ M4_LOG

#define M4_LOG (   _a,
  _b 
)    GF_LOG(_a, GF_LOG_APP, _b)

Enumeration Type Documentation

◆ GF_FileType

Enumerator
GF_FILE_TYPE_NOT_SUPPORTED 
GF_FILE_TYPE_ISO_MEDIA 
GF_FILE_TYPE_BT_WRL_X3DV 
GF_FILE_TYPE_XMT_X3D 
GF_FILE_TYPE_SVG 
GF_FILE_TYPE_SWF 
GF_FILE_TYPE_LSR_SAF 

Function Documentation

◆ parse_u32()

u32 parse_u32 ( char *  val,
char *  log_name 
)
+ Here is the caller graph for this function:

◆ parse_s32()

s32 parse_s32 ( char *  val,
char *  log_name 
)
+ Here is the caller graph for this function:

◆ convert_file_info()

GF_Err convert_file_info ( char *  inName,
TrackIdentifier track_id 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ mp4box_check_isom_fileopt()

Bool mp4box_check_isom_fileopt ( char *  opt)
+ Here is the caller graph for this function:

◆ mp4box_check_non_extk_fileopt()

Bool mp4box_check_non_extk_fileopt ( char *  opt)
+ Here is the caller graph for this function:

◆ apply_high_dynamc_range_xml_desc()

GF_Err apply_high_dynamc_range_xml_desc ( GF_ISOFile *  movie,
u32  track,
char *  file_name 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ import_file()

GF_Err import_file ( GF_ISOFile *  dest,
char *  inName,
u32  import_flags,
GF_Fraction  force_fps,
u32  frames_per_sample,
GF_FilterSession *  fsess,
char **  mux_args_if_first_pass,
char **  mux_sid_if_first_pass,
u32  tk_idx 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ split_isomedia_file()

GF_Err split_isomedia_file ( GF_ISOFile *  mp4,
Double  split_dur,
u64  split_size_kb,
char *  inName,
Double  interleaving_time,
Double  chunk_start,
u32  adjust_split_end,
char *  outName,
Bool  force_rap_split,
const char *  split_range_str,
u32  fs_dump_flags 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ cat_isomedia_file()

GF_Err cat_isomedia_file ( GF_ISOFile *  mp4,
char *  fileName,
u32  import_flags,
GF_Fraction  force_fps,
u32  frames_per_sample,
Bool  force_cat,
Bool  align_timelines,
Bool  allow_add_in_command,
Bool  is_pl 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ apply_edits()

GF_Err apply_edits ( GF_ISOFile *  dest,
u32  track,
char *  edits 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ EncodeFile()

GF_Err EncodeFile ( char *  in,
GF_ISOFile *  mp4,
GF_SMEncodeOptions opts,
FILE *  logs 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ EncodeFileChunk()

GF_Err EncodeFileChunk ( char *  chunkFile,
char *  bifs,
char *  inputContext,
char *  outputContext 
)
Parameters
chunkFileBT chunk to be encoded
bifsoutput file name for the BIFS data
inputContextinitial BT upon which the chunk is based (shall not be NULL)
outputContextfile name to dump the context after applying the new chunk to the input context can be NULL, without .bt
tmpdircan be NULL
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ package_file()

GF_ISOFile* package_file ( char *  file_name,
char *  fcc,
Bool  make_wgt 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ dump_isom_cover_art()

GF_Err dump_isom_cover_art ( GF_ISOFile *  file,
char *  inName,
Bool  is_final_name 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ dump_isom_chapters()

GF_Err dump_isom_chapters ( GF_ISOFile *  file,
char *  inName,
Bool  is_final_name,
u32  dump_ogg 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ dump_isom_udta()

GF_Err dump_isom_udta ( GF_ISOFile *  file,
char *  inName,
Bool  is_final_name,
u32  dump_udta_type,
u32  dump_udta_track 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ set_file_udta()

GF_Err set_file_udta ( GF_ISOFile *  dest,
u32  tracknum,
u32  udta_type,
char *  src,
Bool  is_box_array,
Bool  is_string 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ id3_get_genre_tag()

u32 id3_get_genre_tag ( const char *  name)

◆ dump_isom_scene()

GF_Err dump_isom_scene ( char *  file,
char *  inName,
Bool  is_final_name,
GF_SceneDumpFormat  dump_mode,
Bool  do_log,
Bool  no_odf_conv 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ dump_isom_scene_stats()

void dump_isom_scene_stats ( char *  file,
char *  inName,
Bool  is_final_name,
u32  stat_level 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ PrintNode()

u32 PrintNode ( const char *  name,
u32  graph_type 
)
+ Here is the call graph for this function:

◆ PrintBuiltInNodes()

u32 PrintBuiltInNodes ( char *  arg_val,
u32  dump_type 
)
+ Here is the call graph for this function:

◆ PrintBuiltInBoxes()

u32 PrintBuiltInBoxes ( char *  arg_val,
u32  do_cov 
)
+ Here is the call graph for this function:

◆ dump_isom_xml()

GF_Err dump_isom_xml ( GF_ISOFile *  file,
char *  inName,
Bool  is_final_name,
Bool  do_track_dump,
Bool  merge_vtt_cues,
const char *  init_seg,
Bool  skip_samples 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ dump_isom_rtp()

void dump_isom_rtp ( GF_ISOFile *  file,
char *  inName,
Bool  is_final_name 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ dump_isom_sdp()

void dump_isom_sdp ( GF_ISOFile *  file,
char *  inName,
Bool  is_final_name 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ dump_isom_timestamps()

void dump_isom_timestamps ( GF_ISOFile *  file,
char *  inName,
Bool  is_final_name,
u32  skip_offset 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ dump_isom_nal()

GF_Err dump_isom_nal ( GF_ISOFile *  file,
GF_ISOTrackID  trackID,
char *  inName,
Bool  is_final_name,
u32  dump_flags 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ dump_isom_saps()

void dump_isom_saps ( GF_ISOFile *  file,
GF_ISOTrackID  trackID,
u32  dump_saps_mode,
char *  inName,
Bool  is_final_name 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ dump_isom_chunks()

void dump_isom_chunks ( GF_ISOFile *  file,
char *  inName,
Bool  is_final_name 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ dump_isom_ismacryp()

void dump_isom_ismacryp ( GF_ISOFile *  file,
char *  inName,
Bool  is_final_name 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ dump_isom_timed_text()

void dump_isom_timed_text ( GF_ISOFile *  file,
GF_ISOTrackID  trackID,
char *  inName,
Bool  is_final_name,
Bool  is_convert,
GF_TextDumpType  dump_type 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ DumpTrackInfo()

void DumpTrackInfo ( GF_ISOFile *  file,
GF_ISOTrackID  trackID,
Bool  full_dump,
Bool  is_track_num,
Bool  dump_m4sys 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ DumpMovieInfo()

void DumpMovieInfo ( GF_ISOFile *  file,
Bool  full_dump 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ PrintLanguages()

u32 PrintLanguages ( char *  argv,
u32  opt 
)
+ Here is the call graph for this function:

◆ dump_mpeg2_ts()

void dump_mpeg2_ts ( char *  mpeg2ts_file,
char *  pes_out_name,
Bool  prog_num 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ PrintStreamerUsage()

void PrintStreamerUsage ( )

◆ stream_file_rtp()

int stream_file_rtp ( int  argc,
char **  argv 
)

◆ live_session()

int live_session ( int  argc,
char **  argv 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ PrintLiveUsage()

void PrintLiveUsage ( )
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ grab_live_m2ts()

u32 grab_live_m2ts ( const char *  grab_m2ts,
const char *  outName 
)

◆ rip_mpd()

GF_Err rip_mpd ( const char *  mpd,
const char *  dst_file 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ cat_playlist()

GF_Err cat_playlist ( GF_ISOFile *  dest,
char *  playlistName,
u32  import_flags,
GF_Fraction  force_fps,
u32  frames_per_sample,
Bool  force_cat,
Bool  align_timelines,
Bool  allow_add_in_command 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ parse_track_dump()

u32 parse_track_dump ( char *  arg,
u32  dump_type 
)
+ Here is the call graph for this function:

◆ parse_track_action()

u32 parse_track_action ( char *  arg,
u32  act_type 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ parse_sdp_ext()

u32 parse_sdp_ext ( char *  arg_val,
u32  param 
)
+ Here is the call graph for this function:

◆ parse_help()

u32 parse_help ( char *  arg_val,
u32  opt 
)
+ Here is the call graph for this function:

◆ parse_gendoc()

u32 parse_gendoc ( char *  name,
u32  opt 
)
+ Here is the call graph for this function:

◆ parse_comp_box()

u32 parse_comp_box ( char *  arg_val,
u32  opt 
)

◆ parse_dnal()

u32 parse_dnal ( char *  arg_val,
u32  opt 
)
+ Here is the call graph for this function:

◆ parse_dsap()

u32 parse_dsap ( char *  arg_val,
u32  opt 
)
+ Here is the call graph for this function:

◆ parse_bs_switch()

u32 parse_bs_switch ( char *  arg_val,
u32  opt 
)

◆ parse_cp_loc()

u32 parse_cp_loc ( char *  arg_val,
u32  opt 
)

◆ parse_pssh()

u32 parse_pssh ( char *  arg_val,
u32  opt 
)

◆ parse_sdtp()

u32 parse_sdtp ( char *  arg_val,
u32  opt 
)

◆ parse_dash_profile()

u32 parse_dash_profile ( char *  arg_val,
u32  opt 
)

◆ parse_rap_ref()

u32 parse_rap_ref ( char *  arg_val,
u32  opt 
)
+ Here is the call graph for this function:

◆ parse_store_mode()

u32 parse_store_mode ( char *  arg_val,
u32  opt 
)

◆ parse_base_url()

u32 parse_base_url ( char *  arg_val,
u32  opt 
)
+ Here is the call graph for this function:

◆ parse_multi_rtp()

u32 parse_multi_rtp ( char *  arg_val,
u32  opt 
)
+ Here is the call graph for this function:

◆ parse_senc_param()

u32 parse_senc_param ( char *  arg_val,
u32  opt 
)
+ Here is the call graph for this function:

◆ parse_cryp()

u32 parse_cryp ( char *  arg_val,
u32  opt 
)
+ Here is the call graph for this function:

◆ parse_fps()

u32 parse_fps ( char *  arg_val,
u32  opt 
)
+ Here is the call graph for this function:

◆ parse_split()

u32 parse_split ( char *  arg_val,
u32  opt 
)
+ Here is the call graph for this function:

◆ parse_brand()

u32 parse_brand ( char *  b,
u32  opt 
)
+ Here is the call graph for this function:

◆ parse_mpegu()

u32 parse_mpegu ( char *  arg_val,
u32  opt 
)

◆ parse_file_info()

u32 parse_file_info ( char *  arg_val,
u32  opt 
)
+ Here is the call graph for this function:

◆ parse_boxpatch()

u32 parse_boxpatch ( char *  arg_val,
u32  opt 
)
+ Here is the call graph for this function:

◆ parse_aviraw()

u32 parse_aviraw ( char *  arg_val,
u32  opt 
)

◆ parse_dump_udta()

u32 parse_dump_udta ( char *  code,
u32  opt 
)
+ Here is the call graph for this function:

◆ parse_dump_ts()

u32 parse_dump_ts ( char *  arg_val,
u32  opt 
)
+ Here is the call graph for this function:

◆ parse_ttxt()

u32 parse_ttxt ( char *  arg_val,
u32  opt 
)
+ Here is the call graph for this function:

◆ parse_dashlive()

u32 parse_dashlive ( char *  arg,
char *  arg_val,
u32  opt 
)

◆ parse_compress()

u32 parse_compress ( char *  arg_val,
u32  opt 
)