📖
FFmpeg のメモ
5分ごとに分割
-reset_timestamps 1
でタイムスタンプをリセットしています.
ffmpeg -i input.mp4 -c copy -segment_time 300 -f segment -reset_timestamps 1 output_%03d.mp4
日付
-metadata creation_time=""
で日時が書きこまれます. この例では音声はそのままで映像を HEVC にエンコードしています.
ffmpeg -i .\input.mkv -c:v hevc -c:a copy -metadata creation_time="2024-02-03T15:04:34.000000Z" output.mp4
-c:v
の種類
-c:v |
内容 |
---|---|
copy | そのまま |
libx264 | AVC |
hevc | HEVC |
libx265 | HEVC |
libsvtav1 | AV1 |
ffmpeg -i input.mp4 -c:v libx265 -crf 28 -preset slow -c:a copy -tag:v hvc1 -map_metadata 0 -movflags +faststart output.mp4
exiftool -api largefilesupport=1 -tagsfromfile input.mp4 -all:all output.mp4
メタデータ
-metadata |
内容 |
---|---|
creation_time | 生成日時 |
date | 撮影日(?) |
title | タイトル |
-c:v hevc -c:a copy -metadata creation_time="2024-02-25T08:00:00.000000Z" -metadata date="2024-02-25T08:00:00.000000Z" -metadata title="タイトル" -movflags +faststart
可変フレームレート
可変フレームレートな複数の動画を引っ付けてAV1で書き出しています.
ffmpeg -f concat -safe 0 -i filelist.txt -vsync vfr -c:v libsvtav1 -crf 50 -preset 4 -c:a copy -movflags +faststart output.mp4
VFRな動画のとき(?) (よくわかっていません)
ffmpeg -fflags +genpts -f concat -safe 0 -i file.txt -vsync vfr -c:v copy -c:a copy -movflags +faststart output.mp4
随時追加していきます.
Discussion