[FFmpeg-devel] [PATCH] webmdashenc: Fix UTCTiming Element

Vignesh Venkatasubramanian vigneshv at google.com
Tue Apr 28 01:26:34 CEST 2015


Remove the direct profile from UTCTiming element. Per DASH spec,
direct profile value should be the time at which the request was
made to the server and not the time at which the manifest was
written. So ffmpeg cannot write this value. This patch removes
the direct profile and write the UTCTiming element with the http
profile only if a URL is passed as a parameter. Update the fate
test to reflect this change.

Signed-off-by: Vignesh Venkatasubramanian <vigneshv at google.com>
---
 libavformat/webmdashenc.c              | 10 +++++-----
 tests/ref/fate/webm-dash-manifest-live |  3 ---
 2 files changed, 5 insertions(+), 8 deletions(-)

diff --git a/libavformat/webmdashenc.c b/libavformat/webmdashenc.c
index 1c63a5b..17df1b6 100644
--- a/libavformat/webmdashenc.c
+++ b/libavformat/webmdashenc.c
@@ -119,11 +119,11 @@ static void write_header(AVFormatContext *s)
         avio_printf(s->pb, "  timeShiftBufferDepth=\"PT%gS\"\n", w->time_shift_buffer_depth);
         avio_printf(s->pb, "  minimumUpdatePeriod=\"PT%dS\"", w->minimum_update_period);
         avio_printf(s->pb, ">\n");
-        avio_printf(s->pb, "<UTCTiming\n");
-        avio_printf(s->pb, "  schemeIdUri=\"%s\"\n",
-                    w->utc_timing_url ? "urn:mpeg:dash:utc:http-iso:2014" : "urn:mpeg:dash:utc:direct:2012");
-        avio_printf(s->pb, "  value=\"%s\"/>\n",
-                    w->utc_timing_url ? w->utc_timing_url : gmt_iso);
+        if (w->utc_timing_url) {
+            avio_printf(s->pb, "<UTCTiming\n");
+            avio_printf(s->pb, "  schemeIdUri=\"urn:mpeg:dash:utc:http-iso:2014\"\n");
+            avio_printf(s->pb, "  value=\"%s\"/>\n", w->utc_timing_url);
+        }
     }
 }
 
diff --git a/tests/ref/fate/webm-dash-manifest-live b/tests/ref/fate/webm-dash-manifest-live
index 91a1c1d..6df7f87 100644
--- a/tests/ref/fate/webm-dash-manifest-live
+++ b/tests/ref/fate/webm-dash-manifest-live
@@ -9,9 +9,6 @@
   availabilityStartTime=""
   timeShiftBufferDepth="PT7200S"
   minimumUpdatePeriod="PT60S">
-<UTCTiming
-  schemeIdUri="urn:mpeg:dash:utc:direct:2012"
-  value=""/>
 <Period id="0" start="PT0S" >
 <AdaptationSet id="0" mimeType="video/webm" codecs="vp9" bitstreamSwitching="true" subsegmentAlignment="true" subsegmentStartsWithSAP="1">
 <ContentComponent id="1" type="video"/>
-- 
2.2.0.rc0.207.ga3a616c



More information about the ffmpeg-devel mailing list