libgpac
Documentation of the core library of GPAC
load_bt_xmt.c File Reference
#include <gpac/internal/compositor_dev.h>
#include <gpac/scene_manager.h>
#include <gpac/constants.h>
#include <gpac/network.h>
#include <gpac/nodes_mpeg4.h>
#include <gpac/utf.h>
+ Include dependency graph for load_bt_xmt.c:

Data Structures

struct  CTXLoadPriv
 

Macros

#define OFFS(_n)   #_n, offsetof(CTXLoadPriv, _n)
 

Functions

void ODS_SetupOD (GF_Scene *scene, GF_ObjectDescriptor *od)
 
static void CTXLoad_ExecuteConditional (M_Conditional *c, GF_Scene *scene)
 
static void CTXLoad_OnActivate (GF_Node *node, GF_Route *route)
 
static void CTXLoad_OnReverseActivate (GF_Node *node, GF_Route *route)
 
void CTXLoad_NodeCallback (void *cbk, GF_SGNodeCbkType type, GF_Node *node, void *param)
 
static GF_Err CTXLoad_Setup (GF_Filter *filter, CTXLoadPriv *priv)
 
GF_Err ctxload_configure_pid (GF_Filter *filter, GF_FilterPid *pid, Bool is_remove)
 
static Bool ctxload_process_event (GF_Filter *filter, const GF_FilterEvent *com)
 
static Bool CTXLoad_StreamInRootOD (GF_ObjectDescriptor *od, u32 ESID)
 
Double CTXLoad_GetVRMLTime (void *cbk)
 
static void CTXLoad_CheckStreams (CTXLoadPriv *priv)
 
static GF_Err ctxload_process (GF_Filter *filter)
 
static void ctxload_finalize (GF_Filter *filter)
 
static const char * ctxload_probe_data (const u8 *probe_data, u32 size, GF_FilterProbeScore *score)
 
const GF_FilterRegister * btplay_register (GF_FilterSession *session)
 

Variables

static const GF_FilterCapability CTXLoadCaps []
 
static const GF_FilterArgs CTXLoadArgs []
 
GF_FilterRegister CTXLoadRegister
 

Data Structure Documentation

◆ CTXLoadPriv

struct CTXLoadPriv
+ Collaboration diagram for CTXLoadPriv:
Data Fields
u32 sax_dur
GF_FilterPid * in_pid
GF_FilterPid * out_pid
GF_Scene * scene
const char * file_name
GF_SceneManager * ctx
GF_SceneLoader load
u64 file_size
u32 load_flags
u32 nb_streams
u32 base_stream_id
u32 last_check_time
u64 last_check_size
GF_List * files_to_delete
FILE * src
u32 file_pos
u64 pck_time
const char * service_url
Bool is_playing
GF_FileIO * fio
Bool load_file
GF_FilterPacket * pck_ref

Macro Definition Documentation

◆ OFFS

#define OFFS (   _n)    #_n, offsetof(CTXLoadPriv, _n)

Function Documentation

◆ ODS_SetupOD()

void ODS_SetupOD ( GF_Scene *  scene,
GF_ObjectDescriptor od 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CTXLoad_ExecuteConditional()

static void CTXLoad_ExecuteConditional ( M_Conditional *  c,
GF_Scene *  scene 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CTXLoad_OnActivate()

static void CTXLoad_OnActivate ( GF_Node node,
GF_Route *  route 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CTXLoad_OnReverseActivate()

static void CTXLoad_OnReverseActivate ( GF_Node node,
GF_Route *  route 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CTXLoad_NodeCallback()

void CTXLoad_NodeCallback ( void *  cbk,
GF_SGNodeCbkType  type,
GF_Node node,
void *  param 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CTXLoad_Setup()

static GF_Err CTXLoad_Setup ( GF_Filter *  filter,
CTXLoadPriv priv 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ctxload_configure_pid()

GF_Err ctxload_configure_pid ( GF_Filter *  filter,
GF_FilterPid *  pid,
Bool  is_remove 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ctxload_process_event()

static Bool ctxload_process_event ( GF_Filter *  filter,
const GF_FilterEvent *  com 
)
static
+ Here is the call graph for this function:

◆ CTXLoad_StreamInRootOD()

static Bool CTXLoad_StreamInRootOD ( GF_ObjectDescriptor od,
u32  ESID 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CTXLoad_GetVRMLTime()

Double CTXLoad_GetVRMLTime ( void *  cbk)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CTXLoad_CheckStreams()

static void CTXLoad_CheckStreams ( CTXLoadPriv priv)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ctxload_process()

static GF_Err ctxload_process ( GF_Filter *  filter)
static
+ Here is the call graph for this function:

◆ ctxload_finalize()

static void ctxload_finalize ( GF_Filter *  filter)
static
+ Here is the call graph for this function:

◆ ctxload_probe_data()

static const char* ctxload_probe_data ( const u8 probe_data,
u32  size,
GF_FilterProbeScore score 
)
static
+ Here is the call graph for this function:

◆ btplay_register()

const GF_FilterRegister* btplay_register ( GF_FilterSession *  session)

Variable Documentation

◆ CTXLoadCaps

const GF_FilterCapability CTXLoadCaps[]
static
Initial value:
=
{
CAP_STRING(GF_CAPS_INPUT, GF_PROP_PID_FILE_EXT, "bt|btz|bt.gz|xmt|xmt.gz|xmtz|wrl|wrl.gz|x3dv|x3dv.gz|x3dvz|x3d|x3d.gz|x3dz|swf|xsr"),
CAP_STRING(GF_CAPS_INPUT, GF_PROP_PID_MIME, "application/x-bt|application/x-xmt|model/vrml|x-model/x-vrml|model/x3d+vrml|model/x3d+xml|application/x-shockwave-flash|application/x-LASeR+xml"),
}
@ GF_CODECID_RAW
Definition: constants.h:600
@ GF_STREAM_SCENE
Definition: constants.h:62
@ GF_STREAM_FILE
Definition: constants.h:104
#define GF_CAPS_OUTPUT
Definition: filters.h:2232
#define CAP_UINT(_f, _a, _b)
Definition: filters.h:2172
#define CAP_STRING(_f, _a, _b)
Definition: filters.h:2194
#define GF_CAPS_INPUT
Definition: filters.h:2220
@ GF_PROP_PID_CODECID
Definition: filters.h:1116
@ GF_PROP_PID_STREAM_TYPE
Definition: filters.h:1112
@ GF_PROP_PID_FILE_EXT
Definition: filters.h:1190
@ GF_PROP_PID_MIME
Definition: filters.h:1189

◆ CTXLoadArgs

const GF_FilterArgs CTXLoadArgs[]
static
Initial value:
=
{
{ OFFS(sax_dur), "duration for SAX parsing (XMT), 0 disables SAX parsing", GF_PROP_UINT, "0", NULL, GF_FS_ARG_HINT_ADVANCED},
{0}
}
@ GF_FS_ARG_HINT_ADVANCED
Definition: filters.h:2102
@ GF_PROP_UINT
Definition: filters.h:852
#define OFFS(_n)
Definition: load_bt_xmt.c:982

◆ CTXLoadRegister

GF_FilterRegister CTXLoadRegister
Initial value:
= {
.name = "btplay",
GF_FS_SET_HELP("This filter parses MPEG-4 BIFS (BT and XMT), VRML97 and X3D (wrl and XML) files directly into the scene graph of the compositor.\n"
"\n"
"When [-sax_dur=N]() is set, the filter will do a progressive load of the source and cancel current loading when processing time is higher than `N`.\n")
.private_size = sizeof(CTXLoadPriv),
.finalize = ctxload_finalize,
.process = ctxload_process,
.configure_pid = ctxload_configure_pid,
.process_event = ctxload_process_event,
.probe_data = ctxload_probe_data,
.hint_class_type = GF_FS_CLASS_DECODER
}
#define GF_FS_SET_HELP(_help)
Definition: filters.h:2372
#define SETCAPS(__struct)
Definition: filters.h:2364
@ GF_FS_REG_MAIN_THREAD
Definition: filters.h:2387
@ GF_FS_CLASS_DECODER
Definition: filters.h:2465
attribute Array args
Definition: jsf.idl:24
static const GF_FilterCapability CTXLoadCaps[]
Definition: load_bt_xmt.c:972
static Bool ctxload_process_event(GF_Filter *filter, const GF_FilterEvent *com)
Definition: load_bt_xmt.c:261
static const char * ctxload_probe_data(const u8 *probe_data, u32 size, GF_FilterProbeScore *score)
Definition: load_bt_xmt.c:829
static const GF_FilterArgs CTXLoadArgs[]
Definition: load_bt_xmt.c:984
static GF_Err ctxload_process(GF_Filter *filter)
Definition: load_bt_xmt.c:368
static void ctxload_finalize(GF_Filter *filter)
Definition: load_bt_xmt.c:815
GF_Err ctxload_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool is_remove)
Definition: load_bt_xmt.c:158
Definition: load_bt_xmt.c:35