Interactive transcript for Youtube video - youtube

I am working on a Youtube video site and would like to implement interactive transcript feature like this one: http://demo.jwplayer.com/iframes/interactive-transcript/ (I have video transcript and caption files, in SRT and WebVTT format. I will not use Youtube's machine transcribed transcript.)
I did a research online. It appears that there is no free plug-in/module that can do this. There are some paid options, such as Captionbox (http://speakertext.com/captionbox) ,3rdMediea, SubPly (http://www.subply.com/en/Products/InterActiveTranscript.htm BTW: this is the best I have found so far. It loads transcript in different languages on the fly). I am reluctant to use these paid options, primarily because I do not want to rely on a single provider.
Can someone please advise me a better option?
Thank you.

You can always write your own solution:
Read YouTube API Dosc:
https://developers.google.com/youtube/js_api_reference?csw=1
Check getCurrentTime()
Read transcript from file/database/hiddendiv and display it if getCurrentTime == textTime from your transcript then just highlight it (like in captionbox example).

Related

What algorithm does youtube use to generate a transcript for videos?

I am looking into developing an application to transcribe an audio file for me, then it gives me a document with words or phrases and times spoken, just like YouTube does. I could just upload files to YouTube and then get the transcript but I want to use it offline. Anyone to help? Where can I start?
Not sure about Youtube, but I would start with Google Cloud Speech API, and if you're not happy with it, then I'd go through these 5 as well.
Also, bear in mind that Chrome has Web Speech API built in (and most likely Firefox has something similar, but I never had a need to explore that), so if what you're doing is for web, you should check that out too.
Let us know if this helped.

iOS: Choosing specific Closed Captions EIA-608

There is lot of mystery around CC608 usage under iOS.
Apple's UsingHLS offers to declare them in the manifest like this:
#EXT-X-MEDIA:TYPE=CLOSED-CAPTIONS,GROUP-ID="cc",NAME="CC1",LANGUAGE="en",DEFAULT=YES,AUTOSELECT=YES,INSTREAM-ID="CC1"
#EXT-X-MEDIA:TYPE=CLOSED-CAPTIONS,GROUP-ID="cc",NAME="CC2",LANGUAGE="sp",AUTOSELECT=YES,INSTREAM-ID="CC2"
#EXT-X-STREAM-INF:BANDWIDTH=1000000,SUBTITLES="subs",CLOSED-CAPTIONS="cc" x.m3u8
But Apple's official sample stream do include CC608 embedded into the MPEG, and still they didn't list them in their manifest!
On that sample stream, I can turn CC608 on using closedCaptionDisplayEnabled=YES, but this method does not allow selection of a specific language.
In Apple's dev forum I have found this question with a promising answer:
Are you still calling "player?.closedCaptionDisplayEnabled=true"?
There's no need to do that. If you author your HLS playlist properly
with the appropriate language tags, the user can enable captions in
the language of their choice, or disable them completely as well.
I was failing to find API in iOS which will allow me to:
Read the list of available CC608 streams
Activate CC for a specific language
Would appreciate your help with this!

Automatic YouTube transcript alignment. How to do?

We have many videos on YouTube and we would like to offer automatic YouTube transcript alignment for site visitors. What we want is pretty much like this example.
But instead of word by word automatic alignment, we would like sentence by sentence alignment, such as this example (please click the "Show Transcript" button)
We have captions for our YouTube videos already. We want to put transcript and video side by side, exactly like the example on 3playmedia.com.
Could anyone kindly suggest me how to do that?
Thank you!
You can use CMUSphinx for that, see Aligner demo in the tutorial http://cmusphinx.sourceforg.net/wiki/tutorialsphinx4
There is a paid solution at voicebase.com which even does PCI - Compliance and redaction (http://voicebase.readthedocs.io/en/v2-beta/how-to-guides/pci-ssn-pii-detection.html)
I have not tried it yet but looks very promising.

Is there a way to programmatically add captions to a Youtube video using their API?

I'm trying to add a caption to a video when I upload it to youtube. The caption would say something like "Brought to you by Company ABC".
The way Google has described it here seems very long winded and complex. Additionally, there is no link to usage with the Java API.
Does anyone know a simple way of doing this?
Thanks,
Gearoid.
What you are looking for might be more properly called an "annotation" (or in this case "premercial") than a "caption".
(A caption would be an appropriate term if someone was actually speaking "Brought to you by Company ABC", and you wanted people to be able to know that with no sound...either because they had the sound off, or were scanning the video programmatically, or because they are hearing-impaired.)
There is apparently no programmatic API at this point in time for using YouTube's native annotation features:
Annotating YouTube videos programmatically
If you wanted to prepend a title card of some kind to your video (like it's your space to inject an advertisement) you can read around for approaches to do that operation before the upload:
Stitching together multiple videos without gap
You'd have a lot more options for making that intro sequence look spiffy, then.

Lecture Capture Implementation: Synced Video and Slides Side by Side

I would like to take a YouTube video of a lecture and sync it with another area displaying the (powerpoint/pdf) slides being discussed in the lecture.
For example, knoodle.com does this but for a price. I wonder if anyone has implemented something like that and what framework (Flash, HTML5, etc) they used.
Another good specific example can be found here. It shows exactly the kind of video-slide side-by-side visual I'm looking to create.
I'm the author of presentz.org.
Presentz is an opensource software that lets you mix youtube/vimeo/video files with slideshare/speakerdek/images.
It's also free to use.
Try authorpoint software. It does that.
onion.tv provides the functionality you are looking for and many others that can enrich video presentations and overall engagement with videos. It's hosted online - videos stays where they are e.g. at youtube and metadata stays at onion.tv

Resources