Skip to content

Commit c78a23f

Browse files
author
Michael A Dolan
authored
Merge pull request #36 from MPEGGroup/dev
Merge dev into master
2 parents 881cc59 + 4a0ce7d commit c78a23f

7 files changed

+59
-95
lines changed

DASH-MPD.xsd

+23-11
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,6 @@
130130
<xs:attribute ref="xlink:href"/>
131131
<xs:attribute ref="xlink:actuate" default="onRequest"/>
132132
<xs:attribute ref="xlink:type" fixed="simple"/>
133-
<xs:attribute ref="xlink:show" fixed="embed"/>
134133
<xs:attribute name="id" type="xs:unsignedInt" use="required"/>
135134
<xs:attribute name="inAllPeriods" type="xs:boolean" default="true"/>
136135
<xs:attribute name="contentType" type="RFC6838ContentTypeType"/>
@@ -148,8 +147,8 @@
148147
<xs:element name="Scope" type="DescriptorType" minOccurs="0" maxOccurs="unbounded"/>
149148
<xs:element name="Latency" type="LatencyType" minOccurs="0" maxOccurs="unbounded"/>
150149
<xs:element name="PlaybackRate" type="PlaybackRateType" minOccurs="0" maxOccurs="unbounded"/>
151-
<xs:element name="OperatingQuality" type="PlaybackRateType" minOccurs="0" maxOccurs="unbounded"/>
152-
<xs:element name="OperatingBandwidth" type="PlaybackRateType" minOccurs="0" maxOccurs="unbounded"/>
150+
<xs:element name="OperatingQuality" type="OperatingQualityType" minOccurs="0" maxOccurs="unbounded"/>
151+
<xs:element name="OperatingBandwidth" type="OperatingBandwidthType" minOccurs="0" maxOccurs="unbounded"/>
153152
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
154153
</xs:sequence>
155154
<xs:attribute name="id" type="xs:unsignedInt"/>
@@ -175,7 +174,15 @@
175174
</xs:complexType>
176175
<!-- Service Description Operating Quality -->
177176
<xs:complexType name="OperatingQualityType">
178-
<xs:attribute name="mediaType" type="xs:string"/>
177+
<xs:attribute name="mediaType" default="any">
178+
<xs:simpleType>
179+
<xs:restriction base="xs:string">
180+
<xs:enumeration value="video"/>
181+
<xs:enumeration value="audio"/>
182+
<xs:enumeration value="any"/>
183+
</xs:restriction>
184+
</xs:simpleType>
185+
</xs:attribute>
179186
<xs:attribute name="min" type="xs:unsignedInt"/>
180187
<xs:attribute name="max" type="xs:unsignedInt"/>
181188
<xs:attribute name="target" type="xs:unsignedInt"/>
@@ -185,7 +192,7 @@
185192
</xs:complexType>
186193
<!-- Service Description Operating Bandwidth -->
187194
<xs:complexType name="OperatingBandwidthType">
188-
<xs:attribute name="mediaType">
195+
<xs:attribute name="mediaType" default="all">
189196
<xs:simpleType>
190197
<xs:restriction base="xs:string">
191198
<xs:enumeration value="video"/>
@@ -472,7 +479,7 @@
472479
<xs:attribute name="id" type="StringNoWhitespaceType" default="1"/>
473480
<xs:attribute name="preselectionComponents" type="StringVectorType" use="required"/>
474481
<xs:attribute name="lang" type="xs:language"/>
475-
<xs:attribute name="order" type="PreselectionOrderType" default="unordered"/>
482+
<xs:attribute name="order" type="PreselectionOrderType" default="undefined"/>
476483
</xs:extension>
477484
</xs:complexContent>
478485
</xs:complexType>
@@ -540,7 +547,7 @@
540547
<!--Preselection Order type-->
541548
<xs:simpleType name="PreselectionOrderType">
542549
<xs:restriction base="xs:string">
543-
<xs:enumeration value="unordered"/>
550+
<xs:enumeration value="undefined"/>
544551
<xs:enumeration value="time-ordered"/>
545552
<xs:enumeration value="fully-ordered"/>
546553
</xs:restriction>
@@ -558,7 +565,7 @@
558565
<xs:attribute name="presentationTimeOffset" type="xs:unsignedLong"/>
559566
<xs:attribute name="presentationDuration" type="xs:unsignedLong"/>
560567
<xs:attribute name="timeShiftBufferDepth" type="xs:duration"/>
561-
<xs:attribute name="indexRange" type="xs:string"/>
568+
<xs:attribute name="indexRange" type="SingleRFC7233RangeType"/>
562569
<xs:attribute name="indexRangeExact" type="xs:boolean" default="false"/>
563570
<xs:attribute name="availabilityTimeOffset" type="xs:double"/>
564571
<xs:attribute name="availabilityTimeComplete" type="xs:boolean"/>
@@ -584,9 +591,14 @@
584591
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
585592
</xs:sequence>
586593
<xs:attribute name="sourceURL" type="xs:anyURI"/>
587-
<xs:attribute name="range" type="xs:string"/>
594+
<xs:attribute name="range" type="SingleRFC7233RangeType"/>
588595
<xs:anyAttribute namespace="##other" processContents="lax"/>
589596
</xs:complexType>
597+
<xs:simpleType name="SingleRFC7233RangeType">
598+
<xs:restriction base="xs:string">
599+
<xs:pattern value="([0-9]*)(\-([0-9]*))?"/>
600+
</xs:restriction>
601+
</xs:simpleType>
590602
<!-- Failover Content -->
591603
<xs:complexType name="FailoverContentType">
592604
<xs:sequence>
@@ -622,9 +634,9 @@
622634
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
623635
</xs:sequence>
624636
<xs:attribute name="media" type="xs:anyURI"/>
625-
<xs:attribute name="mediaRange" type="xs:string"/>
637+
<xs:attribute name="mediaRange" type="SingleRFC7233RangeType"/>
626638
<xs:attribute name="index" type="xs:anyURI"/>
627-
<xs:attribute name="indexRange" type="xs:string"/>
639+
<xs:attribute name="indexRange" type="SingleRFC7233RangeType"/>
628640
<xs:anyAttribute namespace="##other" processContents="lax"/>
629641
</xs:complexType>
630642
<!-- Segment Template -->

