libgpac
Documentation of the core library of GPAC
compositor.c File Reference
+ Include dependency graph for compositor.c:

Macros

#define SC_DEF_WIDTH   320
 
#define SC_DEF_HEIGHT   240
 

Enumerations

enum  {
  GF_COMPOSITOR_THREAD_START = 0 , GF_COMPOSITOR_THREAD_RUN , GF_COMPOSITOR_THREAD_ABORTING , GF_COMPOSITOR_THREAD_DONE ,
  GF_COMPOSITOR_THREAD_INIT_FAILED
}
 

Functions

static void gf_sc_recompute_ar (GF_Compositor *compositor, GF_Node *top_node)
 
GF_EXPORT Bool gf_sc_send_event (GF_Compositor *compositor, GF_Event *evt)
 
void gf_sc_next_frame_state (GF_Compositor *compositor, u32 state)
 
static void gf_sc_set_fullscreen (GF_Compositor *compositor)
 
static void gf_sc_reconfig_task (GF_Compositor *compositor)
 
static void gf_sc_frame_ifce_done (GF_Filter *filter, GF_FilterPid *pid, GF_FilterPacket *pck)
 
GF_Err gf_sc_frame_ifce_get_plane (GF_FilterFrameInterface *frame_ifce, u32 plane_idx, const u8 **outPlane, u32 *outStride)
 
GF_Err gf_sc_frame_ifce_get_gl_texture (GF_FilterFrameInterface *frame_ifce, u32 plane_idx, u32 *gl_tex_format, u32 *gl_tex_id, GF_Matrix_unexposed *texcoordmatrix)
 
static void gf_sc_flush_video (GF_Compositor *compositor, Bool locked)
 
void gf_sc_render_frame (GF_Compositor *compositor)
 
GF_EXPORT Bool gf_sc_draw_frame (GF_Compositor *compositor, Bool no_flush, s32 *ms_till_next)
 
GF_EXPORT void gf_sc_reset_graphics (GF_Compositor *compositor)
 
static void gf_sc_reset_framerate (GF_Compositor *compositor)
 
static GF_Err nullvout_setup (struct _video_out *vout, void *os_handle, void *os_display, u32 init_flags)
 
static void nullvout_shutdown (struct _video_out *vout)
 
static GF_Err nullvout_flush (struct _video_out *vout, GF_Window *dest)
 
static GF_Err nullvout_fullscreen (struct _video_out *vout, Bool fs_on, u32 *new_disp_width, u32 *new_disp_height)
 
static GF_Err nullvout_evt (struct _video_out *vout, GF_Event *event)
 
static GF_Err nullvout_lock (struct _video_out *vout, GF_VideoSurface *video_info, Bool do_lock)
 
static GF_Err nullvout_blit (struct _video_out *vout, GF_VideoSurface *video_src, GF_Window *src_wnd, GF_Window *dst_wnd, u32 overlay_type)
 
static GF_Err gl_vout_evt (struct _video_out *vout, GF_Event *evt)
 
static GF_Err rawvout_lock (struct _video_out *vout, GF_VideoSurface *vi, Bool do_lock)
 
static GF_Err rawvout_evt (struct _video_out *vout, GF_Event *evt)
 
void gf_sc_setup_passthrough (GF_Compositor *compositor)
 
static GF_Err gf_sc_load_driver (GF_Compositor *compositor)
 
static void gf_sc_check_video_driver (GF_Compositor *compositor)
 
GF_Err gf_sc_load (GF_Compositor *compositor)
 
void gf_sc_unload (GF_Compositor *compositor)
 
void gf_sc_set_fps (GF_Compositor *compositor, GF_Fraction fps)
 
static void gf_sc_set_play_state (GF_Compositor *compositor, u32 PlayState)
 
GF_EXPORT u32 gf_sc_get_clock (GF_Compositor *compositor)
 
GF_EXPORT GF_Err gf_sc_set_scene_size (GF_Compositor *compositor, u32 Width, u32 Height, Bool force_size)
 
GF_EXPORT Fixed gf_sc_svg_convert_length_to_display (GF_Compositor *compositor, SVG_Length *length)
 
void compositor_set_ar_scale (GF_Compositor *compositor, Fixed scaleX, Fixed scaleY)
 
static void gf_sc_reset (GF_Compositor *compositor, Bool has_scene)
 
GF_Err gf_sc_set_scene (GF_Compositor *compositor, GF_SceneGraph *scene_graph)
 
