libgpac
Documentation of the core library of GPAC
route_dmx.c File Reference
#include <gpac/route.h>
#include <gpac/network.h>
#include <gpac/bitstream.h>
#include <gpac/xml.h>
#include <gpac/thread.h>
+ Include dependency graph for route_dmx.c:

Data Structures

struct  GF_ROUTELCTReg
 
struct  GF_ROUTELCTFile
 
struct  GF_ROUTELCTChannel
 
struct  GF_FLUTELLMapEntry
 
struct  GF_LCTObject
 
struct  GF_ROUTESession
 
struct  GF_ROUTEService
 
struct  GF_ROUTEDmx
 

Macros

#define GF_ROUTE_SOCK_SIZE   0x80000
 
#define MAX_SEG_IN_NRT   4
 
#define HAS_MIMES   "application/dash+xml|video/vnd.3gpp.mpd|audio/vnd.3gpp.mpd|video/vnd.mpeg.dash.mpd|audio/vnd.mpeg.dash.mpd|audio/mpegurl|video/mpegurl|application/vnd.ms-sstr+xml|application/x-mpegURL|application/vnd.apple.mpegURL"
 
#define GF_ROUTE_MAX_SIZE   0x40000000
 

Typedefs

typedef GF_Err(* gf_service_process) (GF_ROUTEDmx *routedmx, GF_ROUTEService *s, GF_ROUTESession *route_sess)
 

Enumerations

enum  GF_ServiceProtocolType { GF_SERVICE_UNDEFINED =0 , GF_SERVICE_ROUTE =1 , GF_SERVICE_MMTP =2 , GF_SERVICE_DVB_FLUTE }
 
enum  GF_LCTObjectStatus { GF_LCT_OBJ_INIT =0 , GF_LCT_OBJ_RECEPTION , GF_LCT_OBJ_DONE_ERR , GF_LCT_OBJ_DONE }
 
enum  GF_FLUTEType {
  GF_FLUTE_NONE = 0 , GF_FLUTE_FDT , GF_FLUTE_DVB_MABR_CFG , GF_FLUTE_DASH_MANIFEST ,
  GF_FLUTE_HLS_MANIFEST , GF_FLUTE_HLS_VARIANT , GF_FLUTE_OBJ , GF_FLUTE_PROBE_TYPE
}
 
enum  GF_ROUTETuneMode { GF_ROUTE_TUNE_OFF =0 , GF_ROUTE_TUNE_ON , GF_ROUTE_TUNE_SLS_ONLY }
 

Functions

Bool gf_sk_has_nrt_netcap (GF_Socket *sk)
 
static GF_Err dmx_process_service_route (GF_ROUTEDmx *routedmx, GF_ROUTEService *s, GF_ROUTESession *route_sess)
 
static GF_Err dmx_process_service_dvb_flute (GF_ROUTEDmx *routedmx, GF_ROUTEService *s, GF_ROUTESession *route_sess)
 
static void gf_route_static_files_del (GF_List *files)
 
static void gf_route_route_session_del (GF_ROUTEDmx *routedmx, GF_ROUTESession *rs)
 
static void gf_route_lct_obj_del (GF_LCTObject *o)
 
static void gf_route_service_del (GF_ROUTEDmx *routedmx, GF_ROUTEService *s)
 
GF_EXPORT void gf_route_dmx_del (GF_ROUTEDmx *routedmx)
 
static GF_ROUTEDmx * gf_route_dmx_new_internal (const char *ifce, u32 sock_buffer_size, const char *netcap_id, Bool is_atsc, void(*on_event)(void *udta, GF_ROUTEEventType evt, u32 evt_param, GF_ROUTEEventFileInfo *info), void *udta, const char *log_name)
 
static void gf_route_register_service_sockets (GF_ROUTEDmx *routedmx, GF_ROUTEService *s, Bool do_register)
 
static GF_ROUTEService * gf_route_create_service (GF_ROUTEDmx *routedmx, const char *dst_ip, u32 dst_port, u32 service_id, GF_ServiceProtocolType protocol_type)
 
GF_EXPORT GF_ROUTEDmx * gf_route_atsc_dmx_new (const char *ifce, u32 sock_buffer_size, void(*on_event)(void *udta, GF_ROUTEEventType evt, u32 evt_param, GF_ROUTEEventFileInfo *info), void *udta)
 
