libgpac
Documentation of the core library of GPAC
mp4box.c File Reference
#include "mp4box.h"
#include <gpac/media_tools.h>
#include <gpac/main.h>
#include <gpac/ietf.h>
#include <gpac/crypt_tools.h>
#include <gpac/constants.h>
#include <gpac/filters.h>
#include <gpac/mpd.h>
+ Include dependency graph for mp4box.c:

Data Structures

struct  SDPLine
 
struct  MetaRef
 
struct  MetaAction
 
struct  TrackAction
 
struct  TSELAction
 
struct  MP4BoxArg
 

Macros

#define BUFFSIZE   8192
 
#define DEFAULT_INTERLEAVING_IN_SEC   0.5
 
#define LANG_SIZE   50
 
#define ARG_OPEN_EDIT   1
 
#define ARG_NEED_SAVE   1<<1
 
#define ARG_NO_INPLACE   1<<2
 
#define ARG_BIT_MASK   1<<3
 
#define ARG_BIT_MASK_REM   1<<4
 
#define ARG_HAS_VALUE   1<<5
 
#define ARG_DIV_1000   1<<6
 
#define ARG_NON_ZERO   1<<7
 
#define ARG_64BITS   1<<8
 
#define ARG_IS_4CC   1<<9
 
#define ARG_BOOL_REV   1<<10
 
#define ARG_INT_INC   1<<11
 
#define ARG_IS_FUN   1<<12
 
#define ARG_EMPTY   1<<13
 
#define ARG_PUSH_SYSARGS   1<<14
 
#define ARG_IS_FUN2   1<<15
 
#define MP4BOX_ARG(_a, _c, _f, _g, _h, _i, _j)   {_a, NULL, _c, NULL, NULL, _f, _g, _h, _i, _j}
 
#define MP4BOX_ARG_ALT(_a, _b, _c, _f, _g, _h, _i, _j)   {_a, _b, _c, NULL, NULL, _f, _g, _h, _i, _j}
 
#define MP4BOX_ARG_S(_a, _s, _c, _g, _h, _i, _j)   {_a, NULL, _c, _s, NULL, GF_ARG_CUSTOM, _g, _h, _i, _j}
 
#define MP4BOX_ARG_S_ALT(_a, _b, _s, _c, _g, _h, _i, _j)   {_a, _b, _c, _s, NULL, GF_ARG_CUSTOM, _g, _h, _i, _j}
 
#define CHECK_IMGPROP
 
#define DOC_AUTOGEN_WARNING    "<!-- automatically generated - do not edit, patch gpac/applications/mp4box/mp4box.c -->\n"
 
#define BASE_PAYT   96
 

Typedefs

typedef u32(* parse_arg_fun) (char *arg_val, u32 param)
 
typedef u32(* parse_arg_fun2) (char *arg_name, char *arg_val, u32 param)
 

Enumerations

enum  MetaActionType {
  META_ACTION_SET_TYPE = 0 , META_ACTION_ADD_ITEM = 1 , META_ACTION_REM_ITEM = 2 , META_ACTION_SET_PRIMARY_ITEM = 3 ,
  META_ACTION_SET_XML = 4 , META_ACTION_SET_BINARY_XML = 5 , META_ACTION_REM_XML = 6 , META_ACTION_DUMP_ITEM = 7 ,
  META_ACTION_DUMP_XML = 8 , META_ACTION_ADD_IMAGE_ITEM = 9 , META_ACTION_ADD_IMAGE_DERIVED = 10
}
 
enum  TrackActionType {
  TRACK_ACTION_REM_TRACK = 0 , TRACK_ACTION_SET_LANGUAGE , TRACK_ACTION_SET_DELAY , TRACK_ACTION_ENABLE ,
  TRACK_ACTION_DISABLE , TRACK_ACTION_REFERENCE , TRACK_ACTION_SET_KIND , TRACK_ACTION_REM_KIND ,
  TRACK_ACTION_SET_ID , TRACK_ACTION_SET_UDTA , TRACK_ACTION_SWAP_ID , TRACK_ACTION_SET_MX ,
  TRACK_ACTION_SET_EDITS , TRACK_ACTION_SET_TIME , TRACK_ACTION_SET_KMS_URI , TRACK_ACTION_SET_PAR ,
  TRACK_ACTION_SET_HANDLER_NAME , TRACK_ACTION_RAW_EXTRACT , TRACK_ACTION_REM_NON_RAP , TRACK_ACTION_REM_NON_REFS ,
  TRACK_ACTION_SET_CLAP , TRACK_ACTION_SET_MEDIA_TIME
}
 
enum  {
  GF_ISOM_CONV_TYPE_ISMA = 1 , GF_ISOM_CONV_TYPE_ISMA_EX , GF_ISOM_CONV_TYPE_3GPP , GF_ISOM_CONV_TYPE_IPOD ,
  GF_ISOM_CONV_TYPE_PSP , GF_ISOM_CONV_TYPE_MOV
}
 
enum  TSELActionType { TSEL_ACTION_SET_PARAM = 0 , TSEL_ACTION_REMOVE_TSEL = 1 , TSEL_ACTION_REMOVE_ALL_TSEL_IN_GROUP = 2 }
 
enum  { SEARCH_ARG_EXACT , SEARCH_ARG_CLOSE , SEARCH_DESC }
 

Functions

static u32 mp4box_cleanup (u32 ret_code)
 
GF_FileType get_file_type_by_ext (char *inName)
 
static void init_global_vars ()
 
static u32 parse_meta_args (char *opts, MetaActionType act_type)
 
static Bool parse_tsel_args (char *opts, TSELActionType act)
 
u32 parse_u32 (char *val, char *log_name)
 
s32 parse_s32 (char *val, char *log_name)
 
static Bool parse_track_id (TrackIdentifier *tkid, char *arg_val, Bool allow_all)
 
Bool print_version (char *arg_val, u32 param)
 
void PrintGeneralUsage ()
 
static void PrintSplitUsage ()
 
void PrintDASHUsage ()
 
void PrintImportUsage ()
 
Bool mp4box_check_isom_fileopt (char *opt)
 
Bool mp4box_check_non_extk_fileopt (char *opt)
 
void PrintEncodeUsage ()
 
void PrintEncryptUsage ()
 
void PrintHintUsage ()
 
void PrintExtractUsage ()
 
void PrintDumpUsage ()
 
void PrintMetaUsage ()
 
void PrintSWFUsage ()
 
void PrintLiveUsage ()
 
void PrintCoreUsage ()
 
void PrintTags ()
 
void PrintCICP ()
 
void PrintUsage ()
 
static u32 PrintHelpForArgs (char *arg_name, MP4BoxArg *args, GF_GPACArg *_args, u32 search_type, char *class_name)
 
static Bool PrintHelpArg (char *arg_name, u32 search_type, GF_FilterSession *fs)
 
static void PrintHelp (char *arg_name, Bool search_desc, Bool no_match)
 
u32 parse_sdp_ext (char *arg_val, u32 param)
 
GF_DashSegmenterInputset_dash_input (GF_DashSegmenterInput *dash_inputs, char *name, u32 *nb_dash_inputs)
 
static Bool create_new_track_action (char *arg_val, u32 act_type, u32 dump_type)
 
u32 parse_track_dump (char *arg, u32 dump_type)
 
