B/c draw() had nothing on it I’ve added background() just so I knew the sketch was running in my PC.
Of course you can delete it, comment that out or replace it w/ something else.
You should also try out other browsers and/or environments such as My Sketch - OpenProcessing.
“p5.js mode” isn’t always up-to-date w/ latest p5js library version (currently at v1.4.0).
It’s pretty much the same approach as yours.
I’ve only added property groupId in addition to deviceId when creating the constraints{} object for createCapture() within createCaptures().