Quality of video encoding (VideoToolBox) on M1 Macs

Hi,

I think that a visual quality of hardware video encoder (VideoToolBox H.264) in M1 Macs is not great.

I compared a software libx264 encoder (Mac) and NVIDIA Geforce (NVENC) on Windows 10 with the same bitrate or constant quality mode producing almost identical file size.

I see many visual artefacts on a video encoded with VideoToolBox H.264 (1080p 60 fps) 3300K or CQ56. It's especially noticeable on video with animated photo slideshows and blur effect. Too many artefacts. NVENC and libx264 produce much better visual results with the same file size.

I tested in my app and in Handbrake Beta for M1 which supports VideoToolBox H.264 encoding.

Apple engineers can contact me for more details.

I have the same problem, even adjust bitrate it will not work, I set the min bitrate to 2Mbps, the actual is about 0.5Mbps, I'm on Monterey 12.0.1

in some brief tests on my M1 Pro 10 Core CPU 14 Core GPU, I have noticed that the hardware is not even being utilized fully (about 10% CPU and GPU) but still get approx the same speed to finish the encode. The quality is not horrible but have also noticed some artifacts as well. Trying to understand and grasp the differences. In my tests though it uses very little battery while same encode with software uses about 25% per hour of video.

I've also done some testing and M1 offers good hardware encoding performance but at a significant cost of bitrate or quality. My MacBook Pro 13" 2020 encodes at around 1000 FPS but results in a much worse quality than software encoded x264 "fast" preset that encodes at around 250 FPS.

Try setting the profile to high: kVTProfileLevel_H264_High_AutoLevel.

Yeah this is kinda sad. I got really excited seeing the benchmarks for the M1, then when I got my M1 Max the video encoding experience can only be described as disappointing. It's not really functional at all as you can see MASSIVE artifacts on CQ<50. By the time you crank it up enough to get a quality visually equivalent to the source your file size has doubled. Big L for the M1

Quality of video encoding (VideoToolBox) on M1 Macs
 
 
Q