Closed ghost closed 2 years ago
This is potentially a known non-working DASH stream https://github.com/videojs/http-streaming#dash-assets-with-time-interpolation-and-segmenttimelines-with-no-t
@gesinger did this ever get fixed? Or we made progress towards it but never got this specifically done?
@gkatsev Foremost, this is a pure VOD stream, no live playback. Currently I can only get HLS working.
@gkatsev The funny thing is that Audio only plays very well, for example:
<?xml version="1.0"?>
<!-- MPD file Generated with GPAC version 2.1-DEV-rev257-g7360c7ed-master at 1970-01-01T00:00:00.000Z -->
<MPD xmlns="urn:mpeg:dash:schema:mpd:2011" id="master.m3u8" minBufferTime="PT1.500S" type="static" mediaPresentationDuration="PT0H3M15.000S" profiles="urn:mpeg:dash:profile:isoff-main:2011">
<ProgramInformation moreInformationURL="http://gpac.io">
<Title>a-aac_he_v2-mp4a.40.5_64000/master.m3u8</Title>
<Source>Generated from URL master.m3u8</Source>
<Copyright>Generated by GPAC 2.1-DEV-rev257-g7360c7ed-master</Copyright>
</ProgramInformation>
<Period duration="PT0H3M15.000S">
<AdaptationSet segmentAlignment="true">
<Representation id="R1_1" mimeType="audio/mp4" codecs="flac" audioSamplingRate="44100" bandwidth="844800">
<AudioChannelConfiguration schemeIdUri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2"/>
<BaseURL>a-flac-flac_768000/</BaseURL>
<SegmentList timescale="1000" startNumber="0" duration="9000">
<Initialization sourceURL="init-a-flac-flac_768000.m4s"/>
<SegmentURL media="f-0000.m4s" duration="9009"/>
<SegmentURL media="f-0001.m4s" duration="9009"/>
<SegmentURL media="f-0002.m4s" duration="9009"/>
<SegmentURL media="f-0003.m4s" duration="9009"/>
<SegmentURL media="f-0004.m4s" duration="9009"/>
<SegmentURL media="f-0005.m4s" duration="9009"/>
<SegmentURL media="f-0006.m4s" duration="9009"/>
<SegmentURL media="f-0007.m4s" duration="9009"/>
<SegmentURL media="f-0008.m4s" duration="9009"/>
<SegmentURL media="f-0009.m4s" duration="8916"/>
<SegmentURL media="f-0010.m4s" duration="9009"/>
<SegmentURL media="f-0011.m4s" duration="9009"/>
<SegmentURL media="f-0012.m4s" duration="9009"/>
<SegmentURL media="f-0013.m4s" duration="9009"/>
<SegmentURL media="f-0014.m4s" duration="9009"/>
<SegmentURL media="f-0015.m4s" duration="9009"/>
<SegmentURL media="f-0016.m4s" duration="9009"/>
<SegmentURL media="f-0017.m4s" duration="9009"/>
<SegmentURL media="f-0018.m4s" duration="9009"/>
<SegmentURL media="f-0019.m4s" duration="8916"/>
<SegmentURL media="f-0020.m4s" duration="9009"/>
<SegmentURL media="f-0021.m4s" duration="6681"/>
</SegmentList>
</Representation>
<Representation id="R1_2" mimeType="audio/mp4" codecs="mp4a.40.2" audioSamplingRate="44100" bandwidth="281600">
<AudioChannelConfiguration schemeIdUri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2"/>
<BaseURL>a-aac-mp4a.40.2_256000/</BaseURL>
<SegmentList timescale="1000" startNumber="0" duration="9000">
<Initialization sourceURL="init-a-aac-mp4a.40.2_256000.m4s"/>
<SegmentURL media="f-0000.m4s" duration="9009"/>
<SegmentURL media="f-0001.m4s" duration="9009"/>
<SegmentURL media="f-0002.m4s" duration="8986"/>
<SegmentURL media="f-0003.m4s" duration="9009"/>
<SegmentURL media="f-0004.m4s" duration="8986"/>
<SegmentURL media="f-0005.m4s" duration="9009"/>
<SegmentURL media="f-0006.m4s" duration="9009"/>
<SegmentURL media="f-0007.m4s" duration="8986"/>
<SegmentURL media="f-0008.m4s" duration="9009"/>
<SegmentURL media="f-0009.m4s" duration="8986"/>
<SegmentURL media="f-0010.m4s" duration="9009"/>
<SegmentURL media="f-0011.m4s" duration="9009"/>
<SegmentURL media="f-0012.m4s" duration="8986"/>
<SegmentURL media="f-0013.m4s" duration="9009"/>
<SegmentURL media="f-0014.m4s" duration="8986"/>
<SegmentURL media="f-0015.m4s" duration="9009"/>
<SegmentURL media="f-0016.m4s" duration="9009"/>
<SegmentURL media="f-0017.m4s" duration="8986"/>
<SegmentURL media="f-0018.m4s" duration="9009"/>
<SegmentURL media="f-0019.m4s" duration="8986"/>
<SegmentURL media="f-0020.m4s" duration="9009"/>
<SegmentURL media="f-0021.m4s" duration="6728"/>
</SegmentList>
</Representation>
<Representation id="R1_3" mimeType="audio/mp4" codecs="mp4a.40.2" audioSamplingRate="44100" bandwidth="140800">
<AudioChannelConfiguration schemeIdUri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2"/>
<BaseURL>a-aac-mp4a.40.2_128000/</BaseURL>
<SegmentList timescale="1000" startNumber="0" duration="9000">
<Initialization sourceURL="init-a-aac-mp4a.40.2_128000.m4s"/>
<SegmentURL media="f-0000.m4s" duration="9009"/>
<SegmentURL media="f-0001.m4s" duration="9009"/>
<SegmentURL media="f-0002.m4s" duration="8986"/>
<SegmentURL media="f-0003.m4s" duration="9009"/>
<SegmentURL media="f-0004.m4s" duration="8986"/>
<SegmentURL media="f-0005.m4s" duration="9009"/>
<SegmentURL media="f-0006.m4s" duration="9009"/>
<SegmentURL media="f-0007.m4s" duration="8986"/>
<SegmentURL media="f-0008.m4s" duration="9009"/>
<SegmentURL media="f-0009.m4s" duration="8986"/>
<SegmentURL media="f-0010.m4s" duration="9009"/>
<SegmentURL media="f-0011.m4s" duration="9009"/>
<SegmentURL media="f-0012.m4s" duration="8986"/>
<SegmentURL media="f-0013.m4s" duration="9009"/>
<SegmentURL media="f-0014.m4s" duration="8986"/>
<SegmentURL media="f-0015.m4s" duration="9009"/>
<SegmentURL media="f-0016.m4s" duration="9009"/>
<SegmentURL media="f-0017.m4s" duration="8986"/>
<SegmentURL media="f-0018.m4s" duration="9009"/>
<SegmentURL media="f-0019.m4s" duration="8986"/>
<SegmentURL media="f-0020.m4s" duration="9009"/>
<SegmentURL media="f-0021.m4s" duration="6728"/>
</SegmentList>
</Representation>
<Representation id="R1_4" mimeType="audio/mp4" codecs="mp4a.40.5" audioSamplingRate="44100" bandwidth="105600">
<AudioChannelConfiguration schemeIdUri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2"/>
<BaseURL>a-aac_he-mp4a.40.5_96000/</BaseURL>
<SegmentList timescale="1000" startNumber="0" duration="9000">
<Initialization sourceURL="init-a-aac_he-mp4a.40.5_96000.m4s"/>
<SegmentURL media="f-0000.m4s" duration="9009"/>
<SegmentURL media="f-0001.m4s" duration="9009"/>
<SegmentURL media="f-0002.m4s" duration="8986"/>
<SegmentURL media="f-0003.m4s" duration="9009"/>
<SegmentURL media="f-0004.m4s" duration="8986"/>
<SegmentURL media="f-0005.m4s" duration="9009"/>
<SegmentURL media="f-0006.m4s" duration="9009"/>
<SegmentURL media="f-0007.m4s" duration="8986"/>
<SegmentURL media="f-0008.m4s" duration="9009"/>
<SegmentURL media="f-0009.m4s" duration="8986"/>
<SegmentURL media="f-0010.m4s" duration="9009"/>
<SegmentURL media="f-0011.m4s" duration="9009"/>
<SegmentURL media="f-0012.m4s" duration="8986"/>
<SegmentURL media="f-0013.m4s" duration="9009"/>
<SegmentURL media="f-0014.m4s" duration="8986"/>
<SegmentURL media="f-0015.m4s" duration="9009"/>
<SegmentURL media="f-0016.m4s" duration="9009"/>
<SegmentURL media="f-0017.m4s" duration="8986"/>
<SegmentURL media="f-0018.m4s" duration="9009"/>
<SegmentURL media="f-0019.m4s" duration="8986"/>
<SegmentURL media="f-0020.m4s" duration="9009"/>
<SegmentURL media="f-0021.m4s" duration="6728"/>
</SegmentList>
</Representation>
<Representation id="R1_5" mimeType="audio/mp4" codecs="mp4a.40.5" audioSamplingRate="44100" bandwidth="70400">
<AudioChannelConfiguration schemeIdUri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2"/>
<BaseURL>a-aac_he_v2-mp4a.40.5_64000/</BaseURL>
<SegmentList timescale="1000" startNumber="0" duration="9000">
<Initialization sourceURL="init-a-aac_he_v2-mp4a.40.5_64000.m4s"/>
<SegmentURL media="f-0000.m4s" duration="9009"/>
<SegmentURL media="f-0001.m4s" duration="9009"/>
<SegmentURL media="f-0002.m4s" duration="8986"/>
<SegmentURL media="f-0003.m4s" duration="9009"/>
<SegmentURL media="f-0004.m4s" duration="8986"/>
<SegmentURL media="f-0005.m4s" duration="9009"/>
<SegmentURL media="f-0006.m4s" duration="9009"/>
<SegmentURL media="f-0007.m4s" duration="8986"/>
<SegmentURL media="f-0008.m4s" duration="9009"/>
<SegmentURL media="f-0009.m4s" duration="8986"/>
<SegmentURL media="f-0010.m4s" duration="9009"/>
<SegmentURL media="f-0011.m4s" duration="9009"/>
<SegmentURL media="f-0012.m4s" duration="8986"/>
<SegmentURL media="f-0013.m4s" duration="9009"/>
<SegmentURL media="f-0014.m4s" duration="8986"/>
<SegmentURL media="f-0015.m4s" duration="9009"/>
<SegmentURL media="f-0016.m4s" duration="9009"/>
<SegmentURL media="f-0017.m4s" duration="8986"/>
<SegmentURL media="f-0018.m4s" duration="9009"/>
<SegmentURL media="f-0019.m4s" duration="8986"/>
<SegmentURL media="f-0020.m4s" duration="9009"/>
<SegmentURL media="f-0021.m4s" duration="6728"/>
</SegmentList>
</Representation>
</AdaptationSet>
</Period>
</MPD>
@gkatsev I think we added support for $Time$
but haven't yet added support for SegmentTimelines with no t
. We should update that doc.
Your original manifest had the following which isn't supported
<SegmentTimeline>
<S t="0" d="9024"/>
<S d="8992"/>
<S d="8992"/>
<S d="3008"/>
</SegmentTimeline>
The new one doesn't which is likely why it works. I think SegmentTemplate, the live profile, I believe, is the one that we support best.
Yes I removed it as you cant have SegmentTimeline and SegmentURL at the same time. You can try yourself with:
https://conformance.dashif.org/
But even If it's only one of the two, it's only working with Audio. Adaptiv Videos simply fail to Play.
Do you happen to have a public test stream?
@gkatsev @gesinger Okay, let's get started. I have now setup two streams. One 30 seconds long video preview as HLS and DASH stream with the same content (incl. multiple Audio/Video representations, subtitles, Dolby, AAC, HE-AAC Sound, H.264/HEVC and HDR - So basically everything imaginable for a stream). The second stream is AudioOnly, which plays well in VideoJS. It has the same MPD structure as the Video (which does not play). All mpd files have been validated against: https://conformance.dashif.org/ and validate fine.
The Video shows a CODEC error while the Audio plays fine, but I don't use any unsupported codecs at all for the video.
You can download the content from the following link and place it on your own webserver for testing:
Also make sure to obtain all stuff within 7 days!
Thanks in advance.
@gkatsev I will close the issue again an open a new one. I have some more findings
Description
Hello folks,
I would like to play an mpd/Dash stream using VideoJS 7.19.2. This is my mpd/Dash manifest:
But for some reason VideoJS says SEGMENT_TIME_UNSPECIFIED. So what it missing in the playlist here?
Reduced test case
https://google.com
Steps to reproduce
Most likely, the Dash from above can be used to reproduce the parsing issue.
Errors
Browser console shows: SEGMENT_TIME_UNSPECIFIED
What version of Video.js are you using?
7.19.2
Video.js plugins used.
None
What browser(s) including version(s) does this occur with?
FireFox 103.0 (64-Bit)
What OS(es) and version(s) does this occur with?
Windows 11, Ubuntu (Both tested)