4

我已经使用 MP4Box 生成了一个 .mpd 文件,并使用 Dash.js 播放器播放生成但它没有播放。但是如果我使用链接中提供的详细信息创建播放器(http://msdn.microsoft.com/en- us/library/dn551368(v=vs.85).aspx)它正在播放。我已经按照上面提到的链接中给出的详细信息进行了操作,并且效果很好。但是当我在 dash.js 播放器中使用 .mpd 时,它不起作用。

请帮我解决这个问题。

<MPD type="static" xmlns="urn:mpeg:DASH:schema:MPD:2011" profiles="urn:mpeg:dash:profile:full:2011" minBufferTime="PT1.5S" mediaPresentationDuration="PT0H1M0.29S">
 <ProgramInformation moreInformationURL="http://gpac.sourceforge.net">
  <Title>Media Presentation Description for file Recorded_gopi.mp4 generated with GPAC </Title>
 </ProgramInformation>
 <Period start="PT0S" duration="PT0H1M0.29S">
  <AdaptationSet>
   <ContentComponent id="1" contentType="video"/>
   <ContentComponent id="2" contentType="audio" lang="und"/>
   <Representation id="1" mimeType="video/mp4" codecs="avc1.640028,mp4a.40.02" width="1280" height="1024" sampleRate="44100" numChannels="2" lang="und" startWithSAP="1" bandwidth="317599">
    <BaseURL>Recorded_gopi_dash.mp4</BaseURL>
    <SegmentList timescale="1000" duration="13915">
     <Initialization range="0-1264"/>
     <SegmentURL mediaRange="1265-512125" indexRange="1265-1465"/>
     <SegmentURL mediaRange="512126-774261" indexRange="512126-512254"/>
     <SegmentURL mediaRange="774262-1165553" indexRange="774262-774390"/>
     <SegmentURL mediaRange="1165554-1484521" indexRange="1165554-1165682"/>
     <SegmentURL mediaRange="1484522-1819145" indexRange="1484522-1484626"/>
     <SegmentURL mediaRange="1819146-2122548" indexRange="1819146-1819310"/>
     <SegmentURL mediaRange="2122549-2375382" indexRange="2122577-2122705"/>
    </SegmentList>
   </Representation>
  </AdaptationSet>
 </Period>
</MPD>

请帮我解决这个问题。

4

2 回答 2

2

几个小时以来,我一直面临同样的问题,只是得到了解决问题的线索。

通过删除如下所述的行,它对我来说效果很好。

<ContentComponent id="1" contentType="video" />
<ContentComponent id="2" contentType="audio" />

MPD Validator 说无论这些行是否存在都是有效的。我不知道为什么 dash.js 不能正确处理。MP4Box 是否有任何选项不包含这些行?

于 2015-07-05T13:01:10.563 回答
0

您需要删除行<ContentComponent ../>

这个对我有用。

于 2016-12-02T01:28:54.753 回答