Лучшие вопросы
Таймлайн
Чат
Перспективы

Тег video

Из Википедии, свободной энциклопедии

Remove ads

<video> — элемент, включённый в HTML5, который используется для воспроизведения видеозаписей[1], частично заменяя элемент <object>.

Adobe Flash Player широко использовался для встраивания содержимого видео-файлов на сайтах например, YouTube. Flash Player был доступен в качестве плагина для большинства веб-браузеров последних версий (таких как Mozilla Firefox, SeaMonkey, Opera и Safari), и несовместим, например, со встроенными браузерами на iPod и iPhone от Apple, а также с Android версии 2.01 или меньше, версии 4.1.x и выше (официально)[2][3].

Google Chrome с некоторых пор имел данный плагин по умолчанию, но после прекращения поддержки Flash он был удалён.

По состоянию на 2020 год HTML видео является единственной широко поддерживаемой технологией воспроизведения видео в современных браузерах, а плагин Flash постепенно отменялся.

Remove ads

Пример использования элемента &lt;video&gt;

Суммиров вкратце
Перспектива

Ниже приводится фрагмент кода на HTML5, который позволяет встроить WebM-видео на веб-сайт:

<video src="movie.webm" poster="movie.jpg" controls>
        This is fallback content to display if the browser
        does not support the video element.
</video>

Множественность ресурсов

Используя любое количество элементов <source>, как показано ниже, браузер выберет автоматически, какой файл загружать. Также, чтобы добиться того же результата, можно использовать функцию canPlay() из JavaScript. Атрибут «type» определяет тип MIME и список кодеков, которые помогают браузеру определить, может ли он декодировать файл. Из-за отсутствия общего видеоформата множественность ресурсов является важной особенностью для того, чтобы избегать «фырканья» браузера, что склоняет его к ошибке: известно, что любые знания веб-разработчиков о браузерах будут неполными, браузер знает о себе больше[источник не указан 730 дней].

<video poster="movie.jpg" controls>
        <source src='movie.webm' type='video/webm; codecs="vp8.0, vorbis"'/>
        <source src='movie.ogv' type='video/ogg; codecs="theora, vorbis"'/>
        <source src='movie.mp4' type='video/mp4; codecs="avc1.4D401E, mp4a.40.2"'/>
        <p>This is fallback content</p
</video>https://youtu.be/oVXfk99dRAc?si=i3opHzF4ZnTaL6AJ
Remove ads

Поддерживаемые видеоформаты

Суммиров вкратце
Перспектива

Текущий проект спецификации HTML5 не уточняет, какие форматы должны поддерживаться в теге <video>. Пользовательские агенты имеют право поддерживать любой подходящий видеоформат[источник не указан 634 дня].

Ограничения поддержки форматов с системным кодеками?

Существует несколько причин, по которым не все форматы, для которых имеются системные кодеки, получают поддержку:

  1. Это попытка «спихнуть» стандартизацию на пользователей. Они могут выработать стандарт де-факто, который на поверку окажется платным. Пострадают от этого разработчики свободного ПО, вебмастера мелких сайтов и владельцы карманных устройств с нетрадиционными ОС. Поскольку в мире нет единой культуры, в разных концах Земли стандартом могут стать разные форматы.
  2. До HTML5 атаки (переполнение буфера и подобные) на системные кодеки были малорезультативны: требуется скачать «отравленный» файл и запустить его вручную, к тому же может сработать антивирус, а маленький размер эксплойта вызовет подозрение. Как только проигрывание видео станет массовым и автоматическим, на системные кодеки — в том числе старые и слабо поддерживаемые — обрушатся такие атаки, что мало кто выдержит.
  3. Редкий формат видео с подписью «чтобы увидеть, установите кодек» — это возрождение надписи 90-х годов «чтобы увидеть, установите ActiveX-компонент». Веб-стандарты создаются не для этого: веб должен быть доступным всем, независимо от ОС и дополнительного ПО.

Дебаты насчёт стандартного видеоформата

Рабочая группа HTML5 считает, что желательно определить по крайней мере один видеоформат, который бы поддерживался всеми браузерами. Идеальный формат в этом отношении должен:

  • иметь хорошее сжатие, хорошее разрешение изображения и низкие затраты работы процессора для расшифровки;
  • быть бесплатным;
  • для формата должен существовать аппаратный декодер, так как многие встроенные процессоры слишком слабы, чтобы раскодировать видео программно.