GF_EXPORT void gf_sc_lock (GF_Compositor *compositor, Bool doLock)
 
GF_EXPORT GF_Err gf_sc_set_size (GF_Compositor *compositor, u32 NewWidth, u32 NewHeight)
 
GF_EXPORT void gf_sc_reload_config (GF_Compositor *compositor)
 
static void gf_sc_set_play_state_internal (GF_Compositor *compositor, u32 PlayState, Bool reset_audio, Bool pause_clocks)
 
GF_EXPORT GF_Err gf_sc_set_option (GF_Compositor *compositor, GF_CompositorOption type, u32 value)
 
GF_EXPORT Bool gf_sc_is_over (GF_Compositor *compositor, GF_SceneGraph *scene_graph)
 
GF_EXPORT u32 gf_sc_get_option (GF_Compositor *compositor, GF_CompositorOption type)
 
GF_EXPORT void gf_sc_map_point (GF_Compositor *compositor, s32 X, s32 Y, Fixed *bifsX, Fixed *bifsY)
 
GF_EXPORT GF_Err gf_sc_get_screen_buffer (GF_Compositor *compositor, GF_VideoSurface *framebuffer, GF_CompositorGrabMode depth_dump_mode)
 
GF_EXPORT GF_Err gf_sc_get_offscreen_buffer (GF_Compositor *compositor, GF_VideoSurface *framebuffer, u32 view_idx, GF_CompositorGrabMode depth_dump_mode)
 
GF_EXPORT GF_Err gf_sc_release_screen_buffer (GF_Compositor *compositor, GF_VideoSurface *framebuffer)
 
GF_EXPORT Double gf_sc_get_fps (GF_Compositor *compositor, Bool absoluteFPS)
 
GF_EXPORT void gf_sc_register_time_node (GF_Compositor *compositor, GF_TimeNode *tn)
 
GF_EXPORT void gf_sc_unregister_time_node (GF_Compositor *compositor, GF_TimeNode *tn)
 
static void gf_sc_setup_root_visual (GF_Compositor *compositor, GF_Node *top_node)
 
static Bool gf_sc_draw_scene (GF_Compositor *compositor)
 
static void compositor_release_textures (GF_Compositor *compositor, Bool frame_drawn)
 
GF_EXPORT void gf_sc_invalidate_next_frame (GF_Compositor *compositor)
 
GF_EXPORT Bool gf_sc_frame_was_produced (GF_Compositor *compositor)
 
Bool gf_sc_visual_is_registered (GF_Compositor *compositor, GF_VisualManager *visual)
 
void gf_sc_visual_register (GF_Compositor *compositor, GF_VisualManager *visual)
 
void gf_sc_visual_unregister (GF_Compositor *compositor, GF_VisualManager *visual)
 
void gf_sc_traverse_subscene_ex (GF_Compositor *compositor, GF_Node *inline_parent, GF_SceneGraph *subscene, void *rs)
 
static Bool gf_sc_handle_event_intern (GF_Compositor *compositor, GF_Event *event, Bool from_user)
 
void gf_sc_traverse_subscene (GF_Compositor *compositor, GF_Node *inline_parent, GF_SceneGraph *subscene, void *rs)
 
static Bool gf_sc_on_event_ex (GF_Compositor *compositor, GF_Event *event, Bool from_user)
 
GF_EXPORT Bool gf_sc_on_event (void *cbck, GF_Event *event)
 
GF_EXPORT Bool gf_sc_user_event (GF_Compositor *compositor, GF_Event *event)
 
GF_EXPORT void gf_sc_register_extra_graph (GF_Compositor *compositor, GF_SceneGraph *extra_scene, Bool do_remove)
 
Bool gf_sc_script_action (GF_Compositor *compositor, GF_JSAPIActionType type, GF_Node *n, GF_JSAPIParam *param)
 
Bool gf_sc_pick_in_clipper (GF_TraverseState *tr_state, GF_Rect *clip)
 
GF_EXPORT Bool gf_sc_has_text_selection (GF_Compositor *compositor)
 
GF_EXPORT const char * gf_sc_get_selected_text (GF_Compositor *compositor)
 
void gf_sc_check_focus_upon_destroy (GF_Node *n)
 
void gf_sc_queue_dom_event (GF_Compositor *compositor, GF_Node *node, GF_DOM_Event *evt)
 