u32 parse_track_action (char *arg, u32 act_type)
 
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_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_dash_profile (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_compress (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_help (char *arg_val, u32 opt)
 
u32 parse_gendoc (char *name, u32 opt)
 
u32 mp4box_parse_single_arg_class (int argc, char **argv, char *arg, u32 *arg_index, MP4BoxArg *arg_class)
 
Bool mp4box_parse_single_arg (int argc, char **argv, char *arg, u32 *arg_index)
 
u32 mp4box_parse_args (int argc, char **argv)
 
void scene_coding_log (void *cbk, GF_LOG_Level log_level, GF_LOG_Tool log_tool, const char *fmt, va_list vlist)
 
void SetupClockReferences (GF_ISOFile *file)
 
GF_Err HintFile (GF_ISOFile *file, u32 MTUSize, u32 max_ptime, u32 rtp_rate, u32 base_flags, Bool copy_data, Bool interleave, Bool regular_iod, Bool single_group, Bool hint_no_offset)
 
static void check_media_profile (GF_ISOFile *file, u32 track)
 
void remove_systems_tracks (GF_ISOFile *file)
 
static GF_Err xml_bs_to_bin (char *inName, char *outName, u32 dump_std)
 
static u64 do_size_top_boxes (char *inName, char *compress_top_boxes, u32 mode)
 
static GF_Err do_compress_top_boxes (char *inName, char *outName)
 
static GF_Err hash_file (char *name, u32 dump_std)
 
static u32 do_raw_cat ()
 
static u32 do_write_udp ()
 
static u32 convert_mpd ()
 
static u32 do_import_sub ()
 
static u32 do_add_cat (int argc, char **argv)
 
static GF_Err do_scene_encode ()
 
static GF_Err do_dash ()
 defined(GPAC_DISABLE_ISOM_WRITE) && !defined(GPAC_DISABLE_SCENE_ENCODER) && !defined(GPAC_DISABLE_MEDIA_IMPORT) More...
 
static GF_Err do_export_tracks_non_isobmf ()
 
static GF_Err do_dump_iod ()
 
static u32 get_track_id (GF_ISOFile *file, TrackIdentifier *tkid)
 
static GF_Err do_export_tracks ()
 
static GF_Err do_meta_act ()
 
static GF_Err do_tsel_act ()
 
static void do_ipod_conv ()
 
static GF_Err do_track_act ()
 
static Bool do_qt_keys (char *name, char *val)
 
static GF_Err do_itunes_tag ()
 
static void set_sdp_ext ()
 
static GF_Err do_remux_file ()
 
int mp4box_main (int argc, char **argv)
 

Variables

char outfile [GF_MAX_PATH]
 
GF_SMEncodeOptions smenc_opts
 
u32 swf_flags
 
GF_Fraction import_fps
 
FILE * helpout
 
u32 help_flags
 
Double interleaving_time
 
Double split_duration
 
Double split_start
 
Double dash_duration
 
Double dash_subduration
 
Double swf_flatten_angle
 
Double mpd_live_duration
 
Double min_buffer
 
Double mpd_update_time
 
Bool arg_parse_res
 
Bool dash_duration_strict
 
Bool dvbhdemux
 
Bool keep_sys_tracks
 
Bool align_cat
 
Bool do_hint
 
Bool do_save
 
Bool full_interleave
 
Bool do_frag
 
Bool hint_interleave
 
Bool dump_rtp
 
Bool regular_iod
 
Bool remove_sys_tracks
 
Bool remove_hint
 
Bool remove_root_od
 
Bool print_sdp
 
Bool open_edit
 
Bool dump_cr
 
Bool force_ocr
 
Bool encode
 
Bool do_scene_log
 
Bool dump_srt
 
Bool dump_ttxt
 
Bool do_saf
 
Bool dump_m2ts
 
Bool dump_cart
 
Bool dump_chunk
 
Bool dump_check_xml
 
Bool fuzz_chk
 
Bool do_hash
 
Bool verbose
 
Bool force_cat
 
Bool pack_wgt
 
Bool single_group
 
Bool clean_groups
 
Bool dash_live
 
Bool no_fragments_defaults
 
Bool single_traf_per_moof
 
Bool tfdt_per_traf
 
Bool hls_clock
 
Bool do_mpd_rip
 
Bool merge_vtt_cues
 
Bool get_nb_tracks
 
Bool no_inplace
 
Bool merge_last_seg
 
Bool freeze_box_order
 
Bool no_odf_conf
 
Bool insert_utc
 
Bool chunk_mode
 
Bool HintCopy
 
Bool hint_no_offset
 
Bool do_bin_xml
 
Bool frag_real_time
 
Bool force_co64
 
Bool live_scene
 
Bool use_mfra
 
Bool dump_iod
 
Bool samplegroups_in_traf
 
Bool mvex_after_traks
 
Bool daisy_chain_sidx
 
Bool use_ssix
 
Bool single_segment
 
Bool single_file
 
Bool segment_timeline
 
Bool has_add_image
 
Bool strict_cues
 
Bool use_url_template
 
Bool seg_at_rap
 
Bool frag_at_rap
 
Bool memory_frags
 
Bool keep_utc
 
Bool has_next_arg
 
Bool no_cache
 
Bool no_loop
 
Bool conv_type_from_ext
 
Bool dump_keep_comp
 
u32 stat_level
 
u32 hint_flags
 
u32 import_flags
 
u32 nb_add
 
u32 nb_cat
 
u32 crypt_type
 
u32 agg_samples
 
u32 nb_sdp_ex
 
u32 max_ptime
 
u32 split_size
 
u32 nb_meta_act
 
u32 nb_track_act
 
u32 rtp_rate
 
u32 major_brand
 
u32 nb_alt_brand_add
 
u32 nb_alt_brand_rem
 
u32 old_interleave
 
u32 minor_version
 
u32 conv_type
 
u32 nb_tsel_acts
 
u32 program_number
 
u32 time_shift_depth
 
u32 initial_moof_sn
 
u32 dump_std
 
u32 import_subtitle
 
u32 dump_saps_mode
 
u32 force_new
 
u32 compress_moov
 
u32 track_dump_type
 
u32 dump_isom
 
u32 dump_timestamps
 
u32 dump_nal_type
 
u32 do_flat
 
u32 print_info
 
u32 size_top_box
 
u32 fs_dump_flags
 
u32 dump_chap
 
u32 dump_udta_type
 
u32 moov_pading
 
u32 sdtp_in_traf
 
u32 segment_marker
 
u32 timescale
 
u32 dash_scale
 
u32 MTUSize
 
u32 run_for
 
u32 dash_cumulated_time
 
u32 dash_prev_time
 
u32 dash_now_time
 
u32 adjust_split_end
 
u32 nb_mpd_base_urls
 
u32 nb_dash_inputs
 
u64 initial_tfdt
 
s32 subsegs_per_sidx
 
s32 laser_resolution
 
s32 ast_offset_ms
 
char * inName
 
char * outName
 
char * mediaSource
 
char * input_ctx
 
char * output_ctx
 
char * drm_file
 
char * avi2raw
 
char * cprt
 
char * chap_file
 
char * chap_file_qt
 
char * itunes_tags
 
char * pack_file
 
char * raw_cat
 
char * seg_name
 
char * dash_ctx_file
 
char * compress_top_boxes
 
char * high_dynamc_range_filename
 
char * use_init_seg
 
char * box_patch_filename
 
char * udp_dest
 
char * do_mpd_conv
 
char * dash_start_date
 
char * dash_profile_extension
 
char * dash_cues
 
char * do_wget
 
char * mux_name
 
char * seg_ext
 
char * init_seg_ext
 
char * dash_title
 
char * dash_source
 
char * dash_more_info
 
char * split_range_str
 
GF_DASH_ContentLocationMode cp_location_mode
 
GF_MemTrackerType mem_track
 
GF_DASHPSSHMode pssh_mode
 
GF_DashProfile dash_profile
 
GF_DASH_SplitMode dash_split_mode
 
GF_DashSwitchingMode bitstream_switching_mode
 
GF_DashDynamicMode dash_mode
 
GF_SceneDumpFormat dump_mode
 
MetaActionmetas
 
TrackActiontracks
 
TSELActiontsel_acts
 
SDPLinesdp_lines
 
u32brand_add
 
u32brand_rem
 
char ** mpd_base_urls
 
GF_DashSegmenterInputdash_inputs
 
FILE * logfile
 
GF_ISOFile * file
 
TrackIdentifier info_track_id
 
TrackIdentifier ttxt_track_id
 
TrackIdentifier dump_nal_track
 
TrackIdentifier dump_saps_track
 
TrackIdentifier box_patch_track
 
TrackIdentifier dump_udta_track
 
MP4BoxArg m4b_gen_args []
 
MP4BoxArg m4b_split_args []
 
MP4BoxArg m4b_dash_args []
 
MP4BoxArg m4b_imp_args []
 
static MP4BoxArg m4b_imp_fileopt_args []
 
MP4BoxArg m4b_senc_args []
 
MP4BoxArg m4b_crypt_args []
 
MP4BoxArg m4b_hint_args []
 
MP4BoxArg m4b_extr_args []
 
MP4BoxArg m4b_dump_args []
 
MP4BoxArg m4b_meta_args []
 
MP4BoxArg m4b_swf_args []
 
MP4BoxArg m4b_liveenc_args []
 
MP4BoxArg m4b_usage_args []
 

Data Structure Documentation

◆ SDPLine

struct SDPLine
+ Collaboration diagram for SDPLine:
Data Fields
TrackIdentifier track_id
char * line

◆ MetaRef

struct MetaRef
Data Fields
u32 ref_item_id
u32 ref_type

◆ MetaAction

struct MetaAction
+ Collaboration diagram for MetaAction:
Data Fields
MetaActionType act_type
Bool root_meta
Bool use_dref
TrackIdentifier track_id
u32 meta_4cc
char * szPath
char * szName
char * mime_type
char * enc_type
char * keep_props
u32 item_id
Bool primary
Bool replace
u32 item_type
u32 ref_item_id
GF_List * item_refs
u32 group_id
u32 group_type
GF_ImageItemProperties * image_props

◆ TrackAction

struct TrackAction
+ Collaboration diagram for TrackAction:
Data Fields
TrackActionType act_type
TrackIdentifier target_track
char lang[LANG_SIZE]
GF_Fraction delay
const char * kms
const char * hdl_name
s32 par_num
s32 par_den
u8 force_par
u8 rewrite_bs
u32 dump_type
u32 sample_num
char * out_name
char * src_name
char * string
u32 udta_type
char * kind_scheme
char * kind_value
TrackIdentifier newTrackID
s32 clap_wnum
s32 clap_wden
s32 clap_hnum
s32 clap_hden
s32 clap_honum
s32 clap_hoden
s32 clap_vonum
s32 clap_voden
s32 mx[9]
u64 time

◆ TSELAction

struct TSELAction
+ Collaboration diagram for TSELAction:
Data Fields
TSELActionType act_type
TrackIdentifier target_track
TrackIdentifier reference_track
u32 criteria[30]
u32 nb_criteria
Bool is_switchGroup
u32 switchGroupID

◆ MP4BoxArg

struct MP4BoxArg
Data Fields
GF_GPAC_ARG_BASE void * arg_ptr
u32 argv_val
u16 parse_flags

Macro Definition Documentation

◆ BUFFSIZE

#define BUFFSIZE   8192

◆ DEFAULT_INTERLEAVING_IN_SEC

#define DEFAULT_INTERLEAVING_IN_SEC   0.5

◆ LANG_SIZE

#define LANG_SIZE   50

◆ ARG_OPEN_EDIT

#define ARG_OPEN_EDIT   1

◆ ARG_NEED_SAVE

#define ARG_NEED_SAVE   1<<1

◆ ARG_NO_INPLACE

#define ARG_NO_INPLACE   1<<2

◆ ARG_BIT_MASK

#define ARG_BIT_MASK   1<<3

◆ ARG_BIT_MASK_REM

#define ARG_BIT_MASK_REM   1<<4

◆ ARG_HAS_VALUE

#define ARG_HAS_VALUE   1<<5

◆ ARG_DIV_1000

#define ARG_DIV_1000   1<<6

◆ ARG_NON_ZERO

#define ARG_NON_ZERO   1<<7

◆ ARG_64BITS

#define ARG_64BITS   1<<8

◆ ARG_IS_4CC

#define ARG_IS_4CC   1<<9

◆ ARG_BOOL_REV

#define ARG_BOOL_REV   1<<10

◆ ARG_INT_INC

#define ARG_INT_INC   1<<11

◆ ARG_IS_FUN

#define ARG_IS_FUN   1<<12

◆ ARG_EMPTY

#define ARG_EMPTY   1<<13

◆ ARG_PUSH_SYSARGS

#define ARG_PUSH_SYSARGS   1<<14

◆ ARG_IS_FUN2

#define ARG_IS_FUN2   1<<15

◆ MP4BOX_ARG

#define MP4BOX_ARG (   _a,
  _c,
  _f,
  _g,
  _h,
  _i,
  _j 
)    {_a, NULL, _c, NULL, NULL, _f, _g, _h, _i, _j}

◆ MP4BOX_ARG_ALT

#define MP4BOX_ARG_ALT (   _a,
  _b,
  _c,
  _f,
  _g,
  _h,
  _i,
  _j 
)    {_a, _b, _c, NULL, NULL, _f, _g, _h, _i, _j}

