Netflix subtitle updates

I’ve got some additional cool news regarding Netflix subtitles!

First, I have ripped and performed OCR for a lot of additional subtitles, more than doubling the amount of subtitles available in the previous package. A link to download the subtitles is available in my original post that is located here.

Second, I have made some updates to the software used to perform the OCR. It is now SIGNIFICANTLY easier to use! Windows users can simply download and run the application, rather than having to mess around with installing python and various python packages, and fiddling around with a command line.

Some changes I have made include:

  • added graphical user interface
  • fixed issues with unicode file/folder names
  • it should output correct SRT files now
  • multiple languages are supported for OCR

A link to download the updated application is also in my original post regarding netflix subtitles.

Better method of getting subtitles from Netflix

My previous post on ripping Japanese subtitles from Netflix has been quite popular, although the method that I proposed was fairly limited and quite difficult to do. But thanks to user ahlawy who left a comment on my post, a much better method has been discovered, that only requires a web browser!

Update 11/05/2017: Thanks to another user by the name of TITHEN-FIRION, it is EVEN EASIER now.

I have updated my original guide to include this new method. So if you are interested in getting subtitles from Netflix, check it out!

Extracting Subtitles from Netflix

Updated 1/22/2018

Having subtitle scripts from TV shows that you are watching is an excellent study aid. Not to mention that they can be used with Subs2SRS to easily import sentences into Anki! These days, many people tend to watch Netflix more than a lot of the traditional media. I’ve also seen numerous people talking about how the Netflix Original “Terrace House” is great for Japanese listening practice, because it is unscripted and captures natural dialog.

When I originally wrote this post, it was because I had discovered a way of ripping Japanese subtitles from Netflix, which to my knowledge, no one else had figured out how to do at the time. My method was long and clunky though. Eventually, a user named ahlawy posted in the comments section with details for a new method which was far superiod to the one I had come up with. And shortly after that, TITHEN-FIRION posted a tool that he had created which can largely automate the process altogether. So now, it is really quite simple to rip subtitles from Netflix, to the point that just about anyone can do it.

Download Subtitles I’ve Already Ripped

All of the Japanese subtitles that I have ripped have been OCR’ed using the Google Cloud Vision API. This is likely the most accurate Japanese OCR technology available at the moment, but the text still does contain a few mistakes here and there. So please keep this in mind if you are using these subtitles to study. If something looks wrong, it probably is. Go watch it on Netflix to see what the correct subtitle would look like.

Download Netflix Subtitle Pack [updated 12/23/2017]. (left click, then click the download button in the top right)

This package contains subtitles for 26 different series and movies. Just click the link to see which shows are contained.

If Netflix has another show that you would like Japanese subtitles for, or if you want subtitles in another language, then you will have to rip it for yourself using the guide below.

How to rip Japanese Subtitles from Netflix

Getting the subtitles from Netflix is quite simple now, due to a tool that does all the hard work for us! 

First, you will need to download an addon for your web browser which allows you to run userscripts. One such addon is called ViolentMonkey, and it works with either Firefox or Chrome (as well as some other browsers). There are several other similar addons as well, such as TamperMonkey and GreaseMonkey. These all mostly do the same thing, so just pick one. A simple Google search for any of those titles should easily lead you to a page that lets you install it in your web browser.

Next, you want to install the Netflix Subtitle Downloader. After installing it, you will notice some new options appear inside the subtitle selection menu on the Netflix website. Simply select the subtitle language that you want, and then click on one of the download buttons. It’s that simple! You might need to give it a moment after clicking the button while it begins downloading.

Note: On my system, I have run into some issues where the subtitle downloader will sometimes try to download the subtitle for the previous video that I was looking at. If you run into this issue, this can be resolved by hitting the “refresh” button in your browser after loading a video.

For many languages, especially ones with simple character sets like English and Spanish, the subtitles are downloaded as SRT files. However, for languages with more complex character sets like Japanese, Chinese, or Korean, the subtitles are stored as images. So in order to convert these into a text format, you need to perform OCR (optical character recognition).

Create an API Key for Google Cloud Vision API

There are several OCR tools out there that can handle Japanese text. Most of them suck and result in a lot of errors. Google’s OCR is by far the most accurate I have seen, and works quite well. Unfortunately, it’s only sort of free. According to their current pricing structure, you can OCR up to 1,000 images per month for free. Since a typical episode is a few hundred images, this is enough for a few episodes each month. However, Google also offers a great trial offer (at least at the time I write this). You can get $300 of free credit when you sign up, and you have no obligation pay anything or continue using the service. I opted for this option, and was able to OCR all of the episodes that you find in the download above for free.

If you sign up for the Google Cloud Platform, then after logging in, you need to enable the Cloud Vision API and generate an API key.

  1. In the left hand menu, select APIs & Services > Dashboard
  2. Select Enable APIs & Services
  3. In the search box, type “vision”, and then select Google Cloud Vision API.
  4. Select Enable. It may walk you through setting up a billing profile at this point if one has not been created already. Again, there is no obligation to actually pay anything, as you can use this API a certain amount for free each month, and you may get free credits when signing up.
  5. Back at the APIs & Services Dashboard, select Credentials > Create Credentials > API Key.
  6. Once you have generated the API key, be sure to copy it or keep it open in your browser so you can access it later.

Use generate_srt_from_netflix tool to OCR the images

Now, we can use a tool to send the subtitle images through the Cloud Vision API. Someone by the name of “zx573” from the Kanji Koohii forums originally wrote a python script to perform the work of sending the images to Google and generating a text-based subtitle file. I have updated his tool to make it more user friendly and to fix a few issues it had.

