Грубо говоря всё работает так:
Видео декодируется браузером по алгоритму декодирования данного формата видео. Декодирование происходит средствами процессора, картинка тоже создаётся самим браузером внутри окна. Всё окно браузера, за исключением рамок окна, создаётся самим браузером средствами процессора. Эта картинка отдаётся на видеокарту, которая выводит её на экран, совмещая с остальными элементами DE.
Если браузер поддерживает аппаратное декодирование на видео карте, то на видеокарту отдаётся окно браузера с пустотой вместо видео и поток байт самого видео с указанием координат, слоя, позрачности и тд. Видео карта это всё совмещает и выводит.
Но опять же говорю что это очень грубое описание процесса, слишком много нюансов.