私が合法的にダウンロードしたいくつかの映画には、埋め込まれた字幕が含まれています。サムスンテレビで映画を視聴するために、エゴをテキストファイル(.srt、.subなど)としてエゴ抽出します。映画と字幕の両方に個別のファイルが必要です。 VLCで試してみましたが、それらを抽出する方法が見つかりませんでした。他の方法について知っていますか? OSXが望ましい。
ビデオがたまたまmp4形式の場合、たとえば MP4Box を使用して、さまざまなタイプのストリーム(ビデオ、オーディオ、字幕)を逆多重化(抽出)できます。これは、字幕がビデオ画像で実際に「焼き付け」られていない場合にのみ機能します(簡単なテスト-プレーヤーで字幕をオフにできますか?はいの場合は、すべて正常です)。
コマンドラインffmpegがインストールされている場合は、次のコマンドを使用できます。
ffmpeg -hide_banner -i Movie.mkv -map 0:s:0 subs.srt
マッピングは、希望する字幕トラックによって異なります。 2番目の場合は、次を使用します。
-map 0:s:1
Mp4でも動作します。
Mp4ファイルの場合は、 http://www.videohelp.com/tools/My-MP4Box-GUI のMyMp4BoxGuiを使用します。これは、存在する場合、字幕トラックを含むMP4ファイル内のさまざまなトラックを分離するWindowsツールです。
残念ながら、多くのビデオファイル(特にDVD)は字幕をビットイメージとして保存します。これらを.srtファイルのテキストとして抽出するには、OCRプロセスが必要です。 1つのソリューションのGoogle SubRip。
映画であるビデオを扱っている場合は、ビデオファイルから字幕を抽出しないほうがよいでしょう。代わりに http://subscene.com/ のようなサイトにアクセスして、ビデオに必要な言語でsrtファイルをダウンロードします。字幕ファイルが複数ある場合は、ファイルと最も同期する字幕ファイルが見つかるまで試してみる必要があります。または、Subtitle_editなどのプログラムを使用して、サブファイルを微調整します。
一方、字幕(または、これからあなたの質問を偶然読んだ人)がハードコードされている場合、つまり、ビデオファイルに埋め込まれている場合、これは、たとえばAVIファイルの場合によく見られます。それらを抽出することも可能ですが、OCR(光学式文字認識)に進む必要があります。たとえばSubRip、他にもあります。 OCRには多数の計算が含まれるため、この方法での抽出にはさらに時間がかかります(「有用な情報」、タイムコードなどを抽出するには、いくつかのフィルターを適用する必要があります。その後、各フレームが画像として処理される可能性があるため、単純なOCRです)。そして結果はあなたのビデオに依存します(字幕は概説されていますか?それらを表示するために使用されるフォントはどのように読みやすい/読みやすいですか?それらはビデオに直接表示されますか、またはいくつかの静止した背景がありますか?...)
私は XMedia Recode を試してみましたが、それは.mkvファイルに最適です。他の多くのフォーマットの「ソフト字幕」も処理できると思います。ただし、現在はWindowsでのみ使用できます。
手順:(バージョン3.4.9.5 64ビットの場合)
(私は this Reddit からソフトウェアについて学びました)。