GithubHelp home page GithubHelp logo

Comments (11)

gkatsev avatar gkatsev commented on September 22, 2024 1

Definitely possible that it isn't supported. Last I checked, it seemed like it could have because the init segment gets downloaded in the vtt segment loader (https://github.com/videojs/http-streaming/blob/main/src/vtt-segment-loader.js#L82), which is where I paused my investigation last time. So, it could be downloaded but not applied as expected.

Should be fixed, though, I've rarely seen init segments used for vtt files.

from video.js.

gkatsev avatar gkatsev commented on September 22, 2024

looks like it's failing due to the use EMPTY in the vtt track. I've never seen that before.

Seems like shaka also stops loading it at the first EMPTY

from video.js.

daveisfera avatar daveisfera commented on September 22, 2024

Do you mean that it needs an extension? I changed it to empty.vtt and it still has the same problem.

But if you referring to it being empty as a problem, then that shouldn't be the case, because it states that's possible in the spec:

A WebVTT Segment MAY contain no cues; this indicates that no subtitles are to be displayed during that period.

from video.js.

daveisfera avatar daveisfera commented on September 22, 2024

I changed it so the first track isn't empty and it's still not loading the data, so it appears there's an issue with the handling of EXT-X-MAP or something like that

from video.js.

coofzilla avatar coofzilla commented on September 22, 2024

@gkatsev is it possible that WebVTT EXT-X-MAP is not supported? I saw a similar issue here

from video.js.

daveisfera avatar daveisfera commented on September 22, 2024

Is there a better way to handle having to set X-TIMESTAMP-MAP for livestreams and VODs?

Using init segments for VTT files is the best option I've found for doing that

from video.js.

gkatsev avatar gkatsev commented on September 22, 2024

to be clear, you shouldn't need to do anything. However, to get things working now, you probably need to make sure that the VTT segments are complete and include the init the body section.

from video.js.

daveisfera avatar daveisfera commented on September 22, 2024

Can you point me at an example that does a livestream with subtitles that doesn't use X-TIMESTAMP-MAP and an init segment with the VTT files?

from video.js.

gkatsev avatar gkatsev commented on September 22, 2024

the timestamp map is still used, it's just in every file. For example, https://demo.unified-streaming.com/k8s/features/stable/video/tears-of-steel/tears-of-steel-multiple-subtitles.ism/.m3u8

from video.js.

daveisfera avatar daveisfera commented on September 22, 2024

Here's 4 different versions of storing the subtitle info with X-TIMESTAMP-MAP and they all work with Safari, but only the init_header one works with Video.js:
https://awresports-hls-dev.s3.amazonaws.com/jccc_1_1/m3u8/2024/02/29/19/index_init_empty.m3u8
https://awresports-hls-dev.s3.amazonaws.com/jccc_1_1/m3u8/2024/02/29/19/index_init_header.m3u8
https://awresports-hls-dev.s3.amazonaws.com/jccc_1_1/m3u8/2024/02/29/19/index_map_init.m3u8
https://awresports-hls-dev.s3.amazonaws.com/jccc_1_1/m3u8/2024/02/29/19/index_map_header.m3u8

from video.js.

daveisfera avatar daveisfera commented on September 22, 2024

Here's another set of the same 4 different versions:
https://awresports-hls-dev.s3.amazonaws.com/lp10_0/m3u8/2024/05/12/15/index_init_empty.m3u8
https://awresports-hls-dev.s3.amazonaws.com/lp10_0/m3u8/2024/05/12/15/index_init_header.m3u8
https://awresports-hls-dev.s3.amazonaws.com/lp10_0/m3u8/2024/05/12/15/index_map_init.m3u8
https://awresports-hls-dev.s3.amazonaws.com/lp10_0/m3u8/2024/05/12/15/index_map_header.m3u8

from video.js.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.