libgpac
Documentation of the core library of GPAC
Loading...
Searching...
No Matches
isom_intern.c File Reference

Functions

GF_Err gf_isom_parse_root_box (GF_Box **outBox, GF_BitStream *bs, u32 *boxType, u64 *bytesExpected, Bool progressive_mode)
 
GF_Err MergeFragment (GF_MovieFragmentBox *moof, GF_ISOFile *mov)
 
static void FixTrackID (GF_ISOFile *mov)
 
static void FixSDTPInTRAF (GF_MovieFragmentBox *moof)
 
void gf_isom_push_mdat_end (GF_ISOFile *mov, u64 mdat_end)
 
static void convert_compact_sample_groups (GF_List *child_boxes, GF_List *sampleGroups)
 
static GF_Err gf_isom_parse_movie_boxes_internal (GF_ISOFile *mov, u32 *boxType, u64 *bytesMissing, Bool progressive_mode)
 
GF_Err gf_isom_parse_movie_boxes (GF_ISOFile *mov, u32 *boxType, u64 *bytesMissing, Bool progressive_mode)
 
GF_ISOFile * gf_isom_new_movie ()
 
GF_ISOFile * gf_isom_open_file (const char *fileName, GF_ISOOpenMode OpenMode, const char *tmp_dir)
 
GF_Err gf_isom_set_write_callback (GF_ISOFile *mov, GF_Err(*on_block_out)(void *cbk, u8 *data, u32 block_size), GF_Err(*on_block_patch)(void *usr_data, u8 *block, u32 block_size, u64 block_offset, Bool is_insert), void(*on_last_block_start)(void *usr_data), void *usr_data, u32 block_size)
 
u64 gf_isom_get_mp4time ()
 
void gf_isom_delete_movie (GF_ISOFile *mov)
 
GF_TrackBoxgf_isom_get_track_from_id (GF_MovieBox *moov, GF_ISOTrackID trackID)
 
GF_TrackBoxgf_isom_get_track_from_original_id (GF_MovieBox *moov, u32 originalID, u32 originalFile)
 
GF_TrackBoxgf_isom_get_track_from_file (GF_ISOFile *movie, u32 trackNumber)
 
GF_Err GetMediaTime (GF_TrackBox *trak, Bool force_non_empty, u64 movieTime, u64 *MediaTime, s64 *SegmentStartTime, s64 *MediaOffset, u8 *useEdit, u64 *next_edit_start_plus_one)
 
GF_Err GetNextMediaTime (GF_TrackBox *trak, u64 movieTime, u64 *OutMovieTime)
 
GF_Err GetPrevMediaTime (GF_TrackBox *trak, u64 movieTime, u64 *OutMovieTime)
 
GF_Err gf_isom_insert_moov (GF_ISOFile *file)
 
GF_ISOFile * gf_isom_create_movie (const char *fileName, GF_ISOOpenMode OpenMode, const char *tmp_dir)
 
GF_EdtsEntryCreateEditEntry (u64 EditDuration, u64 MediaTime, u32 MediaRate, u8 EditMode)
 
GF_Err gf_isom_add_subsample_info (GF_SubSampleInformationBox *sub_samples, u32 sampleNumber, u32 subSampleSize, u8 priority, u32 reserved, Bool discardable)
 
Bool gf_isom_get_subsample_types (GF_ISOFile *movie, u32 track, u32 subs_index, u32 *flags)
 
u32 gf_isom_sample_get_subsample_entry (GF_ISOFile *movie, u32 track, u32 sampleNumber, u32 flags, GF_SubSampleInfoEntry **sub_sample)
 

Variables

u64 unused_bytes
 

Function Documentation

◆ gf_isom_parse_root_box()

GF_Err gf_isom_parse_root_box ( GF_Box **  outBox,
GF_BitStream *  bs,
u32 boxType,
u64 bytesExpected,
Bool  progressive_mode 
)

◆ MergeFragment()

GF_Err MergeFragment ( GF_MovieFragmentBox moof,
GF_ISOFile *  mov 
)

◆ FixTrackID()

static void FixTrackID ( GF_ISOFile *  mov)
static

◆ FixSDTPInTRAF()

static void FixSDTPInTRAF ( GF_MovieFragmentBox moof)
static

