▲ | kixelated 4 days ago | ||||||||||||||||
It's all hardware accelerated, assuming the VideoDecoder has hardware support for the codec. VideoFrame is available in WebGL and WebGPU as a texture or gpu-buffer. We're only rendering after a`requestAnimationFrame` callback so decoded frames may get automatically skipped based on the display frame rate. I don't think the performance would be any worse than the <video> tag. The only exception would be browser bugs. It definitely sounds like the black bars are a browser rendering bug given it's fine when recorded. | |||||||||||||||||
▲ | DaleCurtis 3 days ago | parent [-] | ||||||||||||||||
Unfortunately canvas (rgb'ish) can't overlay as efficiently as <video> (yuv'ish), so there is some power cost relative to the lowest power video overlays. It really only matters in long form content where nothing else on the page is changing though. | |||||||||||||||||
|