Изначально, Ogg Theora был рекомендуемым стандартом для HTML5, потому что он не был затронут никакими известными патентами. Но 10 декабря 2010 года спецификация HTML5 была подкорректирована,[4] изменились ссылки на конкретные форматы:

Браузеры должны поддерживать видеоформат Theora и аудиоформат Vorbis, а также контейнерный формат Ogg.

с дополнением[5]:

Было бы очень полезно для функциональной совместимости, если бы все браузеры смогли поддерживать один кодер-декодер. Но не существует ни одного такого кодер-декодера, который бы удовлетворял всех: нам нужен такой кодер-декодер, который, как известно, не требует лицензирования, который совместим с современной развивающейся моделью, который имеет достаточно качеств, чтобы быть пригодным, и который не станет подводным камнем для крупных компаний. Это текущая проблема, и эта часть будет ещё доработана.[6]

Хотя Theora не затронута известными патентами, такие компании как Apple (владелец некоторых патентов на H.264 и член MPEG LA)[7] и Nokia[обновить данные] заявили, что опасаются неизвестных патентов, чьи собственники могли бы ждать корпорацию с финансовыми ресурсами, чтобы предъявить иск по использованию данного формата.[8][9] С несвободными кодеками H.264 и MP3 это тоже может случиться, но Apple уже использует их, и поэтому только использование Ogg было бы для неё дополнительным риском. Apple также возражает против требования о поддержке формата Ogg в HTML5 на тех основаниях, что некоторым приспособлениям поддерживать другие форматы намного легче, и что HTML ни разу за всю историю его существования не требовал особые форматы для чего-либо.[9]

Некоторые веб-разработчики раскритиковали удаление Ogg-форматов из спецификации.[10][11][12] Последующее обсуждение также произошло и в FAQ блоге W3C.[13]

H.264/MPEG-4 AVC широко используем и обладает хорошей скоростью, сжатием, декодером для аппаратных средств, но он уже запатентован.[14] Кроме особых случаев, пользователям H.264 приходится платить за лицензию MPEG LA — группе патентодержателей, включая Apple и Microsoft.[15] В итоге упоминание кодер-декодера по умолчанию было убрано.

Google покупает On2

Приобретение компанией Google On2 Technologies[англ.] происходит в результате выпуска формата VP8, который является бесплатным открытым стандартом, и создания WebM Project, который соединяет VP8 video с Vorbis audio в контейнер Matroska. Выпуск VP8 был также поддержан Free Software Foundation.[16]

В январе 2011 года Google объявил, что собирается прекратить поддержку H.264 в Chrome, многие критиковали это, включая Питера Брайта из Ars Technica[17] и «веб-проповедника» Тима Снита из Microsoft, которые заявили, что скорее эсперанто объявят официальным языком США, чем Google продвинется в этом деле.[18] Однако Говард Моен из Opera Software сильно раскритиковал статью Ars Technica[19], и Google ответила на реакцию, объяснив своё решение тем, что они намерены продвигать WebM в своих продуктах на основе их открытости.

Remove ads

Браузерная поддержка

Суммиров вкратце
Перспектива

Значения

Значения показывают уровень поддержки в самых последних версиях разметки или (если известен номер версии) в указанной версии. Номер версии без каких-либо других значений указывает на версию, с которой впервые полностью поддерживаются все необходимые свойства для разметки.

Подробнее Значение, Описание ...

Таблица

Эта таблица показывает, какие видеоформаты вероятно будут поддерживаться указанным браузером. Большинство браузеров, представленных здесь, используют multimedia framework для раскодирования и отображения видео-файла, а не включают такие компоненты в программное обеспечение. Как правило, невозможно перечислить все форматы, которые поддерживает multimedia framework без их запроса, так как всё зависит от операционной системы и типа кодер-декодера.[20] В таких случаях поддерживаемый видеоформат является атрибутом для framework, а не для браузера или его разметки; браузер обязательно спрашивает свой multimedia framework, прежде чем отвергнуть неизвестный видеоформат. Видеоформат может быть определён с помощью MIME в HTML. (Смотри example) MIME используется для уточнения у multimedia frameworks о поддерживаемых форматах. [note 1]

Среди этих браузеров только Firefox, Opera и Origyn[англ.] используют библиотеки для встроенного раскодирования. На деле Internet Explorer и Safari также могут обеспечивать поддержку определённых форматов, потому что их изготовители также сделали их multimedia frameworks. С другой стороны, Konqueror поддерживает те же форматы, что и Internet Explorer на Windows и Safari на Mac OS X, но указанная здесь поддержка для Konqueror типична для GNU/Linux, где Konqueror в основном и используется. В основном поддержка браузерами какого-либо формата навязана конфликтующими интересами производителей; в особенности Media Foundation и QuickTime поддерживают проприетарные стандарты, тогда как GStreamer и Phonon не могут законно ничего поддерживать, кроме свободных форматов на свободных операционных системах, для которых они созданы.

Подробнее Браузер, Последняя стабильная версия ...
Remove ads

Использование

Суммиров вкратце
Перспектива

С апреля 2010 года вслед за запуском iPad от Apple несколько сайтов с высокой посещаемостью стали выдавать H.264 HTML5 видео вместо Flash для браузеров, идентифицирующих себя как iPad.[54]

В мае 2010 года HTML5 video ещё не так широко распространено, как Flash видео, хотя DailyMotion[55] недавно массово выпустил экспериментальные видео-плееры на основе HTML5 (использующие форматы Ogg Theora и Vorbis), YouTube[56] (использующий форматы H.264 и WebM) и Vimeo[57](использующий формат H.264) намекают, что интерес к приему HTML5 видео увеличивается.

Некоторые крупные публикующие видео веб-сайты опубликовали решение продолжить использование технологий, отличающихся от HTML5 video.[58][59][60] Согласно статье блога YouTube, тег <video> не удовлетворяет всем потребностям веб-сайтов, таких как YouTube.[61] В заявленные важные причины входит необходимость стандартного формата, отсутствие эффективного и надежного метода для передачи видео браузеру, неспособность JavaScript отображать видео на полный экран и проблема защиты содержимого. Хулу также не принял HTML5 video из-за отсутствия функций для обеспечения пользователя адаптивным битрейтом для видео, «защиты» контента и предоставления рекламодателям данных.[62] Netflix заявил, что есть много проблем, которые мешают ему использовать HTML5 video: приемлемые контейнерные A/V форматы; допустимые аудио и видео кодер-декодеры, потоковый протокол, метод для потокового протокола, чтобы адаптировать его к доступным диапазонам частот, метод для передачи информации о доступных потоках и другие параметры для модуля воспроизведения потока данных; метод поддержки защищенных данных; и метод отображения всей этой функциональности в HTML5.[59][63]

11 января 2011 года Google's Chromium Project объявил в своем блоге, что поддержка закрытых кодер-декодеров(например, H.264) будет удалена из будущих версий Chrome-а. В объявлении Chromium особенно выделялось то, что эта ликвидация была попыткой увеличить популярность использования HTML5 и тега <video> без необходимости лицензирования патентованных технологий, стимулируя всю сеть принять общедоступный кодер-декодер для VP8 и Theora.

Remove ads

Предложение добавить DRM

Внесённое в W3C предложение добавить в HTML5 API для DRM было встречено крайне негативно теми, кто считает одним из основных свойств веб-стандартов[англ.] типа HTML, и преимуществ их перед плагинами, открытость или отсутствие требований использования программного или аппаратного обеспечения от определённого поставщика (как на стороне клиента, так и на стороне сервера).[64][65][66][67]

В «живом стандарте HTML», развиваемом WHATWG, планов о добавлении DRM не появилось.[68]

В январе 2014 года к W3C присоединилась Американская ассоциация кинокомпаний (MPAA), поддерживавшая такие законопроекты как SOPA, который вызвал протесты в Интернете;[69] в W3C есть и другие сторонники ограничения работы пользовательских браузеров, букмарклетов и плагинов.[70]

Remove ads

Комментарии

  1. at least for Phonon and its backends [21], that is DirectShow, QuickTime and GStreamer
  2. Supported if OpenCodecs is installed. Also possible with Google Chrome Frame[22][23]
  3. Google released a WebM component for Media Foundation to allow the playback of WebM files in IE9 through the standard HTML5 <video> tag.[25]
  4. Possible if the user has installed a VP8 codec on Windows for IE9.[26]
  5. Supported if XiphQT is installed.
  6. Any format supported by QuickTime or Core Video on OS X.[45]
  7. Any format supported by Phonon on Qt 4.5.[50] Format support depends on the backend of Phonon. Available Phonon backends include GStreamer and xine; backends using MPlayer and VLC are in development.
  8. Any format supported by GStreamer on Webkit/GTK+ builds of Epiphany.
Remove ads

Примечания

Литература

Ссылки

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads