FFMPEGを使うことで、動画の再生速度を2倍にしたり、逆にスローにしたりすることもできます。同時に音声の速度も合わせて変換することができます。
例えば、英語の動画で喋りが速くて聞き取りが困難なときに動画をスローモーションにするなど、動画の再生速度を変更することが便利なケースがあります。
本日はこの動画の再生速度を変更し、従来よりも速い/遅い動画を出力して保存する方法を確認したいと思います。
FFMPEGの実行バイナリファイルの入手に関しましては、もし入手方法がわからないという方がいらっしゃいましたら、以下の記事を参考にしてみてください。
FFMPEGで動画の再生速度を変更して出力する方法
動画を2倍速で出力する
以下のコマンドで、入力動画を2倍速の動画(長さは入力動画の半分)にして出力できます。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
ffmpeg -i input.mp4 -vf setpts=PTS/2 -af atempo=2 output_fast.mp4
ポイントは以下の通りです。
- 入力動画を「input.mp4」の位置に指定します
- 「-vf setpts=PTS/2 -af atempo=2」の箇所で、動画のテンポを変更しています。「-vf setpts=PTS/2」で動画の速度が2倍に、「-af atempo=2」で音声の速度が2倍になります。
- 出力動画が「output_fast.mp4」になります。
動画をスローモーション(0.5倍速)で出力する。
以下のコマンドで、入力動画を0.5倍速の動画(長さは入力動画の2倍)にして出力できます。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
ffmpeg -i input.mp4 -vf setpts=PTS*2 -af atempo=0.5 output_slow.mp4
基本的には2倍速にする場合の逆の数値を入れることで実現できます。また、数字を変えることでさらに動画を遅くしたりするなど、速度の調整が可能です。
まとめ
今回は、FFMPEGで動画の再生速度を変更する方法を学習しました。
語学学習などにおいて、再生速度を速めたい/遅めたいという場合には、FFMPEGを使って変換すると簡単です。