【问题标题】:Unable to play MPD file with multiple periods in Dash.js Player无法在 Dash.js 播放器中播放具有多个句点的 MPD 文件
【发布时间】:2019-07-26 15:49:36
【问题描述】:

我是 MPEG-DASH 主题的新手,正在处理具有两个句点的 MPD 文件,每个句点都有自己的初始视频和片段信息。此外,每个时期都有不同的持续时间。当我尝试在 Dash.js 播放器 (http://reference.dashif.org/dash.js/1.3.0/samples/dash-if-reference-player/index.html) 上播放它时,在第一期结束时,视频会停止,如 in Figure 所示,并且它没有成功传递到第二期。我应该如何安排 MPD 文件中的每个时期?你能建议一个解决方案吗?非常感谢。

MPD 文件结构:

<?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>

【问题讨论】:

    标签: video-streaming multimedia mpeg-dash mpeg mpd


    【解决方案1】:

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

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

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

    <Period id="1" duration="PT0H0M12.417S" start="PT0H0M9.667S">
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-20
      • 2021-11-27
      相关资源
      最近更新 更多