Code Monkey home page Code Monkey logo

Comments (7)

dero avatar dero commented on May 12, 2024 1

@jwold A couple of updates here and answers to your questions:

  • I researched the way subtitles are represented in DASH manifests.
  • Also researched if there is a way for us to generate DASH manifests with subtitles in it using ffmpeg.
  • Then tested if using a <track> element on the <video> element works for streamed videos.

Turns out ffmpeg's dash muxer is unable to create entries for subtitles. I actually had to check ffmpeg source code to figure that out – turns out the generated AdapatationSet can either be of type video or audio. No subtitles support built in.

That means we would need to use more advanced tools to generate DASH videos – perhaps Shaka Packager. Right now, however, we are keeping it simple and we don't use these advanced tools.

Also, because we're in full control of creating the streams and initializing the player on the page, we can simply add the subtitles as a <track> element to the <video> player that plays the stream. Subtitles added using this way work perfectly, which then checks the last item in the proposed ACs.

Because of the above, I'm now moving the ticket to QA.

Answers to your questions:

  1. Not sure what you're asking. 😄
  2. I just downloaded the subtitles from YouTube and uploaded them to our media server.
  3. Correct.

To clarify: when we talk about streaming videos, we really talk about adaptive streaming of a video on demand. The experience is basically the same as with a static video – only with the added ability to switch between bitrates based on network conditions etc. We do not talk about live streaming.

from kino.

derekherman avatar derekherman commented on May 12, 2024

@jwold This is already possible in the POC and should be in Phase: 1 and expanded on a bit more. Default behaviour of the html5 video object comes with support for this out of the box. We could also expand this ticket for Shaka player and others though, or create a new one for them.

from kino.

jwold avatar jwold commented on May 12, 2024

If we implement Shaka, we need to make sure you can select subtitles and languages.

from kino.

dero avatar dero commented on May 12, 2024

@jwold This is missing ACs. I suggest something along the lines of:

  • It is possible to enable and disable subtitles in a video player.
  • It is possible to choose subtitles language in a video player.
  • Subtitles work for static and streaming videos.

(BTW, those are all satisfied but a support for "streaming videos" – I'll need to implement that.)

I'd then suggest we create a separate ticket for Shaka (or other players) work, because right now the application is all built on top of a regular <video> element and the associated browser APIs.

from kino.

jwold avatar jwold commented on May 12, 2024

@dero

  1. So right now we have the video player, which subtitle creation out of the box, except for streaming videos. Correct?
  2. Where do you pull the data for subtitle with streaming videos? Are those auto-generated, or is there a place for people to manually add subtitles as the stream is going?
  3. Beyond that we need to add ability in Shaka player to enable and disable subtitles, choose subtitle languages, and make sure subtitles work for streaming. Correct?

from kino.

jwold avatar jwold commented on May 12, 2024
  1. Whoops, I had put in angle brackets, which hid part of the message. Here was my questions: So right now we have the video player, which subtitle creation out of the box, except for streaming videos. Correct?

from kino.

kkalarickal avatar kkalarickal commented on May 12, 2024

Verified this on KINO Staging Site via Google Chrome

Given the end user is viewing the static embedded video content within the video player
When she clicks the Closed Caption icon built into the video player
Then she is able to turn on/off, select language for the subtitles
And after selecting the appropriate language
Then the subtitles are displayed within the video

Screenshots:

  1. Selecting the language
    image
  2. Playing video with subtitle
    image

Points to note:

  • The vtt file is uploaded to the media server while preparing the video for launch
    image

This ticket is verified in QA for phase 1 of the application.

from kino.

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.