GF_DASH_Group 67 src/media_tools/dash_client.c typedef struct __dash_group GF_DASH_Group; GF_DASH_Group 159 src/media_tools/dash_client.c u32 (*rate_adaptation_algo)(GF_DashClient *dash, GF_DASH_Group *group, GF_DASH_Group *base_group, GF_DASH_Group 163 src/media_tools/dash_client.c GF_Err (*rate_adaptation_download_monitor)(GF_DashClient *dash, GF_DASH_Group *group); GF_DASH_Group 166 src/media_tools/dash_client.c static void gf_dash_seek_group(GF_DashClient *dash, GF_DASH_Group *group, Double seek_to, Bool is_dynamic); GF_DASH_Group 214 src/media_tools/dash_client.c GF_DASH_Group *depend_on_group; GF_DASH_Group 350 src/media_tools/dash_client.c static void gf_dash_buffer_off(GF_DASH_Group *group) GF_DASH_Group 364 src/media_tools/dash_client.c static void gf_dash_buffer_on(GF_DASH_Group *group) GF_DASH_Group 389 src/media_tools/dash_client.c static u32 gf_dash_group_count_rep_needed(GF_DASH_Group *group) GF_DASH_Group 422 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, i); GF_DASH_Group 442 src/media_tools/dash_client.c static void gf_dash_update_buffering(GF_DASH_Group *group, GF_DashClient *dash) GF_DASH_Group 471 src/media_tools/dash_client.c static void gf_dash_group_timeline_setup(GF_MPD *mpd, GF_DASH_Group *group, u64 fetch_time) GF_DASH_Group 879 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 895 src/media_tools/dash_client.c GF_Err gf_dash_download_resource(GF_DashClient *dash, GF_DASHFileIOSession *sess, const char *url, u64 start_range, u64 end_range, u32 persistent_mode, GF_DASH_Group *group) GF_DASH_Group 1197 src/media_tools/dash_client.c static u64 gf_dash_get_segment_start_time_with_timescale(GF_DASH_Group *group, u64 *segment_duration, u32 *scale) GF_DASH_Group 1212 src/media_tools/dash_client.c static Double gf_dash_get_segment_start_time(GF_DASH_Group *group, Double *segment_duration) GF_DASH_Group 1226 src/media_tools/dash_client.c static u64 gf_dash_get_segment_availability_start_time(GF_MPD *mpd, GF_DASH_Group *group, u32 segment_index, u32 *seg_dur_ms) GF_DASH_Group 1282 src/media_tools/dash_client.c static GF_Err gf_dash_merge_segment_timeline(GF_DASH_Group *group, GF_DashClient *dash, GF_MPD_SegmentList *old_list, GF_MPD_SegmentTemplate *old_template, GF_MPD_SegmentList *new_list, GF_MPD_SegmentTemplate *new_template, Double min_start_time) GF_DASH_Group 1312 src/media_tools/dash_client.c GF_DASH_Group *a_group = gf_list_get(dash->groups, i); GF_DASH_Group 1332 src/media_tools/dash_client.c GF_DASH_Group *a_group = gf_list_get(dash->groups, i); GF_DASH_Group 1355 src/media_tools/dash_client.c static u32 gf_dash_purge_segment_timeline(GF_DASH_Group *group, Double min_start_time) GF_DASH_Group 1704 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, group_idx); GF_DASH_Group 1728 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, group_idx); GF_DASH_Group 2044 src/media_tools/dash_client.c static void gf_dash_set_group_representation(GF_DASH_Group *group, GF_MPD_Representation *rep) GF_DASH_Group 2236 src/media_tools/dash_client.c static void gf_dash_switch_group_representation(GF_DashClient *mpd, GF_DASH_Group *group) GF_DASH_Group 2292 src/media_tools/dash_client.c static GF_Err gf_dash_resolve_url(GF_MPD *mpd, GF_MPD_Representation *rep, GF_DASH_Group *group, const char *mpd_url, GF_MPD_URLResolveType resolve_type, u32 item_index, char **out_url, u64 *out_range_start, u64 *out_range_end, u64 *segment_duration, Bool *is_in_base_url, char **out_key_url, bin128 *out_key_iv, Bool *data_url_process) GF_DASH_Group 2337 src/media_tools/dash_client.c static Double gf_dash_get_max_available_speed(GF_DashClient *dash, GF_DASH_Group *group, GF_MPD_Representation *rep) GF_DASH_Group 2362 src/media_tools/dash_client.c static void dash_store_stats(GF_DashClient *dash, GF_DASH_Group *group, u32 bytes_per_sec, u32 file_size) GF_DASH_Group 2410 src/media_tools/dash_client.c static GF_Err dash_do_rate_monitor_default(GF_DashClient *dash, GF_DASH_Group *group) GF_DASH_Group 2503 src/media_tools/dash_client.c static u32 dash_do_rate_adaptation_legacy_rate(GF_DashClient *dash, GF_DASH_Group *group, GF_DASH_Group *base_group, GF_DASH_Group 2627 src/media_tools/dash_client.c static u32 dash_do_rate_adaptation_legacy_buffer(GF_DashClient *dash, GF_DASH_Group *group, GF_DASH_Group *base_group, GF_DASH_Group 2703 src/media_tools/dash_client.c static u32 dash_do_rate_adaptation_test(GF_DashClient *dash, GF_DASH_Group *group, GF_DASH_Group *base_group, GF_DASH_Group 2725 src/media_tools/dash_client.c static void dash_do_rate_adaptation(GF_DashClient *dash, GF_DASH_Group *group) GF_DASH_Group 2732 src/media_tools/dash_client.c GF_DASH_Group *base_group; GF_DASH_Group 2877 src/media_tools/dash_client.c static GF_Err gf_dash_download_init_segment(GF_DashClient *dash, GF_DASH_Group *group) GF_DASH_Group 3205 src/media_tools/dash_client.c static void gf_dash_skip_disabled_representation(GF_DASH_Group *group, GF_MPD_Representation *rep, Bool for_autoswitch) GF_DASH_Group 3240 src/media_tools/dash_client.c static void gf_dash_group_reset(GF_DashClient *dash, GF_DASH_Group *group) GF_DASH_Group 3273 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_last(dash->groups); GF_DASH_Group 3305 src/media_tools/dash_client.c static u32 gf_dash_get_start_number(GF_DASH_Group *group, GF_MPD_Representation *rep) GF_DASH_Group 3318 src/media_tools/dash_client.c static GF_MPD_Representation *gf_dash_find_rep(GF_DashClient *dash, const char *dependency_id, GF_DASH_Group **rep_group) GF_DASH_Group 3329 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, i); GF_DASH_Group 3346 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 3363 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 3371 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 3379 src/media_tools/dash_client.c GF_DASH_Group *group_depending_on; GF_DASH_Group 3380 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 3405 src/media_tools/dash_client.c GF_DASH_Group *group; GF_DASH_Group 3410 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, j); GF_DASH_Group 3425 src/media_tools/dash_client.c GF_SAFEALLOC(group, GF_DASH_Group); GF_DASH_Group 3609 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, i); GF_DASH_Group 3612 src/media_tools/dash_client.c GF_DASH_Group *base_group = gf_list_get(dash->groups, j); GF_DASH_Group 3623 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, i); GF_DASH_Group 3633 src/media_tools/dash_client.c GF_DASH_Group *dep_group = gf_list_get(group->groups_depending_on, j); GF_DASH_Group 3705 src/media_tools/dash_client.c static GF_Err gf_dash_load_representation_sidx(GF_DASH_Group *group, GF_MPD_Representation *rep, const char *cache_name, Bool seperate_index, Bool needs_mov_range) GF_DASH_Group 3778 src/media_tools/dash_client.c static GF_Err gf_dash_setup_single_index_mode(GF_DASH_Group *group) GF_DASH_Group 4140 src/media_tools/dash_client.c static u32 gf_dash_get_tiles_quality_rank(GF_DashClient *dash, GF_DASH_Group *tile_group) GF_DASH_Group 4197 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, i); GF_DASH_Group 4280 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, group_i); GF_DASH_Group 4517 src/media_tools/dash_client.c GF_DASH_Group *dg2 = gf_list_get(dash->groups, j); GF_DASH_Group 4518 src/media_tools/dash_client.c GF_DASH_Group *dg1 = gf_list_get(dash->groups, j-1); GF_DASH_Group 4536 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, group_i); GF_DASH_Group 4600 src/media_tools/dash_client.c static void gf_dash_group_check_time(GF_DASH_Group *group) GF_DASH_Group 4655 src/media_tools/dash_client.c static DownloadGroupStatus dash_download_group_download(GF_DashClient *dash, GF_DASH_Group *group, GF_DASH_Group *base_group, Bool has_dep_following); GF_DASH_Group 4659 src/media_tools/dash_client.c static DownloadGroupStatus on_group_download_error(GF_DashClient *dash, GF_DASH_Group *group, GF_DASH_Group *base_group, GF_Err e, GF_MPD_Representation *rep, char *new_base_seg_url, char *key_url, Bool has_dep_following) GF_DASH_Group 4741 src/media_tools/dash_client.c static DownloadGroupStatus dash_download_group_download(GF_DashClient *dash, GF_DASH_Group *group, GF_DASH_Group *base_group, Bool has_dep_following) GF_DASH_Group 5088 src/media_tools/dash_client.c static DownloadGroupStatus dash_download_group(GF_DashClient *dash, GF_DASH_Group *group, GF_DASH_Group *base_group, Bool has_dep_following) GF_DASH_Group 5104 src/media_tools/dash_client.c GF_DASH_Group *dep_group = gf_list_get(group->groups_depending_on, i); GF_DASH_Group 5149 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, i); GF_DASH_Group 5172 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, i); GF_DASH_Group 5203 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, i); GF_DASH_Group 5277 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, i); GF_DASH_Group 5308 src/media_tools/dash_client.c GF_DASH_Group *group = (GF_DASH_Group *) par; GF_DASH_Group 5359 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, i); GF_DASH_Group 5453 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, i); GF_DASH_Group 5532 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, i); GF_DASH_Group 5566 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, i); GF_DASH_Group 5650 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, i); GF_DASH_Group 5743 src/media_tools/dash_client.c static void gf_dash_seek_group(GF_DashClient *dash, GF_DASH_Group *group, Double seek_to, Bool is_dynamic) GF_DASH_Group 5827 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, i); GF_DASH_Group 5848 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, i); GF_DASH_Group 6222 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 6230 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 6239 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 6247 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 6271 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, i); GF_DASH_Group 6424 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 6444 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 6457 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 6497 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 6511 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 6523 src/media_tools/dash_client.c GF_DASH_Group *agroup = gf_list_get(dash->groups, i); GF_DASH_Group 6556 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, i); GF_DASH_Group 6572 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, i); GF_DASH_Group 6582 src/media_tools/dash_client.c GF_DASH_Group *ag = gf_list_get(groups_selected, k); GF_DASH_Group 6654 src/media_tools/dash_client.c GF_DASH_Group *group = (GF_DASH_Group *)gf_list_get(dash->groups, i); GF_DASH_Group 6695 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 6704 src/media_tools/dash_client.c GF_DASH_Group *group; GF_DASH_Group 6729 src/media_tools/dash_client.c GF_DASH_Group *group; GF_DASH_Group 6789 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 6806 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 6819 src/media_tools/dash_client.c GF_DASH_Group *group; GF_DASH_Group 6917 src/media_tools/dash_client.c GF_DASH_Group *group; GF_DASH_Group 7001 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 7008 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 7021 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 7032 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 7060 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 7078 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 7085 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 7112 src/media_tools/dash_client.c GF_DASH_Group *group = NULL; GF_DASH_Group 7356 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 7366 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 7380 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 7389 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 7437 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, group_idx); GF_DASH_Group 7491 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 7511 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 7535 src/media_tools/dash_client.c GF_DASH_Group *group = (GF_DASH_Group *)gf_list_get(dash->groups, idx); GF_DASH_Group 7548 src/media_tools/dash_client.c GF_DASH_Group *group = (GF_DASH_Group *)gf_list_get(dash->groups, idx); GF_DASH_Group 7597 src/media_tools/dash_client.c GF_DASH_Group *group = (GF_DASH_Group *)gf_list_get(dash->groups, i); GF_DASH_Group 7605 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 7632 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 7641 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 7654 src/media_tools/dash_client.c GF_DASH_Group *group = gf_list_get(dash->groups, idx); GF_DASH_Group 7670 src/media_tools/dash_client.c GF_DASH_Group *a_group = gf_list_get(group->groups_depending_on, i);