Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Get closed caption "cc" for Youtube video

Does any one know how to get the CC for any Youtube video that has the caption available? I know on the API 2.0 documentation mentions that it is only available for the owner of the video... but I was able to get some of the video's caption even though I'm not the owner of any....

There are two APIs (or links to API) can be used. they both rout to timpedtext API. before I mention them we should note the parameters the API need. which are:

  • lang: {en, fr,...} required.
  • v: {video ID} required.
  • name: the track name, Required only if it is set. (and with this is my problem.)
  • tlang: translation to language. optional (should be set if you like to translate the CC to other language.

The API links are:

  1. http://video.google.com/timedtext?lang=fr&v=PILzP-bIeLo&name=french Note the above example would return nothing if you remove the name=French or set it to something else...

  2. http://www.youtube.com/api/timedtext?v=zzfCVBSsvqA&lang=en Note this example would return nothing if you set the name=...

  3. http://www.youtube.com/api/timedtext?v=ZdP0KM49IVk&lang=en yet the actual video has caption.

Example 3 does not return the CC data.

So I'm guessing that example 3 need to have the name parameter set. and my main problem is how do I find the name parameter if it is set or not. and if it is set how do I know what is it?

like image 883
Mohanad57 Avatar asked May 14 '14 21:05

Mohanad57


2 Answers

[update]: This was the preferred method until google recently discontinued it (writing as of dec 2021).

Your first example should work without the name= part. This did the job for me:

video.google.com/timedtext?lang={languageID}&v={videoId}

To fetch the english CC version from the previous answer, it would look like this:

http://video.google.com/timedtext?lang=en&v=zzfCVBSsvqA
like image 114
dont_trust_me Avatar answered Feb 09 '23 21:02

dont_trust_me


You can get the list of available captions with http://video.google.com/timedtext?type=list&v=zzfCVBSsvqA request.

Your 3rd video has only automatically generated captions, which you cannot fetch easily.

like image 31
a.ch. Avatar answered Feb 09 '23 20:02

a.ch.