ffmpeg:conversions:convert_h264_to_av1:libaom:two-pass
ffmpeg - Conversions - Convert H264 to AV1 - libaom - Two-Pass
In order to create more efficient encodes when a particular target bitrate should be reached, two-pass encoding should be used.
Two-pass encoding is also beneficial for encoding efficiency when constant quality is used without a target bitrate.
- For two-pass, you need to run ffmpeg twice, with almost the same settings, except for:
- In pass 1 and 2, use the -pass 1 and -pass 2 options, respectively.
- In pass 1, output to a null file descriptor, not an actual file. (This will generate a logfile that ffmpeg needs for the second pass.)
- In pass 1, you can leave audio out by specifying -an.
time ffmpeg -i a.mp4 -c:v libaom-av1 -b:v 2M -pass 1 -an -f null /dev/null && time ffmpeg -i a.mp4 -c:v libaom-av1 -b:v 2M -pass 2 -c:a libopus -f mp4 out.mp4 time ffmpeg -i a.mp4 -c:v libaom-av1 -b:v 2000k -pass 1 -an -f null /dev/null && time ffmpeg -i a.mp4 -c:v libaom-av1 -b:v 2000k -pass 2 -ac 2 -c:a libopus -f mp4 out.mp4x
returns:
... real 98m40.037s user 567m32.622s sys 0m26.253s
NOTE:
- Input test size: 75.5M
- Output test size: 4.2M
NOTE: The bitrate limit by the -b:v where the bitrate MUST be non-zero.
- Opus is a totally open, royalty-free, highly versatile audio codec.
ffmpeg/conversions/convert_h264_to_av1/libaom/two-pass.txt · Last modified: 2023/06/15 17:43 by peter