GF_EXPORT GF_ROUTEDmx * gf_route_dmx_new (const char *ip, u32 port, const char *ifce, u32 sock_buffer_size, void(*on_event)(void *udta, GF_ROUTEEventType evt, u32 evt_param, GF_ROUTEEventFileInfo *info), void *udta)
 
GF_EXPORT GF_ROUTEDmx * gf_route_atsc_dmx_new_ex (const char *ifce, u32 sock_buffer_size, const char *netcap_id, void(*on_event)(void *udta, GF_ROUTEEventType evt, u32 evt_param, GF_ROUTEEventFileInfo *info), void *udta)
 
GF_EXPORT GF_ROUTEDmx * gf_route_dmx_new_ex (const char *ip, u32 port, const char *ifce, u32 sock_buffer_size, const char *netcap_id, void(*on_event)(void *udta, GF_ROUTEEventType evt, u32 evt_param, GF_ROUTEEventFileInfo *info), void *udta)
 
GF_ROUTEDmx * gf_dvb_mabr_dmx_new (const char *ip, u32 port, const char *ifce, u32 sock_buffer_size, const char *netcap_id, void(*on_event)(void *udta, GF_ROUTEEventType evt, u32 evt_param, GF_ROUTEEventFileInfo *finfo), void *udta)
 
GF_EXPORT GF_Err gf_route_atsc3_tune_in (GF_ROUTEDmx *routedmx, u32 serviceID, Bool tune_all_sls)
 
GF_EXPORT GF_Err gf_route_dmx_set_reorder (GF_ROUTEDmx *routedmx, Bool force_reorder, u32 timeout_us)
 
GF_EXPORT GF_Err gf_route_set_dispatch_mode (GF_ROUTEDmx *routedmx, GF_RouteProgressiveDispatch dispatch_mode)
 
static GF_BlobRangeStatus routedmx_check_blob_range (GF_Blob *blob, u64 start_offset, u32 *io_size)
 
static GF_Err gf_route_dmx_process_slt (GF_ROUTEDmx *routedmx, GF_XMLNode *root)
 
static const char * get_lct_obj_status_name (GF_LCTObjectStatus status)
 
static void gf_route_obj_to_reservoir (GF_ROUTEDmx *routedmx, GF_ROUTEService *s, GF_LCTObject *obj)
 
static void gf_route_lct_removed (GF_ROUTEDmx *routedmx, GF_ROUTEService *s, GF_ROUTELCTChannel *lc)
 
static GF_Err gf_route_dmx_push_object (GF_ROUTEDmx *routedmx, GF_ROUTEService *s, GF_LCTObject *obj, Bool final_push)
 
static GF_Err gf_route_dmx_process_dvb_flute_signaling (GF_ROUTEDmx *routedmx, GF_ROUTEService *s, GF_LCTObject *fdt_obj)
 
static GF_Err gf_route_service_setup_dash (GF_ROUTEDmx *routedmx, GF_ROUTEService *s, char *content, char *content_location, u32 file_type)
 
static const char * _xml_get_attr (const GF_XMLNode *n, const char *att_name)
 
static const GF_XMLNode_xml_get_child (const GF_XMLNode *n, const char *child_name)
 
static const char * _xml_get_child_text (const GF_XMLNode *n, const char *child_name)
 
static u32 _xml_get_child_count (const GF_XMLNode *n, const char *child_name)
 
static GF_Err gf_route_dmx_process_dvb_mcast_signaling (GF_ROUTEDmx *routedmx, GF_ROUTEService *parent_s, GF_LCTObject *object)
 
static GF_Err gf_route_dmx_process_object (GF_ROUTEDmx *routedmx, GF_ROUTEService *s, GF_LCTObject *obj)
 
static GF_Err gf_route_service_flush_object (GF_ROUTEService *s, GF_LCTObject *obj)
 
static void gf_route_service_purge_old_objects (GF_ROUTEDmx *routedmx, GF_ROUTEService *s, u32 tsi, u32 toi, Bool in_order, GF_LCTObject *in_obj)
 
static GF_Err gf_route_service_gather_object (GF_ROUTEDmx *routedmx, GF_ROUTEService *s, u32 tsi, u32 toi, u32 start_offset, char *data, u32 size, u32 total_len, Bool close_flag, Bool in_order, GF_ROUTELCTChannel *rlct, GF_LCTObject **gather_obj, s32 flute_esi, u32 fdt_symbol_length)
 
