A month ago, @riko_cappricio released a Celestial Roadmap (Original Post, XCancel Link). This is a set of youtube tutorial videos from various creators, where they claim a thorough study can allow us to reach Celestial rank in Mahjong Soul.
I’ve decided to use machine translation to produce subtitles for my personal consumption, but have decided to release the subtitles to the community at large. The spreadsheet with translated titles can be located here, while the git repo with translated subtitles is located here.
This is the first in a sequence of tools I’ve developed to improve mahjong skills, and in the upcoming months I intend to release a few more useful tools.
Translation Quality
As of time of writing, I watched about 20% of the videos, mostly videos in the beginner to intermediate category. I would like to make a few remarks on the translation quality.
- Generally, I give the quality a 6/10. They are usable, but far from perfect. Generally, for education content, if you think over what is being said, as in the case with active learning, the thought process is the main vector of improvement. I do not find this a big barrier if you intend to work through it to improve your gameplay.
- This is not the best for beginners, there are certain japanese terminology that is romanised, such as 押し引き as oshihiki instead of push-fold.
- Tiles are difficult to get right. It might use “ryanmen”, “ryanman” or “20000” for 2m.
- There are times where it fails to understand the context accurately, such as representing an average-plus hand (“70/100 hand”) as a 70 fu hand. This is why I don’t recommend this for beginners, but rather people who can question the content and judge whether the advice is valuable for them.
- Text on the screen is not translated, only the speech is. This is vital in some of the videos here. However, this is a tricky problem, and I don’t really intent to spend more time to solve it. (The general philosophy is that I want to work on mahjong, rather than work on tools. But if I deem the tools worthwhile then I will spend time on that.)
Copyright and Editing
I don’t own the copyright to any of the videos, nor have I communicated with the video creators and right holders. I’m uncertain about the exact nature of copyright as applied here. What I’ve done is a purely automated pipeline of taking the video’s audio -> transcribing it and then translating it. The videos are available publically, for free, and the subtitles cannot be used without the user accessing the videos for themselves.
I want to emphasise that such solutions are already available commercially, where you can take a video and translate the audio and produce subtitles. There is no difference to this as an end user performing the steps for themselves. I cached the result here, and since you can’t use the subtitles without accessing the original source material, I feel this is more acceptable than a translation of a book (since you can read the translated version without reference to the original book). Youtube already does automated subtitles as well, and this is simply a higher quality version of it.
My goal is merely to improve our understanding of mahjong, and I don’t wish to contest the legality of this. If you are the video creator or rights owner and find issue with it, do contact me and I’ll take the subtitles down. If the original videos are also delisted from youtube, I’ll also remove the corresponding subtitles.
To prevent further muddying the copyright issue, I have release the subtitles with all the machine errors included. I can fix the issues, or allow community edits to correct the errors mentioned above, but it will further complicate the issue. Moreover, I don’t wish to manage the project of improving the quality and accuracy of the translation, as I personally would rather use the time to improve my mahjong skill.
Technical Stack
Just to document the technical stack for those who wish to do the same for other content,
- The transcription is done via faster-whisper locally with whisper-ctranslate2.
- The translation uses commercial LLMs via Kagi Translate API.
- One specific quirk of Japanese Youtube videos is that they tend to have very long titles, they have been truncated to ensure that it doesn’t interfere with most filesystems.
Due to very sloppy coding, the piping of faster-whisper is very specific to my set up and I just inlined my API keys.
As such, I would not be releasing the code, as the cleanup needed would require more time.