

static u64 dasher_get_utc(GF_DasherCtx *ctx)
{
	return gf_net_get_utc() - ctx->utc_diff;
}

static void dasher_get_set_and_rep(GF_MPD_Period *period, const char *repid, GF_MPD_AdaptationSet **out_set, GF_MPD_Representation **out_rep)
{
	u32 i, nb_sets = gf_list_count(period->adaptation_sets);
	for (i=0; i<nb_sets; i++) {
		u32 j, nb_reps;
		GF_MPD_AdaptationSet *set = gf_list_get(period->adaptation_sets, i);
		nb_reps = gf_list_count(set->representations);
		for (j=0; j<nb_reps; j++) {
			GF_MPD_Representation *rep = gf_list_get(set->representations, j);
			if (rep->id && !strcmp(rep->id, repid)) {


static u64 dasher_get_utc(GF_DasherCtx *ctx)
{
	return gf_net_get_utc() - ctx->utc_diff;
}

static void dasher_get_set_and_rep(GF_MPD_Period *period, const char *repid, GF_MPD_AdaptationSet **out_set, GF_MPD_Representation **out_rep)
{
	u32 i, nb_sets = gf_list_count(period->adaptation_sets);
	for (i=0; i<nb_sets; i++) {
		u32 j, nb_reps;
		GF_MPD_AdaptationSet *set = gf_list_get(period->adaptation_sets, i);
		nb_reps = gf_list_count(set->representations);
		for (j=0; j<nb_reps; j++) {
			GF_MPD_Representation *rep = gf_list_get(set->representations, j);
			if (rep->id && !strcmp(rep->id, repid)) {