static GF_Err gf_route_service_parse_mbms_enveloppe (GF_ROUTEDmx *routedmx, GF_ROUTEService *s, char *content, char *content_location, u32 *stsid_version, u32 *mpd_version)
 
static GF_Err gf_route_service_setup_stsid (GF_ROUTEDmx *routedmx, GF_ROUTEService *s, char *content, char *content_location)
 
static GF_Err gf_route_dmx_process_service_signaling (GF_ROUTEDmx *routedmx, GF_ROUTEService *s, GF_LCTObject *object, u8 cc, u32 stsid_version, u32 mpd_version)
 
static GF_Err gf_route_dmx_process_lls (GF_ROUTEDmx *routedmx)
 
GF_EXPORT GF_Err gf_route_dmx_process (GF_ROUTEDmx *routedmx)
 
void gf_route_dmx_check_timeouts (GF_ROUTEDmx *routedmx)
 
Bool gf_route_dmx_has_active_multicast (GF_ROUTEDmx *routedmx)
 
GF_EXPORT Bool gf_route_dmx_find_atsc3_service (GF_ROUTEDmx *routedmx, u32 service_id)
 
GF_EXPORT u32 gf_route_dmx_get_object_count (GF_ROUTEDmx *routedmx, u32 service_id)
 
static GF_Err gf_route_dmx_keep_or_remove_object_by_name (GF_ROUTEDmx *routedmx, u32 service_id, char *fileName, Bool purge_previous, Bool is_remove, Bool is_locate)
 
GF_EXPORT GF_Err gf_route_dmx_force_keep_object_by_name (GF_ROUTEDmx *routedmx, u32 service_id, char *fileName)
 
GF_EXPORT GF_Err gf_route_dmx_remove_object_by_name (GF_ROUTEDmx *routedmx, u32 service_id, char *fileName, Bool purge_previous)
 
GF_EXPORT GF_Err gf_route_dmx_has_object_by_name (GF_ROUTEDmx *routedmx, u32 service_id, const char *fileName)
 
GF_EXPORT GF_Err gf_route_dmx_force_keep_object (GF_ROUTEDmx *routedmx, u32 service_id, u32 tsi, u32 toi, Bool force_keep)
 
GF_EXPORT Bool gf_route_dmx_remove_first_object (GF_ROUTEDmx *routedmx, u32 service_id)
 
GF_EXPORT void gf_route_dmx_purge_objects (GF_ROUTEDmx *routedmx, u32 service_id)
 
GF_EXPORT void gf_route_dmx_set_service_udta (GF_ROUTEDmx *routedmx, u32 service_id, void *udta)
 
GF_EXPORT void * gf_route_dmx_get_service_udta (GF_ROUTEDmx *routedmx, u32 service_id)
 
GF_EXPORT u64 gf_route_dmx_get_first_packet_time (GF_ROUTEDmx *routedmx)
 
GF_EXPORT u64 gf_route_dmx_get_last_packet_time (GF_ROUTEDmx *routedmx)
 
GF_EXPORT u64 gf_route_dmx_get_nb_packets (GF_ROUTEDmx *routedmx)
 
GF_EXPORT u64 gf_route_dmx_get_recv_bytes (GF_ROUTEDmx *routedmx)
 
GF_EXPORT void gf_route_dmx_debug_tsi (GF_ROUTEDmx *routedmx, u32 tsi)
 
GF_EXPORT GF_Err gf_route_dmx_patch_frag_info (GF_ROUTEDmx *routedmx, u32 service_id, GF_ROUTEEventFileInfo *finfo, u32 br_start, u32 br_end)
 
GF_EXPORT GF_Err gf_route_dmx_patch_blob_size (GF_ROUTEDmx *routedmx, u32 service_id, GF_ROUTEEventFileInfo *finfo, u32 new_size)
 
GF_Err gf_route_dmx_mark_active_quality (GF_ROUTEDmx *routedmx, u32 service_id, const char *period_id, s32 as_id, const char *rep_id, Bool is_selected)
 
void gf_route_dmx_reset_all (GF_ROUTEDmx *routedmx)
 

Data Structure Documentation

◆ GF_ROUTELCTReg

struct GF_ROUTELCTReg
Data Fields
u8 codepoint
u8 format_id
u8 frag
u8 order
u32 src_fec_payload_id

◆ GF_ROUTELCTFile

struct GF_ROUTELCTFile
Data Fields
char * filename
u32 toi
u32 crc
u32 fdt_tsi
Bool can_remove

