Могу ли я иметь видео с прозрачным фоном, используя тег HTML5? - PullRequest
39 голосов
/ 02 ноября 2010

Мы сняли представителя на зеленом экране и подготовили видеофайлы в нескольких форматах.

С помощью Flash мы могли бы использовать прозрачный wmode внутри тегов param и embed, но есть ли что-то похожее с тегами video и source в HTML5? Можно ли вообще сохранять видео .m4v или .ogv, чтобы мы могли воспроизводить эти файлы с прозрачным фоном в наших браузерах?

Спасибо

Ответы [ 8 ]

28 голосов
/ 05 ноября 2010

Да, такого рода вещи возможны без Flash:

Однако толькоочень современные браузеры поддерживают видео HTML5, и это следует учитывать при развертывании в HTML 5, и вы должны предоставить запасной вариант (возможно, Flash или просто пропустите прозрачность).

23 голосов
/ 15 августа 2013

Chrome 30> поддерживает альфа-прозрачность видео.

http://updates.html5rocks.com/2013/07/Alpha-transparency-in-Chrome-video

17 голосов
/ 12 марта 2013

Нет. Это ограничение видеокодеков, поддерживаемых браузерами: mp4, ogv и webm в настоящее время не поддерживают альфа-каналы.

Есть обходные пути, но они включают повторную визуализацию видео с использованием Canvas, и это своего рода хак. seeThru является одним примером. Он хорошо работает в браузерах HTML5 для настольных компьютеров (даже в IE9), но, похоже, не очень хорошо работает на мобильных устройствах. Я не мог заставить его работать на Chrome для Android. Он работал на Firefox для Android, но с довольно паршивой частотой кадров. Я думаю, вам не повезло с мобильным телефоном, хотя я бы хотел оказаться неправым.

2 голосов
/ 05 ноября 2010

Хотя это невозможно с самим видео, вы можете использовать холст для рисования кадров видео, за исключением пикселей в цветовой гамме или чего-либо еще. Это займет немного javascript и так далее, конечно. См. Видео-головоломка (очевидно, в данный момент не работает), Взрывающееся видео и Видео в реальном времени -> ASCII

2 голосов
/ 05 ноября 2010

В настоящее время единственным видеокодеком, который действительно поддерживает альфа-канал, является VP8, который использует Flash. MP4, вероятно, поддержал бы его, если бы видео экспортировалось как последовательность изображений, но я вполне уверен, что видеофайлы Ogg вообще не поддерживают альфа-канал. Это может быть один из тех редких случаев, когда использование Flash поможет вам лучше.

1 голос
/ 05 ноября 2018

Mp4-файлы можно воспроизводить на прозрачном фоне, используя библиотеку seeThrou Js. Все, что вам нужно, чтобы объединить фактическое видео и альфа-канал в одном видео. Также убедитесь, что размер видео по высоте не превышает 1400 px, поскольку некоторые старые устройства iphone не воспроизводят видео с размерами более 2000. Это очень полезно для настольных и мобильных устройств safari, которые в настоящее время не поддерживают webm.

более подробную информацию можно найти по ссылке ниже https://github.com/m90/seeThru

0 голосов
/ 31 июля 2014

QuickTime Movs экспортируется как анимация, но только в сафари.Мне бы хотелось, чтобы было полное решение (или формат), охватывающее все основные браузеры.

0 голосов
/ 10 декабря 2013

формат webm - лучшее решение для Chrome> 29, но он не поддерживается в Firefox IE и Safari, лучшее решение - использовать Flash (wmode = "transparent"). но вы должны забыть "IOS".

...