GPAC
Open Source Multimedia Framework. For more information, check out http://gpac.wp.mines-telecom.fr
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups
scene_manager.h File Reference
#include <gpac/isomedia.h>
#include <gpac/mpeg4_odf.h>
#include <gpac/scenegraph_vrml.h>
+ Include dependency graph for scene_manager.h:
+ This graph shows which files directly or indirectly include this file:

Data Structures

struct  GF_AUContext
 
struct  GF_StreamContext
 
struct  GF_SceneManager
 
struct  GF_SceneLoader
 
struct  GF_SMEncodeOptions
 
struct  GF_NodeStats
 
struct  GF_SceneStatistics
 

Enumerations

enum  { GF_SM_AU_RAP = 1, GF_SM_AU_NOT_AGGREGATED = 1<<1, GF_SM_AU_MODIFIED = 1<<2, GF_SM_AU_CAROUSEL = 1<<3 }
 
enum  {
  GF_SM_SWF_STATIC_DICT = 1, GF_SM_SWF_NO_TEXT = (1<<1), GF_SM_SWF_NO_FONT = (1<<2), GF_SM_SWF_QUAD_CURVE = (1<<3),
  GF_SM_SWF_NO_LINE = (1<<4), GF_SM_SWF_SCALABLE_LINE = (1<<5), GF_SM_SWF_NO_GRADIENT = (1<<6), GF_SM_SWF_SPLIT_TIMELINE = (1<<7),
  GF_SM_SWF_REUSE_APPEARANCE = (1<<9), GF_SM_SWF_USE_IC2D = (1<<10), GF_SM_SWF_USE_SVG = (1<<11)
}
 
enum  {
  GF_SM_LOAD_MPEG4_STRICT = 1, GF_SM_LOAD_FOR_PLAYBACK = 1<<1, GF_SM_LOAD_CONTEXT_READY = 1<<2, GF_SM_LOAD_CONTEXT_STREAMING = 1<<3,
  GF_SM_LOAD_EMBEDS_RES = 1<<4
}
 
enum  {
  GF_SM_LOAD_BT = 1, GF_SM_LOAD_VRML, GF_SM_LOAD_X3DV, GF_SM_LOAD_XMTA,
  GF_SM_LOAD_X3D, GF_SM_LOAD_SVG, GF_SM_LOAD_XSR, GF_SM_LOAD_DIMS,
  GF_SM_LOAD_SWF, GF_SM_LOAD_QT, GF_SM_LOAD_MP4, GF_SM_LOAD_XBL
}
 
enum  { GF_SM_ENCODE_USE_NAMES = 1, GF_SM_ENCODE_RAP_INBAND = 2, GF_SM_ENCODE_RAP_SHADOW = 4 }
 
enum  {
  GF_SM_DUMP_BT = 0, GF_SM_DUMP_XMTA, GF_SM_DUMP_VRML, GF_SM_DUMP_X3D_VRML,
  GF_SM_DUMP_X3D_XML, GF_SM_DUMP_LASER, GF_SM_DUMP_SVG, GF_SM_DUMP_XML,
  GF_SM_DUMP_AUTO_TXT, GF_SM_DUMP_AUTO_XML
}
 

Functions

Bool gf_node_in_table (GF_Node *node, u32 NDTType)
 
GF_SceneManagergf_sm_new (GF_SceneGraph *scene_graph)
 
void gf_sm_del (GF_SceneManager *ctx)
 
GF_StreamContextgf_sm_stream_new (GF_SceneManager *ctx, u16 ES_ID, u8 streamType, u8 objectType)
 
void gf_sm_stream_del (GF_SceneManager *ctx, GF_StreamContext *sc)
 
GF_StreamContextgf_sm_stream_find (GF_SceneManager *ctx, u16 ES_ID)
 
GF_AUContextgf_sm_stream_au_new (GF_StreamContext *stream, u64 timing, Double time_ms, Bool isRap)
 
GF_MuxInfogf_sm_get_mux_info (GF_ESD *src)
 
void gf_sm_reset (GF_SceneManager *ctx)
 
GF_Err gf_sm_aggregate (GF_SceneManager *ctx, u16 ESID)
 
GF_Err gf_sm_import_bifs_subtitle (GF_SceneManager *ctx, GF_ESD *src, GF_MuxInfo *mux)
 
GF_Err gf_sm_load_init (GF_SceneLoader *load)
 
GF_Err gf_sm_load_run (GF_SceneLoader *load)
 
void gf_sm_load_done (GF_SceneLoader *load)
 
GF_Err gf_sm_load_suspend (GF_SceneLoader *load, Bool suspend)
 
GF_Err gf_sm_load_string (GF_SceneLoader *load, const char *str, Bool clean_at_end)
 