example_G15.mpd

-3
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@
2424
</AdaptationSet>
2525
<!-- Audio (M&E) -->
2626
<AdaptationSet id="2" mimeType="audio/mp4" codecs="mhm2.0x0C" segmentAlignment="true" startWithSAP="1">
27-
<AudioChannelConfiguration schemeIdUri="urn:mpeg:mpegB:cicp:ChannelConfiguration" value="2"/>
2827
<EssentialProperty schemeIdUri="urn:mpeg:dash:preselection:2016" value="1,2 3"/>
2928
<EssentialProperty schemeIdUri="urn:mpeg:dash:preselection:2016" value="2,2 4"/>
3029
<Role schemeIdUri="urn:mpeg:dash:role:2011" value="main"/>
@@ -37,7 +36,6 @@
3736
</AdaptationSet>
3837
<!-- Audio (English) -->
3938
<AdaptationSet id="3" mimeType="audio/mp4" lang="en" codecs="mhm2.0x0C" segmentAlignment="true" startWithSAP="1">
40-
<AudioChannelConfiguration schemeIdUri="urn:mpeg:mpegB:cicp:ChannelConfiguration" value="1"/>
4139
<EssentialProperty schemeIdUri="urn:mpeg:dash:preselection:2016"/>
4240
<Role schemeIdUri="urn:mpeg:dash:role:2011" value="main"/>
4341
<SegmentTemplate timescale="48000" media="audio1_$Number$.mp4" initialization="audio1.mp4">
@@ -49,7 +47,6 @@
4947
</AdaptationSet>
5048
<!-- Audio (Spanish) -->
5149
<AdaptationSet id="4" mimeType="audio/mp4" lang="es" codecs="mhm2.0x0C" segmentAlignment="true" startWithSAP="1">
52-
<AudioChannelConfiguration schemeIdUri="urn:mpeg:mpegB:cicp:ChannelConfiguration" value="1"/>
5350
<EssentialProperty schemeIdUri="urn:mpeg:dash:preselection:2016"/>
5451
<Role schemeIdUri="urn:mpeg:dash:role:2011" value="dub"/>
5552
<SegmentTemplate timescale="48000" media="audio2_$Number$.mp4" initialization="audio2.mp4">

