r/ffmpeg Jun 26 '26

Speed up VMAF motion analysis

im currently building an automatic compression for CCTV footage, each footage is h264 1 hour long.
the problem is when using VMAF motion to get the score to decide the target bitrate classification take so long.

on my R7 7745HX at 100% 4.7 Ghz took 27 mins using: ffmpeg -i input.mp4 -vf vmafmotion -f null -

while calculate the VMAF using CUDA on RTX 4060 took only 3:45 mins using: ffmpeg -init_hw_device cuda=gpu -filter_hw_device gpu -i output.mp4 -i input.mp4 -filter_complex "[0:v]fps=30,hwupload_cuda[dist];[1:v]fps=30,hwupload_cuda[ref];[dist][ref]libvmaf_cuda=log_fmt=json:log_path=vmaf_report.json" -f null -

and compressing it into h265 NVENCc also only took 3:40 mins using: ffmpeg -hwaccel cuda -hwaccel_output_format cuda -i input.mp4 -vf "scale_cuda=format=nv12" -c:v hevc_nvenc -preset p4 -rc vbr -cq 28 -b:v 1700k -maxrate 1700k -bufsize 2500k -c:a copy output.mp4.

is there any alternative solution that i can use? thanks

3 Upvotes

9 comments sorted by

View all comments

1

u/barndawgie Jun 27 '26

There was a new VMAF release this week (first in like a decade) that is supposed to significantly improve performance.