1

I am newbie in MPEG-DASH topic and working on a MPD file with two periods and each period has its own initial video and segment information. Also each period has different duration. When I try to play it on Dash.js Player (http://reference.dashif.org/dash.js/1.3.0/samples/dash-if-reference-player/index.html), at the end of first period, the video stops as shown in Figure and it does not pass to second period successfully. How should I arrange each period in MPD file ? Could you please suggest a solution? Many thanks in advance.

MPD File Structure:

<?xml version="1.0"?>
<!-- MPD file Generated with GPAC version 0.7.0-rev0-gbd5c9af-master  at 2019-03-04T17:10:17.070Z-->
<MPD xmlns="urn:mpeg:dash:schema:mpd:2011" minBufferTime="PT1.500S" type="static" mediaPresentationDuration="PT0H0M22.084S" maxSegmentDuration="PT0H0M4.000S" profiles="urn:mpeg:dash:profile:full:2011">
 <ProgramInformation moreInformationURL="http://gpac.io">
  <Title>output_general_dash.mpd generated by GPAC</Title>
 </ProgramInformation>

 <Period id="0" duration="PT0H0M9.667S">
  <AdaptationSet segmentAlignment="true" subsegmentAlignment="true" maxWidth="1280" maxHeight="720" maxFrameRate="24000/1004" par="16:9" lang="und">
   <Representation id="1" mimeType="video/mp4" codecs="avc3.640028" width="1280" height="720" frameRate="24" sar="1:1" startWithSAP="1" bandwidth="3734878">
    <SegmentList timescale="24000" duration="96000" presentationTimeOffset="0">
     <Initialization sourceURL="segment_3730_init.mp4"/>
     <SegmentURL media="segment_3730_1.m4s"/>
     <SegmentURL media="segment_3730_2.m4s"/>
     <SegmentURL media="segment_3730_3.m4s"/>
    </SegmentList>
   </Representation>
  </AdaptationSet>
 </Period>

 <Period id="1" duration="PT0H0M12.417S">
  <AdaptationSet segmentAlignment="true" subsegmentAlignment="true" maxWidth="1280" maxHeight="720" maxFrameRate="24000/1003" par="16:9" lang="und">
   <Representation id="1" mimeType="video/mp4" codecs="avc3.640028" width="1280" height="720" frameRate="24" sar="1:1" startWithSAP="1" bandwidth="1531757">
    <SegmentList timescale="24000" duration="96000" presentationTimeOffset="737280">
     <Initialization sourceURL="segment_1530_init.mp4"/>
     <SegmentURL media="segment_1530_1.m4s"/>
     <SegmentURL media="segment_1530_2.m4s"/>
     <SegmentURL media="segment_1530_3.m4s"/>
     <SegmentURL media="segment_1530_4.m4s"/>
    </SegmentList>
   </Representation>
  </AdaptationSet>

</MPD>
4

1 回答 1

0

您应该在句点标签中给出一个参数“开始”,如下所示:

 <Period duration="PT0H0M9.667S" id="0" start="PT0S">

同样,对于第二阶段,您应该:

<Period id="1" duration="PT0H0M12.417S" start="PT0H0M9.667S">
于 2021-12-09T09:47:22.533 回答