What is Subs2srs?#
Subs2srs is a free software that can convert video files and subtitle files into a set of Anki cards to help language learners practice listening and speaking, as well as sentence mining for unfamiliar vocabulary or grammar structures.
Download link: https://sourceforge.net/projects/subs2srs/
User manual: https://subs2srs.sourceforge.net/
We can use Subs2srs to convert YouTube videos downloaded with yt-dlp, along with SRT subtitles or downloaded movie or TV show videos and subtitles, into files that can be imported into Anki for use in language learning.
For example, after downloading yt-dlp and ffmpeg, setting the environment variables, and opening the designated folder in the terminal, you can enter the command to download the desired video, playlist, or channel:
yt-dlp --write-sub --sub-lang en --convert-subs srt -f "bestvideo[height<=360]+bestaudio/best[height<=360]" -o "%(title)s.%(ext)s" "https://www.youtube.com/@Vox/videos"
How to use Subs2srs#
It is recommended to refer to the image above. "subs1" refers to the location of the subtitle file in the language you want to learn, and "subs2" refers to the location of the subtitle file in your native language. (Supports some regular expressions for batch processing of anime or TV series)
"Pad timing" is used to extend the timing of the subtitles. "Start" extends it forward, and "end" extends it backward. This setting is to make the dialogue transition smoother. However, for the sake of convenience, I wrote a Python script for batch processing and merging UTF-8 SRT subtitles, which can be found here:
https://pastebin.com/Yv4fZdQT
I set it to merge subtitles if two or consecutive subtitles with a time difference of no more than 250ms, which can be modified by changing the number in "if time_diff <= 250". For example, 90ms is suitable for Japanese.
How to find YouTube videos with subtitles (a common problem when learning Japanese)#
If you are having trouble finding YouTube videos with Japanese CC subtitles, I suggest you can enter some Japanese words on the following website to find suitable Japanese YouTube videos: https://youglish.com/japanese
Youglish supports a limited number of languages, a total of a dozen or so, but it is already quite user-friendly for general language learners. It supports up to 25 word searches per day (free version).
Alternatively, you can use its alternative, https://filmot.com/. On filmot, you can search for any word, such as a Latin word.
Setting up Anki templates#
My favorite Anki template is based on the one provided by the author of "Create subs2srs cards with mpv video player": https://gistpreview.github.io/?d515535b80a3d8f0775989e0d83c8a3b
However, I suggest placing the "Image" from the image below in the first position to avoid errors or updates due to duplicate content.
Alternatives to Subs2srs#
There are many alternatives to Subs2srs, and the following are the links to each one:
Create subs2srs cards with mpv video player: https://ankiweb.net/shared/info/1213145732 (An Anki addon)
mpvacious: https://github.com/Ajatt-Tools/mpvacious (A project that can be used with mpv and Anki at the same time)
Vocabsieve: https://www.youtube.com/watch?v=EHW-kBLmuHU (A software based on mpvacious with more powerful features, can generate batch cards based on highlighted words in Kindle e-books combined with dictionaries. It can also be combined with the Freemdict forum (a friendly learning forum where you can download dictionaries without membership or login))
Youtube to anki: https://ankiweb.net/shared/info/964531817