GF_Err gf_sm_encode_to_file (GF_SceneManager *ctx, GF_ISOFile *mp4, GF_SMEncodeOptions *opt)
 
GF_Err gf_sm_dump (GF_SceneManager *ctx, char *rad_name, u32 dump_mode)
 
GF_SceneDumper * gf_sm_dumper_new (GF_SceneGraph *graph, char *_rad_name, char indent_char, u32 dump_mode)
 
void gf_sm_dumper_set_extra_graph (GF_SceneDumper *sdump, GF_SceneGraph *extra)
 
void gf_sm_dumper_del (GF_SceneDumper *bd)
 
char * gf_sm_dump_get_name (GF_SceneDumper *bd)
 
GF_Err gf_sm_dump_command_list (GF_SceneDumper *sdump, GF_List *comList, u32 indent, Bool skip_first_replace)
 
GF_Err gf_sm_dump_graph (GF_SceneDumper *sdump, Bool skip_proto, Bool skip_routes)
 
GF_StatManager * gf_sm_stats_new ()
 
void gf_sm_stats_del (GF_StatManager *stat)
 
void gf_sm_stats_reset (GF_StatManager *stat)
 
GF_SceneStatisticsgf_sm_stats_get (GF_StatManager *stat)
 
GF_Err gf_sm_stats_for_graph (GF_StatManager *stat, GF_SceneGraph *sg)
 
GF_Err gf_sm_stats_for_scene (GF_StatManager *stat, GF_SceneManager *sm)
 
GF_Err gf_sm_stats_for_command (GF_StatManager *stat, GF_Command *com)
 

Data Structure Documentation

struct GF_AUContext
+ Collaboration diagram for GF_AUContext:
Data Fields
u64 timing
Double timing_sec
GF_List * commands
u32 flags
struct _stream_context * owner
struct GF_StreamContext
+ Collaboration diagram for GF_StreamContext:
Data Fields
u16 ESID
char * name
u8 streamType
u8 objectType
u32 timeScale
GF_List * AUs
u64 last_au_time
Bool in_root_od
u32 current_au_count
char * dec_cfg
u32 dec_cfg_len
u64 imp_exp_time
u16 aggregate_on_esid
u32 carousel_period
Bool disable_aggregation
struct GF_SceneManager
+ Collaboration diagram for GF_SceneManager:
Data Fields
GF_SceneGraph * scene_graph
GF_List * streams
GF_ObjectDescriptor * root_od
u32 scene_width
u32 scene_height
Bool is_pixel_metrics
u32 max_node_id
u32 max_route_id
u32 max_proto_id
struct GF_SMEncodeOptions
+ Collaboration diagram for GF_SMEncodeOptions:
Data Fields
u32 flags
u32 rap_freq
char * mediaSource
s32 resolution
u32 coord_bits
u32 scale_bits
u32 auto_quant
struct GF_NodeStats
+ Collaboration diagram for GF_NodeStats:
Data Fields
u32 tag
const char * name
u32 nb_created
u32 nb_used
u32 nb_del
struct GF_SceneStatistics
+ Collaboration diagram for GF_SceneStatistics:
Data Fields
GF_List * node_stats
GF_List * proto_stats
SFVec2f max_2d
SFVec2f min_2d
u32 int_res_2d
u32 frac_res_2d
u32 scale_int_res_2d
u32 scale_frac_res_2d
Fixed max_fixed
Fixed min_fixed
u32 count_2d
u32 rem_2d
SFVec3f max_3d
SFVec3f min_3d
u32 count_3d
u32 rem_3d
u32 count_float
u32 rem_float
u32 count_color
u32 rem_color
u32 count_2f
u32 count_3f
u32 nb_svg_attributes
GF_StreamContext * base_layer

Enumeration Type Documentation

