[FFmpeg-trac] #9281(avformat:new): wrong $Number$ value while reading mpd

FFmpeg trac at avcodec.org
Fri Jul 4 15:18:45 EEST 2025


#9281: wrong $Number$ value while reading mpd
-------------------------------------+------------------------------------
             Reporter:  Kostik       |                    Owner:  (none)
                 Type:  defect       |                   Status:  new
             Priority:  normal       |                Component:  avformat
              Version:  unspecified  |               Resolution:
             Keywords:  dash         |               Blocked By:
             Blocking:               |  Reproduced by developer:  0
Analyzed by developer:  0            |
-------------------------------------+------------------------------------
Comment (by Chris Woods):

 This is still an issue in latest ffmpeg builds. Some DASH manifests seem
 to cause ffmpeg to incorrectly calculate the segment numbers. This
 behaviour is being noticed in various programs which depend on ffmpeg for
 DASH playback.

 == A working example, using mpv ==

 {{{#!xml
 <MPD xmlns="urn:mpeg:dash:schema:mpd:2011"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="urn:mpeg:dash:schema:mpd:2011
 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-
 DASH_schema_files/DASH-MPD.xsd" profiles="urn:dvb:dash:profile:dvb-
 dash:2014,urn:dvb:dash:profile:dvb-dash:isoff-ext-live:2014"
 type="dynamic" availabilityStartTime="1970-01-01T00:01:00Z"
 publishTime="2025-05-27T10:34:23.736Z" minimumUpdatePeriod="PT8H"
 minBufferTime="PT10S" timeShiftBufferDepth="PT2M"
 maxSegmentDuration="PT4S">
   <Period id="1" start="PT0S">
     <AdaptationSet id="1" contentType="audio" mimeType="audio/mp4"
 segmentAlignment="true" audioSamplingRate="48000" codecs="mp4a.40.2"
 startWithSAP="1" group="1" lang="en">
       <AudioChannelConfiguration
 schemeIdUri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011"
 value="2"/>
       <Role schemeIdUri="urn:mpeg:dash:role:2011" value="main"/>
       <Representation id="pa9" bandwidth="192000">
         <SegmentTemplate initialization="a=pa9/b=192000/segment.init"
 media="t=4000/a=pa9/b=192000/$Number$.m4s" timescale="48000"
 duration="192000"/>
       </Representation>
     </AdaptationSet>
     <AdaptationSet id="2" contentType="video" mimeType="video/mp4"
 segmentAlignment="true" sar="1:1" startWithSAP="1" group="2" par="16:9">
       <Role schemeIdUri="urn:mpeg:dash:role:2011" value="main"/>
       <Representation id="pv54" bandwidth="24000000" width="3840"
 height="2160" codecs="hev1.2.4.L153.00.00.B0" frameRate="50"
 scanType="progressive">
         <SegmentTemplate initialization="v=pv54/b=24000000/segment.init"
 media="t=4000/v=pv54/b=24000000/$Number$.m4s" timescale="200"
 duration="800"/>
       </Representation>
       <Representation id="pv49" bandwidth="14000000" width="2560"
 height="1440" codecs="hev1.2.4.L150.00.00.B0" frameRate="50"
 scanType="progressive">
         <SegmentTemplate initialization="v=pv49/b=14000000/segment.init"
 media="t=4000/v=pv49/b=14000000/$Number$.m4s" timescale="200"
 duration="800"/>
       </Representation>
       <Representation id="pv46" bandwidth="10000000" width="1920"
 height="1080" codecs="hev1.2.4.L123.00.00.B0" frameRate="50"
 scanType="progressive">
         <SegmentTemplate initialization="v=pv46/b=10000000/segment.init"
 media="t=4000/v=pv46/b=10000000/$Number$.m4s" timescale="200"
 duration="800"/>
       </Representation>
       <Representation id="pv45" bandwidth="7000000" width="1280"
 height="720" codecs="hev1.2.4.L120.00.00.B0" frameRate="50"
 scanType="progressive">
         <SegmentTemplate initialization="v=pv45/b=7000000/segment.init"
 media="t=4000/v=pv45/b=7000000/$Number$.m4s" timescale="200"
 duration="800"/>
       </Representation>
       <Representation id="pv53" bandwidth="5500000" width="960"
 height="540" codecs="hev1.2.4.L93.00.00.B0" frameRate="50"
 scanType="progressive">
         <SegmentTemplate initialization="v=pv53/b=5500000/segment.init"
 media="t=4000/v=pv53/b=5500000/$Number$.m4s" timescale="200"
 duration="800"/>
       </Representation>
       <Representation id="pv52" bandwidth="2810000" width="960"
 height="540" codecs="hev1.2.4.L93.00.00.B0" frameRate="50"
 scanType="progressive">
         <SegmentTemplate initialization="v=pv52/b=2810000/segment.init"
 media="t=4000/v=pv52/b=2810000/$Number$.m4s" timescale="200"
 duration="800"/>
       </Representation>
       <Representation id="pv51" bandwidth="1600000" width="960"
 height="540" codecs="hev1.2.4.L93.00.00.B0" frameRate="50"
 scanType="progressive">
         <SegmentTemplate initialization="v=pv51/b=1600000/segment.init"
 media="t=4000/v=pv51/b=1600000/$Number$.m4s" timescale="200"
 duration="800"/>
       </Representation>
     </AdaptationSet>
   </Period>
   <UTCTiming schemeIdUri="urn:mpeg:dash:utc:http-xsdate:2014"
 value="https://time.akamai.com/?iso"/>
 </MPD>
 }}}

 {{{
 [   1.177][d][ffmpeg/demuxer] dash: DASH request for url
 'https://example.tld/working-dash-stream/v=pv54/b=24000000/segment.init',
 offset 0
 [   1.178][d][ffmpeg] tcp: Starting connection attempt to 10.10.1.1 port
 80
 [   1.185][d][ffmpeg] tcp: Successfully connected to 10.10.1.1 port 80
 [   1.220][d][ffmpeg] AVIOContext: Statistics: 721 bytes read, 0 seeks
 [   1.221][d][ffmpeg/demuxer] dash: DASH request for url
 'https://example.tld/working-dash-
 stream/t=4000/v=pv54/b=24000000/437889944.m4s', offset 0
 [   1.221][d][ffmpeg] tcp: Starting connection attempt to 10.10.1.1 port
 80
 [   1.230][d][ffmpeg] tcp: Successfully connected to 10.10.1.1 port 80
 [   1.291][d][ffmpeg/demuxer] mov,mp4,m4a,3gp,3g2,mj2: advanced_editlist
 does not work with fragmented MP4. disabling.
 [   1.291][d][ffmpeg/demuxer] dash: DASH request for url
 'https://example.tld/working-dash-stream/v=pv49/b=14000000/segment.init',
 offset 0
 [   1.291][d][ffmpeg] tcp: Starting connection attempt to 10.10.1.1 port
 80
 [   1.300][d][ffmpeg] tcp: Successfully connected to 10.10.1.1 port 80
 [   1.341][d][ffmpeg] AVIOContext: Statistics: 721 bytes read, 0 seeks
 [   1.341][d][ffmpeg/demuxer] dash: DASH request for url
 'https://example.tld/working-dash-
 stream/t=4000/v=pv49/b=14000000/437889944.m4s', offset 0
 [   1.342][d][ffmpeg] tcp: Starting connection attempt to 10.10.1.1 port
 80
 [   1.350][d][ffmpeg] tcp: Successfully connected to 10.10.1.1 port 80
 [   1.405][d][ffmpeg/demuxer] mov,mp4,m4a,3gp,3g2,mj2: advanced_editlist
 does not work with fragmented MP4. disabling.
 [   1.405][d][ffmpeg/demuxer] dash: DASH request for url
 'https://example.tld/working-dash-stream/v=pv46/b=10000000/segment.init',
 offset 0
 [   1.406][d][ffmpeg] tcp: Starting connection attempt to 10.10.1.1 port
 80
 [   1.415][d][ffmpeg] tcp: Successfully connected to 10.10.1.1 port 80
 [   1.457][d][ffmpeg] AVIOContext: Statistics: 721 bytes read, 0 seeks
 [   1.458][d][ffmpeg/demuxer] dash: DASH request for url
 'https://example.tld/working-dash-
 stream/t=4000/v=pv46/b=10000000/437889944.m4s', offset 0
 [   1.458][d][ffmpeg] tcp: Starting connection attempt to 10.10.1.1 port
 80
 [   1.465][d][ffmpeg] tcp: Successfully connected to 10.10.1.1 port 80
 [   1.513][d][ffmpeg/demuxer] mov,mp4,m4a,3gp,3g2,mj2: advanced_editlist
 does not work with fragmented MP4. disabling.
 [   1.513][d][ffmpeg/demuxer] dash: DASH request for url
 'https://example.tld/working-dash-stream/v=pv45/b=7000000/segment.init',
 offset 0
 [   1.513][d][ffmpeg] tcp: Starting connection attempt to 10.10.1.1 port
 80
 [   1.521][d][ffmpeg] tcp: Successfully connected to 10.10.1.1 port 80
 [   1.557][d][ffmpeg] AVIOContext: Statistics: 721 bytes read, 0 seeks
 [   1.557][d][ffmpeg/demuxer] dash: DASH request for url
 'https://example.tld/working-dash-
 stream/t=4000/v=pv45/b=7000000/437889944.m4s', offset 0
 [   1.558][d][ffmpeg] tcp: Starting connection attempt to 10.10.1.1 port
 80
 [   1.565][d][ffmpeg] tcp: Successfully connected to 10.10.1.1 port 80
 [   1.618][d][ffmpeg/demuxer] mov,mp4,m4a,3gp,3g2,mj2: advanced_editlist
 does not work with fragmented MP4. disabling.
 [   1.618][d][ffmpeg/demuxer] dash: DASH request for url
 'https://example.tld/working-dash-stream/v=pv53/b=5500000/segment.init',
 offset 0
 [   1.619][d][ffmpeg] tcp: Starting connection attempt to 10.10.1.1 port
 80
 [   1.626][d][ffmpeg] tcp: Successfully connected to 10.10.1.1 port 80
 [   1.662][d][ffmpeg] AVIOContext: Statistics: 721 bytes read, 0 seeks
 [   1.663][d][ffmpeg/demuxer] dash: DASH request for url
 'https://example.tld/working-dash-
 stream/t=4000/v=pv53/b=5500000/437889944.m4s', offset 0
 [   1.663][d][ffmpeg] tcp: Starting connection attempt to 10.10.1.1 port
 80
 [   1.672][d][ffmpeg] tcp: Successfully connected to 10.10.1.1 port 80
 [   1.726][d][ffmpeg/demuxer] mov,mp4,m4a,3gp,3g2,mj2: advanced_editlist
 does not work with fragmented MP4. disabling.
 [   1.726][d][ffmpeg/demuxer] dash: DASH request for url
 'https://example.tld/working-dash-stream/v=pv52/b=2810000/segment.init',
 offset 0
 [   1.727][d][ffmpeg] tcp: Starting connection attempt to 10.10.1.1 port
 80
 [   1.736][d][ffmpeg] tcp: Successfully connected to 10.10.1.1 port 80
 [   1.780][d][ffmpeg] AVIOContext: Statistics: 721 bytes read, 0 seeks
 }}}


 == An example of an incorrect playback attempt ==

 {{{#!xml
 <MPD xmlns="urn:mpeg:dash:schema:mpd:2011"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="urn:mpeg:dash:schema:mpd:2011
 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-
 DASH_schema_files/DASH-MPD.xsd" profiles="urn:dvb:dash:profile:dvb-
 dash:2014,urn:dvb:dash:profile:dvb-dash:isoff-ext-live:2014"
 type="dynamic" availabilityStartTime="2025-07-03T09:38:39.04Z"
 publishTime="2025-07-03T09:38:21.9Z" minimumUpdatePeriod="PT8H"
 minBufferTime="PT10S" maxSegmentDuration="PT4S">
   <Period id="1" start="PT0S">
     <AdaptationSet id="1" contentType="audio" mimeType="audio/mp4"
 segmentAlignment="true" audioSamplingRate="48000" codecs="mp4a.40.5"
 startWithSAP="1" group="1" lang="en">
       <AudioChannelConfiguration
 schemeIdUri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011"
 value="2"/>
       <InbandEventStream schemeIdUri="urn:mpeg:dash:event:2012"
 value="1"/>
       <Role schemeIdUri="urn:mpeg:dash:role:2011" value="main"/>
       <Representation id="pa3" bandwidth="96000">
         <SegmentTemplate initialization="a=pa3/al=en-
 GB/ap=main/b=96000/segment.init" media="t=3840/a=pa3/al=en-
 GB/ap=main/b=96000/$Number$.m4s" startNumber="456129032" timescale="48000"
 duration="184320" presentationTimeOffset="84073702993920"/>
       </Representation>
     </AdaptationSet>
     <AdaptationSet id="2" contentType="video" mimeType="video/mp4"
 segmentAlignment="true" sar="1:1" startWithSAP="1" group="2" par="16:9">
       <InbandEventStream schemeIdUri="urn:mpeg:dash:event:2012"
 value="1"/>
       <Role schemeIdUri="urn:mpeg:dash:role:2011" value="main"/>
       <Representation id="pv4" bandwidth="281024" width="384" height="216"
 codecs="avc3.42C015" frameRate="25" scanType="progressive">
         <SegmentTemplate initialization="v=pv4/b=281024/segment.init"
 media="t=3840/v=pv4/b=281024/$Number$.m4s" startNumber="456129032"
 timescale="25" duration="96" presentationTimeOffset="43788386976"/>
       </Representation>
       <Representation id="pv5" bandwidth="437056" width="512" height="288"
 codecs="avc3.4D4015" frameRate="25" scanType="progressive">
         <SegmentTemplate initialization="v=pv5/b=437056/segment.init"
 media="t=3840/v=pv5/b=437056/$Number$.m4s" startNumber="456129032"
 timescale="25" duration="96" presentationTimeOffset="43788386976"/>
       </Representation>
       <Representation id="pv8" bandwidth="827008" width="704" height="396"
 codecs="avc3.4D401E" frameRate="25" scanType="progressive">
         <SegmentTemplate initialization="v=pv8/b=827008/segment.init"
 media="t=3840/v=pv8/b=827008/$Number$.m4s" startNumber="456129032"
 timescale="25" duration="96" presentationTimeOffset="43788386976"/>
       </Representation>
       <Representation id="pv10" bandwidth="1604032" width="960"
 height="540" codecs="avc3.4D401F" frameRate="25" scanType="progressive">
         <SegmentTemplate initialization="v=pv10/b=1604032/segment.init"
 media="t=3840/v=pv10/b=1604032/$Number$.m4s" startNumber="456129032"
 timescale="25" duration="96" presentationTimeOffset="43788386976"/>
       </Representation>
       <Representation id="pv13" bandwidth="2812032" width="960"
 height="540" codecs="avc3.64001F" frameRate="50" scanType="progressive">
         <SegmentTemplate initialization="v=pv13/b=2812032/segment.init"
 media="t=3840/v=pv13/b=2812032/$Number$.m4s" startNumber="456129032"
 timescale="50" duration="192" presentationTimeOffset="87576773952"/>
       </Representation>
       <Representation id="pv14" bandwidth="5070016" width="1280"
 height="720" codecs="avc3.640020" frameRate="50" scanType="progressive">
         <SegmentTemplate initialization="v=pv14/b=5070016/segment.init"
 media="t=3840/v=pv14/b=5070016/$Number$.m4s" startNumber="456129032"
 timescale="50" duration="192" presentationTimeOffset="87576773952"/>
       </Representation>
     </AdaptationSet>
   </Period>
   <UTCTiming schemeIdUri="urn:mpeg:dash:utc:http-xsdate:2014"
 value="https://time.akamai.com/?iso"/>
 </MPD>
 }}}

 {{{
 [  21.660][v][stream_callback] Opening https://ve-cmaf-push-uk-
 live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_007/pc_hd_abr_v2.mpd
 [  21.660][v][ffmpeg] Opening https://ve-cmaf-push-uk-
 live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_007/pc_hd_abr_v2.mpd
 [  21.796][d][ffmpeg/demuxer] dash: new fragment: min[456135136]
 max[456135136]
 [  21.796][d][ffmpeg/demuxer] dash: DASH request for url 'https://ve-cmaf-
 push-uk-
 live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_007/v=pv4/b=281024/segment.init',
 offset 0
 [  21.856][d][ffmpeg/demuxer] dash: DASH request for url 'https://ve-cmaf-
 push-uk-
 live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_007/t=3840/v=pv4/b=281024/-1431649671.m4s',
 offset 0
 [  21.905][w][ffmpeg] https: HTTP error 403 Forbidden
 [  21.905][w][ffmpeg/demuxer] dash: Failed to open fragment of playlist
 [  21.905][d][ffmpeg/demuxer] dash: new fragment: min[456135136]
 max[456135136]
 [  21.905][d][ffmpeg/demuxer] dash: DASH request for url 'https://ve-cmaf-
 push-uk-
 live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_007/t=3840/v=pv4/b=281024/-1431649670.m4s',
 offset 0
 [  21.946][w][ffmpeg] https: HTTP error 403 Forbidden
 [  21.946][w][ffmpeg/demuxer] dash: Failed to open fragment of playlist
 [  21.946][d][ffmpeg/demuxer] dash: new fragment: min[456135136]
 max[456135136]
 [  21.946][d][ffmpeg/demuxer] dash: DASH request for url 'https://ve-cmaf-
 push-uk-
 live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_007/t=3840/v=pv4/b=281024/-1431649669.m4s',
 offset 0
 [  22.004][w][ffmpeg] https: HTTP error 403 Forbidden
 [  22.004][w][ffmpeg/demuxer] dash: Failed to open fragment of playlist
 [  22.004][d][ffmpeg/demuxer] dash: new fragment: min[456135136]
 max[456135136]
 [  22.004][d][ffmpeg/demuxer] dash: DASH request for url 'https://ve-cmaf-
 push-uk-
 live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_007/t=3840/v=pv4/b=281024/-1431649668.m4s',
 offset 0
 [  22.060][w][ffmpeg] https: HTTP error 403 Forbidden
 [  22.060][w][ffmpeg/demuxer] dash: Failed to open fragment of playlist
 [  22.060][d][ffmpeg/demuxer] dash: new fragment: min[456135136]
 max[456135136]
 [  22.060][d][ffmpeg/demuxer] dash: DASH request for url 'https://ve-cmaf-
 push-uk-
 live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_007/t=3840/v=pv4/b=281024/-1431649667.m4s',
 offset 0
 [  22.101][w][ffmpeg] https: HTTP error 403 Forbidden
 [  22.101][w][ffmpeg/demuxer] dash: Failed to open fragment of playlist
 [  22.101][d][ffmpeg/demuxer] dash: new fragment: min[456135136]
 max[456135136]
 [  22.101][d][ffmpeg/demuxer] dash: DASH request for url 'https://ve-cmaf-
 push-uk-
 live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_007/t=3840/v=pv4/b=281024/-1431649666.m4s',
 offset 0
 [  22.147][w][ffmpeg] https: HTTP error 403 Forbidden
 [  22.147][w][ffmpeg/demuxer] dash: Failed to open fragment of playlist
 [  22.147][d][ffmpeg/demuxer] dash: new fragment: min[456135136]
 max[456135136]
 [  22.147][d][ffmpeg/demuxer] dash: DASH request for url 'https://ve-cmaf-
 push-uk-
 live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_007/t=3840/v=pv4/b=281024/-1431649665.m4s',
 offset 0
 [  22.204][w][ffmpeg] https: HTTP error 403 Forbidden
 [  22.204][w][ffmpeg/demuxer] dash: Failed to open fragment of playlist
 [  22.204][d][ffmpeg/demuxer] dash: new fragment: min[456135136]
 max[456135136]
 [  22.204][d][ffmpeg/demuxer] dash: DASH request for url 'https://ve-cmaf-
 push-uk-
 live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_007/t=3840/v=pv4/b=281024/-1431649664.m4s',
 offset 0
 [  22.262][w][ffmpeg] https: HTTP error 403 Forbidden
 [  22.262][w][ffmpeg/demuxer] dash: Failed to open fragment of playlist
 [  22.262][d][ffmpeg/demuxer] dash: new fragment: min[456135136]
 max[456135136]
 [  22.262][d][ffmpeg/demuxer] dash: DASH request for url 'https://ve-cmaf-
 push-uk-
 live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_007/t=3840/v=pv4/b=281024/-1431649663.m4s',
 offset 0
 [  22.315][w][ffmpeg] https: HTTP error 403 Forbidden
 [  22.315][w][ffmpeg/demuxer] dash: Failed to open fragment of playlist
 [  22.315][d][ffmpeg/demuxer] dash: new fragment: min[456135136]
 max[456135136]
 [  22.315][d][ffmpeg/demuxer] dash: DASH request for url 'https://ve-cmaf-
 push-uk-
 live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_007/t=3840/v=pv4/b=281024/-1431649662.m4s',
 offset 0
 }}}


 == An example of the same stream/manifest, correctly parsed and played
 using dash.js ==
 {{{#!xml
 <MPD xmlns="urn:mpeg:dash:schema:mpd:2011"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="urn:mpeg:dash:schema:mpd:2011
 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-
 DASH_schema_files/DASH-MPD.xsd" profiles="urn:dvb:dash:profile:dvb-
 dash:2014,urn:dvb:dash:profile:dvb-dash:isoff-ext-live:2014"
 type="dynamic" availabilityStartTime="2025-07-03T09:38:39.04Z"
 publishTime="2025-07-03T09:38:21.9Z" minimumUpdatePeriod="PT8H"
 minBufferTime="PT10S" maxSegmentDuration="PT4S">
   <Period id="1" start="PT0S">
     <AdaptationSet id="1" contentType="audio" mimeType="audio/mp4"
 segmentAlignment="true" audioSamplingRate="48000" codecs="mp4a.40.5"
 startWithSAP="1" group="1" lang="en">
       <AudioChannelConfiguration
 schemeIdUri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011"
 value="2"/>
       <InbandEventStream schemeIdUri="urn:mpeg:dash:event:2012"
 value="1"/>
       <Role schemeIdUri="urn:mpeg:dash:role:2011" value="main"/>
       <Representation id="pa3" bandwidth="96000">
         <SegmentTemplate initialization="a=pa3/al=en-
 GB/ap=main/b=96000/segment.init" media="t=3840/a=pa3/al=en-
 GB/ap=main/b=96000/$Number$.m4s" startNumber="456129032" timescale="48000"
 duration="184320" presentationTimeOffset="84073702993920"/>
       </Representation>
     </AdaptationSet>
     <AdaptationSet id="2" contentType="video" mimeType="video/mp4"
 segmentAlignment="true" sar="1:1" startWithSAP="1" group="2" par="16:9">
       <InbandEventStream schemeIdUri="urn:mpeg:dash:event:2012"
 value="1"/>
       <Role schemeIdUri="urn:mpeg:dash:role:2011" value="main"/>
       <Representation id="pv4" bandwidth="281024" width="384" height="216"
 codecs="avc3.42C015" frameRate="25" scanType="progressive">
         <SegmentTemplate initialization="v=pv4/b=281024/segment.init"
 media="t=3840/v=pv4/b=281024/$Number$.m4s" startNumber="456129032"
 timescale="25" duration="96" presentationTimeOffset="43788386976"/>
       </Representation>
       <Representation id="pv5" bandwidth="437056" width="512" height="288"
 codecs="avc3.4D4015" frameRate="25" scanType="progressive">
         <SegmentTemplate initialization="v=pv5/b=437056/segment.init"
 media="t=3840/v=pv5/b=437056/$Number$.m4s" startNumber="456129032"
 timescale="25" duration="96" presentationTimeOffset="43788386976"/>
       </Representation>
       <Representation id="pv8" bandwidth="827008" width="704" height="396"
 codecs="avc3.4D401E" frameRate="25" scanType="progressive">
         <SegmentTemplate initialization="v=pv8/b=827008/segment.init"
 media="t=3840/v=pv8/b=827008/$Number$.m4s" startNumber="456129032"
 timescale="25" duration="96" presentationTimeOffset="43788386976"/>
       </Representation>
       <Representation id="pv10" bandwidth="1604032" width="960"
 height="540" codecs="avc3.4D401F" frameRate="25" scanType="progressive">
         <SegmentTemplate initialization="v=pv10/b=1604032/segment.init"
 media="t=3840/v=pv10/b=1604032/$Number$.m4s" startNumber="456129032"
 timescale="25" duration="96" presentationTimeOffset="43788386976"/>
       </Representation>
       <Representation id="pv13" bandwidth="2812032" width="960"
 height="540" codecs="avc3.64001F" frameRate="50" scanType="progressive">
         <SegmentTemplate initialization="v=pv13/b=2812032/segment.init"
 media="t=3840/v=pv13/b=2812032/$Number$.m4s" startNumber="456129032"
 timescale="50" duration="192" presentationTimeOffset="87576773952"/>
       </Representation>
       <Representation id="pv14" bandwidth="5070016" width="1280"
 height="720" codecs="avc3.640020" frameRate="50" scanType="progressive">
         <SegmentTemplate initialization="v=pv14/b=5070016/segment.init"
 media="t=3840/v=pv14/b=5070016/$Number$.m4s" startNumber="456129032"
 timescale="50" duration="192" presentationTimeOffset="87576773952"/>
       </Representation>
     </AdaptationSet>
   </Period>
   <UTCTiming schemeIdUri="urn:mpeg:dash:utc:http-xsdate:2014"
 value="https://time.akamai.com/?iso"/>
 </MPD>
 }}}

 {{{
 https://ve-cmaf-push-uk-
 live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_007/v=pv8/b=827008/segment.init
 https://ve-cmaf-push-uk-
 live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_007/v=pv14/b=5070016/segment.init
 https://ve-cmaf-push-uk-
 live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_007/a=pa3/al
 =en-GB/ap=main/b=96000/segment.init
 }}}

 {{{
 https://ve-cmaf-push-uk-
 live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_007/t=3840/v=pv14/b=5070016/456134427.m4s
 https://ve-cmaf-push-uk-
 live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_007/t=3840/a=pa3/al
 =en-GB/ap=main/b=96000/456134427.m4s

 https://ve-cmaf-push-uk-
 live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_007/t=3840/a=pa3/al
 =en-GB/ap=main/b=96000/456134428.m4s
 https://ve-cmaf-push-uk-
 live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_007/t=3840/v=pv14/b=5070016/456134428.m4s

 https://ve-cmaf-push-uk-
 live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_007/t=3840/v=pv14/b=5070016/456134429.m4s
 https://ve-cmaf-push-uk-
 live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_007/t=3840/a=pa3/al
 =en-GB/ap=main/b=96000/456134429.m4s
 }}}

 etc.
-- 
Ticket URL: <https://trac.ffmpeg.org/ticket/9281#comment:2>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list