◆ gf_isom_push_mdat_end()

void gf_isom_push_mdat_end ( GF_ISOFile *  mov,
u64  mdat_end 
)

◆ convert_compact_sample_groups()

static void convert_compact_sample_groups ( GF_List *  child_boxes,
GF_List *  sampleGroups 
)
static

◆ gf_isom_parse_movie_boxes_internal()

static GF_Err gf_isom_parse_movie_boxes_internal ( GF_ISOFile *  mov,
u32 boxType,
u64 bytesMissing,
Bool  progressive_mode 
)
static

◆ gf_isom_parse_movie_boxes()

GF_Err gf_isom_parse_movie_boxes ( GF_ISOFile *  mov,
u32 boxType,
u64 bytesMissing,
Bool  progressive_mode 
)

◆ gf_isom_new_movie()

GF_ISOFile * gf_isom_new_movie ( )

◆ gf_isom_open_file()

GF_ISOFile * gf_isom_open_file ( const char *  fileName,
GF_ISOOpenMode  OpenMode,
const char *  tmp_dir 
)

◆ gf_isom_set_write_callback()

GF_Err gf_isom_set_write_callback ( GF_ISOFile *  mov,
GF_Err(*)(void *cbk, u8 *data, u32 block_size)  on_block_out,
GF_Err(*)(void *usr_data, u8 *block, u32 block_size, u64 block_offset, Bool is_insert)  on_block_patch,
void(*)(void *usr_data)  on_last_block_start,
void *  usr_data,
u32  block_size 
)

◆ gf_isom_get_mp4time()

u64 gf_isom_get_mp4time ( )

◆ gf_isom_delete_movie()

void gf_isom_delete_movie ( GF_ISOFile *  mov)

◆ gf_isom_get_track_from_id()

GF_TrackBox * gf_isom_get_track_from_id ( GF_MovieBox moov,
GF_ISOTrackID  trackID 
)

◆ gf_isom_get_track_from_original_id()

GF_TrackBox * gf_isom_get_track_from_original_id ( GF_MovieBox moov,
u32  originalID,
u32  originalFile 
)

◆ gf_isom_get_track_from_file()

GF_TrackBox * gf_isom_get_track_from_file ( GF_ISOFile *  movie,
u32  trackNumber 
)

◆ GetMediaTime()

GF_Err GetMediaTime ( GF_TrackBox trak,
Bool  force_non_empty,
u64  movieTime,
u64 MediaTime,
s64 SegmentStartTime,
s64 MediaOffset,
u8 useEdit,
u64 next_edit_start_plus_one 
)

◆ GetNextMediaTime()

GF_Err GetNextMediaTime ( GF_TrackBox trak,
u64  movieTime,
u64 OutMovieTime 
)

◆ GetPrevMediaTime()

GF_Err GetPrevMediaTime ( GF_TrackBox trak,
u64  movieTime,
u64 OutMovieTime 
)

◆ gf_isom_insert_moov()

GF_Err gf_isom_insert_moov ( GF_ISOFile *  file)

◆ gf_isom_create_movie()

GF_ISOFile * gf_isom_create_movie ( const char *  fileName,
GF_ISOOpenMode  OpenMode,
const char *  tmp_dir 
)

◆ CreateEditEntry()

GF_EdtsEntry * CreateEditEntry ( u64  EditDuration,
u64  MediaTime,
u32  MediaRate,
u8  EditMode 
)

◆ gf_isom_add_subsample_info()

GF_Err gf_isom_add_subsample_info ( GF_SubSampleInformationBox sub_samples,
u32  sampleNumber,
u32  subSampleSize,
u8  priority,
u32  reserved,
Bool  discardable 
)

◆ gf_isom_get_subsample_types()

Bool gf_isom_get_subsample_types ( GF_ISOFile *  movie,
u32  track,
u32  subs_index,
u32 flags 
)

◆ gf_isom_sample_get_subsample_entry()

u32 gf_isom_sample_get_subsample_entry ( GF_ISOFile *  movie,
u32  track,
u32  sampleNumber,
u32  flags,
GF_SubSampleInfoEntry **  sub_sample 
)

Variable Documentation

◆ unused_bytes

u64 unused_bytes
extern