VLC を使用して mp4 ビデオに SRT 字幕を埋め込む/ハードコードする方法は?

VLC を使用して mp4 ビデオに SRT 字幕を埋め込む/ハードコードする方法は?

VLC を使用して、字幕 (SRT ファイルから) を MP4 ビデオに「焼き込む」、つまりレンダリング/埋め込み/ハードコードする方法を探しています。

しかし、どのオプションを使用しても、正常に動作しません。ビデオの再生速度が速すぎるファイル (オーディオは正常) や、正常に再生されるが実際には字幕が埋め込まれていないファイルが表示されます。また、一部のオプション (以下のオプションなど) では、QuickTime では再生されず、VLC でのみ再生されます。

それで、主な質問は次のとおりです。これを VLC で動作させるにはどうすればよいですか?二次的な質問は次のとおりです。

  • どのオプションを設定するかをどのように決定すればよいですか?
  • ファイルのビットレートなどをできるだけ同じにして、字幕のみを埋め込みたい場合、どの設定が最適ですか? フィールドを空のままにしたり、ビデオ/オーディオのチェックを外したりすることはできないようですので、まず元のオーディオとビデオのビットレートを把握する必要があると思います。
  • 「スケール」と「チャンネル」オプションはどういう意味ですか?

... VLC のドキュメントでは、これらの質問のいずれも回答されていません。

たとえば、これは「Advanced Open File…」ダイアログで使用したオプションのセットの 1 つです。

Advanced Open File…

   myFileName.mp4
    [ ] Treat as a pipe rather than as a file

[x] Load subtitles file:
      mySubtitleFileName.srt

[ ] Play another media synchronously


[x] Streaming/Saving

         Streaming and Transcoding Options

           [ ] Display the stream locally
           (o) File      [outputFileName.mp4                      ]
                         [ ] Dump raw input

           Encapsulation Method: (MPEG 4      )


         Transcoding options

           [x] Video   (mp4v       )          Bitrate (kb/s) [256   ]
                                                       Scale [1     ]
           [x] Audio   (mp3        )          Bitrate (kb/s) [128   ]
                                                    Channels [1     ]

答え1

VLC から字幕トラックを追加すると、通常はうまくいきます。字幕がビデオ (つまり同じソース) に適合していることを確認してください。私は長い間字幕に QuickTime を使用していませんでしたが、avi と srt を mov に多重化するとうまくいったことを覚えています (ただし、これは単なるソフトコーディングです)。

字幕をハードコーディングまたは「焼き込む」方法については、ハンドブレーキ、これはこの種の用途向けにカスタマイズされています。基本的には ffmpeg のフロントエンドであり、ビデオとオーディオにあらゆる種類の変更を加えることができます。

答え2

MkvToolnix を使用します。再コーディングせずに avi mp4 などをハードコードします。ムービーをロードし、srt ファイルを追加して、マルチプレックスをクリックします。超高速です。

関連情報