5 ms·
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-buf
by kixelated 1y 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 1y agoUnfortunately 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.
- chrismorgan 1y ago> It really only matters in long form content where nothing else on the page is changing though. Did you not just describe at least 99% of all web video?
- DaleCurtis 1y agoIf only that were true, battery usage would be much better :) Just consider the prominence of content like tiktoks/shorts/reels/etc alone.