example_G16.mpd

+4-5
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@
2323
</AdaptationSet>
2424
<!-- Audio (M&E) -->
2525
<AdaptationSet id="2" mimeType="audio/mp4" segmentAlignment="true" startWithSAP="1">
26-
<AudioChannelConfiguration schemeIdUri="urn:mpeg:mpegB:cicp:ChannelConfiguration" value="2"/>
2726
<EssentialProperty schemeIdUri="urn:mpeg:dash:preselection:2016"/>
2827
<SegmentTemplate timescale="48000" media="audio0_$Number$.mp4" initialization="audio0.mp4">
2928
<SegmentTimeline>
@@ -34,7 +33,6 @@
3433
</AdaptationSet>
3534
<!-- Audio (English) -->
3635
<AdaptationSet id="3" mimeType="audio/mp4" lang="en" segmentAlignment="true" startWithSAP="1">
37-
<AudioChannelConfiguration schemeIdUri="urn:mpeg:mpegB:cicp:ChannelConfiguration" value="1"/>
3836
<EssentialProperty schemeIdUri="urn:mpeg:dash:preselection:2016"/>
3937
<SegmentTemplate timescale="48000" media="audio1_$Number$.mp4" initialization="audio1.mp4">
4038
<SegmentTimeline>
@@ -45,7 +43,6 @@
4543
</AdaptationSet>
4644
<!-- Audio (Spanish) -->
4745
<AdaptationSet id="4" mimeType="audio/mp4" lang="es" segmentAlignment="true" startWithSAP="1">
48-
<AudioChannelConfiguration schemeIdUri="urn:mpeg:mpegB:cicp:ChannelConfiguration" value="1"/>
4946
<EssentialProperty schemeIdUri="urn:mpeg:dash:preselection:2016"/>
5047
<SegmentTemplate timescale="48000" media="audio2_$Number$.mp4" initialization="audio2.mp4">
5148
<SegmentTimeline>
@@ -55,11 +52,13 @@
5552
<Representation id="4" bandwidth="32825" codecs="mhm2.0xC0" audioSamplingRate="48000"/>
5653
</AdaptationSet>
5754
<!-- Preselections -->
58-
<Preselection id="1" lang="en" preselectionComponents="2 3">
55+
<Preselection id="1" tag="1" lang="en" preselectionComponents="2 3">
56+
<AudioChannelConfiguration schemeIdUri="urn:mpeg:mpegB:cicp:ChannelConfiguration" value="2"/>
5957
<Label id="1">Main English</Label>
6058
<Role schemeIdUri="urn:mpeg:dash:role:2011" value="main"/>
6159
</Preselection>
62-
<Preselection id="2" lang="es" preselectionComponents="2 4">
60+
<Preselection id="2" tag="2" lang="es" preselectionComponents="2 4">
61+
<AudioChannelConfiguration schemeIdUri="urn:mpeg:mpegB:cicp:ChannelConfiguration" value="2"/>
6362
<Label id="1">Main Spanish</Label>
6463
<Role schemeIdUri="urn:mpeg:dash:role:2011" value="dub"/>
6564
</Preselection>

example_G17.mpd

