Playback URLs (DASH)

Configure your encoder to generate playback URLs for DASH.

The encoder should generate the primary and backup URLs as follows:

  • Backup playback path: dash/live/{streamID}-b/{eventname}/{object}
    • https://testconfig-i.akamaized.net/dash/live/500002-b/test79/dash.mpd
    • https://testconfig-i.akamaized.net/dash/live/500002-b/test79/dash/5000kbps-10.m4s
  • Primary playback path: dash/live/{streamID}/{eventname}/{object}
    • https://testconfig-i.akamaized.net/dash/live/500002/test79/dash.mpd
    • https://testconfig-i.akamaized.net/dash/live/500002/test79/dash/5000kbps-10.m4s
  • Base playback URL: {customerhostname}-i.akamaized.net

The playback information is embedded in the manifest mpd file as two BaseURLs, as shown in this example:

<!--Encoder Streaming Server 1.3.5.20200511.28975 -->
<MPD type="dynamic" profiles="urn:mpeg:dash:profile:isoff-live:2011" maxSegmentDuration="PT4.000S" minBufferTime="PT2.000S" minimumUpdatePeriod="PT2.000S" suggestedPresentationDelay="PT15.000S" timeShiftBufferDepth="PT1M" availabilityStartTime="1970-01-01T00:00:00Z" publishTime="2020-06-30T17:39:04Z" programDateTime="2020-06-30T17:40:13Z" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="urn:mpeg:dash:schema:mpd:2011" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:cenc="urn:mpeg:cenc:2013" xsi:schemaLocation="urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd">
    <Period id="6273F7C507CD458681761F561830F980" start="PT442637H41M46.520S">
        <AdaptationSet id="0" contentType="video" mimeType="video/mp4" minBandwidth="400000" maxBandwidth="1600000" minWidth="400" maxWidth="1280" minHeight="224" maxHeight="720" minFrameRate="25000/1000" maxFrameRate="25000/1000" segmentAlignment="true" startWithSAP="1" subsegmentAlignment="true" subsegmentStartsWithSAP="1">
            <InbandEventStream schemeIdUri="urn:scte:scte35:2013:xml" value="1" />
            <Accessibility schemeIdUri="urn:scte:dash:cc:cea-608:2015" value="CC1=English1;CC2=English2;CC3=chinese;CC4=Spanish" />
            <Role schemeIdUri="urn:mpeg:dash:role:2011" value="main" />
            <SegmentTemplate timescale="1000000" presentationTimeOffset="1593495706520382" duration="2000000" startNumber="796747853" media="$RepresentationID$-$Number$.m4s" initialization="$RepresentationID$-init.m4s" />
            <Representation width="400" height="224" frameRate="25000/1000" sar="1:1" codecs="avc1.4D4015" id="game25006_hd_400_video" bandwidth="400000" />
            <Representation width="640" height="360" frameRate="25000/1000" sar="1:1" codecs="avc1.4D401E" id="game25006_hd_800_video" bandwidth="800000" />
            <Representation width="1280" height="720" frameRate="25000/1000" sar="1:1" codecs="avc1.4D401F" id="game25006_hd_1600_video" bandwidth="1600000" />
        </AdaptationSet>
        <AdaptationSet id="1" contentType="audio" mimeType="audio/mp4" lang="eng" segmentAlignment="true" startWithSAP="1" subsegmentAlignment="true" subsegmentStartsWithSAP="1">
            <Role schemeIdUri="urn:mpeg:dash:role:2011" value="main" />
            <Role schemeIdUri="urn:neulion:audio:displayname" value="English" />
            <SegmentTemplate timescale="1000000" presentationTimeOffset="1593495706520382" duration="2000000" startNumber="796747853" media="$RepresentationID$-$Number$.m4s" initialization="$RepresentationID$-init.m4s" />
            <Representation audioSamplingRate="44100" codecs="mp4a.40.2" id="game25006_hd_1600_audio" bandwidth="128000">
                <AudioChannelConfiguration schemeIdUri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2" />
            </Representation>
        </AdaptationSet>
    </Period>
    <UTCTiming schemeIdUri="urn:mpeg:dash:utc:direct:2014" value="2020-06-30T17:41:05.960382Z" />
</MPD>

If the player detects a 404 error on a segment request, it switches to an alternate stream and vice versa.