void gf_sc_queue_dom_event_on_target (GF_Compositor *compositor, GF_DOM_Event *evt, GF_DOMEventTarget *target, GF_SceneGraph *sg)
 
void sc_cleanup_event_queue (GF_List *evq, GF_Node *node, GF_SceneGraph *sg)
 
void gf_sc_node_destroy (GF_Compositor *compositor, GF_Node *node, GF_SceneGraph *sg)
 
GF_EXPORT Bool gf_sc_navigation_supported (GF_Compositor *compositor, u32 type)
 
u32 gf_sc_check_end_of_scene (GF_Compositor *compositor, Bool skip_interactions)
 
void gf_sc_queue_node_traverse (GF_Compositor *compositor, GF_Node *node)
 
void gf_sc_unqueue_node_traverse (GF_Compositor *compositor, GF_Node *node)
 
void gf_sc_sys_frame_pending (GF_Compositor *compositor, u32 cts, u32 obj_time, GF_Filter *from_filter)
 
Bool gf_sc_check_sys_frame (GF_Scene *scene, GF_ObjectManager *odm, GF_FilterPid *for_pid, GF_Filter *from_filter, u64 cts_in_ms, u32 dur_in_ms)
 
Bool gf_sc_check_gl_support (GF_Compositor *compositor)
 
GF_EXPORT u32 gf_sc_get_time_in_ms (GF_Compositor *sc)
 
GF_EXPORT void gf_sc_switch_quality (GF_Compositor *compositor, Bool up)
 
GF_EXPORT void gf_sc_toggle_addons (GF_Compositor *compositor, Bool show_addons)
 
GF_EXPORT GF_Err gf_sc_set_speed (GF_Compositor *compositor, Fixed speed)
 
GF_EXPORT Bool gf_sc_is_supported_url (GF_Compositor *compositor, const char *fileName, Bool use_parent_url)
 
static u32 gf_sc_get_option_internal (GF_Compositor *compositor, u32 type)
 
GF_EXPORT void gf_sc_navigate_to (GF_Compositor *compositor, const char *toURL)
 
static GF_Err gf_sc_step_clocks_intern (GF_Compositor *compositor, u32 ms_diff, Bool force_resume_pause)
 
GF_EXPORT u32 gf_sc_play_from_time (GF_Compositor *compositor, u64 from_time, u32 pause_at_first_frame)
 
GF_EXPORT void gf_sc_connect_from_time (GF_Compositor *compositor, const char *URL, u64 startTime, u32 pause_at_first_frame, Bool secondary_scene, const char *parent_path)
 
GF_EXPORT void gf_sc_disconnect (GF_Compositor *compositor)
 
static Bool check_in_scene (GF_Scene *scene, GF_ObjectManager *odm)
 
GF_EXPORT GF_Err gf_sc_dump_scene_ex (GF_Compositor *compositor, char *rad_name, char **filename, Bool xml_dump, Bool skip_protos, GF_ObjectManager *scene_od)
 
GF_EXPORT GF_Err gf_sc_dump_scene (GF_Compositor *compositor, char *rad_name, char **filename, Bool xml_dump, Bool skip_protos)
 
GF_EXPORT GF_Err gf_sc_scene_update (GF_Compositor *compositor, char *type, char *com)
 
GF_EXPORT void gf_sc_select_service (GF_Compositor *compositor, u32 service_id)
 
GF_EXPORT const char * gf_sc_get_url (GF_Compositor *compositor)
 
GF_EXPORT const void * gf_sc_get_main_pid (GF_Compositor *compositor)
 
GF_EXPORT const char * gf_sc_get_world_info (GF_Compositor *compositor, GF_List *descriptions)
 
GF_EXPORT GF_Err gf_sc_add_object (GF_Compositor *compositor, const char *url, Bool auto_play)
 
GF_EXPORT Double gf_sc_get_simulation_frame_rate (GF_Compositor *compositor, u32 *nb_frames_drawn)
 
GF_EXPORT u32 gf_sc_get_elapsed_time_in_ms (GF_Compositor *compositor)
 
GF_EXPORT u32 gf_sc_get_current_service_id (GF_Compositor *compositor)
 

Variables

GF_VideoOutput null_vout
 
GF_VideoOutput gl_vout
 
GF_VideoOutput raw_vout
 
u32 time_spent_in_anim
 

Macro Definition Documentation

◆ SC_DEF_WIDTH

#define SC_DEF_WIDTH   320

◆ SC_DEF_HEIGHT

#define SC_DEF_HEIGHT   240

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
GF_COMPOSITOR_THREAD_START 
GF_COMPOSITOR_THREAD_RUN 
GF_COMPOSITOR_THREAD_ABORTING 
GF_COMPOSITOR_THREAD_DONE 
GF_COMPOSITOR_THREAD_INIT_FAILED 

Function Documentation

◆ gf_sc_recompute_ar()

static void gf_sc_recompute_ar ( GF_Compositor *  compositor,
GF_Node top_node 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_send_event()

GF_EXPORT Bool gf_sc_send_event ( GF_Compositor *  compositor,
GF_Event evt 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_next_frame_state()

void gf_sc_next_frame_state ( GF_Compositor *  compositor,
u32  state 
)
+ Here is the caller graph for this function:

◆ gf_sc_set_fullscreen()

static void gf_sc_set_fullscreen ( GF_Compositor *  compositor)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_reconfig_task()

static void gf_sc_reconfig_task ( GF_Compositor *  compositor)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_frame_ifce_done()

static void gf_sc_frame_ifce_done ( GF_Filter *  filter,
GF_FilterPid *  pid,
GF_FilterPacket *  pck 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_frame_ifce_get_plane()

GF_Err gf_sc_frame_ifce_get_plane ( GF_FilterFrameInterface frame_ifce,
u32  plane_idx,
const u8 **  outPlane,
u32 outStride 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_frame_ifce_get_gl_texture()

GF_Err gf_sc_frame_ifce_get_gl_texture ( GF_FilterFrameInterface frame_ifce,
u32  plane_idx,
u32 gl_tex_format,
u32 gl_tex_id,
GF_Matrix_unexposed texcoordmatrix 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_flush_video()

static void gf_sc_flush_video ( GF_Compositor *  compositor,
Bool  locked 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_render_frame()

void gf_sc_render_frame ( GF_Compositor *  compositor)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_reset_framerate()

static void gf_sc_reset_framerate ( GF_Compositor *  compositor)
static
+ Here is the caller graph for this function:

◆ nullvout_setup()

static GF_Err nullvout_setup ( struct _video_out *  vout,
void *  os_handle,
void *  os_display,
u32  init_flags 
)
static
+ Here is the caller graph for this function:

◆ nullvout_shutdown()

static void nullvout_shutdown ( struct _video_out *  vout)
static

◆ nullvout_flush()

static GF_Err nullvout_flush ( struct _video_out *  vout,
GF_Window dest 
)
static

◆ nullvout_fullscreen()

static GF_Err nullvout_fullscreen ( struct _video_out *  vout,
Bool  fs_on,
u32 new_disp_width,
u32 new_disp_height 
)
static
+ Here is the caller graph for this function:

◆ nullvout_evt()

static GF_Err nullvout_evt ( struct _video_out *  vout,
GF_Event event 
)
static
+ Here is the caller graph for this function:

◆ nullvout_lock()

static GF_Err nullvout_lock ( struct _video_out *  vout,
GF_VideoSurface video_info,
Bool  do_lock 
)
static
+ Here is the caller graph for this function:

◆ nullvout_blit()

static GF_Err nullvout_blit ( struct _video_out *  vout,
GF_VideoSurface video_src,
GF_Window src_wnd,
GF_Window dst_wnd,
u32  overlay_type 
)
static
+ Here is the caller graph for this function:

◆ gl_vout_evt()

static GF_Err gl_vout_evt ( struct _video_out *  vout,
GF_Event evt 
)
static
+ Here is the call graph for this function:

◆ rawvout_lock()

static GF_Err rawvout_lock ( struct _video_out *  vout,
GF_VideoSurface vi,
Bool  do_lock 
)
static
+ Here is the call graph for this function:

◆ rawvout_evt()

static GF_Err rawvout_evt ( struct _video_out *  vout,
GF_Event evt 
)
static
+ Here is the call graph for this function:

◆ gf_sc_setup_passthrough()

void gf_sc_setup_passthrough ( GF_Compositor *  compositor)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_load_driver()

static GF_Err gf_sc_load_driver ( GF_Compositor *  compositor)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_check_video_driver()

static void gf_sc_check_video_driver ( GF_Compositor *  compositor)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_set_play_state()

static void gf_sc_set_play_state ( GF_Compositor *  compositor,
u32  PlayState 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_set_scene_size()

GF_EXPORT GF_Err gf_sc_set_scene_size ( GF_Compositor *  compositor,
u32  Width,
u32  Height,
Bool  force_size 
)
+ Here is the caller graph for this function:

◆ gf_sc_svg_convert_length_to_display()

GF_EXPORT Fixed gf_sc_svg_convert_length_to_display ( GF_Compositor *  compositor,
SVG_Length *  length 
)
+ Here is the caller graph for this function:

◆ compositor_set_ar_scale()

void compositor_set_ar_scale ( GF_Compositor *  compositor,
Fixed  scaleX,
Fixed  scaleY 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_reset()

static void gf_sc_reset ( GF_Compositor *  compositor,
Bool  has_scene 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_set_play_state_internal()

static void gf_sc_set_play_state_internal ( GF_Compositor *  compositor,
u32  PlayState,
Bool  reset_audio,
Bool  pause_clocks 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_is_over()

GF_EXPORT Bool gf_sc_is_over ( GF_Compositor *  compositor,
GF_SceneGraph *  scene_graph 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_register_time_node()

GF_EXPORT void gf_sc_register_time_node ( GF_Compositor *  compositor,
GF_TimeNode tn 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_unregister_time_node()

GF_EXPORT void gf_sc_unregister_time_node ( GF_Compositor *  compositor,
GF_TimeNode tn 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_setup_root_visual()

static void gf_sc_setup_root_visual ( GF_Compositor *  compositor,
GF_Node top_node 
)
static

! by default we don't set the focus on the content - this is conform to SVG and avoids displaying the focus box for MPEG-4 !!

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_draw_scene()

static Bool gf_sc_draw_scene ( GF_Compositor *  compositor)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ compositor_release_textures()

static void compositor_release_textures ( GF_Compositor *  compositor,
Bool  frame_drawn 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_visual_is_registered()

Bool gf_sc_visual_is_registered ( GF_Compositor *  compositor,
GF_VisualManager *  visual 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_visual_register()

void gf_sc_visual_register ( GF_Compositor *  compositor,
GF_VisualManager *  visual 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_visual_unregister()

void gf_sc_visual_unregister ( GF_Compositor *  compositor,
GF_VisualManager *  visual 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_traverse_subscene_ex()

void gf_sc_traverse_subscene_ex ( GF_Compositor *  compositor,
GF_Node inline_parent,
GF_SceneGraph *  subscene,
void *  rs 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_handle_event_intern()

static Bool gf_sc_handle_event_intern ( GF_Compositor *  compositor,
GF_Event event,
Bool  from_user 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_on_event_ex()

static Bool gf_sc_on_event_ex ( GF_Compositor *  compositor,
GF_Event event,
Bool  from_user 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_on_event()

GF_EXPORT Bool gf_sc_on_event ( void *  cbck,
GF_Event event 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_pick_in_clipper()

Bool gf_sc_pick_in_clipper ( GF_TraverseState *  tr_state,
GF_Rect clip 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_check_focus_upon_destroy()

void gf_sc_check_focus_upon_destroy ( GF_Node n)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_queue_dom_event()

void gf_sc_queue_dom_event ( GF_Compositor *  compositor,
GF_Node node,
GF_DOM_Event evt 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_queue_dom_event_on_target()

void gf_sc_queue_dom_event_on_target ( GF_Compositor *  compositor,
GF_DOM_Event evt,
GF_DOMEventTarget target,
GF_SceneGraph *  sg 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ sc_cleanup_event_queue()

void sc_cleanup_event_queue ( GF_List *  evq,
GF_Node node,
GF_SceneGraph *  sg 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_navigation_supported()

GF_EXPORT Bool gf_sc_navigation_supported ( GF_Compositor *  compositor,
u32  type 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_check_end_of_scene()

u32 gf_sc_check_end_of_scene ( GF_Compositor *  compositor,
Bool  skip_interactions 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_queue_node_traverse()

void gf_sc_queue_node_traverse ( GF_Compositor *  compositor,
GF_Node node 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_unqueue_node_traverse()

void gf_sc_unqueue_node_traverse ( GF_Compositor *  compositor,
GF_Node node 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_sys_frame_pending()

void gf_sc_sys_frame_pending ( GF_Compositor *  compositor,
u32  cts,
u32  obj_time,
GF_Filter *  from_filter 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_check_sys_frame()

Bool gf_sc_check_sys_frame ( GF_Scene *  scene,
GF_ObjectManager *  odm,
GF_FilterPid *  for_pid,
GF_Filter *  from_filter,
u64  cts_in_ms,
u32  dur_in_ms 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_check_gl_support()

Bool gf_sc_check_gl_support ( GF_Compositor *  compositor)
+ Here is the caller graph for this function:

◆ gf_sc_get_option_internal()

static u32 gf_sc_get_option_internal ( GF_Compositor *  compositor,
u32  type 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_step_clocks_intern()

static GF_Err gf_sc_step_clocks_intern ( GF_Compositor *  compositor,
u32  ms_diff,
Bool  force_resume_pause 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ check_in_scene()

static Bool check_in_scene ( GF_Scene *  scene,
GF_ObjectManager *  odm 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_dump_scene_ex()

GF_EXPORT GF_Err gf_sc_dump_scene_ex ( GF_Compositor *  compositor,
char *  rad_name,
char **  filename,
Bool  xml_dump,
Bool  skip_protos,
GF_ObjectManager *  scene_od 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_get_elapsed_time_in_ms()

GF_EXPORT u32 gf_sc_get_elapsed_time_in_ms ( GF_Compositor *  compositor)
+ Here is the call graph for this function:

Variable Documentation

◆ null_vout

GF_VideoOutput null_vout
Initial value:
= {
.Setup = nullvout_setup,
.Shutdown = nullvout_shutdown,
.Flush = nullvout_flush,
.SetFullScreen = nullvout_fullscreen,
.ProcessEvent = nullvout_evt,
.LockBackBuffer = nullvout_lock,
.Blit = nullvout_blit,
}
static GF_Err nullvout_evt(struct _video_out *vout, GF_Event *event)
Definition: compositor.c:406
static GF_Err nullvout_setup(struct _video_out *vout, void *os_handle, void *os_display, u32 init_flags)
Definition: compositor.c:390
static GF_Err nullvout_fullscreen(struct _video_out *vout, Bool fs_on, u32 *new_disp_width, u32 *new_disp_height)
Definition: compositor.c:402
static GF_Err nullvout_lock(struct _video_out *vout, GF_VideoSurface *video_info, Bool do_lock)
Definition: compositor.c:410
static void nullvout_shutdown(struct _video_out *vout)
Definition: compositor.c:394
static GF_Err nullvout_flush(struct _video_out *vout, GF_Window *dest)
Definition: compositor.c:398
static GF_Err nullvout_blit(struct _video_out *vout, GF_VideoSurface *video_src, GF_Window *src_wnd, GF_Window *dst_wnd, u32 overlay_type)
Definition: compositor.c:414
@ GF_VIDEO_HW_HAS_STRETCH
Definition: video_out.h:64
@ GF_VIDEO_HW_HAS_YUV_OVERLAY
Definition: video_out.h:62
@ GF_VIDEO_HW_HAS_RGB
Definition: video_out.h:56
@ GF_VIDEO_HW_HAS_RGBA
Definition: video_out.h:58
@ GF_VIDEO_HW_HAS_YUV
Definition: video_out.h:60

◆ gl_vout

GF_VideoOutput gl_vout
Initial value:
= {
.Setup = nullvout_setup,
.Shutdown = nullvout_shutdown,
.Flush = nullvout_flush,
.SetFullScreen = nullvout_fullscreen,
.ProcessEvent = gl_vout_evt,
.LockBackBuffer = NULL,
.Blit = NULL,
.hw_caps = GF_VIDEO_HW_OPENGL
}
static GF_Err gl_vout_evt(struct _video_out *vout, GF_Event *evt)
Definition: compositor.c:430
@ GF_VIDEO_HW_OPENGL
Definition: video_out.h:67

◆ raw_vout

GF_VideoOutput raw_vout
Initial value:
= {
.Setup = nullvout_setup,
.Shutdown = nullvout_shutdown,
.Flush = nullvout_flush,
.SetFullScreen = nullvout_fullscreen,
.ProcessEvent = rawvout_evt,
.LockBackBuffer = rawvout_lock,
.Blit = NULL,
}
static GF_Err rawvout_evt(struct _video_out *vout, GF_Event *evt)
Definition: compositor.c:501
static GF_Err rawvout_lock(struct _video_out *vout, GF_VideoSurface *vi, Bool do_lock)
Definition: compositor.c:465

◆ time_spent_in_anim

u32 time_spent_in_anim
extern