anonymous enum
Enumerator
GF_SM_AU_RAP 
GF_SM_AU_NOT_AGGREGATED 
GF_SM_AU_MODIFIED 
GF_SM_AU_CAROUSEL 
anonymous enum
Enumerator
GF_SM_SWF_STATIC_DICT 
GF_SM_SWF_NO_TEXT 
GF_SM_SWF_NO_FONT 
GF_SM_SWF_QUAD_CURVE 
GF_SM_SWF_NO_LINE 
GF_SM_SWF_SCALABLE_LINE 
GF_SM_SWF_NO_GRADIENT 
GF_SM_SWF_SPLIT_TIMELINE 
GF_SM_SWF_REUSE_APPEARANCE 
GF_SM_SWF_USE_IC2D 
GF_SM_SWF_USE_SVG 
anonymous enum
Enumerator
GF_SM_LOAD_MPEG4_STRICT 
GF_SM_LOAD_FOR_PLAYBACK 
GF_SM_LOAD_CONTEXT_READY 
GF_SM_LOAD_CONTEXT_STREAMING 
GF_SM_LOAD_EMBEDS_RES 
anonymous enum
Enumerator
GF_SM_LOAD_BT 
GF_SM_LOAD_VRML 
GF_SM_LOAD_X3DV 
GF_SM_LOAD_XMTA 
GF_SM_LOAD_X3D 
GF_SM_LOAD_SVG 
GF_SM_LOAD_XSR 
GF_SM_LOAD_DIMS 
GF_SM_LOAD_SWF 
GF_SM_LOAD_QT 
GF_SM_LOAD_MP4 
GF_SM_LOAD_XBL 
anonymous enum
Enumerator
GF_SM_ENCODE_USE_NAMES 
GF_SM_ENCODE_RAP_INBAND 
GF_SM_ENCODE_RAP_SHADOW 
anonymous enum
Enumerator
GF_SM_DUMP_BT 
GF_SM_DUMP_XMTA 
GF_SM_DUMP_VRML 
GF_SM_DUMP_X3D_VRML 
GF_SM_DUMP_X3D_XML 
GF_SM_DUMP_LASER 
GF_SM_DUMP_SVG 
GF_SM_DUMP_XML 
GF_SM_DUMP_AUTO_TXT 
GF_SM_DUMP_AUTO_XML 

Function Documentation

Bool gf_node_in_table ( GF_Node node,
u32  NDTType 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_SceneManager* gf_sm_new ( GF_SceneGraph *  scene_graph)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gf_sm_del ( GF_SceneManager ctx)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_StreamContext* gf_sm_stream_new ( GF_SceneManager ctx,
u16  ES_ID,
u8  streamType,
u8  objectType 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gf_sm_stream_del ( GF_SceneManager ctx,
GF_StreamContext sc 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_StreamContext* gf_sm_stream_find ( GF_SceneManager ctx,
u16  ES_ID 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_AUContext* gf_sm_stream_au_new ( GF_StreamContext stream,
u64  timing,
Double  time_ms,
Bool  isRap 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_MuxInfo* gf_sm_get_mux_info ( GF_ESD src)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gf_sm_reset ( GF_SceneManager ctx)

+ Here is the call graph for this function:

GF_Err gf_sm_aggregate ( GF_SceneManager ctx,
u16  ESID 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_sm_import_bifs_subtitle ( GF_SceneManager ctx,
GF_ESD src,
GF_MuxInfo mux 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_sm_load_init ( GF_SceneLoader *  load)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_sm_load_run ( GF_SceneLoader *  load)

+ Here is the caller graph for this function:

void gf_sm_load_done ( GF_SceneLoader *  load)

+ Here is the caller graph for this function:

GF_Err gf_sm_load_suspend ( GF_SceneLoader *  load,
Bool  suspend 
)

+ Here is the caller graph for this function:

GF_Err gf_sm_load_string ( GF_SceneLoader *  load,
const char *  str,
Bool  clean_at_end 
)

+ Here is the caller graph for this function:

GF_Err gf_sm_encode_to_file ( GF_SceneManager ctx,
GF_ISOFile *  mp4,
GF_SMEncodeOptions opt 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_sm_dump ( GF_SceneManager ctx,
char *  rad_name,
u32  dump_mode 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_SceneDumper* gf_sm_dumper_new ( GF_SceneGraph *  graph,
char *  _rad_name,
char  indent_char,
u32  dump_mode 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gf_sm_dumper_set_extra_graph ( GF_SceneDumper *  sdump,
GF_SceneGraph *  extra 
)

+ Here is the caller graph for this function:

void gf_sm_dumper_del ( GF_SceneDumper *  bd)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

char* gf_sm_dump_get_name ( GF_SceneDumper *  bd)

+ Here is the caller graph for this function:

GF_Err gf_sm_dump_command_list ( GF_SceneDumper *  sdump,
GF_List *  comList,
u32  indent,
Bool  skip_first_replace 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_sm_dump_graph ( GF_SceneDumper *  sdump,
Bool  skip_proto,
Bool  skip_routes 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_StatManager* gf_sm_stats_new ( )

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gf_sm_stats_del ( GF_StatManager *  stat)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gf_sm_stats_reset ( GF_StatManager *  stat)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_SceneStatistics* gf_sm_stats_get ( GF_StatManager *  stat)

+ Here is the caller graph for this function:

GF_Err gf_sm_stats_for_graph ( GF_StatManager *  stat,
GF_SceneGraph *  sg 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_sm_stats_for_scene ( GF_StatManager *  stat,
GF_SceneManager sm 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_sm_stats_for_command ( GF_StatManager *  stat,
GF_Command com 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function: