libgpac
Documentation of the core library of GPAC
scene_engine.c File Reference
#include <gpac/scene_engine.h>
#include <gpac/scene_manager.h>
#include <gpac/bifs.h>
#include <gpac/nodes_mpeg4.h>
#include <gpac/laser.h>
#include <gpac/constants.h>
#include <gpac/base_coding.h>
+ Include dependency graph for scene_engine.c:

Data Structures

struct  GF_SceneEngine
 

Functions

static GF_Err gf_sm_setup_bifsenc (GF_SceneEngine *seng, GF_StreamContext *sc, GF_ESD *esd)
 
static GF_Err gf_sm_setup_lsrenc (GF_SceneEngine *seng, GF_StreamContext *sc, GF_ESD *esd)
 
static GF_Err gf_sm_live_setup (GF_SceneEngine *seng)
 
GF_EXPORT GF_Err gf_seng_enable_aggregation (GF_SceneEngine *seng, u16 ESID, u16 onESID)
 
static GF_Err gf_seng_encode_dims_au (GF_SceneEngine *seng, u16 ESID, GF_List *commands, u8 **data, u32 *size, Bool compress_dims)
 
static Bool gf_sm_check_for_modif (GF_SceneEngine *seng, GF_AUContext *au)
 
static GF_Err gf_sm_live_encode_scene_au (GF_SceneEngine *seng, gf_seng_callback callback, Bool from_start)
 
GF_EXPORT GF_Err gf_seng_aggregate_context (GF_SceneEngine *seng, u16 ESID)
 
GF_EXPORT GF_Err gf_seng_save_context (GF_SceneEngine *seng, char *ctxFileName)
 
static GF_AUContextgf_seng_create_new_au (GF_StreamContext *sc, u32 time)
 
GF_EXPORT GF_Err gf_seng_encode_from_string (GF_SceneEngine *seng, u16 ESID, Bool disable_aggregation, char *auString, gf_seng_callback callback)
 
GF_EXPORT GF_Err gf_seng_encode_from_file (GF_SceneEngine *seng, u16 ESID, Bool disable_aggregation, char *auFile, gf_seng_callback callback)
 
GF_EXPORT GF_Err gf_seng_encode_context (GF_SceneEngine *seng, gf_seng_callback callback)
 
GF_EXPORT void gf_seng_terminate (GF_SceneEngine *seng)
 
GF_EXPORT GF_Err gf_seng_get_stream_config (GF_SceneEngine *seng, u32 idx, u16 *ESID, const u8 **config, u32 *config_len, u32 *streamType, u32 *codec_id, u32 *timeScale)
 
static void seng_exec_conditional (M_Conditional *c, GF_SceneGraph *scene)
 
static void seng_conditional_activate (GF_Node *node, GF_Route *route)
 
static void seng_conditional_reverse_activate (GF_Node *node, GF_Route *route)
 
static void gf_seng_on_node_modified (void *_seng, GF_SGNodeCbkType type, GF_Node *node, void *ctxdata)
 
GF_EXPORT GF_SceneEngine * gf_seng_init (void *calling_object, char *inputContext, u32 load_type, char *dump_path, Bool embed_resources)
 
GF_EXPORT u32 gf_seng_get_stream_count (GF_SceneEngine *seng)
 
GF_EXPORT GF_Err gf_seng_get_stream_carousel_info (GF_SceneEngine *seng, u16 ESID, u32 *carousel_period, u16 *aggregate_on_es_id)
 
GF_EXPORT char * gf_seng_get_base64_iod (GF_SceneEngine *seng)
 
GF_EXPORT GF_Descriptorgf_seng_get_iod (GF_SceneEngine *seng)
 

Data Structure Documentation

◆ __tag_scene_engine

struct __tag_scene_engine

scene encoding engine object

+ Collaboration diagram for GF_SceneEngine:
Data Fields
GF_SceneGraph * sg
GF_SceneManager * ctx
GF_SceneLoader loader
void * calling_object
Bool owns_context
GF_BifsEncoder * bifsenc
GF_LASeRCodec * lsrenc
u32 start_time
char * dump_path
Bool embed_resources
Bool dump_rap
Bool first_dims_sent

Function Documentation

◆ gf_sm_setup_bifsenc()

static GF_Err gf_sm_setup_bifsenc ( GF_SceneEngine *  seng,
GF_StreamContext sc,
GF_ESD esd 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sm_setup_lsrenc()

static GF_Err gf_sm_setup_lsrenc ( GF_SceneEngine *  seng,
GF_StreamContext sc,
GF_ESD esd 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sm_live_setup()

static GF_Err gf_sm_live_setup ( GF_SceneEngine *  seng)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_seng_encode_dims_au()

static GF_Err gf_seng_encode_dims_au ( GF_SceneEngine *  seng,
u16  ESID,
GF_List *  commands,
u8 **  data,
u32 size,
Bool  compress_dims 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sm_check_for_modif()

static Bool gf_sm_check_for_modif ( GF_SceneEngine *  seng,
GF_AUContext au 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sm_live_encode_scene_au()

static GF_Err gf_sm_live_encode_scene_au ( GF_SceneEngine *  seng,
gf_seng_callback  callback,
Bool  from_start 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_seng_create_new_au()

static GF_AUContext* gf_seng_create_new_au ( GF_StreamContext sc,
u32  time 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ seng_exec_conditional()

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

◆ seng_conditional_activate()

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

◆ seng_conditional_reverse_activate()

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

◆ gf_seng_on_node_modified()

static void gf_seng_on_node_modified ( void *  _seng,
GF_SGNodeCbkType  type,
GF_Node node,
void *  ctxdata 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function: