ffmpeg を使って指定時間を切り出してみる

指定時間を切り出す

↓こちらのサイトを参考にして、ffmpeg を使って動画で指定した時間の映像を切り出してみる。

特定の部分だけ切り出す:tech.ckme.co.jp

例:動画の10秒地点から、20秒間を切り出す。

(↓再エンコードあり)← 時間がかかる

ffmpeg -ss 10 -i input.mp4 -t 20 output.mp4

(↓再エンコードなし)← 時間がかからない

ffmpeg -ss 10 -i input.mp4 -t 20 -c:v copy -c:a copy output.mp4

長い動画だと、切り出す時間がけっこうずれる。

ターミナルでは『秒』で記述しないといけないみたい。

そこで、↓時分秒を秒に変換してくれるサイト

エンコードなしだと、始まり部分の映像が乱れることがあり、再エンコードありだとエンコードにとても時間がかかるので、エンコードが終わった後に時間がズレているとショック。

なので、まず、再エンコードなしで、スピーディーに開始、終了時間を確認した後に、再エンコードありにすると、時間ズレず、映像も乱れないのでいいかもしれない。

動画の時間を取得したい時は↓こちら。

ffprobe -hide_banner hoge.mp4
例:Duration: 00:00:10.12

画面サイズ変更

ffmpeg -i test.mp4 -vf "scale=640:360,pad=640:360:0:0:black" -c:v mpeg4 -q:v 1 test_output.mp4

関連サイト