システム:Xubuntu 13.04 x64
Ffmpegでこの機能の使用法を見つけました here
ffmpeg -i video.avi -vf subtitles=subtitle.srt out.avi
しかし、それは機能しません。エラーが発生します
No such filter: 'subtitles'
その上。 ffmpeg
をavconv
に置き換えると、同じことが起こります。
そこで、libav
source here をダウンロードしてコンパイルしてみました。繰り返しますが、実行するとイライラします
./configure --enable-libass
ソースディレクトリで、今回は
Unknown option "--enable-libass"
これは、avconv
がまったくサポートしていない非常に特殊なものなのでしょうか。そして
subtitles
フィルターが欠落している理由LibavはFFmpegの機能を無視する傾向があるため、avconv
とその偽造 "ffmpeg
"(14.04で削除)はlibassをサポートしないため、 subtitles
をサポートしません。ビデオフィルター 他の多くのフィルターの中で。
FFmpegから実際のffmpeg
を取得するには、いくつかのオプションがあります。
ffmpeg
バイナリをダウンロード -最も簡単なオプション。これにより、字幕がビデオに「焼き付けられます」が、もちろんビデオを再エンコードする必要があります。
ffmpeg -i video.mkv -vf subtitles=subtitle.srt -codec:a copy output.mkv
フィルタは再エンコードが必要です。エンコーディングの提案については、 FFmpeg H.264 Encoding Guide を参照してください。
おそらくオーディオを再エンコードしたくないので、この例は ストリームコピー (re-muxes)だけです。
ファイルに多重化された字幕ストリームで構成されます。使用する価値のあるプレーヤーであれば、字幕のオン/オフを切り替えたり、存在する可能性のある他の字幕ストリームから選択したりできます。再エンコードは不要です。
ffmpeg -i video.mkv -i subtitle.srt -codec copy -map 0 output.mkv
ffmpeg
はavconv
とまったく同じではありません。 avconv
を使用した字幕の書き込みについては、 this を参照してください。
より簡単でGUIを使用した別のオプションがあります:Avidemux。以下でインストールします:
Sudo apt-get install avidemux
ビデオファイルを開き、Video
に移動し、ビデオエンコーダー(Copy
以外)、Filters
およびSubtitles
を選択します。 Subtitler
フィルターを選択します。