◆ GF_ROUTELCTChannel

struct GF_ROUTELCTChannel
+ Collaboration diagram for GF_ROUTELCTChannel:
Data Fields
u32 tsi
char * toi_template
GF_List * static_files
u32 num_components
GF_ROUTELCTReg CPs[8]
u32 nb_cps
u32 last_dispatched_tsi
u32 last_dispatched_toi
Bool tsi_init
u32 flute_fdt_crc
GF_ROUTEService * flute_parent_service
Bool tsi_probe
Bool is_active
Bool first_seg_received
char * dash_period_id
s32 dash_as_id
char * dash_rep_id

◆ GF_FLUTELLMapEntry

struct GF_FLUTELLMapEntry
Data Fields
u32 toi
u32 offset
u32 length
u16 flute_symbol_size
u16 flute_nb_symbols

◆ GF_LCTObject

struct GF_LCTObject
+ Collaboration diagram for GF_LCTObject:
Data Fields
u32 toi
u32 tsi
u32 total_length
char * payload
u32 nb_bytes
u32 nb_recv_bytes
u32 alloc_size
u32 nb_frags
u32 nb_alloc_frags
u32 nb_recv_frags
GF_LCTFragInfo * frags
GF_LCTObjectStatus status
u32 start_time_ms
u32 download_time_ms
u64 last_gather_time
u8 closed_flag
u8 force_keep
u8 ll_map_last
u8 flute_type
u8 dispatched
GF_ROUTELCTChannel * rlct
GF_ROUTELCTFile * rlct_file
u32 prev_start_offset
u32 flute_symbol_size
u32 flute_nb_symbols
char solved_path[GF_MAX_PATH]
u32 ll_maps_count
u32 ll_maps_alloc
GF_FLUTELLMapEntry * ll_map
GF_Blob blob
void * udta

◆ GF_ROUTESession

struct GF_ROUTESession
Data Fields
GF_Socket * sock
u32 nb_active
GF_List * channels
char * mcast_addr
u32 mcast_port

◆ __route_service

struct __route_service
+ Collaboration diagram for GF_ROUTEService:
Data Fields
u32 service_id
GF_ServiceProtocolType protocol
u32 mpd_version
u32 stsid_version
GF_Socket * sock
u32 secondary_sockets
GF_List * objects
GF_LCTObject * last_active_obj
u32 nb_media_streams
u32 nb_active
gf_service_process process_service
u32 port
char * dst_ip
u32 last_dispatched_toi_on_tsi_zero
u32 stsid_crc
u32 flute_fdt_crc
u32 dvb_mabr_cfg_crc
GF_List * route_sessions
GF_ROUTETuneMode tune_mode
void * udta
u32 manifest_crc
char * service_identifier
char * log_name

Macro Definition Documentation

◆ GF_ROUTE_SOCK_SIZE

#define GF_ROUTE_SOCK_SIZE   0x80000

◆ MAX_SEG_IN_NRT

#define MAX_SEG_IN_NRT   4

◆ HAS_MIMES

#define HAS_MIMES   "application/dash+xml|video/vnd.3gpp.mpd|audio/vnd.3gpp.mpd|video/vnd.mpeg.dash.mpd|audio/vnd.mpeg.dash.mpd|audio/mpegurl|video/mpegurl|application/vnd.ms-sstr+xml|application/x-mpegURL|application/vnd.apple.mpegURL"

◆ GF_ROUTE_MAX_SIZE

#define GF_ROUTE_MAX_SIZE   0x40000000

Typedef Documentation

◆ gf_service_process

typedef GF_Err(* gf_service_process) (GF_ROUTEDmx *routedmx, GF_ROUTEService *s, GF_ROUTESession *route_sess)

Enumeration Type Documentation

◆ GF_ServiceProtocolType

Enumerator
GF_SERVICE_UNDEFINED 
GF_SERVICE_ROUTE 
GF_SERVICE_MMTP 
GF_SERVICE_DVB_FLUTE 

◆ GF_LCTObjectStatus

Enumerator
GF_LCT_OBJ_INIT 
GF_LCT_OBJ_RECEPTION 
GF_LCT_OBJ_DONE_ERR 
GF_LCT_OBJ_DONE 

◆ GF_FLUTEType

