Commit 55cbccbc authored by James Almer's avatar James Almer

avformat/dashenc: disable Resync elements when using DVB-DASH profile

Signed-off-by: 's avatarJames Almer <jamrial@gmail.com>
parent 8578433d
...@@ -818,7 +818,7 @@ static int write_adaptation_set(AVFormatContext *s, AVIOContext *out, int as_ind ...@@ -818,7 +818,7 @@ static int write_adaptation_set(AVFormatContext *s, AVIOContext *out, int as_ind
avio_printf(out, " lang=\"%s\"", lang->value); avio_printf(out, " lang=\"%s\"", lang->value);
avio_printf(out, ">\n"); avio_printf(out, ">\n");
if (!final && c->ldash && as->max_frag_duration) if (!final && c->ldash && as->max_frag_duration && !(c->profile & MPD_PROFILE_DVB))
avio_printf(out, "\t\t\t<Resync dT=\"%"PRId64"\" type=\"0\"/>\n", as->max_frag_duration); avio_printf(out, "\t\t\t<Resync dT=\"%"PRId64"\" type=\"0\"/>\n", as->max_frag_duration);
if (as->trick_idx >= 0) if (as->trick_idx >= 0)
avio_printf(out, "\t\t\t<EssentialProperty id=\"%d\" schemeIdUri=\"http://dashif.org/guidelines/trickmode\" value=\"%d\"/>\n", as->id, as->trick_idx); avio_printf(out, "\t\t\t<EssentialProperty id=\"%d\" schemeIdUri=\"http://dashif.org/guidelines/trickmode\" value=\"%d\"/>\n", as->id, as->trick_idx);
...@@ -869,7 +869,7 @@ static int write_adaptation_set(AVFormatContext *s, AVIOContext *out, int as_ind ...@@ -869,7 +869,7 @@ static int write_adaptation_set(AVFormatContext *s, AVIOContext *out, int as_ind
avio_printf(out, "\t\t\t\t\t<UTCTiming schemeIdUri=\"urn:mpeg:dash:utc:http-xsdate:2014\" value=\"%s\"/>\n", c->utc_timing_url); avio_printf(out, "\t\t\t\t\t<UTCTiming schemeIdUri=\"urn:mpeg:dash:utc:http-xsdate:2014\" value=\"%s\"/>\n", c->utc_timing_url);
avio_printf(out, "\t\t\t\t</ProducerReferenceTime>\n"); avio_printf(out, "\t\t\t\t</ProducerReferenceTime>\n");
} }
if (!final && c->ldash && os->gop_size && os->frag_type != FRAG_TYPE_NONE && if (!final && c->ldash && os->gop_size && os->frag_type != FRAG_TYPE_NONE && !(c->profile & MPD_PROFILE_DVB) &&
(os->frag_type != FRAG_TYPE_DURATION || os->frag_duration != os->seg_duration)) (os->frag_type != FRAG_TYPE_DURATION || os->frag_duration != os->seg_duration))
avio_printf(out, "\t\t\t\t<Resync dT=\"%"PRId64"\" type=\"1\"/>\n", os->gop_size); avio_printf(out, "\t\t\t\t<Resync dT=\"%"PRId64"\" type=\"1\"/>\n", os->gop_size);
output_segment_list(os, out, s, i, final); output_segment_list(os, out, s, i, final);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment