Enable AV1 encoding (SVT-AV1) in all versions of Video AI

I posted a similar message in a bug forum before asking why only the Windows version of Video AI supports video encoding to AV1, while the macOS version doesn’t have it. And I was told that it’s because Macs don’t have hardware encoding yet and apparently this could come in the future since the new M3 Macs support AV1 encoding.

However, I would argue that AV1 should be made available for any Mac computers (not only M3) because hardware encoding is not the only option available for AV1. There is other software based encoding for AV1 called SVT-AV1 which is available on FFmpeg (libsvtav1) since version 5.1 and it’s very fast.

In fact, I use SVT-AV1 in projects running on my Mac M2 computer and it encodes videos much faster than WebM (VP9) which is already supported by Video AI on Macs. So, if speed is a concern for not having AV1 on Macs since it doesn’t have hardware encoding, AV1 with libsvtav1 is faster than VP9, which, like I said, is already available for Topaz AI on Macs.

it’s not fast when you drop below preset 4.
I’ve tried the nvidia av1 and it’s useless compared to my svt-av1

I’m not sure what’s your setup, but it’s pretty fast for me.

But I think it’s also not the point if it’s slow for you or fast for me. I would argue that Topaz should just enable AV1 for all users, regardless of their setup, and let them decide if they want to use SVT-AV1 or not. Since it’s fast for me then I’m happy to use it, but for users that don’t have a suitable setup then they can use a different codec.

Like I said, SVT-AV1 is available on FFmpeg for a while now and Video AI uses FFmpeg behind the scenes so it’s not like a new feature or code needs to be added in the software. It’s just a matter of enabling it.

libaom is built into the ffmpeg exe so it could encode AV1 now if you feel like hacking /Contents/Resources/models/video-encoders.json

The SVT-AV1 for ARM build was broke for a big chunk of December while they sorted out the NEON optimizations Now they’re in and its back compiling I must test AV1 encoding set where the visually lossless value seems to fall, and an what speed the two encoders run at.

5950x, ProArt X570, 64GB 3600mhz ram, RTX 4070.

I’ve been using aom and svt for years in conjunction with av1an.

I wouldn’t invoke any AV1 in TVAI via ffmpeg as it’s cpu only and looking at the specs of a lot of systems here that struggle to run TVAI throwing AV1 on top of that would be crazy.

So this speaks for using it on macs as well as all those CPU cores nearly aren’t used during encoding there (contrary to my windows system where TVAI really is a system hog).

You’re still failing to address to main point of my post: let the users decide.

Your rationale is basically, if it sucks for some users then let’s disable for everyone, including for those that don’t suck.

My rationale is 99% of VEAI users are unware that AV1 has many different encoders.
I use svt-av1-psy myself and my concern is what “Default” would Topaz decide on ?
Too many users already complain that their fps on conversion is too slow, you only have to read thro the forums :wink:
Just think what would be the time if --preset 3 --crf 18 was used as default.
Personally I use --preset 6 and my crf is determined by running ab-av1 beforehand.

fd -I -e .mov -j 1 -x av1an --verbose --split-method av-scenechange -c ffmpeg --sc-pix-format=yuv420p --sc-method=fast --sc-downscale-height=240 -e svt-av1 -v ’ --preset 6 --crf 27 --progress 2 --lp 2 --enable-qm 1 --qm-min 8 --qm-max 15 --hierarchical-levels 4 --keyint 240 --tune 3 --aq-mode 2 --variance-boost-strength 3 --variance-octile 3 --sharpness 3 --scm 0 --irefresh-type 1 ’ -a ’ -c:a aac -b:a 128k’ -s ‘{.}.json’ -i ‘{}’ -o ‘{.}_SVT_6_27.mp4’

Above is the cli command I use to process a file but yet to be modifed to use the piped results of ab-av1.