+4-3
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@
2222
</AdaptationSet>
2323
<!-- Audio -->
2424
<AdaptationSet id="2" mimeType="audio/mp4" codecs="mp4a.40.2,mp4a.40.2,mp4a.40.2" segmentAlignment="true" startWithSAP="1">
25-
<AudioChannelConfiguration schemeIdUri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2"/>
2625
<EssentialProperty schemeIdUri="urn:mpeg:dash:preselection:2016"/>
2726
<ContentComponent id="3">
2827
<Role schemeIdUri="urn:mpeg:dash:role:2011" value="main"/>
@@ -41,11 +40,13 @@
4140
<Representation id="2" bandwidth="132669" audioSamplingRate="48000"/>
4241
</AdaptationSet>
4342
<!-- Preselections -->
44-
<Preselection id="1" lang="en" preselectionComponents="3 4">
43+
<Preselection id="1" tag="1" lang="en" preselectionComponents="3 4">
44+
<AudioChannelConfiguration schemeIdUri="urn:mpeg:mpegB:cicp:ChannelConfiguration" value="2"/>
4545
<Label id="1">Main English</Label>
4646
<Role schemeIdUri="urn:mpeg:dash:role:2011" value="main"/>
4747
</Preselection>
48-
<Preselection id="2" lang="es" preselectionComponents="3 5">
48+
<Preselection id="2" tag="2" lang="es" preselectionComponents="3 5">
49+
<AudioChannelConfiguration schemeIdUri="urn:mpeg:mpegB:cicp:ChannelConfiguration" value="2"/>
4950
<Label id="1">Main Spanish</Label>
5051
<Role schemeIdUri="urn:mpeg:dash:role:2011" value="dub"/>
5152
</Preselection>

example_G18.mpd