Download

Updated 1/22/18, adding vietnamese language and Mac OSX version.

(left click, then click the download button in the top right)
Windows: generate_srt_from_netflix.Win.x86.zip
Linux: generate_srt_from_netflix.Linux.tar.gz (tested on Ubuntu x64)
Mac: generate_srt_from_netflix.OSX.zip (untested)
Source: python3 source code

Next, you need to paste your API Key into a text file named API_KEY.txt located in the same folder as the application.

When you run the application, it should look like this:

First, you need to make sure that your API Key is displayed correctly in the top area. If not, make sure you did the previous step correctly.

Then, you just select a folder containing netflix subtitle images (note: when you first downloaded the subtitles, they were in a zip file. This zip file must be extracted to a folder before loading here).

There is also an option to select the language that you want Google to recognize. I included Japanese, Korean, and Chinese in the selection box, but you can type in a different language code if you require another language. You can find a full list of language codes here.

The only other option is the chunk size. The default of 15 is usually fine. If you press the start button, and the program appears to begin working but then gives you an error message part way through, you might need to decrease the chunk size to a smaller value like 10 or even 5. Larger values should use up less of your credit but smaller values have a greater chance of completing sucessfully.

After you press start, if all goes well, the program should run and it will output an SRT file inside your input folder.

 

Hukumusume Fairy Tale Collection

In my previous post, I had mentioned a website called the Hukumusume Fairy Tale Collection. While I suppose this site is fairly well-known among students of Japanese, I would like to take a bit of time to talk about it, because it is an absolutely massive site with a ton of content, and it can be easy to get lost, because the navigation menus change depending on what part of the site you are on. I think a lot of people might not even know about all of the different things offered on the site.

Put simply, this is a site with a lot of classic children’s stories. They have stories with text-only, stories with audio, and even picture-book stories. There is also a section with many stories that have English translations. They also have multiple different sections which all contain different stories for every single day of the year. There are thousands of stories here. Now, this might not necessarily be an ideal resource for absolute beginners in Japanese, because a lot of the stories may use some somewhat old words and ideas that you aren’t familiar with. However, with the sheer amount of content offered, there are plenty of really basic and easy stories to find if you are willing to dig around for a bit.

I don’t want to go into too much detail about exactly how to navigate the site and all, but I did find a pretty good write-up on another site here: http://nihongo-e-na.com/eng/site/id522.html

I’ll also point out a few direct links to what I find to be the most useful pages on the site–the daily stories:

Each of the categories above has a story for every day of the year! They are mostly Japanese-only though.

For those who’s Japanese is more at the beginner level, I would suggest starting with the stories that have an English translation available, though there are less than 50 of them at the time of this writing. You can find all the English-translated stories catalogued here: http://hukumusume.com/douwa/English/index.html

I also came across a page which lists stories according to (Japanese) grade level: http://www.hukumusume.com/douwa/0_6/0nen.html

For the past several weeks, I have been making it a point to read at least one story every day. I found it sort of annoying to navigate through a bunch of links every day, particularly if I was reading on my phone, so I wrote a simple script that will automatically take me to today’s story for the “日本昔話 – Japanese Classical Stories”. If that story doesn’t look interesting to me, the right hand sidebar beside the story will contain links to today’s story from all of the other categories as well, and it even has links to a lot of daily trivia that you can read (the first section of the sidebar is trivia, the second section is the stories).

Here is a link to my script which takes you directly to today’s story: http://www.nihongonobaka.com/Files/fairytale.php

If you want to use it, just bookmark that link. On my phone, I had to temporarily disable my internet connection in order to bookmark it, because it immediately redirects once you click the link.

 

PotPlayer

Study Subtitled Videos Using PotPlayer

I previously wrote about studying Japanese through the use of Anime, Dramas, and Movies, but I always felt that there was still a step missing from the equation. I mean, sure, you can use great tools like Subs2SRS to ease the creation of Anki cards, but what about the process of actually watching the video? How do you efficiently look up words and try to understand sentences while you are watching it? This was a question that bugged me for a long time. While there are some solutions, such as opening up the script in a text file and following along, loading the video and script into Aegisub to go line by line, or even rigging up AGTH to capture the text output from the player; all of these methods are pretty clunky and leave something to be desired.

But just recently, I came across PotPlayer, and discovered that it actually makes the whole process as smooth as you could ever imagine! It feels like some of the features in this player were practically designed for someone who is learning a language! A few great features that I love about it:

  • Click on words to either perform a search or copy it to the clipboard
  • Copy the entire subtitle line to the clipboard, can be assigned to a shortcut key
  • Shortcuts to seek to the next/previous subtitle, allowing you to easily replay a line
  • Subtitle explorer displays all lines in a separate window for you to browse and seek to a particular line
  • Load multiple subtitle streams, so you can have Japanese and English at the same time
  • It remembers the last file you had open as well as your position within it, making it easy to pick up where you left off
  • Has options for adjusting the synchronization of subtitles, as well as the font
  • Is an otherwise completely full featured player, with tons of options and advanced features

I honestly don’t know what else I could want or expect in regards to watching subtitled video. This works great in conjunction with JGlossator, which will automatically look up helpful information on any Japanese subtitles that get copied to the clipboard.

I’ve put together a short video showing how to get up and started with using PotPlayer to study Japanese from subtitles:

Do you know any other software or tools to help with studying Japanese while watching videos? Let me know in the comments!