◆ MP4BOX_ARG_S

#define MP4BOX_ARG_S (   _a,
  _s,
  _c,
  _g,
  _h,
  _i,
  _j 
)    {_a, NULL, _c, _s, NULL, GF_ARG_CUSTOM, _g, _h, _i, _j}

◆ MP4BOX_ARG_S_ALT

#define MP4BOX_ARG_S_ALT (   _a,
  _b,
  _s,
  _c,
  _g,
  _h,
  _i,
  _j 
)    {_a, _b, _c, _s, NULL, GF_ARG_CUSTOM, _g, _h, _i, _j}

◆ CHECK_IMGPROP

#define CHECK_IMGPROP
Value:
if (!meta->image_props) {\
GF_SAFEALLOC(meta->image_props, GF_ImageItemProperties);\
if (!meta->image_props) return 2;\
}\
Definition: isomedia.h:6335

◆ DOC_AUTOGEN_WARNING

#define DOC_AUTOGEN_WARNING    "<!-- automatically generated - do not edit, patch gpac/applications/mp4box/mp4box.c -->\n"

◆ BASE_PAYT

#define BASE_PAYT   96

Typedef Documentation

◆ parse_arg_fun

typedef u32(* parse_arg_fun) (char *arg_val, u32 param)

◆ parse_arg_fun2

typedef u32(* parse_arg_fun2) (char *arg_name, char *arg_val, u32 param)

Enumeration Type Documentation

◆ MetaActionType

Enumerator
META_ACTION_SET_TYPE 
META_ACTION_ADD_ITEM 
META_ACTION_REM_ITEM 
META_ACTION_SET_PRIMARY_ITEM 
META_ACTION_SET_XML 
META_ACTION_SET_BINARY_XML 
META_ACTION_REM_XML 
META_ACTION_DUMP_ITEM 
META_ACTION_DUMP_XML 
META_ACTION_ADD_IMAGE_ITEM 
META_ACTION_ADD_IMAGE_DERIVED 

◆ TrackActionType

Enumerator
TRACK_ACTION_REM_TRACK 
TRACK_ACTION_SET_LANGUAGE 
TRACK_ACTION_SET_DELAY 
TRACK_ACTION_ENABLE 
TRACK_ACTION_DISABLE 
TRACK_ACTION_REFERENCE 
TRACK_ACTION_SET_KIND 
TRACK_ACTION_REM_KIND 
TRACK_ACTION_SET_ID 
TRACK_ACTION_SET_UDTA 
TRACK_ACTION_SWAP_ID 
TRACK_ACTION_SET_MX 
TRACK_ACTION_SET_EDITS 
TRACK_ACTION_SET_TIME 
TRACK_ACTION_SET_KMS_URI 
TRACK_ACTION_SET_PAR 
TRACK_ACTION_SET_HANDLER_NAME 
TRACK_ACTION_RAW_EXTRACT 
TRACK_ACTION_REM_NON_RAP 
TRACK_ACTION_REM_NON_REFS 
TRACK_ACTION_SET_CLAP 
TRACK_ACTION_SET_MEDIA_TIME 

◆ anonymous enum

anonymous enum
Enumerator
GF_ISOM_CONV_TYPE_ISMA 
GF_ISOM_CONV_TYPE_ISMA_EX 
GF_ISOM_CONV_TYPE_3GPP 
GF_ISOM_CONV_TYPE_IPOD 
GF_ISOM_CONV_TYPE_PSP 
GF_ISOM_CONV_TYPE_MOV 

◆ TSELActionType

Enumerator
TSEL_ACTION_SET_PARAM 
TSEL_ACTION_REMOVE_TSEL 
TSEL_ACTION_REMOVE_ALL_TSEL_IN_GROUP 

◆ anonymous enum

anonymous enum
Enumerator
SEARCH_ARG_EXACT 
SEARCH_ARG_CLOSE 
SEARCH_DESC 

Function Documentation

◆ mp4box_cleanup()

static u32 mp4box_cleanup ( u32  ret_code)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ get_file_type_by_ext()

GF_FileType get_file_type_by_ext ( char *  inName)

defined(GPAC_DISABLE_ISOM_WRITE) && !defined(GPAC_DISABLE_AV_PARSERS)

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ init_global_vars()

static void init_global_vars ( )
static
+ Here is the caller graph for this function:

◆ parse_meta_args()

static u32 parse_meta_args ( char *  opts,
MetaActionType  act_type 
)
static
+ Here is the call graph for this function:

◆ parse_tsel_args()

static Bool parse_tsel_args ( char *  opts,
TSELActionType  act 
)
static
+ Here is the call graph for this function:

◆ 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:

◆ parse_track_id()

static Bool parse_track_id ( TrackIdentifier tkid,
char *  arg_val,
Bool  allow_all 
)
static
+ Here is the caller graph for this function:

◆ print_version()

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

◆ PrintGeneralUsage()

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

◆ PrintSplitUsage()

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

◆ PrintDASHUsage()

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

◆ PrintImportUsage()

void PrintImportUsage ( )
+ 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:

◆ PrintEncodeUsage()

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

◆ PrintEncryptUsage()

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

◆ PrintHintUsage()

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

◆ PrintExtractUsage()

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

◆ PrintDumpUsage()

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

◆ PrintMetaUsage()

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

◆ PrintSWFUsage()

void PrintSWFUsage ( )
+ 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:

◆ PrintCoreUsage()

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

◆ PrintTags()

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

◆ PrintCICP()

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

◆ PrintUsage()

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

◆ PrintHelpForArgs()

