2
votes

So I am working on generating a very simple MPD manifest file for my MPEG-DASH videos and I cannot figure out what is wrong. Here is my current manifest file

<?xml version="1.0" ?>
<MPD xmlns="urn:mpeg:dash:schema:mpd:2011" minBufferTime="PT1.500S" type="static" mediaPresentationDuration="PT0H9M21.795S" maxSegmentDuration="PT0H0M1.001S" profiles="urn:mpeg:dash:profile:isoff-on-demand:2011">
    <Period>
        <BaseURL>https://mysite/uploads/sources/resolution_640/bitrate_1400/</BaseURL>
        <AdaptationSet mimeType="video/mp4">
            <ContentComponent contentType="video" id="1" />
            <Representation id="2" bandwidth="1400000">
              <SegmentList duration="119">
                <Initialization sourceURL="https://mysite/uploads/sources/resolution_640/bitrate_1400/640x360_1400Kpbs_0.mp4"/>
                <SegmentURL media="https://mysite/uploads/sources/resolution_640/bitrate_1400/640x360_1400Kpbs_1.mp4"/>
                <SegmentURL media="https://mysite/uploads/sources/resolution_640/bitrate_1400/640x360_1400Kpbs_2.mp4"/>
                <SegmentURL media="https://mysite/uploads/sources/resolution_640/bitrate_1400/640x360_1400Kpbs_3.mp4"/>
              </SegmentList>
            </Representation>
        </AdaptationSet>
    </Period>
</MPD>

This MPD file validates using every validator I can find. The urls for the segments are obscured for security reasons but they are all open, public and viewable individually. But when I try to run the manifest file, depending on the player I get. "No supported source found within manifest" or simply nothing happens.

Any idea how this could be wrong? I am currently using media url's as absolute paths but I have also tried paths relative to the BaseURL with no luck. Any info on how I can make a very simple MPEG-Dash manifest structure would be great. I am using FFMPEG to split my video up into 150 frame segments. Thanks!

1
Are you using anything other than ffmpeg? Like MP4Box or Bento4? I had an issue using MP4 box out-putting an incorrect MPD, but when I moved over to Bento4 (mp4dash) that fixed my issue.Mike
No and I cannot use either of those. Both MP4Box and Bento4 require to pay for their licenses if you are using it in a commercial application. MP4Box is ~$5,000 a year. I have not looked into the price of Bento4CMOS

1 Answers

0
votes

A fragmented mp4 is a single file with offsets. For a sample mpd file, see http://www-itec.uni-klu.ac.at/ftp/datasets/mmsys12/BigBuckBunny/MPDs/test-dashjs.mpd .

To use ffmpeg to create a fragmented mp4, see How to output fragmented mp4 with ffmpeg?