In my tests, libx265 isn't that great at compressing video. It takes much longer than libx264 for the same VMAF with a slightly smaller file size. All my tests have been with anime that require a VMAF greater than 90 so that the differences are not noticeable.
I'm currently using AV1, which achieves higher compressions with the same VMAF with a faster conversion time than libx265. I noticed that converting from 8-bit to 10-bit achieves a greater size reduction for the same VMAF with my files. To calculate VMAF, I use the following line: ffmpeg.exe -i target.mp4 -i source.mp4 -lavfi libvmaf -f null - To compress with AV1 for a minimum VMAF of 95, I use the following: ffmpeg.exe -i source.mp4 -c:a copy -c:v libsvtav1 -crf 32 -preset 6 -svtav1-params tune=1:fast-decode=1 -pix_fmt yuv420p10le -g 240 target.mp4 To compress with x264 for a minimum VMAF of 96, I used the following: ffmpeg.exe -i source.mp4 -c:a copy -c:v libx264 -crf 23 -preset slow -tune animation target.mp4 On very rare occasions, the converted file ended up larger than the original. By appreciation, depended a lot on how vibrant the colors in the original file were. On Monday, October 27, 2025 at 08:57:39 AM GMT-4, Richard Bartczak via ffmpeg-user <[email protected]> wrote: Hello, I use ffmpeg 8.0, lib x265 to compress videos. The coomand : #!/bin/sh for f in *.ts; do ffmpeg -y -i "$f" -vcodec libx265 -crf 19 -preset slow -vf yadif,nlmeans="1.4:7:5:3:3" -c:a copy "$(basename "$f" .ts).mkv";done It is an interlaced video, therefore yadif, nlmeans to reduce filesize. But the result is all ways not as expected. I did check it with vivictpp (subective tool to compare two videos (same source) at a screen and libvmaf to get the respective score : Different crf values used, but without an significant improvement. source file target file vmaf crf vivictpp (checked source against target size (MB) size (MB) at one screen) 251,6 121,6 VMAF score: 93.913822 19 visible less unsharp 251,6 135,2 VMAF score: 94.189536 18 visible less unsharp 251,6 150,6 VMAF score: 94.433205 17 visible less unsharp 251,6 167,7 VMAF score: 94.648169 16 visible less unsharp 251,6 208,6 VMAF score: 95.011963 14 visible less unsharp 251,6 259,6 VMAF score: 95.011963 12 visible less unsharp the movie source : Stream #0:0[0x100]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), yuv420p(tv, top first), 720x576 [SAR 64:45 DAR 16:9], 25 fps, 25 tbr, 90k tbn, start 0.044000 Side data: cpb: bitrate max/min/avg: 15000000/0/0 buffer size: 1835008 vbv_delay: N/A target : Stream #0:0: Video: hevc (Main), yuv420p(tv, progressive), 720x576 [SAR 64:45 DAR 16:9], 25 fps, 25 tbr, 1k tbn Metadata: ENCODER : Lavc62.11.100 libx265 Any idea how to improve the results ? Richard _______________________________________________ ffmpeg-user mailing list -- [email protected] To unsubscribe send an email to [email protected] _______________________________________________ ffmpeg-user mailing list -- [email protected] To unsubscribe send an email to [email protected]
