Why does jitsi use a Web Worker for its virtual background feature instead of requestAnimationFrame or simply setTimeout

I’ve been investigating jitsi’s code about virtual background feature, first, let me say a big thank you for it, not only the feature is perfect but the code is clean and very easy to comprehend.

Now I’ve noticed that you’re using a Web Worker which mimicks setTimeout in some way, I didn’t understand why didn’t use requestAnimationFrame or simply setTimeout?