I don't know about vsutils' Overlay , but havsfunc's Overlay works like this (basically the same as avisynth's Overlay):
Overlay using transparency requires you to specify the alpha channel mask
But in vapoursynth for RGBA , the [0] is for the RGB channels , [1] is for the alpha (different than avisynth)
Overlay order is the base layer first , then the overlay on top ie. overlay(base, top) .
Code:
.
.
.
import havsfunc as haf
.
.
.
final = haf.Overlay( logo, vfx[0], mask=vfx[1])
final.set_output()