最近、月額定額制動画配信サービスはすっかり定着した感がある。英語学習への有用性という観点からラインナップが充実しているものは、Hulu、Netflix、U-NEXT、dTV、Amazonプライムビデオである。このうちNetflixは、日本のアニメの一部に英語音声・英語字幕を付して配信している点で、とくに有用である。その恩恵を最大に享受できるように、この記事では、Netflixの字幕をダウンロード保存する方法を紹介する。Netflixの字幕をダウンロード保存することには次のような効用がある。
- (英語など1バイト文字の言語の字幕の場合)字幕をまとめて印刷することで、教材や読み物として一覧できる。
- (英語など1バイト文字の言語の字幕の場合)字幕ファイルはテキストファイルであるから、オンライン辞書で検索しやすい。
- (英語など1バイト文字の言語の字幕の場合)字幕ファイルはテキストファイルであるから、語彙調査に利用しやすい。
- (別途、映像もダウンロードまたは録画した場合)ダウンロード・録画した映像にも字幕表示できる(映像のダウンロード方法は限定記事で)。
多くの人にとってあまり耳慣れないだろうが、字幕ファイルのダウンロードには、ユーザースクリプトというウェブブラウザ拡張機能を使用する。原理はわからなくても、ともかく以下の手順どおりに設定しさえすれば、Netflixの音声・字幕設定画面に字幕保存メニューが追加される。そこからワンクリックで字幕ファイルをダウンロードできるようになる。
- Netflixの視聴に利用するパソコンのウェブブラウザにユーザースクリプトマネージャー Tampermonkey を以下からインストールする。ユーザースクリプトの実行にはその前提としてユーザースクリプトマネージャーが必要なのである。
- Chrome: Tampermonkey
- Firefox: Tampermonkey
- Safari: Tampermonkey
- Microsoft Edge: Tampermonkey
【Chromeでの例】
↓
-
1のウェブブラウザでこのリンクにアクセスし、ユーザースクリプト (Netflix - subtitle downloader)をインストールする。
【Chromeでの例】
↓
-
2のブラウザで字幕を保存したいNetflixの映像(例では「斉木楠雄の災難1-7」)を再生し、字幕設定で字幕を保存したい言語に切り替える(例では「英語」を選択)。
次いで、その右の「Netflix subtitle downloader」メニューで「Download subs for this episode」をクリックする。すると、この例の場合は「斉木楠雄のΨ難.S01E07.WEBRip.Netflix.srt」という字幕ファイルがダウンロードされる。
▼「斉木楠雄のΨ難.S01E07.WEBRip.Netflix.srt」の内容
英語字幕の場合、次のように内容はテキストファイルである(SRT形式字幕)。そのまま印刷できる。
日本語や中国語といった2バイト文字の言語の字幕の場合は、PNG画像の集合で構成されるTTML2形式字幕がダウンロードされる。TTML2形式はそのままでは使い道がないので、必要ならば汎用的な字幕形式(VobSub形式)への変換を行おう(その方法は次項)。
■2種類の字幕形式
2.によってダウンロードされる字幕の形式は、字幕の言語によって異なる。(1)英語、フランス語などの1バイト文字の言語はSRT形式(=テキスト)であり、(2)日本語、韓国語、中国語など2バイト文字の言語はTTML2形式(=文字を表現する画像)である。
(1)SRT形式の字幕は、内容は単純なテキストファイルである。したがって、そのまま印刷して読み物とすることができるし、語彙調査のために検索対象とすることができる。
これに対し、(2)TTML2形式の字幕は、画面上には字幕を表示するものの、実体は文字を表すPNG画像にすぎない。画像であるからテキストとしての検索対象にはできない。個々のPNG画像ファイルに分かれているのでまとめて印刷することもしにくい。TTML2形式の字幕は、たいして使い道はないのである。もっとも、別途、映像もダウンロードしている場合には、その映像に字幕を表示するための素材として使用することができる。ただし、TTML2形式そのままでは、一般的な動画再生ソフト(VLCプレイヤー)ではサポートされていないので、汎用的な形式であるVobSub形式に変換する必要がある。この状況をまとめたのが次の表である。
▼ダウンロードした字幕言語と変換の要否
字幕言語 | 字幕形式 | ベース | VLCプレイヤーでの対応 | 変換要否 |
(1)英語など1バイト文字の言語 | SRT形式 | テキスト | ○ | 不要 |
(2)日本語など2バイト文字の言語 | TTML2形式 | 画像 | × | 必要(→VobSub形式へ) |
■TTML2形式→VobSub形式の変換
TTML2形式からVobSub形式への変換には、フリーの字幕編集ソフトSubtitle Edit(Ver.3.5.3以降)を使用する(Windows)。
Subtitle Editでの変換作業は以下のとおりである(Subtitle Editは先にインストールしておくこと)。ここでは「斉木楠雄の災難1-7」の日本語字幕を保存した「斉木楠雄のΨ難.S01E07.WEBRip.Netflix.zip」を例とする。
- TTML2形式の字幕ファイルはZIP圧縮されているので、まずは展開する。すると「斉木楠雄のΨ難.S01E07.WEBRip.Netflix」フォルダができ、中には「manifest_ttml2.xml」と多数の画像ファイルが入っている。
- Subtitle EditのToolsメニューから「Batch convert...」を選択する。
- 「Batch convert」ウインドウ下部の「Format」を「VobSub」に設定する。
- 「Batch convert」ウインドウ下部の「Choose output folder」の右の「..」をクリックして変換後の字幕出力場所を設定する。
- 「Batch convert」ウインドウ上部の空欄に「manifest_ttml2.xml」をドラッグ&ドロップする(または空欄右の「..」ボタンをクリックしファイル選択ダイアログで「manifest_ttml2.xml」を選択する)。
※字幕のタイムコードを一括してズラしたい場合は、右下の「Offset time codes」にズラしたい数値を入れ、早めるか遅らせるかををラジオボタンで指定する(下図では26.9秒遅らせている)。
- 「Batch convert」ウインドウ右下の「Convert」をクリックする。
- 4.で設定した出力場所に「manifest_ttml2.sub」と「manifest_ttml2.idx」という2つのファイルができている。この1セットがVobSub形式の字幕ファイルである。別途ダウンロードした映像ファイルと同じファイル名にそろえて変更する(映像ファイルのファイル名が例えば「斉木楠雄のΨ難.S01E07.mp4」ならば、「manifest_ttml2.sub」は「斉木楠雄のΨ難.S01E07.sub」に、「manifest_ttml2.idx」は「斉木楠雄のΨ難.S01E07.idx」に)。
■字幕ファイルをそのまま使用(外部字幕)
別途ダウンロードした映像と2.でダウンロードした字幕ファイル(日本語字幕など2バイト文字の言語の字幕の場合は3.の変換を施した後の字幕ファイル)とをあわせて使用したい場合は、字幕ファイルに対応した動画再生ソフトが必要である。次のものがおすすめである。
Windows:VLCプレイヤー
Mac:IINA
iOS:nPlayer
android:nPlayer
こうした動画再生ソフトでは、映像ファイルと字幕ファイルとを同じ場所に同じファイル名で配置して映像を再生すれば、自動的に字幕ファイルが認識される。自動的に認識されない場合は動画再生ソフトのメニューから「字幕ファイルを追加」のようなコマンドを実行すればよい。
▼VLCプレイヤーでの「字幕ファイルの追加」
■映像ファイルに字幕トラックとして結合(内部字幕)
字幕ファイルを映像ファイルに字幕トラックとして結合すれば、字幕ファイル非対応の動画再生ソフト(たとえば、FireTVで使用するVLC for Fire)でも字幕を表示させることができる。
再エンコードすることなしに映像ファイル(MP4)に字幕ファイルを結合できるソフトとしては次のものが使いやすい。
- Windows:X Media Record
- Mac:Subler
なお、映像ファイルと字幕ファイルとの間に同期のズレが生じる場合(映像ファイルと字幕ファイルの入手経路が異なる場合には多々ある)には、次のいずれかの対処が必要である。
- 字幕ファイルのタイムコードを一括変更してから(Subtitle Edit などの字幕編集ソフトで可能)、字幕ファイルを結合する。
- 映像ファイルに字幕ファイルを結合する際にオフセット(同期ズレを補正する情報)を設定する(Subler (Mac) で可能)。
- ズレの調整は動画再生ソフトの「字幕遅延」機能に委ねる。