static u32 PrintHelpForArgs ( char *  arg_name,
MP4BoxArg args,
GF_GPACArg _args,
u32  search_type,
char *  class_name 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ PrintHelpArg()

static Bool PrintHelpArg ( char *  arg_name,
u32  search_type,
GF_FilterSession *  fs 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ PrintHelp()

static void PrintHelp ( char *  arg_name,
Bool  search_desc,
Bool  no_match 
)
static
+ 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:

◆ set_dash_input()

GF_DashSegmenterInput* set_dash_input ( GF_DashSegmenterInput dash_inputs,
char *  name,
u32 nb_dash_inputs 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ create_new_track_action()

static Bool create_new_track_action ( char *  arg_val,
u32  act_type,
u32  dump_type 
)
static
+ 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_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_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_dash_profile()

u32 parse_dash_profile ( char *  arg_val,
u32  opt 
)

◆ 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_compress()

u32 parse_compress ( 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_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:

◆ mp4box_parse_single_arg_class()

u32 mp4box_parse_single_arg_class ( int  argc,
char **  argv,
char *  arg,
u32 arg_index,
MP4BoxArg arg_class 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ mp4box_parse_single_arg()

Bool mp4box_parse_single_arg ( int  argc,
char **  argv,
char *  arg,
u32 arg_index 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ mp4box_parse_args()

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

◆ scene_coding_log()

void scene_coding_log ( void *  cbk,
GF_LOG_Level  log_level,
GF_LOG_Tool  log_tool,
const char *  fmt,
va_list  vlist 
)
+ Here is the caller graph for this function:

◆ SetupClockReferences()

void SetupClockReferences ( GF_ISOFile *  file)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ HintFile()

GF_Err HintFile ( GF_ISOFile *  file,
u32  MTUSize,
u32  max_ptime,
u32  rtp_rate,
u32  base_flags,
Bool  copy_data,
Bool  interleave,
Bool  regular_iod,
Bool  single_group,
Bool  hint_no_offset 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ check_media_profile()

static void check_media_profile ( GF_ISOFile *  file,
u32  track 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ remove_systems_tracks()

void remove_systems_tracks ( GF_ISOFile *  file)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ xml_bs_to_bin()

static GF_Err xml_bs_to_bin ( char *  inName,
char *  outName,
u32  dump_std 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ do_size_top_boxes()

static u64 do_size_top_boxes ( char *  inName,
char *  compress_top_boxes,
u32  mode 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ do_compress_top_boxes()

static GF_Err do_compress_top_boxes ( char *  inName,
char *  outName 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ hash_file()

static GF_Err hash_file ( char *  name,
u32  dump_std 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ do_raw_cat()

static u32 do_raw_cat ( )
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ do_write_udp()

static u32 do_write_udp ( )
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ convert_mpd()

static u32 convert_mpd ( )
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ do_import_sub()

static u32 do_import_sub ( )
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ do_add_cat()

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

◆ do_scene_encode()

static GF_Err do_scene_encode ( )
static

GPAC_DISABLE_MEDIA_IMPORT && !GPAC_DISABLE_ISOM_WRITE

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ do_dash()

static GF_Err do_dash ( )
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ do_export_tracks_non_isobmf()

static GF_Err do_export_tracks_non_isobmf ( )
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ do_dump_iod()

static GF_Err do_dump_iod ( )
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ get_track_id()

static u32 get_track_id ( GF_ISOFile *  file,
TrackIdentifier tkid 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ do_export_tracks()

static GF_Err do_export_tracks ( )
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ do_meta_act()

static GF_Err do_meta_act ( )
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ do_tsel_act()

static GF_Err do_tsel_act ( )
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ do_ipod_conv()

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

◆ do_track_act()

static GF_Err do_track_act ( )
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ do_qt_keys()

static Bool do_qt_keys ( char *  name,
char *  val 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ do_itunes_tag()

static GF_Err do_itunes_tag ( )
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ set_sdp_ext()

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

◆ do_remux_file()

static GF_Err do_remux_file ( )
static

defined(GPAC_DISABLE_ISOM_HINTING) && !defined(GPAC_DISABLE_SENG)

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ mp4box_main()

int mp4box_main ( int  argc,
char **  argv 
)

GPAC_DISABLE_MEDIA_IMPORT && !GPAC_DISABLE_ISOM_WRITE

defined(GPAC_DISABLE_ISOM_WRITE) && !defined(GPAC_DISABLE_SCENE_ENCODER) && !defined(GPAC_DISABLE_MEDIA_IMPORT)

defined(GPAC_DISABLE_ISOM_HINTING) && !defined(GPAC_DISABLE_SENG)

+ Here is the call graph for this function:

Variable Documentation

◆ outfile

char outfile[GF_MAX_PATH]

◆ smenc_opts

GF_SMEncodeOptions smenc_opts

◆ swf_flags

u32 swf_flags

◆ import_fps

GF_Fraction import_fps

◆ helpout

FILE* helpout

◆ help_flags

u32 help_flags

◆ interleaving_time

Double interleaving_time

◆ split_duration

Double split_duration

◆ split_start

Double split_start

◆ dash_duration

Double dash_duration

◆ dash_subduration

Double dash_subduration

◆ swf_flatten_angle

Double swf_flatten_angle

◆ mpd_live_duration

Double mpd_live_duration

◆ min_buffer

Double min_buffer

◆ mpd_update_time

Double mpd_update_time

◆ arg_parse_res

Bool arg_parse_res

◆ dash_duration_strict

Bool dash_duration_strict

◆ dvbhdemux

Bool dvbhdemux

◆ keep_sys_tracks

Bool keep_sys_tracks

◆ align_cat

Bool align_cat

◆ do_hint

Bool do_hint

◆ do_save

Bool do_save

◆ full_interleave

Bool full_interleave

◆ do_frag

Bool do_frag

◆ hint_interleave

Bool hint_interleave

◆ dump_rtp

Bool dump_rtp

◆ regular_iod

Bool regular_iod

◆ remove_sys_tracks

Bool remove_sys_tracks

◆ remove_hint

Bool remove_hint

◆ remove_root_od

Bool remove_root_od

◆ print_sdp

Bool print_sdp

◆ open_edit

Bool open_edit

◆ dump_cr

Bool dump_cr

◆ force_ocr

Bool force_ocr

◆ encode

Bool encode

◆ do_scene_log

Bool do_scene_log

◆ dump_srt

Bool dump_srt

◆ dump_ttxt

Bool dump_ttxt

◆ do_saf

Bool do_saf

◆ dump_m2ts

Bool dump_m2ts

◆ dump_cart

Bool dump_cart

◆ dump_chunk

Bool dump_chunk

◆ dump_check_xml

Bool dump_check_xml

◆ fuzz_chk

Bool fuzz_chk

◆ do_hash

Bool do_hash

◆ verbose

Bool verbose

◆ force_cat

Bool force_cat

◆ pack_wgt

Bool pack_wgt

◆ single_group

Bool single_group

◆ clean_groups

Bool clean_groups

◆ dash_live

Bool dash_live

◆ no_fragments_defaults

Bool no_fragments_defaults

◆ single_traf_per_moof

Bool single_traf_per_moof

◆ tfdt_per_traf

Bool tfdt_per_traf

◆ hls_clock

Bool hls_clock

◆ do_mpd_rip

Bool do_mpd_rip

◆ merge_vtt_cues

Bool merge_vtt_cues

◆ get_nb_tracks

Bool get_nb_tracks

◆ no_inplace

Bool no_inplace

◆ merge_last_seg

Bool merge_last_seg

◆ freeze_box_order

Bool freeze_box_order

◆ no_odf_conf

Bool no_odf_conf

◆ insert_utc

Bool insert_utc

◆ chunk_mode

Bool chunk_mode

◆ HintCopy

Bool HintCopy

◆ hint_no_offset

Bool hint_no_offset

◆ do_bin_xml

Bool do_bin_xml

◆ frag_real_time

Bool frag_real_time

◆ force_co64

Bool force_co64

◆ live_scene

Bool live_scene

◆ use_mfra

Bool use_mfra

◆ dump_iod

Bool dump_iod

◆ samplegroups_in_traf

Bool samplegroups_in_traf

◆ mvex_after_traks

Bool mvex_after_traks

◆ daisy_chain_sidx

Bool daisy_chain_sidx

◆ use_ssix

Bool use_ssix

◆ single_segment

Bool single_segment

◆ single_file

Bool single_file

◆ segment_timeline

Bool segment_timeline

◆ has_add_image

Bool has_add_image

◆ strict_cues

Bool strict_cues

◆ use_url_template

Bool use_url_template

◆ seg_at_rap

Bool seg_at_rap

◆ frag_at_rap

Bool frag_at_rap

◆ memory_frags

Bool memory_frags

◆ keep_utc

Bool keep_utc

◆ has_next_arg

Bool has_next_arg

◆ no_cache

Bool no_cache

◆ no_loop

Bool no_loop

◆ conv_type_from_ext

Bool conv_type_from_ext

◆ dump_keep_comp

Bool dump_keep_comp

◆ stat_level

u32 stat_level

◆ hint_flags

u32 hint_flags

◆ import_flags

u32 import_flags

◆ nb_add

u32 nb_add

◆ nb_cat

u32 nb_cat

◆ crypt_type

u32 crypt_type

◆ agg_samples

u32 agg_samples

◆ nb_sdp_ex

u32 nb_sdp_ex

◆ max_ptime

u32 max_ptime

◆ split_size

u32 split_size

◆ nb_meta_act

u32 nb_meta_act

◆ nb_track_act

u32 nb_track_act

◆ rtp_rate

u32 rtp_rate

◆ major_brand

u32 major_brand

◆ nb_alt_brand_add

u32 nb_alt_brand_add

◆ nb_alt_brand_rem

u32 nb_alt_brand_rem

◆ old_interleave

u32 old_interleave

◆ minor_version

u32 minor_version

◆ conv_type

u32 conv_type

◆ nb_tsel_acts

u32 nb_tsel_acts

◆ program_number

u32 program_number

◆ time_shift_depth

u32 time_shift_depth

◆ initial_moof_sn

u32 initial_moof_sn

◆ dump_std

u32 dump_std

◆ import_subtitle

u32 import_subtitle

◆ dump_saps_mode

u32 dump_saps_mode

◆ force_new

u32 force_new

◆ compress_moov

u32 compress_moov

◆ track_dump_type

u32 track_dump_type

◆ dump_isom

u32 dump_isom

◆ dump_timestamps

u32 dump_timestamps

◆ dump_nal_type

u32 dump_nal_type

◆ do_flat

u32 do_flat

◆ print_info

u32 print_info

◆ size_top_box

u32 size_top_box

◆ fs_dump_flags

u32 fs_dump_flags

◆ dump_chap

u32 dump_chap

◆ dump_udta_type

u32 dump_udta_type

◆ moov_pading

u32 moov_pading

◆ sdtp_in_traf

u32 sdtp_in_traf

◆ segment_marker

u32 segment_marker

◆ timescale

u32 timescale

◆ dash_scale

u32 dash_scale

◆ MTUSize

u32 MTUSize

◆ run_for

u32 run_for

◆ dash_cumulated_time

u32 dash_cumulated_time

◆ dash_prev_time

u32 dash_prev_time

◆ dash_now_time

u32 dash_now_time

◆ adjust_split_end

u32 adjust_split_end

◆ nb_mpd_base_urls

u32 nb_mpd_base_urls

◆ nb_dash_inputs

u32 nb_dash_inputs

◆ initial_tfdt

u64 initial_tfdt

◆ subsegs_per_sidx

s32 subsegs_per_sidx

◆ laser_resolution

s32 laser_resolution

◆ ast_offset_ms

s32 ast_offset_ms

◆ inName

char* inName

◆ outName

char * outName

◆ mediaSource

char * mediaSource

◆ input_ctx

char * input_ctx

◆ output_ctx

char * output_ctx

◆ drm_file

char * drm_file

◆ avi2raw

char * avi2raw

◆ cprt

char * cprt

◆ chap_file

char * chap_file

◆ chap_file_qt

char * chap_file_qt

◆ itunes_tags

char * itunes_tags

◆ pack_file

char * pack_file

◆ raw_cat

char* raw_cat

◆ seg_name

char * seg_name

◆ dash_ctx_file

char * dash_ctx_file

◆ compress_top_boxes

char * compress_top_boxes

◆ high_dynamc_range_filename

char * high_dynamc_range_filename

◆ use_init_seg

char * use_init_seg

◆ box_patch_filename

char * box_patch_filename

◆ udp_dest

char * udp_dest

◆ do_mpd_conv

char* do_mpd_conv

◆ dash_start_date

char * dash_start_date

◆ dash_profile_extension

char * dash_profile_extension

◆ dash_cues

char * dash_cues

◆ do_wget

char * do_wget

◆ mux_name

char * mux_name

◆ seg_ext

char * seg_ext

◆ init_seg_ext

char * init_seg_ext

◆ dash_title

char * dash_title

◆ dash_source

char * dash_source

◆ dash_more_info

char* dash_more_info

◆ split_range_str

char * split_range_str

◆ cp_location_mode

GF_DASH_ContentLocationMode cp_location_mode

◆ mem_track

GF_MemTrackerType mem_track

◆ pssh_mode

GF_DASHPSSHMode pssh_mode

◆ dash_profile

GF_DashProfile dash_profile

◆ dash_split_mode

GF_DASH_SplitMode dash_split_mode

◆ bitstream_switching_mode

GF_DashSwitchingMode bitstream_switching_mode

◆ dash_mode

GF_DashDynamicMode dash_mode

◆ dump_mode

GF_SceneDumpFormat dump_mode

◆ metas

MetaAction* metas

◆ tracks

TrackAction* tracks

◆ tsel_acts

TSELAction* tsel_acts

◆ sdp_lines

SDPLine* sdp_lines

◆ brand_add

u32* brand_add

◆ brand_rem

u32* brand_rem

◆ mpd_base_urls

char** mpd_base_urls

◆ dash_inputs

GF_DashSegmenterInput* dash_inputs

◆ logfile

FILE* logfile

◆ file

GF_ISOFile* file

◆ info_track_id

TrackIdentifier info_track_id

◆ ttxt_track_id

TrackIdentifier ttxt_track_id

◆ dump_nal_track

TrackIdentifier dump_nal_track

◆ dump_saps_track

TrackIdentifier dump_saps_track

◆ box_patch_track

TrackIdentifier box_patch_track

◆ dump_udta_track

TrackIdentifier dump_udta_track

◆ m4b_gen_args

MP4BoxArg m4b_gen_args[]

◆ m4b_split_args

MP4BoxArg m4b_split_args[]
Initial value:
=
{
MP4BOX_ARG("split", "split in files of given max duration (float number) in seconds. A trailing unit can be specified:\n"
"- `M`, `m`: duration is in minutes\n"
"- `H`, `h`: size is in hours", GF_ARG_STRING, 0, parse_split, 0, ARG_IS_FUN),
MP4BOX_ARG_ALT("split-rap", "splitr", "split in files at each new RAP", GF_ARG_BOOL, 0, parse_split, 1, ARG_IS_FUN),
MP4BOX_ARG_ALT("split-size", "splits", "split in files of given max size (integer number) in kilobytes. A trailing unit can be specified:\n"
"- `M`, `m`: size is in megabytes\n"
"- `G`, `g`: size is in gigabytes", GF_ARG_STRING, 0, parse_split, 2, ARG_IS_FUN),
MP4BOX_ARG_ALT("split-chunk", "splitx", "extract the specified time range as follows:\n"
"- the start time is moved to the RAP sample closest to the specified start time\n"
"- the end time is kept as requested"
MP4BOX_ARG("splitz", "extract the specified time range so that ranges `A:B` and `B:C` share exactly the same boundary `B`:\n"
"- the start time is moved to the RAP sample at or after the specified start time\n"
"- the end time is moved to the frame preceding the RAP sample at or following the specified end time"
MP4BOX_ARG("splitg", "extract the specified time range as follows:\n"
"- the start time is moved to the RAP sample at or before the specified start time\n"
"- the end time is moved to the frame preceding the RAP sample at or following the specified end time"
MP4BOX_ARG("splitf", "extract the specified time range and insert edits such that the extracted output is exactly the specified range\n", GF_ARG_STRING, 0, parse_split, 6, ARG_IS_FUN),
{0}
}
#define GF_ARG_STRING
Definition: main.h:155
#define GF_ARG_BOOL
Definition: main.h:149
u32 parse_split(char *arg_val, u32 opt)
Definition: mp4box.c:2965
#define MP4BOX_ARG_ALT(_a, _b, _c, _f, _g, _h, _i, _j)
Definition: mp4box.c:489
#define ARG_IS_FUN
Definition: mp4box.c:472
#define MP4BOX_ARG(_a, _c, _f, _g, _h, _i, _j)
Definition: mp4box.c:488

◆ m4b_dash_args

MP4BoxArg m4b_dash_args[]

◆ m4b_imp_args

MP4BoxArg m4b_imp_args[]
Initial value:
=
{
MP4BOX_ARG("add", "add given file tracks to file. Multiple inputs can be specified using `+`, e.g. `-add url1+url2`", GF_ARG_STRING, 0, &nb_add, 0, ARG_INT_INC),
MP4BOX_ARG("cat", "concatenate given file samples to file, creating tracks if needed. Multiple inputs can be specified using `+`, e.g/ `-cat url1+url2`. \nNote: This aligns initial timestamp of the file to be concatenated", GF_ARG_STRING, 0, &nb_cat, 0, ARG_INT_INC),
MP4BOX_ARG("catx", "same as [-cat]() but new tracks can be imported before concatenation by specifying `+ADD_COMMAND` where `ADD_COMMAND` is a regular [-add]() syntax", GF_ARG_STRING, 0, &nb_cat, 0, ARG_INT_INC),
MP4BOX_ARG("catpl", "concatenate files listed in the given playlist file (one file per line, lines starting with # are comments). \nNote: Each listed file is concatenated as if called with -cat", GF_ARG_STRING, 0, &nb_cat, 0, ARG_INT_INC),
MP4BOX_ARG("unalign-cat", "do not attempt to align timestamps of samples in-between tracks", GF_ARG_BOOL, 0, &align_cat, 0, ARG_BOOL_REV),
MP4BOX_ARG("force-cat", "skip media configuration check when concatenating file. \nWarning: THIS MAY BREAK THE CONCATENATED TRACK(S)", GF_ARG_BOOL, 0, &force_cat, 0, 0),
MP4BOX_ARG("keep-sys", "keep all MPEG-4 Systems info when using [-add]() and [-cat]() (only used when adding IsoMedia files)", GF_ARG_BOOL, 0, &keep_sys_tracks, 0, 0),
MP4BOX_ARG("dref", "keep media data in original file using `data referencing`. The resulting file only contains the meta-data of the presentation (frame sizes, timing, etc...) and references media data in the original file. This is extremely useful when developing content, since importing and storage of the MP4 file is much faster and the resulting file much smaller. \nNote: Data referencing may fail on some files because it requires the framed data (e.g. an IsoMedia sample) to be continuous in the original file, which is not always the case depending on the original interleaving or bitstream format (__AVC__ or __HEVC__ cannot use this option)", GF_ARG_BOOL, 0, &import_flags, GF_IMPORT_USE_DATAREF, ARG_BIT_MASK),
MP4BOX_ARG_ALT("no-drop", "nodrop", "force constant FPS when importing AVI video", GF_ARG_BOOL, 0, &import_flags, GF_IMPORT_NO_FRAME_DROP, ARG_BIT_MASK),
MP4BOX_ARG("packed", "force packed bitstream when importing raw MPEG-4 part 2 Advanced Simple Profile", GF_ARG_BOOL, 0, &import_flags, GF_IMPORT_FORCE_PACKED, ARG_BIT_MASK),
MP4BOX_ARG("sbr", "backward compatible signaling of AAC-SBR", GF_ARG_BOOL, 0, &import_flags, GF_IMPORT_SBR_IMPLICIT, ARG_BIT_MASK),
MP4BOX_ARG("sbrx", "non-backward compatible signaling of AAC-SBR", GF_ARG_BOOL, 0, &import_flags, GF_IMPORT_SBR_EXPLICIT, ARG_BIT_MASK),
MP4BOX_ARG("ps", "backward compatible signaling of AAC-PS", GF_ARG_BOOL, 0, &import_flags, GF_IMPORT_PS_IMPLICIT, ARG_BIT_MASK),
MP4BOX_ARG("psx", "non-backward compatible signaling of AAC-PS", GF_ARG_BOOL, 0, &import_flags, GF_IMPORT_PS_EXPLICIT, ARG_BIT_MASK),
MP4BOX_ARG("ovsbr", "oversample SBR import (SBR AAC, PS AAC and oversampled SBR cannot be detected at import time)", GF_ARG_BOOL, 0, &import_flags, GF_IMPORT_OVSBR, ARG_BIT_MASK),
MP4BOX_ARG("fps", "force frame rate for video and SUB subtitles import to the given value, expressed as a number, as `TS-inc` or `TS/inc`. \nNote: For raw H263 import, default FPS is `15`, otherwise `25`. This is accepted for ISOBMFF import but `:rescale` option should be preferred", GF_ARG_STRING, 0, parse_fps, 0, ARG_IS_FUN),
MP4BOX_ARG("mpeg4", "force MPEG-4 sample descriptions when possible. For AAC, forces MPEG-4 AAC signaling even if MPEG-2", GF_ARG_BOOL, 0, &import_flags, GF_IMPORT_FORCE_MPEG4, ARG_BIT_MASK),
MP4BOX_ARG("agg", "aggregate N audio frames in 1 sample (3GP media only, maximum value is 15)", GF_ARG_INT, 0, &agg_samples, 0, 0),
{0}
}
@ GF_IMPORT_PS_EXPLICIT
Definition: media_tools.h:228
@ GF_IMPORT_FORCE_PACKED
Definition: media_tools.h:204
@ GF_IMPORT_OVSBR
Definition: media_tools.h:230
@ GF_IMPORT_SBR_IMPLICIT
Definition: media_tools.h:206
@ GF_IMPORT_FORCE_MPEG4
Definition: media_tools.h:211
@ GF_IMPORT_USE_DATAREF
Definition: media_tools.h:200
@ GF_IMPORT_NO_FRAME_DROP
Definition: media_tools.h:202
@ GF_IMPORT_PS_IMPLICIT
Definition: media_tools.h:225
@ GF_IMPORT_SBR_EXPLICIT
Definition: media_tools.h:209
#define GF_ARG_INT
Definition: main.h:151
#define ARG_INT_INC
Definition: mp4box.c:471
Bool keep_sys_tracks
Definition: mp4box.c:220
u32 parse_fps(char *arg_val, u32 opt)
Definition: mp4box.c:2949
u32 agg_samples
Definition: mp4box.c:230
Bool force_cat
Definition: mp4box.c:223
Bool align_cat
Definition: mp4box.c:220
u32 nb_cat
Definition: mp4box.c:230
#define ARG_BOOL_REV
Definition: mp4box.c:470
u32 nb_add
Definition: mp4box.c:230
u32 import_flags
Definition: mp4box.c:230
#define ARG_BIT_MASK
Definition: mp4box.c:463

◆ m4b_imp_fileopt_args

MP4BoxArg m4b_imp_fileopt_args[]
static

◆ m4b_senc_args

MP4BoxArg m4b_senc_args[]
Initial value:
=
{
MP4BOX_ARG("mp4", "specify input file is for BIFS/LASeR encoding", GF_ARG_BOOL, 0, &encode, 0, ARG_OPEN_EDIT),
MP4BOX_ARG("def", "encode DEF names in BIFS", GF_ARG_BOOL, 0, &smenc_opts.flags, GF_SM_ENCODE_USE_NAMES, ARG_BIT_MASK),
MP4BOX_ARG("sync", "force BIFS sync sample generation every given time in ms (cannot be used with [-shadow]() or [-carousel]() )", GF_ARG_INT, 0, parse_senc_param, 0, ARG_IS_FUN),
MP4BOX_ARG("shadow", "force BIFS sync shadow sample generation every given time in ms (cannot be used with [-sync]() or [-carousel]() )", GF_ARG_INT, 0, parse_senc_param, 1, ARG_IS_FUN),
MP4BOX_ARG("carousel", "use BIFS carousel (cannot be used with [-sync]() or [-shadow]() )", GF_ARG_INT, 0, parse_senc_param, 2, ARG_IS_FUN),
MP4BOX_ARG("sclog", "generate scene codec log file if available", GF_ARG_BOOL, 0, &do_scene_log, 0, 0),
MP4BOX_ARG("ms", "import tracks from the given file", GF_ARG_STRING, 0, &mediaSource, 0, 0),
MP4BOX_ARG("ctx-in", "specify initial context (MP4/BT/XMT) file for chunk processing. Input file must be a commands-only file", GF_ARG_STRING, 0, parse_senc_param, 5, ARG_IS_FUN),
MP4BOX_ARG("ctx-out", "specify storage of updated context (MP4/BT/XMT) file for chunk processing, optional", GF_ARG_STRING, 0, &output_ctx, 0, 0),
MP4BOX_ARG("resolution", "resolution factor (-8 to 7, default 0) for LASeR encoding, and all coordinates are multiplied by `2^res` before truncation (LASeR encoding)", GF_ARG_INT, 0, &smenc_opts.resolution, 0, 0),
MP4BOX_ARG("coord-bits", "number of bits used for encoding truncated coordinates (0 to 31, default 12) (LASeR encoding)", GF_ARG_INT, 0, &smenc_opts.coord_bits, 0, 0),
MP4BOX_ARG("scale-bits", "extra bits used for encoding truncated scales (0 to 4, default 0) (LASeR encoding)", GF_ARG_INT, 0, &smenc_opts.scale_bits, 0, 0),
MP4BOX_ARG("auto-quant", "resolution is given as if using [-resolution]() but coord-bits and scale-bits are inferred (LASeR encoding)", GF_ARG_INT, 0, parse_senc_param, 3, ARG_IS_FUN),
MP4BOX_ARG("global-quant", "resolution is given as if using [-resolution]() but the res is inferred (BIFS encoding)", GF_ARG_INT, 0, parse_senc_param, 4, ARG_IS_FUN),
{0}
}
s32 resolution
Definition: scene_manager.h:370
u32 scale_bits
Definition: scene_manager.h:372
u32 flags
Definition: scene_manager.h:363
u32 coord_bits
Definition: scene_manager.h:372
@ GF_SM_ENCODE_USE_NAMES
Definition: scene_manager.h:352
Bool do_scene_log
Definition: mp4box.c:222
#define ARG_OPEN_EDIT
Definition: mp4box.c:459
Bool encode
Definition: mp4box.c:222
u32 parse_senc_param(char *arg_val, u32 opt)
Definition: mp4box.c:2880
char * mediaSource
Definition: mp4box.c:241
GF_SMEncodeOptions smenc_opts
Definition: mp4box.c:199
char * output_ctx
Definition: mp4box.c:241

◆ m4b_crypt_args

MP4BoxArg m4b_crypt_args[]
Initial value:
=
{
MP4BOX_ARG("crypt", "encrypt the input file using the given `CryptFile`", GF_ARG_STRING, 0, parse_cryp, 0, ARG_IS_FUN),
MP4BOX_ARG("decrypt", "decrypt the input file, potentially using the given `CryptFile`. If `CryptFile` is not given, will fail if the key management system is not supported", GF_ARG_STRING, 0, parse_cryp, 1, ARG_IS_FUN | ARG_EMPTY),
MP4BOX_ARG_S("set-kms", "tkID=kms_uri", "change ISMA/OMA KMS location for a given track or for all tracks if `all=` is used", 0, parse_track_action, TRACK_ACTION_SET_KMS_URI, ARG_IS_FUN),
{0}
}
u32 parse_cryp(char *arg_val, u32 opt)
Definition: mp4box.c:2912
#define MP4BOX_ARG_S(_a, _s, _c, _g, _h, _i, _j)
Definition: mp4box.c:490
#define ARG_EMPTY
Definition: mp4box.c:473
@ TRACK_ACTION_SET_KMS_URI
Definition: mp4box.c:132
u32 parse_track_action(char *arg, u32 act_type)
Definition: mp4box.c:2756

◆ m4b_hint_args

MP4BoxArg m4b_hint_args[]
Initial value:
=
{
MP4BOX_ARG("hint", "hint the file for RTP/RTSP", GF_ARG_BOOL, 0, &do_hint, 0, ARG_OPEN_EDIT),
{"mtu", NULL, "specify RTP MTU (max size) in bytes (this includes 12 bytes RTP header)", "1450", NULL, GF_ARG_INT, 0, &MTUSize, 0, 0},
MP4BOX_ARG("copy", "copy media data to hint track rather than reference (speeds up server but takes much more space)", GF_ARG_BOOL, 0, &HintCopy, 0, 0),
MP4BOX_ARG_S("multi", "[maxptime]", "enable frame concatenation in RTP packets if possible (with max duration 100 ms or `maxptime` ms if given)", 0, parse_multi_rtp, 0, ARG_IS_FUN),
{"rate", NULL, "specify rtp rate in Hz when no default for payload", "90000", NULL, GF_ARG_INT, 0, &rtp_rate, 0, 0},
MP4BOX_ARG("mpeg4", "force MPEG-4 generic payload whenever possible", GF_ARG_BOOL, 0, &import_flags, GF_IMPORT_FORCE_MPEG4, ARG_BIT_MASK),
MP4BOX_ARG("latm", "force MPG4-LATM transport for AAC streams", GF_ARG_BOOL, 0, &hint_flags, GP_RTP_PCK_USE_LATM_AAC, ARG_BIT_MASK),
MP4BOX_ARG("static", "enable static RTP payload IDs whenever possible (by default, dynamic payloads are always used)", GF_ARG_BOOL, 0, &hint_flags, GP_RTP_PCK_USE_STATIC_ID, ARG_BIT_MASK),
MP4BOX_ARG("add-sdp", "add given SDP string to movie (`string`) or track (`tkID:string`), `tkID` being the track ID or the hint track ID", GF_ARG_STRING, 0, parse_sdp_ext, 0, ARG_IS_FUN),
MP4BOX_ARG("no-offset", "signal no random offset for sequence number and timestamp (support will depend on server)", GF_ARG_BOOL, 0, &hint_no_offset, 0, 0),
MP4BOX_ARG("unhint", "remove all hinting information from file", GF_ARG_BOOL, 0, &remove_hint, 0, ARG_OPEN_EDIT),
MP4BOX_ARG("group-single", "put all tracks in a single hint group", GF_ARG_BOOL, 0, &single_group, 0, 0),
MP4BOX_ARG("ocr", "force all MPEG-4 streams to be synchronized (MPEG-4 Systems only)", GF_ARG_BOOL, 0, &force_ocr, 0, 0),
MP4BOX_ARG("rap", "signal random access points in RTP packets (MPEG-4 Systems)", GF_ARG_BOOL, 0, parse_rap_ref, 0, ARG_IS_FUN | ARG_EMPTY),
MP4BOX_ARG("ts", "signal AU Time Stamps in RTP packets (MPEG-4 Systems)", GF_ARG_BOOL, 0, &hint_flags, GP_RTP_PCK_SIGNAL_TS, ARG_BIT_MASK),
MP4BOX_ARG("size", "signal AU size in RTP packets (MPEG-4 Systems)", GF_ARG_BOOL, 0, &hint_flags, GP_RTP_PCK_SIGNAL_SIZE, ARG_BIT_MASK),
MP4BOX_ARG("idx", "signal AU sequence numbers in RTP packets (MPEG-4 Systems)", GF_ARG_BOOL, 0, &hint_flags, GP_RTP_PCK_SIGNAL_AU_IDX, ARG_BIT_MASK),
MP4BOX_ARG("iod", "prevent systems tracks embedding in IOD (MPEG-4 Systems), not compatible with [-isma]()", GF_ARG_BOOL, 0, &regular_iod, 0, 0),
{0}
}
@ GP_RTP_PCK_USE_STATIC_ID
Definition: ietf.h:1367
@ GP_RTP_PCK_USE_LATM_AAC
Definition: ietf.h:1383
@ GP_RTP_PCK_SIGNAL_SIZE
Definition: ietf.h:1375
@ GP_RTP_PCK_SIGNAL_AU_IDX
Definition: ietf.h:1373
@ GP_RTP_PCK_SIGNAL_TS
Definition: ietf.h:1377
u32 parse_rap_ref(char *arg_val, u32 opt)
Definition: mp4box.c:2829
u32 parse_multi_rtp(char *arg_val, u32 opt)
Definition: mp4box.c:2870
u32 hint_flags
Definition: mp4box.c:230
Bool hint_no_offset
Definition: mp4box.c:225
Bool single_group
Definition: mp4box.c:223
Bool do_hint
Definition: mp4box.c:221
Bool HintCopy
Definition: mp4box.c:225
u32 MTUSize
Definition: mp4box.c:235
Bool remove_hint
Definition: mp4box.c:221
u32 parse_sdp_ext(char *arg_val, u32 param)
Definition: mp4box.c:1915
u32 rtp_rate
Definition: mp4box.c:231
Bool force_ocr
Definition: mp4box.c:222
Bool regular_iod
Definition: mp4box.c:221

◆ m4b_extr_args

MP4BoxArg m4b_extr_args[]
Initial value:
=
{
MP4BOX_ARG("raw", "extract given track in raw format when supported. Use `tkID:output=FileName` to set output file name", GF_ARG_STRING, 0, parse_track_dump, GF_EXPORT_NATIVE, ARG_IS_FUN),
MP4BOX_ARG("raws", "extract each sample of the given track to a file. Use `tkID:N` to extract the Nth sample", GF_ARG_STRING, 0, parse_track_dump, GF_EXPORT_RAW_SAMPLES, ARG_IS_FUN),
MP4BOX_ARG("nhnt", "extract given track to [NHNT](nhntr) format", GF_ARG_INT, 0, parse_track_dump, GF_EXPORT_NHNT, ARG_IS_FUN),
MP4BOX_ARG("nhml", "extract given track to [NHML](nhmlr) format. Use `tkID:full` for full NHML dump with all packet properties", GF_ARG_STRING, 0, parse_track_dump, GF_EXPORT_NHML, ARG_IS_FUN),
MP4BOX_ARG("webvtt-raw", "extract given track as raw media in WebVTT as metadata. Use `tkID:embedded` to include media data in the WebVTT file", GF_ARG_STRING, 0, parse_track_dump, GF_EXPORT_WEBVTT_META, ARG_IS_FUN),
MP4BOX_ARG("single", "extract given track to a new mp4 file", GF_ARG_INT, 0, parse_track_dump, GF_EXPORT_MP4, ARG_IS_FUN),
MP4BOX_ARG("six", "extract given track as raw media in **experimental** XML streaming instructions", GF_ARG_INT, 0, parse_track_dump, GF_EXPORT_SIX, ARG_IS_FUN),
MP4BOX_ARG("mux", "multiplex input file to given destination", GF_ARG_STRING, 0, &mux_name, 0, 0),
MP4BOX_ARG("qcp", "same as [-raw]() but defaults to QCP file for EVRC/SMV", GF_ARG_INT, 0, parse_track_dump, GF_EXPORT_NATIVE | GF_EXPORT_USE_QCP, ARG_IS_FUN),
MP4BOX_ARG("saf", "multiplex input file to SAF multiplex", GF_ARG_BOOL, 0, &do_saf, 0, 0),
MP4BOX_ARG("dvbhdemux", "demultiplex DVB-H file into IP Datagrams sent on the network", GF_ARG_BOOL, 0, &dvbhdemux, 0, 0),
MP4BOX_ARG("raw-layer", "same as [-raw]() but skips SVC/MVC/LHVC extractors when extracting", GF_ARG_INT, 0, parse_track_dump, GF_EXPORT_NATIVE | GF_EXPORT_SVC_LAYER, ARG_IS_FUN),
MP4BOX_ARG("diod", "extract file IOD in raw format", GF_ARG_BOOL, 0, &dump_iod, 0, 0),
MP4BOX_ARG("mpd", "convert given HLS or smooth manifest (local or remote http) to MPD - options `-url-template` and `-segment-timeline`can be used in this mode. \nNote: This only provides basic conversion, for more advanced conversions, see `gpac -h dasher`\n \nWarning: This is not compatible with other DASH options and does not convert associated segments", GF_ARG_STRING, 0, &do_mpd_conv, 0, 0),
{0}
}
@ GF_EXPORT_MP4
Definition: media_tools.h:1182
@ GF_EXPORT_SIX
Definition: media_tools.h:1212
@ GF_EXPORT_NHNT
Definition: media_tools.h:1178
@ GF_EXPORT_SVC_LAYER
Definition: media_tools.h:1207
@ GF_EXPORT_WEBVTT_META
Definition: media_tools.h:1190
@ GF_EXPORT_RAW_SAMPLES
Definition: media_tools.h:1176
@ GF_EXPORT_USE_QCP
Definition: media_tools.h:1203
@ GF_EXPORT_NATIVE
Definition: media_tools.h:1174
@ GF_EXPORT_NHML
Definition: media_tools.h:1186
Bool do_saf
Definition: mp4box.c:222
char * mux_name
Definition: mp4box.c:243
Bool dvbhdemux
Definition: mp4box.c:220
u32 parse_track_dump(char *arg, u32 dump_type)
Definition: mp4box.c:2749
Bool dump_iod
Definition: mp4box.c:225
char * do_mpd_conv
Definition: mp4box.c:243

◆ m4b_dump_args

MP4BoxArg m4b_dump_args[]

◆ m4b_meta_args

MP4BoxArg m4b_meta_args[]

◆ m4b_swf_args

MP4BoxArg m4b_swf_args[]
Initial value:
=
{
MP4BOX_ARG("global", "all SWF defines are placed in first scene replace rather than when needed", GF_ARG_BOOL, 0, &swf_flags, GF_SM_SWF_STATIC_DICT, ARG_BIT_MASK),
MP4BOX_ARG("no-ctrl", "use a single stream for movie control and dictionary (this will disable ActionScript)", GF_ARG_BOOL, 0, &swf_flags, GF_SM_SWF_SPLIT_TIMELINE, ARG_BIT_MASK_REM),
MP4BOX_ARG("no-text", "remove all SWF text", GF_ARG_BOOL, 0, &swf_flags, GF_SM_SWF_NO_TEXT, ARG_BIT_MASK),
MP4BOX_ARG("no-font", "remove all embedded SWF Fonts (local playback host fonts used)", GF_ARG_BOOL, 0, &swf_flags, GF_SM_SWF_NO_FONT, ARG_BIT_MASK),
MP4BOX_ARG("no-line", "remove all lines from SWF shapes", GF_ARG_BOOL, 0, &swf_flags, GF_SM_SWF_NO_LINE, ARG_BIT_MASK),
MP4BOX_ARG("no-grad", "remove all gradients from swf shapes", GF_ARG_BOOL, 0, &swf_flags, GF_SM_SWF_NO_GRADIENT, ARG_BIT_MASK),
MP4BOX_ARG("quad", "use quadratic bezier curves instead of cubic ones", GF_ARG_BOOL, 0, &swf_flags, GF_SM_SWF_QUAD_CURVE, ARG_BIT_MASK),
MP4BOX_ARG("xlp", "support for lines transparency and scalability", GF_ARG_BOOL, 0, &swf_flags, GF_SM_SWF_SCALABLE_LINE, ARG_BIT_MASK),
MP4BOX_ARG("ic2d", "use indexed curve 2D hardcoded proto", GF_ARG_BOOL, 0, &swf_flags, GF_SM_SWF_USE_IC2D, ARG_BIT_MASK),
MP4BOX_ARG("same-app", "appearance nodes are reused", GF_ARG_BOOL, 0, &swf_flags, GF_SM_SWF_REUSE_APPEARANCE, ARG_BIT_MASK),
MP4BOX_ARG("flatten", "complementary angle below which 2 lines are merged, value `0` means no flattening", GF_ARG_DOUBLE, 0, &swf_flatten_angle, 0, 0),
{0}
}
@ GF_SM_SWF_NO_TEXT
Definition: scene_manager.h:210
@ GF_SM_SWF_NO_FONT
Definition: scene_manager.h:212
@ GF_SM_SWF_NO_GRADIENT
Definition: scene_manager.h:220
@ GF_SM_SWF_SPLIT_TIMELINE
Definition: scene_manager.h:223
@ GF_SM_SWF_NO_LINE
Definition: scene_manager.h:216
@ GF_SM_SWF_USE_IC2D
Definition: scene_manager.h:227
@ GF_SM_SWF_STATIC_DICT
Definition: scene_manager.h:208
@ GF_SM_SWF_SCALABLE_LINE
Definition: scene_manager.h:218
@ GF_SM_SWF_QUAD_CURVE
Definition: scene_manager.h:214
@ GF_SM_SWF_REUSE_APPEARANCE
Definition: scene_manager.h:225
#define GF_ARG_DOUBLE
Definition: main.h:153
Double swf_flatten_angle
Definition: mp4box.c:218
u32 swf_flags
Definition: mp4box.c:202
#define ARG_BIT_MASK_REM
Definition: mp4box.c:464

◆ m4b_liveenc_args

MP4BoxArg m4b_liveenc_args[]
Initial value:
=
{
MP4BOX_ARG("live", "enable live BIFS/LASeR encoder", GF_ARG_BOOL, 0, &live_scene, 0, 0),
GF_DEF_ARG("dst", NULL, "destination IP", NULL, NULL, GF_ARG_STRING, 0),
GF_DEF_ARG("port", NULL, "destination port", "7000", NULL, GF_ARG_INT, 0),
GF_DEF_ARG("mtu", NULL, "path MTU for RTP packets", "1450", NULL, GF_ARG_INT, 0),
GF_DEF_ARG("ifce", NULL, "IP address of the physical interface to use", NULL, NULL, GF_ARG_STRING, 0),
GF_DEF_ARG("ttl", NULL, "time to live for multicast packets", "1", NULL, GF_ARG_INT, 0),
GF_DEF_ARG("sdp", NULL, "output SDP file", "session.sdp", NULL, GF_ARG_STRING, 0),
GF_DEF_ARG("dims", NULL, "turn on DIMS mode for SVG input", NULL, NULL, GF_ARG_BOOL, 0),
GF_DEF_ARG("no-rap", NULL, "disable RAP sending and carousel generation", NULL, NULL, GF_ARG_BOOL, 0),
GF_DEF_ARG("src", NULL, "source of scene updates", NULL, NULL, GF_ARG_STRING, 0),
GF_DEF_ARG("rap", NULL, "duration in ms of base carousel; you can specify the RAP period of a single ESID (not in DIMS) using `ESID=X:time`", NULL, NULL, GF_ARG_INT, 0),
{0}
}
#define GF_DEF_ARG(_a, _b, _c, _d, _e, _f, _g)
Definition: main.h:166
Bool live_scene
Definition: mp4box.c:225

◆ m4b_usage_args

MP4BoxArg m4b_usage_args[]