libgpac
Documentation of the core library of GPAC
|
#include <gpac/filters.h>
#include <gpac/constants.h>
#include <gpac/thread.h>
#include <gpac/list.h>
#include <gpac/bitstream.h>
#include <gpac/isomedia.h>
#include <gpac/network.h>
#include <gpac/avparse.h>
Data Structures | |
struct | RawAudioInfo |
struct | FileListPid |
struct | FileListEntry |
struct | GF_FileListCtx |
Macros | |
#define | SET_SOURCE(_filter, _from) |
#define | OFFS(_n) #_n, offsetof(GF_FileListCtx, _n) |
Enumerations | |
enum | { FLIST_STATE_STOP =0 , FLIST_STATE_PLAY , FLIST_STATE_WAIT_PLAY } |
enum | { FL_SORT_NONE =0 , FL_SORT_NAME , FL_SORT_SIZE , FL_SORT_DATE , FL_SORT_DATEX } |
enum | { FL_SPLICE_NONE =0 , FL_SPLICE_BEFORE , FL_SPLICE_ACTIVE , FL_SPLICE_AFTER } |
enum | { FL_RAW_AV =0 , FL_RAW_AUDIO , FL_RAW_VIDEO , FL_RAW_NO } |
enum | { FL_SPLICE_DELTA = 1 , FL_SPLICE_FRAME = 1<<1 } |
Functions | |
static void | filelist_start_ipid (GF_FileListCtx *ctx, FileListPid *iopid, u32 prev_timescale, Bool is_reassign) |
static Bool | filelist_merge_prop (void *cbk, u32 prop_4cc, const char *prop_name, const GF_PropertyValue *src_prop) |
static void | filelist_push_period_id (GF_FileListCtx *ctx, GF_FilterPid *opid) |
static void | filelist_override_caps (GF_Filter *filter, GF_FileListCtx *ctx) |
static GF_Err | filelist_configure_pid (GF_Filter *filter, GF_FilterPid *pid, Bool is_remove) |
static Bool | filelist_process_event (GF_Filter *filter, const GF_FilterEvent *evt) |
static void | filelist_check_implicit_cat (GF_FileListCtx *ctx, char *szURL) |
static void | filelist_parse_splice_time (char *aval, GF_Fraction64 *frac, u32 *flags) |
static void | push_chapter (GF_FileListCtx *ctx, char *chap_name) |
static Bool | filelist_next_url (GF_Filter *filter, GF_FileListCtx *ctx, char szURL[GF_MAX_PATH], Bool is_splice_update) |
static Bool | filelist_on_filter_setup_error (GF_Filter *failed_filter, void *udta, GF_Err err) |
static GF_Err | filelist_load_next (GF_Filter *filter, GF_FileListCtx *ctx) |
static s64 | filelist_translate_splice_cts (FileListPid *iopid, u64 cts) |
static Bool | filelist_check_splice (GF_FileListCtx *ctx) |
void | filelist_copy_raw_audio (FileListPid *iopid, const u8 *src, u32 src_size, u32 offset, u8 *dst, u32 nb_samp, RawAudioInfo *ra) |
static void | filelist_forward_splice_pck (FileListPid *iopid, GF_FilterPacket *pck) |
static void | filelist_purge_slice (GF_FileListCtx *ctx) |
void | filelist_send_packet (GF_FileListCtx *ctx, FileListPid *iopid, GF_FilterPacket *pck, Bool is_splice_forced) |
static GF_Err | filelist_process (GF_Filter *filter) |
static void | filelist_add_entry (GF_FileListCtx *ctx, FileListEntry *fentry) |
static Bool | filelist_enum (void *cbck, char *item_name, char *item_path, GF_FileEnumInfo *file_info) |
static GF_Err | filelist_initialize (GF_Filter *filter) |
static void | filelist_finalize (GF_Filter *filter) |
static const char * | filelist_probe_data (const u8 *data, u32 size, GF_FilterProbeScore *score) |
const GF_FilterRegister * | flist_register (GF_FilterSession *session) |
Variables | |
static const GF_FilterCapability | FileListCapsSrc [] |
static const GF_FilterCapability | FileListCapsSrc_RAW_AV [] |
static const GF_FilterCapability | FileListCapsSrc_RAW_A [] |
static const GF_FilterCapability | FileListCapsSrc_RAW_V [] |
static const GF_FilterArgs | GF_FileListArgs [] |
static const GF_FilterCapability | FileListCaps [] |
GF_FilterRegister | FileListRegister |
struct FileListPid |
Data Fields | ||
---|---|---|
GF_FilterPid * | ipid | |
GF_FilterPid * | opid | |
GF_FilterPid * | opid_aux | |
u32 | stream_type | |
u64 | max_cts | |
u64 | max_dts | |
u32 | o_timescale | |
u32 | timescale | |
u64 | cts_o | |
u64 | dts_o | |
Bool | single_frame | |
Bool | is_eos | |
u64 | dts_sub | |
u64 | first_dts_plus_one | |
u64 | prev_max_dts | |
u64 | prev_cts_o | |
u64 | prev_dts_o | |
Bool | skip_dts_init | |
u32 | play_state | |
Bool | send_cue | |
s32 | delay | |
s32 | initial_delay | |
RawAudioInfo | ra_info | |
RawAudioInfo | splice_ra_info | |
s32 | audio_samples_to_keep | |
GF_FilterPid * | splice_ipid | |
Bool | splice_ready | |
u64 | cts_o_splice | |
u64 | dts_o_splice | |
u64 | dts_sub_splice | |
u32 | timescale_splice | |
s32 | splice_delay | |
Bool | wait_rap |
struct GF_FileListCtx |
Data Fields | ||
---|---|---|
Bool | revert | |
Bool | sigcues | |
Bool | fdel | |
Bool | keepts | |
Bool | flush | |
u32 | raw | |
s32 | floop | |
u32 | fsort | |
u32 | ka | |
u64 | timeout | |
GF_PropStringList | srcs | |
GF_Fraction | fdur | |
u32 | timescale | |
GF_FilterPid * | file_pid | |
char * | file_path | |
u32 | last_url_crc | |
u32 | last_url_lineno | |
u32 | last_splice_crc | |
u32 | last_splice_lineno | |
Bool | load_next | |
GF_List * | filter_srcs | |
GF_List * | io_pids | |
Bool | is_eos | |
GF_Fraction64 | cts_offset | |
GF_Fraction64 | dts_offset | |
GF_Fraction64 | wait_dts_plus_one | |
GF_Fraction64 | dts_sub_plus_one | |
u32 | sync_init_time | |
GF_Fraction64 | prev_cts_offset | |
GF_Fraction64 | prev_dts_offset | |
u32 | nb_repeat | |
Double | start | |
Double | stop | |
Bool | do_cat | |
Bool | do_del | |
Bool | src_error | |
u64 | start_range | |
u64 | end_range | |
GF_List * | file_list | |
s32 | file_list_idx | |
u64 | current_file_dur_us | |
Bool | last_is_isom | |
u32 | wait_update_start | |
u64 | last_file_modif_time | |
Bool | skip_sync | |
Bool | first_loaded | |
char * | frag_url | |
char * | unknown_params | |
char * | pid_props | |
Bool | flushed | |
GF_Fraction64 | splice_start | |
GF_Fraction64 | splice_end | |
u32 | flags_splice_start | |
u32 | flags_splice_end | |
u32 | splice_state | |
FileListPid * | splice_ctrl | |
u64 | splice_end_cts | |
u64 | splice_start_cts | |
u64 | spliced_current_cts | |
Bool | wait_splice_start | |
Bool | wait_splice_end | |
Bool | wait_source | |
GF_Fraction64 | cts_offset_at_splice | |
GF_Fraction64 | dts_offset_at_splice | |
GF_Fraction64 | dts_sub_plus_one_at_splice | |
GF_List * | splice_srcs | |
char * | dyn_period_id | |
u32 | cur_splice_index | |
u32 | splice_nb_repeat | |
Bool | keep_splice | |
Bool | mark_only | |
Bool | was_kept | |
char * | splice_props | |
char * | splice_pid_props | |
GF_Fraction64 | init_splice_start | |
GF_Fraction64 | init_splice_end | |
u32 | init_flags_splice_start | |
u32 | init_flags_splice_end | |
Double | init_start | |
Double | init_stop | |
Bool | force_splice_resume | |
u32 | sigfrag_mode | |
char * | rel_url | |
char * | abs_url | |
char * | init_url | |
Bool | src_has_seen_eos | |
GF_PropUIntList | chap_times | |
GF_PropStringList | chap_names |
#define SET_SOURCE | ( | _filter, | |
_from | |||
) |
#define OFFS | ( | _n | ) | #_n, offsetof(GF_FileListCtx, _n) |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
void filelist_copy_raw_audio | ( | FileListPid * | iopid, |
const u8 * | src, | ||
u32 | src_size, | ||
u32 | offset, | ||
u8 * | dst, | ||
u32 | nb_samp, | ||
RawAudioInfo * | ra | ||
) |
|
static |
|
static |
void filelist_send_packet | ( | GF_FileListCtx * | ctx, |
FileListPid * | iopid, | ||
GF_FilterPacket * | pck, | ||
Bool | is_splice_forced | ||
) |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
const GF_FilterRegister* flist_register | ( | GF_FilterSession * | session | ) |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
GF_FilterRegister FileListRegister |