Enumerator
GF_FLUTE_NONE 
GF_FLUTE_FDT 
GF_FLUTE_DVB_MABR_CFG 
GF_FLUTE_DASH_MANIFEST 
GF_FLUTE_HLS_MANIFEST 
GF_FLUTE_HLS_VARIANT 
GF_FLUTE_OBJ 
GF_FLUTE_PROBE_TYPE 

◆ GF_ROUTETuneMode

Enumerator
GF_ROUTE_TUNE_OFF 
GF_ROUTE_TUNE_ON 
GF_ROUTE_TUNE_SLS_ONLY 

Function Documentation

◆ gf_sk_has_nrt_netcap()

Bool gf_sk_has_nrt_netcap ( GF_Socket *  sk)
+ Here is the caller graph for this function:

◆ dmx_process_service_route()

static GF_Err dmx_process_service_route ( GF_ROUTEDmx *  routedmx,
GF_ROUTEService *  s,
GF_ROUTESession route_sess 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ dmx_process_service_dvb_flute()

static GF_Err dmx_process_service_dvb_flute ( GF_ROUTEDmx *  routedmx,
GF_ROUTEService *  s,
GF_ROUTESession route_sess 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_route_static_files_del()

static void gf_route_static_files_del ( GF_List *  files)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_route_route_session_del()

static void gf_route_route_session_del ( GF_ROUTEDmx *  routedmx,
GF_ROUTESession rs 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_route_lct_obj_del()

static void gf_route_lct_obj_del ( GF_LCTObject o)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_route_service_del()

static void gf_route_service_del ( GF_ROUTEDmx *  routedmx,
GF_ROUTEService *  s 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_route_dmx_new_internal()

static GF_ROUTEDmx* gf_route_dmx_new_internal ( const char *  ifce,
u32  sock_buffer_size,
const char *  netcap_id,
Bool  is_atsc,
void(*)(void *udta, GF_ROUTEEventType evt, u32 evt_param, GF_ROUTEEventFileInfo *info)  on_event,
void *  udta,
const char *  log_name 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_route_register_service_sockets()

static void gf_route_register_service_sockets ( GF_ROUTEDmx *  routedmx,
GF_ROUTEService *  s,
Bool  do_register 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_route_create_service()

static GF_ROUTEService* gf_route_create_service ( GF_ROUTEDmx *  routedmx,
const char *  dst_ip,
u32  dst_port,
u32  service_id,
GF_ServiceProtocolType  protocol_type 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_route_atsc_dmx_new()

GF_EXPORT GF_ROUTEDmx* gf_route_atsc_dmx_new ( const char *  ifce,
u32  sock_buffer_size,
void(*)(void *udta, GF_ROUTEEventType evt, u32 evt_param, GF_ROUTEEventFileInfo *info)  on_event,
void *  udta 
)
+ Here is the call graph for this function:

◆ gf_route_dmx_new()

GF_EXPORT GF_ROUTEDmx* gf_route_dmx_new ( const char *  ip,
u32  port,
const char *  ifce,
u32  sock_buffer_size,
void(*)(void *udta, GF_ROUTEEventType evt, u32 evt_param, GF_ROUTEEventFileInfo *info)  on_event,
void *  udta 
)
+ Here is the call graph for this function:

◆ gf_route_atsc_dmx_new_ex()

GF_EXPORT GF_ROUTEDmx* gf_route_atsc_dmx_new_ex ( const char *  ifce,
u32  sock_buffer_size,
const char *  netcap_id,
void(*)(void *udta, GF_ROUTEEventType evt, u32 evt_param, GF_ROUTEEventFileInfo *info)  on_event,
void *  udta 
)
+ Here is the call graph for this function:

◆ gf_route_dmx_new_ex()

GF_EXPORT GF_ROUTEDmx* gf_route_dmx_new_ex ( const char *  ip,
u32  port,
const char *  ifce,
u32  sock_buffer_size,
const char *  netcap_id,
void(*)(void *udta, GF_ROUTEEventType evt, u32 evt_param, GF_ROUTEEventFileInfo *info)  on_event,
void *  udta 
)
+ Here is the call graph for this function:

◆ routedmx_check_blob_range()

static GF_BlobRangeStatus routedmx_check_blob_range ( GF_Blob blob,
u64  start_offset,
u32 io_size 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_route_dmx_process_slt()

static GF_Err gf_route_dmx_process_slt ( GF_ROUTEDmx *  routedmx,
GF_XMLNode root 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ get_lct_obj_status_name()

static const char* get_lct_obj_status_name ( GF_LCTObjectStatus  status)
static
+ Here is the caller graph for this function:

◆ gf_route_obj_to_reservoir()

static void gf_route_obj_to_reservoir ( GF_ROUTEDmx *  routedmx,
GF_ROUTEService *  s,
GF_LCTObject obj 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_route_lct_removed()

static void gf_route_lct_removed ( GF_ROUTEDmx *  routedmx,
GF_ROUTEService *  s,
GF_ROUTELCTChannel lc 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_route_dmx_push_object()

static GF_Err gf_route_dmx_push_object ( GF_ROUTEDmx *  routedmx,
GF_ROUTEService *  s,
GF_LCTObject obj,
Bool  final_push 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_route_dmx_process_dvb_flute_signaling()

static GF_Err gf_route_dmx_process_dvb_flute_signaling ( GF_ROUTEDmx *  routedmx,
GF_ROUTEService *  s,
GF_LCTObject fdt_obj 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_route_service_setup_dash()

static GF_Err gf_route_service_setup_dash ( GF_ROUTEDmx *  routedmx,
GF_ROUTEService *  s,
char *  content,
char *  content_location,
u32  file_type 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ _xml_get_attr()

static const char* _xml_get_attr ( const GF_XMLNode n,
const char *  att_name 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ _xml_get_child()

static const GF_XMLNode* _xml_get_child ( const GF_XMLNode n,
const char *  child_name 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ _xml_get_child_text()

static const char* _xml_get_child_text ( const GF_XMLNode n,
const char *  child_name 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ _xml_get_child_count()

static u32 _xml_get_child_count ( const GF_XMLNode n,
const char *  child_name 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_route_dmx_process_dvb_mcast_signaling()

static GF_Err gf_route_dmx_process_dvb_mcast_signaling ( GF_ROUTEDmx *  routedmx,
GF_ROUTEService *  parent_s,
GF_LCTObject object 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_route_dmx_process_object()

static GF_Err gf_route_dmx_process_object ( GF_ROUTEDmx *  routedmx,
GF_ROUTEService *  s,
GF_LCTObject obj 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_route_service_flush_object()

static GF_Err gf_route_service_flush_object ( GF_ROUTEService *  s,
GF_LCTObject obj 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_route_service_purge_old_objects()

static void gf_route_service_purge_old_objects ( GF_ROUTEDmx *  routedmx,
GF_ROUTEService *  s,
u32  tsi,
u32  toi,
Bool  in_order,
GF_LCTObject in_obj 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_route_service_gather_object()

static GF_Err gf_route_service_gather_object ( GF_ROUTEDmx *  routedmx,
GF_ROUTEService *  s,
u32  tsi,
u32  toi,
u32  start_offset,
char *  data,
u32  size,
u32  total_len,
Bool  close_flag,
Bool  in_order,
GF_ROUTELCTChannel rlct,
GF_LCTObject **  gather_obj,
s32  flute_esi,
u32  fdt_symbol_length 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_route_service_parse_mbms_enveloppe()

static GF_Err gf_route_service_parse_mbms_enveloppe ( GF_ROUTEDmx *  routedmx,
GF_ROUTEService *  s,
char *  content,
char *  content_location,
u32 stsid_version,
u32 mpd_version 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_route_service_setup_stsid()

static GF_Err gf_route_service_setup_stsid ( GF_ROUTEDmx *  routedmx,
GF_ROUTEService *  s,
char *  content,
char *  content_location 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_route_dmx_process_service_signaling()

static GF_Err gf_route_dmx_process_service_signaling ( GF_ROUTEDmx *  routedmx,
GF_ROUTEService *  s,
GF_LCTObject object,
u8  cc,
u32  stsid_version,
u32  mpd_version 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_route_dmx_process_lls()

static GF_Err gf_route_dmx_process_lls ( GF_ROUTEDmx *  routedmx)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_route_dmx_keep_or_remove_object_by_name()

static GF_Err gf_route_dmx_keep_or_remove_object_by_name ( GF_ROUTEDmx *  routedmx,
u32  service_id,
char *  fileName,
Bool  purge_previous,
Bool  is_remove,
Bool  is_locate 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_route_dmx_has_object_by_name()

GF_EXPORT GF_Err gf_route_dmx_has_object_by_name ( GF_ROUTEDmx *  routedmx,
u32  service_id,
const char *  fileName 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function: