テキストの字幕(ビットマップの字幕ではない)が入っているムービーファイルから、字幕をSRTフォーマットのテキストファイルで抽出する。コマンドラインツールのMP4Boxを利用する。インストールはHomeBrewで。
まず、ムービーファイルのどのトラックに字幕が入っているのかを調べる。
$ mp4box -info (ムービーファイル) * Movie Info * Timescale 1000 - 4 tracks Computed Duration 01:49:33.650 - Indicated Duration 01:49:33.650 (中略) Track # 3 Info - TrackID 3 - TimeScale 90000 Media Duration 01:49:19.436 - Indicated Duration 01:49:19.436 Media Info: Language "English (eng)" - Type "sbtl:tx3g" - 2382 samples Unknown Text Stream Size 841 x 60 - Translation X=0 Y=0 - Layer 0 RFC6381 Codec Parameters: tx3g Alternate Group ID 3 All samples are sync Track # 4 Info - TrackID 4 - TimeScale 1000 (以下略)
トラック3に字幕があるらしいので、それを抽出する。
mp4box -srt 3 (ムービーファイル)
ムービーファイルと同じディレクトリに、字幕がムービーと同じ名前で拡張子が「.srt」のファイルができる。
参考: