FFmpegで動画を切り出す方法まとめ!無劣化カット方法もあわせてご紹介
FFmpegで動画の一部を切り出し、カットする方法がわからなかったり、指定時間でFFmpegで動画を切り出すことができなくて困っていませんか?
本記事では、FFmpegで動画を切り出す方法として、
の2つを初心者でも分かるようにご紹介していますので、FFmpegで動画の一部を切り出したいとお考えの方はぜひ参考にしてみてくださいね。
またFFmpegで無劣化カットする方法も合わせて説明していきます。
FFmpegの代わりになるダウンロードソフトおすすめ
VideoProcはシンプルで使いやすくて、動画カットや分割&トリミングなど動画編集に欠かせない機能を網羅し、初心者でも簡単に見栄えのする動画作品が作れる。
指定時間でFFmpegで動画の一部を切り出し方法
FFmpegで動画の任意の箇所を開始と終了として指定して、切り取りたい部分だけを出力することができます。切り取りたい範囲はミリ秒単位まで細かく指定することも可能です。
FFmpegで動画を切り出す前に、まずは切り取りに使うFFmpegのコマンドを確認する必要があります。
ffmpeg -ss [開始時間] -i [入力ファイル] -t [切り出し範囲] -c copy [出力ファイル]
ffmpeg -ss [開始時間] -i [入力ファイル] -to [終了時間] -c copy [出力ファイル]
- -i[入力ファイル]:FFmpegでカットしたい元の動画ファイル 。
- -ss [開始時間]:トリミングの開始位置。ミリ秒単位まで細かく指定することが可能です。
- -to [終了時間]:トリミングの終了位置。ミリ秒単位まで細かく指定することが可能です。
- -t [切り出し範囲]:開始位置からの継続時間(長さ)です。
- -c copy:直接コピーの作業。ビデオと音声を再エンコードせずにそのまま無劣化で出力します。
- -[出力ファイル]:FFmpegで無劣化カットするには、入力と出力形式を一致させる必要があります。
FFmpegのオプション一覧
次は、このコマンドを実行することで、指定時間で動画をFFmpegで無劣化カットすることができる手順を紹介します。
コマンドプロンプトで
ffmpeg -ss [開始時間 -i [入力ファイル] -t [切り出し範囲] -c copy [出力ファイル]
それとも
ffmpeg -ss [開始時間] -i [入力ファイル] -to [終了時間] -c copy [出力ファイル]
を入力してEnterキーを押すと、指定時間でFFmpegで動画を切り出すのが始まります。
FFmpegで無劣化カットが完了すると、FFmpegのルートディレクトリにトリミングした動画が現れます。
FFmpegで動画から静止画を切り出しする方法
指定時間で動画をFFmpegで無劣化カットするだけではなく、FFmpegで動画の一部を切り出して、画面を画像ファイルにして保存するもできます。このように、FFmpegで動画から静止画を切り出し方をご紹介します。
まずは、静止画の抽出に使うFFmpegのオプションをチェックします。
- -ss:切り出しの開始位置。切り出しの開始位置が元動画の終了点に近いほど時間がかかります。
- -t:切り出す間の時間。例えば、-t 4ならば、4秒の動画から静止画を切り出します。
- -vframes:切り出したい静止画の枚数を指定します。例えば、-vframes 20ならば、20枚の静止画を抽出します 。
- -r fps:1秒あたりに何枚の画像を抽出します。例えば、-r 10ならば、1秒あたりに10枚の画像を抽出します。指定されないと、元動画のフレームレートが維持されます。
- -q:v:出力画像の品質。値は1〜5まで。(数値が小さいほど高画質になります)
- -s:出力される静止画の横幅X高さを指定しています。
- -f image2:画像として出力します。
FFmpegのオプション一覧
FFmpegで動画から静止画を切り出しためのコマンドは次の通りです。
- 動画から指定時間点で静止画を切り出したい場合▼
ffmpeg -ss [開始時間] -i [入力ファイル] -vframes 1 -q:v 1 -s 800x600 -f image2 [出力画像ファイル]
- 動画から連続した静止画を切り出したい場合(10枚)▼
ffmpeg -ss [開始時間] -i [入力ファイル] -vframes 10 -q:v 1 -f image2 [出力画像ファイル]
- 動画から1秒ごとに10枚の画像を切り出したい場合▼
ffmpeg -i [入力ファイル] -r 10 -q:v 1 -f image2 [出力画像ファイル]
- 動画から10秒ごとに1枚の画像を切り出したい場合▼
ffmpeg -i [入力ファイル] -vf fps=0.1 -q:v 1 -f image2 [出力画像ファイル]
- 動画から1分ごとに1枚の画像を切り出したい場合▼
ffmpeg -i [入力ファイル] -vf fps=1/60 -q:v 1 -f image2 [出力画像ファイル]
- [-ss]というオプションが[-i]の前に書く必要があります。そうしないとFFmpegで動画を切り出すにはかなりの時間がかかります。
注意:
以上がFFmpegで動画を切り出す方法です。いかがでしょうか。
挑戦してもやや複雑に感じる人なら、編集ソフトを利用して動画を切り出すことを勧めします。▼