+27-44
Original file line numberDiff line numberDiff line change
@@ -1,45 +1,28 @@
1-
<?xml version="1.0" encoding="utf-8"?>
2-
<MPD
3-
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4-
xmlns="urn:mpeg:dash:schema:mpd:2011"
5-
xsi:schemaLocation="urn:mpeg:dash:schema:mpd:2011 DASH-MPD.xsd"
6-
type="dynamic"
7-
availabilityStartTime="2018-12-20T06:28:37Z"
8-
publishTime="2018-12-20T06:28:37Z"
9-
minimumUpdatePeriod="PT2S"
10-
mediaPresentationDuration="PT0H0M54.554S"
11-
minBufferTime="PT4S"
12-
profiles="urn:mpeg:dash:profile:isoff-live:2011">
13-
<Period id="1" start="PT0S">
14-
<!-- Video -->
15-
<AdaptationSet id="1" mimeType="video/mp4" segmentAlignment="true" startWithSAP="1">
16-
<Role schemeIdUri="urn:mpeg:dash:role:2011" value="main"/>
17-
<SegmentTemplate timescale="5994" media="video_$Number$.mp4" initialization="video.mp4">
18-
<SegmentTimeline>
19-
<S t="0" d="12000" r="33"/>
20-
</SegmentTimeline>
21-
</SegmentTemplate>
22-
<Representation id="1" bandwidth="2030173" codecs="hev1.1.6.L120.90" width="1920" height="1080"/>
23-
</AdaptationSet>
24-
<!-- Audio -->
25-
<AdaptationSet id="2" mimeType="audio/mp4" segmentAlignment="true" startWithSAP="1">
26-
<SegmentTemplate timescale="48000" media="audio_$Number$.mp4" initialization="audio.mp4">
27-
<SegmentTimeline>
28-
<S t="0" d="90112" r="129"/>
29-
</SegmentTimeline>
30-
</SegmentTemplate>
31-
<Representation id="2" bandwidth="434965" codecs="mhm1.0x0C" audioSamplingRate="48000"/>
32-
</AdaptationSet>
33-
<!-- Preselections -->
34-
<Preselection id="1" lang="en" tag="101" preselectionComponents="2">
35-
<AudioChannelConfiguration schemeIdUri="urn:mpeg:mpegB:cicp:ChannelConfiguration" value="2"/>
36-
<Label id="1">Main English</Label>
37-
<Role schemeIdUri="urn:mpeg:dash:role:2011" value="main"/>
38-
</Preselection>
39-
<Preselection id="2" lang="es" tag="202" preselectionComponents="2">
40-
<AudioChannelConfiguration schemeIdUri="urn:mpeg:mpegB:cicp:ChannelConfiguration" value="2"/>
41-
<Label id="1">Main Spanish</Label>
42-
<Role schemeIdUri="urn:mpeg:dash:role:2011" value="dub"/>
43-
</Preselection>
44-
</Period>
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<MPD type="dynamic" xmlns="urn:mpeg:dash:schema:mpd:2011" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:mpeg:dash:schema:mpd:2011 DASH-MPD.xsd" profiles="urn:mpeg:dash:profile:isoff-ext-live:2014" minBufferTime="PT1.143S" maxSegmentDuration="PT3.84S" minimumUpdatePeriod="PT1H" timeShiftBufferDepth="PT2M" availabilityStartTime="2019-08-06T13:31:00Z" publishTime="2019-08-06T13:31:00Z">
3+
<ServiceDescription id="0">
4+
<Scope schemeIdUri="tag:example.com,082019:lowlatencyclients" value="2"/>
5+
<Latency min="4800" max="34800" target="6800" referenceId="7"/>
6+
<PlaybackRate min="0.96" max="1.04"/>
7+
</ServiceDescription>
8+
<Period id="first" start="PT0S">
9+
<AdaptationSet startWithSAP="2" segmentAlignment="true" par="16:9" id="1" contentType="video" mimeType="video/mp4" >
10+
<InbandEventStream schemeIdUri="urn:mpeg:dash:event:2012" value="1" />
11+
<ProducerReferenceTime id="7" wallClockTime="2019-08-06T13:44:12Z" presentationTime="158400">
12+
<UTCTiming schemeIdUri="urn:mpeg:dash:utc:http-xsdate:2014" value="https://example.com/iso"/>
13+
</ProducerReferenceTime>
14+
<Role schemeIdUri="urn:mpeg:dash:role:2011" value="main"/>
15+
<SegmentTemplate startNumber="404547501" presentationTimeOffset="310692480000" timescale="200" duration="768" media="$RepresentationID$/$Number%06d$.m4s" initialization="$RepresentationID$/IS.mp4" availabilityTimeOffset="2.88" availabilityTimeComplete="false"/>
16+
<Representation id="1280x720p50" codecs="avc3.640020" height="720" width="1280" frameRate="50" bandwidth="5447392" scanType="progressive" />
17+
</AdaptationSet>
18+
<AdaptationSet startWithSAP="2" segmentAlignment="true" id="6" codecs="mp4a.40.2" audioSamplingRate="48000" contentType="audio" lang="eng" mimeType="audio/mp4" >
19+
<AudioChannelConfiguration schemeIdUri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="6"/>
20+
<InbandEventStream schemeIdUri="urn:mpeg:dash:event:2012" value="1"/>
21+
<Role schemeIdUri="urn:mpeg:dash:role:2011" value="main"/>
22+
<SegmentTemplate startNumber="404547501" presentationTimeOffset="74566195200000" timescale="48000" duration="184320" media="$RepresentationID$/$Number%06d$.m4s" initialization="$RepresentationID$/IS.mp4" availabilityTimeOffset="2.88" availabilityTimeComplete="false" />
23+
<Representation id="320kbps-5_1" bandwidth="319520" />
24+
</AdaptationSet>
25+
</Period>
26+
<UTCTiming schemeIdUri="urn:mpeg:dash:utc:http-xsdate:2014" value="https://example.com/iso"/>
27+
<LeapSecondInformation availabilityStartLeapOffset="37"/>
4528
</MPD>

example_G19.mpd

-28
This file was deleted.

example_G6.mpd

+1-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
<SubRepresentation level="0" contentComponent="0" bandwidth="128000" codecs="avc1.4D401E" maxPlayoutRate="4"/>
2626
<SubRepresentation level="1" dependencyLevel="0" contentComponent="0" bandwidth="320000" codecs="avc2.4D401E"/>
2727
<SubRepresentation level="2" contentComponent="1" bandwidth="64000" codecs="mp4a.40"/>
28-
<SegmentBase indexRange="7632" />
28+
<SegmentBase indexRange="7632-7632" />
2929
</Representation>
3030
</AdaptationSet>
3131
</Period>

0 commit comments

Comments
 (0)