Task Overview:
I am trying to create performant video files with alpha transparency that are able to be served via the web. There will be multiple videos stacked (3-4) in 'frame' for each web scene. The frame rate of the source animations are 12fps. Most of the videos are 4 second loops. There are two videos that are 8 second loops.
I have existing code below which you can use to optimize OR you can recommend a different workflow. The issue with my existing commands is the output files are still too large, all other functionality is present (transparency included).


Inputs: ProRes4444xq w/ Alpha (mov) and/or Adobe AE Animation Codec (mov)

Outputs: Vp8,Vp9,HEVC(mp4), Avif Sequence. Videos with alpha transparency, no audio. Suitable for web usage.

Deliverables: Optimized parameters, and workflow for transcoding the input -> outputs.

Expectations: The output files will be of equal or of smaller file size to the test outputs (will be privately provided along with source files).


Specifics:

I need to transcode the below source files. We can use either source format.
• Adobe AE Animation Codec with Alpha, unmatted (mov) [(3480x2160) & (1920x1080)]
• ProRes 4444 XQ with Alpha (mov) [(3480x2160) & (1920x1080)]

I need to convert them to the following formats, all with alpha transparency (no audio):
• vp8 (webm)
• vp9 (webm)
• h.265/HEVC (mp4) **must be in the mp4 container
• Animated Avif

Output resolutions needed:
• 1920x1080
• 3480x2160

Existing FFMPEG and AVconvert Commands:

HEVC/h.265
avconvert --preset PresetHEVC3840x2160WithAlpha --source $FILE --output output/$fbname-hevc.mp4;

VP8
ffmpeg -i $FILE -c:v libvpx -b:v 2M -pix_fmt yuva420p -auto-alt-ref 0 output/$fbname-vp8.webm;

VP9
ffmpeg -i $FILE -c:v libvpx-vp9 -b:v 0 -crf 30 -c:a libopus -b:a 128k -strict -2 output/$fbname-vp9.webm;

AVIF
ffmpeg -i $FILE -strict -1 -pix_fmt yuva444p -f yuv4mpegpipe - | avifenc --stdin --fps 12 output/$fbname-avif.avif