Search code examples
htmlvideo-streamingplaylistmpegmpeg-dash

Simple mpeg dash playlist with segments of varying length


I am wondering if there is a "simple" way of writing a DASH playlist that just contains a list of h264/AAC mp4 files of varying length. The spec seems to limit varying sizes to the live profile - which again requires the use of a segment template - which again requires segments to be easily enumerable. My segments have unique ids - and in this way can not be described by a template url ... so am i missing any easy way around this issue?

My perfect world scenario would look a bit like this - but does not seem to make any dash player happy:

<?xml version="1.0" encoding="UTF-8"?>
<MPD type="static" xmlns="urn:mpeg:dash:schema:mpd:2011" minBufferTime="PT1.50S" mediaPresentationDuration="PT0H0M30S" profiles="urn:mpeg:dash:profile:isoff-main:2011">
<BaseURL>http://myServer/videoSegments</BaseURL> 
    <Period start="PT0S">
        <AdaptationSet bitstreamSwitching="false">
            <Representation id="0" mimeType="video/mp4" codecs="avc1.4D401F" startWithSAP="1" width="640" height="480" frameRate="25" sar="1:1"  bandwidth="643595">
                <SegmentList>
                    <S media="start.mp4" d="9100" r="0"/>
                    <S media="stop.mp4" d="20900" r="0"/>
                </SegmentList>
            </Representation>
        </AdaptationSet>
    </Period>
</MPD>

Solution

  • It is probably best to use SegmentTimeline in this case. You can see an example MPD from unified streaming using different durations for segments here. A player which is capable of playing can be found at www.dash-player.com