On Thu, 26 Oct 2017 18:32:57 +0200
Carl Eugen Hoyos <ceffm...@gmail.com> wrote:

> 2017-10-26 18:28 GMT+02:00 Peter Große <pe...@friiks.de>:
> > On Thu, 26 Oct 2017 18:07:55 +0200
> > Carl Eugen Hoyos <ceffm...@gmail.com> wrote:
> >  
> >> Did you test our dash muxer lately with some validation tool?
> >> Errors were reported in the past.  
> >
> > No official validation tool, no.  
> 
> The following was mentioned in the past iirc:
> http://www-itec.uni-klu.ac.at/dash/?page_id=605

With the attached patch and checking against the current conformance XSD [1]
instead of their "Standard XSD", I get a "Your DASH-MPD is VALID" logo.

Regards
Peter

[1]
https://github.com/Dash-Industry-Forum/Conformance-and-reference-source/blob/master/conformance/MPDValidator/schemas/DASH-MPD.xsd


>From 7a731e2d0d1fd9c771b0cc2730a812e84ae9981e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Peter=20Gro=C3=9Fe?= <pe...@friiks.de>
Date: Fri, 27 Oct 2017 21:18:47 +0200
Subject: [PATCH 1/1] dashenc: move UTCTiming element to the end of the
 manifest
To: ffmpeg-devel@ffmpeg.org

Required by comformance XSD [1].

[1] https://github.com/Dash-Industry-Forum/Conformance-and-reference-source/blob/master/conformance/MPDValidator/schemas/DASH-MPD.xsd
---
 libavformat/dashenc.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/libavformat/dashenc.c b/libavformat/dashenc.c
index d3b0464d79..8c216a3af8 100644
--- a/libavformat/dashenc.c
+++ b/libavformat/dashenc.c
@@ -647,8 +647,6 @@ static int write_manifest(AVFormatContext *s, int final)
         av_free(escaped);
     }
     avio_printf(out, "\t</ProgramInformation>\n");
-    if (c->utc_timing_url)
-        avio_printf(out, "\t<UTCTiming schemeIdUri=\"urn:mpeg:dash:utc:http-xsdate:2014\" value=\"%s\"/>\n", c->utc_timing_url);
 
     if (c->window_size && s->nb_streams > 0 && c->streams[0].nb_segments > 0 && !c->use_template) {
         OutputStream *os = &c->streams[0];
@@ -666,6 +664,10 @@ static int write_manifest(AVFormatContext *s, int final)
             return ret;
     }
     avio_printf(out, "\t</Period>\n");
+
+    if (c->utc_timing_url)
+        avio_printf(out, "\t<UTCTiming schemeIdUri=\"urn:mpeg:dash:utc:http-xsdate:2014\" value=\"%s\"/>\n", c->utc_timing_url);
+
     avio_printf(out, "</MPD>\n");
     avio_flush(out);
     ff_format_io_close(s, &out);
-- 
2.13.6

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

Reply via email to