Video player html: 🤷🏽‍♀️ Page not found | MDN Web Docs

Содержание

Тег | htmlbook.ru

Internet ExplorerChromeOperaSafariFirefoxAndroidiOS
9.0+3.0+10.50+3.1+3.5+2.0+2.0+

Спецификация

HTML:3.24.015.0XHTML:1.01.1

Описание

Добавляет, воспроизводит и управляет настройками видеоролика на веб-странице. Путь к файлу задается через атрибут src или вложенный тег <source>. Список поддерживаемых браузерами аудио и видеокодеков ограничен и приведен в табл. 1.

Табл. 1. Кодеки и браузеры
БраузерInternet ExplorerChromeOperaSafariFirefox
Аудио кодеки
ogg/vorbis
wav
mp3
AAC
Видео кодеки
ogg/theora
H.264
WebM

Для универсального воспроизведения в указанных браузерах видео кодируют с помощью разных кодеков и добавляют файлы одновременно (см. пример).

Синтаксис

<video>
 <source src="URL">
</video>

Атрибуты

autoplay
Видео начинает воспроизводиться автоматически после загрузки страницы.
controls
Добавляет панель управления к видеоролику.
height
Задает высоту области для воспроизведения видеоролика.
loop
Повторяет воспроизведение видео с начала после его завершения.
poster
Указывает адрес картинки, которая будет отображаться, пока видео не доступно или не воспроизводится.
preload
Используется для загрузки видео вместе с загрузкой веб-страницы.
src
Указывает путь к воспроизводимому видеоролику.
width
Задает ширину области для воспроизведения видеоролика.

Закрывающий тег

Обязателен.

Пример

HTML5IE 9CrOpSaFx

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>video</title>
 </head>
 <body>
  <video controls="controls" poster="video/duel.jpg">
   <source src="video/duel.ogv" type='video/ogg; codecs="theora, vorbis"'>
   <source src="video/duel.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"'>
   <source src="video/duel.webm" type='video/webm; codecs="vp8, vorbis"'>
   Тег video не поддерживается вашим браузером. 
   <a href="video/duel.mp4">Скачайте видео</a>.
  </video>
 </body>
</html>

Результат примера в браузере Opera показан на рис. 1.

Рис. 1. Воспроизведение видеофайла

Браузеры

Firefox поддерживает кодек WebM начиная с версии 4.0.

Статьи по теме

Статьи по теме

Не выкладывайте свой код напрямую в комментариях, он отображается некорректно.
Воспользуйтесь сервисом cssdeck.com или jsfiddle.net,
сохраните код и в комментариях дайте на него ссылку. Так и результат сразу увидят.

Вставка видео в видеоплеер (HTML+CSS)

Вы здесь:
Главная — HTML — HTML Основы — Вставка видео в видеоплеер (HTML+CSS)


На этом уроке мы разберем, как вставить видео в кастомном видеоплеере на HTML страницу. В качестве импровизированного видеоплеера, будет использовано изображение Smart TV.


Для работы нам потребуется изображение Smart TV и сам видеоролик. Для эксперимента, вы можете совершенно бесплатно скачать любое видео на сервисе http://www.coverr.co.




Как вставить видео на сайт


Для лучшего понимания, пока вставим видео на сайт без картинки TV. Сделать это очень просто. Для добавления на HTML страницу видео, существует два тега: video и source. Атрибут controls добавляет элементы контроля для встроенного плеера. В разных браузерах встроенные плееры выглядят по разному. Надо иметь ввиду, что большинство браузеров поддерживают формат MP4. Если подключается только один формат видео, то указываем его сразу в теге video.




<video src="example.mp4" controls>></video>

Запись ниже предназначена для случая, когда форматов видео несколько.




<video controls>

     <source src="example.mp4" type="video/mp4">

    <source src="example.avi" type="video/avi">

</video>



Создадим flex-контейнер для элементов — секцию с классом smart_tv. Внутри секции поместим два flex-элемента:


  • видеоплеер (изображение телевизора)
  • видеоролик (тег video с элементами управления controls)


<section>

    <div>

        <img src="smart-tv.png" alt="">

        <video src="training-cyclist.mp4" controls>

        </video>

    </div>

</section>

Обнуляем поля и отступы для всех элементов




*{

    margin: 0;

    padding: 0;

}

Сделаем изображение TV адаптивным.




img{

    max-width: 100%;

    height: auto;

}

Зададим высоту секции на весь экран, отцентрируем все флекс-элементы.




.smart_tv{

    height: 100vh;

    display: flex;

    align-items: center;

    justify-content: center;

    padding: 0 10px;

    position: relative;

}

Растянем блок с видеоплеером на всю ширину контейнера. Ограничим максимальную ширину, чтобы видеоплеер не растягивался на всю ширину на больших экранах. Зададим относительное позиционирование, чтобы элементы можно было позиционировать относительно данного блока.




.player{

    width: 100%;

    max-width: 800px;

    position: relative;

}

На данный момент картинка телевизора и само видео расположены друг под другом. Нужно видео встроить в экран телевизора, подбирая на ходу значения ширины, высоты и двигая видео вверх и влево. Все размеры указываются в процентах, чтобы видеоплеер мог быть адаптивным.




.player video{

    position: absolute;

    width: 92.0%;

    height: 82.1%;

    top: 2.4%;

    left: 1.8%;

    background: #000;

}





Если Вам интересно узнать, как создать и заработать на собственной веб-студии? Тогда обязательно получите доступ к моей уникальной системе «Своя Web-студия за 55 дней».


  • Создано 06.04.2020 10:57:13



  • Михаил Русаков

Предыдущая статья Следующая статья

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):


  1. Кнопка:

    <a href=»https://myrusakov.ru» target=»_blank»><img src=»https://myrusakov.ru/images/button.gif» alt=»Как создать свой сайт» /></a>

    Она выглядит вот так:


  2. Текстовая ссылка:
    <a href=»https://myrusakov.ru» target=»_blank»>Как создать свой сайт</a>

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

    [URL=»https://myrusakov.ru»]Как создать свой сайт[/URL]

Создаем пользовательский HTML5 видео плеер при помощи CSS3 и jQuery

Страница 1 из 2

Элемент HTML5 <video> уже поддерживается большинством современных браузеров, и даже IE поддерживает начиная с версии 9. Есть много преимуществ в том, что видео проигрывается в самом браузере без использования плееров сторонних производителей (см. статью Введение в HTML5 video Брюса Лоусона), поэтому многие разработчики пытаются начать использовать эту возможность как можно скорее. Но есть несколько препятствий к этому,  в первую очередь, это проблемы с поддержкой  кодеков в каждом браузере, тут разногласия между Opera / Firefox и IE / Safari. Но это не может быть серьезной проблемой в течение длительного времени, Google не так давно выпустил кодек VP8, и Opera, Firefox, Chrome и IE9 уже имеют поддержку этого формата, да и Flash также может проигрывать VP8. Это означает, что в скором времени мы сможем создать единую версию видео, которое будет проигрываться при помощи тега <video> в большинстве браузеров и Flash Player.



Другим серьезным препятствием для использования является создание пользовательского HTML5 плеера — это то, где flash на данный момент единственное решение и в настоящее время имеет преимущество, с мощным IDE, Flash обеспечивает простой интерфейс для создания пользовательского компонента видеоплеера. Если мы хотим создать собственный плеер для элемента HTML5 , то мы должны писать все это на HTML5, CSS3, JavaScript и т.д.

И это то, о чем будет статья. Мы рассмотрим как создать легкий пользовательский HTML5 <video> плеер, включая создание для этого простого плагина jQuery, выбор элементов управления и настройка внешнего вида при помощи CSS.

В этой статье мы рассмотрим:

  • Элементы управления видео
  • Основы разметки элементов управления
  • Создание плагина JQuery
  • Внешний вид плеера
  • Создание тем для плеера

Мы будем использовать jQuery для упрощения манипуляций DOM, и jQuery UI для создания ползунков управления, которые мы будем использовать для перемотки видео и изменения уровня громкости.

Элементы управления видео

Как профессиональные веб-дизайнеры, мы хотим создать видеоплеер, который будет выглядеть одинаково во всех браузерах. Однако, каждый браузер предоставляет свой собственный, по разному выглядящий, видео плеер, от минималистичного в Firefox и Chrome, до более навороченного в Opera и Safari (см. рисунок 1). Если мы хотим, чтобы наши элементы управления выглядели одинаково во всех браузерах, а также соответствовали нашему дизайну, мы должны создать наши собственные элементы управления с нуля. Это не так сложно, как кажется.

Рисунок 1. Встроенные элементы управления видео в различных браузерах

Все медиа-элементы в HTML5 имеют поддержку API медиа-элементов , к которому мы можем получить доступ при помощи  JavaScript и использовать для создания таких функций, как воспроизведение, пауза и т.д.  Элементы управления мы можем создать с помощью HTML, CSS, SVG.

Основная разметка элементов управления

Во-первых, нам нужно создать собственно саму разметку для элементов управления. Нам нужна кнопка Play/Pause, панель поиска, таймер и регулятор громкости. Мы вставим разметку для элементов управления после элемента <video>, и обернем их в блок с классом ghinda-video-controls.

<div>
 <a title=»Play/Pause»></a>
 <div></div>
 <div>00:00</div>
 <div>
 <div></div>
 <a title=»Mute/Unmute»></a>
 </div>
</div>

Мы использовали классы вместо ID для всех элементов, чтобы иметь возможность использовать этот же код для нескольких видео-плееров на одной странице.

Создание плагина jQuery для плеера

После создания разметки, мы будет связывать наши элементы с API медиа-элементами, для того, чтобы управлять нашим видео. Как было отмечено выше, для этого мы напишем плагин jQuery.

Примечание автора: Я надеюсь, что вы знакомы с основами JQuery и JavaScript, поэтому я лишь вкратце объясню сценарий. Если вам нужна дополнительная информация по этим вопросам, см. Craig Buckler How to develop a jQuery plugin, и раздел  JavaScript section of the Opera web standards curriculum.

$.fn.gVideo = function(options) {
 // build main options before element iteration
 var defaults = {
 theme: ‘simpledark’,
 childtheme: »
 };
 var options = $.extend(defaults, options);
 // iterate and reformat each matched element
 return this.each(function() {
 var $gVideo = $(this);
 
 //create html structure
 //main wrapper
 var $video_wrap = $(‘<div></div>’).addClass(‘ghinda-video-player’).addClass(options.theme).addClass(options.childtheme);
 //controls wraper
 var $video_controls = $(‘<div><a title=»Play/Pause»></a><div></div><div>00:00</div><div><div></div><a title=»Mute/Unmute»></a></div></div>’);                       
 $gVideo.wrap($video_wrap);
 $gVideo.after($video_controls);

Здесь мы используем jQuery для создания динамически разметки видеоплеера (но не сам проигрыватель), а также удаляем атрибут controls как только скрипт загружается. Это для того, что в случае, если пользователь отключил JavaScript, эти элементы управления будут бесполезны, и он/она не сможет воспользоваться нативными элементами управления браузера для элемента видео. Плеер будет использовать наши пользовательские элементы управления только после того,  как скрипт успешно загрузился.

Далее, нам нужно создать переменные для каждого элемента управления.

//get newly created elements
var $video_container = $gVideo.parent(‘.ghinda-video-player’);
var $video_controls = $(‘.ghinda-video-controls’, $video_container);
var $ghinda_play_btn = $(‘.ghinda-video-play’, $video_container);
var $ghinda_video_seek = $(‘.ghinda-video-seek’, $video_container);
var $ghinda_video_timer = $(‘.ghinda-video-timer’, $video_container);
var $ghinda_volume = $(‘.ghinda-volume-slider’, $video_container);
var $ghinda_volume_btn = $(‘.ghinda-volume-button’, $video_container);

$video_controls.hide(); // keep the controls hidden

Мы получаем каждый элемент управления по его классу, а затем их скрываем пока все не будет готово.

Теперь для управления Play/Pause:

var gPlay = function() {
 if($gVideo.attr(‘paused’) == false) {
 $gVideo[0].pause();                   
 } else {                   
 $gVideo[0].play();               
 }
};

$ghinda_play_btn.click(gPlay);
$gVideo.click(gPlay);

$gVideo.bind(‘play’, function() {
 $ghinda_play_btn.addClass(‘ghinda-paused-button’);
});

$gVideo.bind(‘pause’, function() {
 $ghinda_play_btn.removeClass(‘ghinda-paused-button’);
});

$gVideo.bind(‘ended’, function() {
 $ghinda_play_btn.removeClass(‘ghinda-paused-button’);
});

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

Для создания ползунка поиска мы будем использовать jQuery UI Slider component.

var createSeek = function() {
 if($gVideo.attr(‘readyState’)) {
 var video_duration = $gVideo.attr(‘duration’);
 $ghinda_video_seek.slider({
 value: 0,
 step: 0.01,
 orientation: «horizontal»,
 range: «min»,
 max: video_duration,
 animate: true,                   
 slide: function(){                           
 seeksliding = true;
 },
 stop:function(e,ui){
 seeksliding = false;                       
 $gVideo.attr(«currentTime»,ui.value);
 }
 });
 $video_controls.show();                   
 } else {
 setTimeout(createSeek, 150);
 }
};

createSeek();

Как видите, мы используем рекурсивную функцию, при чтении ReadyState видео. Мы должны продолжать запрашивать видео, пока оно не готово, иначе мы не сможем определить продолжительность, и не сможем создать ползунок. Как только видео будет готово, мы инициализируем ползунок, а также отображаем элементы управления.

Далее мы создадим таймер.

var gTimeFormat=function(seconds){
 var m=Math.floor(seconds/60)<10?»0″+Math.floor(seconds/60):Math.floor(seconds/60);
 var s=Math.floor(seconds-(m*60))<10?»0″+Math.floor(seconds-(m*60)):Math.floor(seconds-(m*60));
 return m+»:»+s;
};

var seekUpdate = function() {
 var currenttime = $gVideo.attr(‘currentTime’);
 if(!seeksliding) $ghinda_video_seek.slider(‘value’, currenttime);
 $ghinda_video_timer.text(gTimeFormat(currenttime));                           
};

$gVideo.bind(‘timeupdate’, seekUpdate);

Здесь мы используем функцию seekUpdate, чтобы получить атрибут CurrentTime видео и функцию gTimeFormat для форматирования полученного текущего значения.

Для регулировки громкости, мы будем также использовать jQuery UI slider и пользовательскую функцию для кнопки регулировки громкости видео.

$ghinda_volume.slider({
 value: 1,
 orientation: «vertical»,
 range: «min»,
 max: 1,
 step: 0.05,
 animate: true,
 slide:function(e,ui){
 $gVideo.attr(‘muted’,false);
 video_volume = ui.value;
 $gVideo.attr(‘volume’,ui.value);
 }
});

var muteVolume = function() {
 if($gVideo.attr(‘muted’)==true) {
 $gVideo.attr(‘muted’, false);
 $ghinda_volume.slider(‘value’, video_volume);
 
 $ghinda_volume_btn.removeClass(‘ghinda-volume-mute’);                   
 } else {
 $gVideo.attr(‘muted’, true);
 $ghinda_volume.slider(‘value’, ‘0’);
 
 $ghinda_volume_btn.addClass(‘ghinda-volume-mute’);
 };
};

$ghinda_volume_btn.click(muteVolume);

Наконец, мы собираемся удалить атрибут controls из <video>, потому что к этому моменту наши собственные пользовательские элементы управления настроены и мы хотим использовать их вместо используемых в браузере по умолчанию.

$gVideo.removeAttr(‘controls’);

Теперь, когда наш плагин готов, мы можем вызвать его для элемента video.

$(‘video’).gVideo();

Этот код вызовет плагин для всех видео-элементов на странице.

Если у Вас возникли вопросы, то для скорейшего получения ответа рекомендуем воспользоваться нашим форумом

10 бесплатных видеоплееров HTML5 — Русские Блоги

One of the most exciting buzz these days in web circles is about HTML5 and specifically video on HTML5. HTML5 video tag has solved the age old problem site owners and designers face on how to best embed video on websites. HTML5 can play video online without adobe flash player. There are more beautiful HTML5 video interface built in, including a set of controls (play/pause etc.), so you don’t need anything else to play video in them. So here are 10 Best Free HTML5 Video Players.

A free, open source (GPL) HTML5 based video player written in Javascript. It solves cross browser and compatibility issues, adds eye candy and provides extremely powerful non standard features.

VideoJS is an HTML5 Video Player, built with Javascript and CSS, with a fallback to a Flash video player for when the browser doesn’t support HTML5 video.

Sublime Video іѕ a HTML5 Video Player, users саn play videos lacking thе need οf browser plugins οr Flashdependencies. It supports Full-window mode wіth sleek zoom-іn/out transitions.

FryPlayer is fast and easy to use HTML5 video player. Main feature is that he is completely free to use!

HTML5 audio and video players in pure HTML and CSS.

HTML5 video with Flash fallback. Easy CSS/HTML/JS customization and theming. Full screen support. Completely open source and free for commercial use.

Kaltura HTML5 Video Player allows you to play back HTML5 videos that are going to be inserted into a website. It is very light and does not require any additional module to run. It is compatible with the most existing browsers even with those that do not support HTML5. It can play back several video formats such as OGG, H.264, MOV and more.

Open Standard Media (OSM) Player is an all-in-one media player for the web. It is an industry changing, open source (GPLv3) media player that is written in jQuery to dynamically deliver any type of web media, including HTML5, YouTube, Vimeo, and Flash.

HTML5 audio and video player with fallback to Java and Flash.

DailyMotion video player based on HTML5 video tag + javascript/CSS3, also has svg filters and animated PNG.

Перепечатано по адресу: https://www.cnblogs.com/nosnowwolf/archive/2012/09/25/2701761.html

real media player видео-и аудиофайлы. (.rm и .ram) используется в коде html, не работающем в текущем браузере

У меня есть код, содержащий реальные видео-и аудиофайлы плеера media. (.rm и .ram). Они не работают в браузерах. Не могли бы вы предложить какое-нибудь решение? Код содержит тег embed, который имеет файл .rpm в src. Файл .rpm содержит путь к файлу .smi, который содержит видео-и аудиофайлы .rm, которые будут воспроизводиться при нажатии кнопки в браузере. Но это работает не так, как должно.
Спасибо.

html

audio

video

html4

Поделиться

Источник


user8378225    

27 июля 2017 в 20:07

1 ответ


  • Vxg Media Player выдает неизвестную ошибку в браузере

    Я хочу воспроизвести ссылку RTSP на своей веб-странице. для этого я использую Vxg Media Player для воспроизведения видео RTSP link. Я тестирую в браузере Chrome ниже приведен мой код. <html> <head> <script src=~/vxgplayer-1.8.33/vxgplayer-1.8.33.js></script> <link…

  • media библиотека и видео

    В настоящее время я ищу возможность интегрировать JW Player в сайт sitecore. У меня он отлично работает, когда я статически даю плееру url видео в моей библиотеке media. Бит, с которым я борюсь, теперь делает его полем в контенте sitecore, чтобы контент-человек мог загрузить и выбрать видео из…



3

Преобразуйте файлы RealMedia в современный формат, например MP3 для аудиофайлов или MPEG4 для видеофайлов.

RealMedia фактически устарел за последние пять-десять лет (в зависимости от того, как вы определяете «obsolete») и больше не воспроизводится ни в одном современном веб-браузере.

Поделиться


duskwuff -inactive-    

27 июля 2017 в 20:43


Похожие вопросы:

Ошибка загрузки JW Player media: файл не может быть воспроизведен

Мы столкнулись с очень странной проблемой с JW Player и действительно не знаем подхода к ее решению. JW Player показывает ошибку: Ошибка загрузки media: файл не может быть воспроизведен спорадически…

Изображения, Музыка, Видео, youtube, flash и Vimeo x-browser media player plugin?

То, что я ищу, — это плагин media player, который сможет воспроизводить следующий контент media: изображения аудио (опционально) видео (опционально) youtube встроенное видео встроенные видео vimeo…

как конвертировать .rm (RealPlayer Media) файлов в mp3 с помощью NAudio?

Я хотел бы конвертировать аудиофайлы .rm (RealPlayer Media) в mp3, предпочтительнее использовать библиотеку c#, и NAudio. поэтому, если есть какие-либо предложения о том, как преобразовать…

Vxg Media Player выдает неизвестную ошибку в браузере

Я хочу воспроизвести ссылку RTSP на своей веб-странице. для этого я использую Vxg Media Player для воспроизведения видео RTSP link. Я тестирую в браузере Chrome ниже приведен мой код. <html>…

media библиотека и видео

В настоящее время я ищу возможность интегрировать JW Player в сайт sitecore. У меня он отлично работает, когда я статически даю плееру url видео в моей библиотеке media. Бит, с которым я борюсь,…

JW Player : воспроизведение видео в мобильном браузере и веб-браузере

Я использую JW Player для воспроизведения видео в мобильном и веб-браузере; У меня есть много 100 видео с размером 1280*700 пикселей. Это видео подходит для веб-браузера и времени загрузки в…

Sitecore Media фреймворк Ooyala 1.4 REV. 140411 не вытягивает аудиофайлы из backlot Ooyala

Мы обновили Sitecore 7.2 и Sitecore Media фреймворк Ooyala 1.4 REV. 140411 в нашем экземпляре sitecore. Мы можем вытащить видео из натурных Ooayala. Однако мы не смогли вытащить аудиофайлы из…

Как определить, было ли видео загружено в Media Player Framework?

Как определить, было ли видео загружено и готово к воспроизведению в Media Player Framework? ( http://playerframework.codeplex.com/ )

Запись и воспроизведение MMS(Media Player) в LoadRunner

Нужно проверить производительность сервера Windows Media. Видео размещаются на этом сервере. Для доступа к этим видео на веб-странице предоставляются гиперссылки MMS(Microsoft Media Services). Load…

Azure Media плеер не воспроизводит видео при втором нажатии на всплывающее окно lightgray

Я настроил плеер для галерей продуктов, которые включают в себя как изображения, так и видео. Я использую azure media плеер, который используется в коде, как показано ниже: //azure media player…

HTML видео


Элемент HTML используется для
показать видео на веб-странице.



Элемент HTML

Чтобы показать видео в HTML, используйте элемент :

Пример

<элементы управления видео>


Ваш браузер не поддерживает тег видео.

Попробуй сам »


Как это работает

Элемент управления Атрибут добавляет элементы управления видео, такие как воспроизведение, пауза и громкость.

Рекомендуется всегда включать атрибуты width и height . Если высота и ширина не заданы, страница
может мерцать во время загрузки видео.

Элемент позволяет указать альтернативное видео
файлы, из которых браузер может выбирать.Браузер будет использовать первый распознанный формат.

Будет отображаться только текст между тегами и .
в браузерах, которые не
поддерживать элемент .


HTML

<видео> Автозапуск

Для автоматического запуска видео используйте атрибут autoplay :

Пример

<автозапуск видео>


Ваш браузер не поддерживает тег видео.

Попробуй сам »

Примечание. Браузеры Chromium не
разрешить автовоспроизведение в большинстве случаев. Однако отключенное автовоспроизведение всегда разрешено.

Добавить без звука после
autoplay
, чтобы ваше видео начиналось автоматически (но без звука):

Пример

<автовоспроизведение видео отключено>


Ваш браузер не поддерживает тег видео.

Попробуй сам »


Поддержка браузера

Числа в таблице указывают первую версию браузера, полностью поддерживающую
элемент.

Элемент
<видео> 4,0 9,0 3.5 4,0 10,5


Видеоформаты HTML

Поддерживаются три формата видео: MP4, WebM и Ogg. Браузер поддерживает различные форматы:

Браузер MP4 WebM Огг
Край ДА ДА ДА
Хром ДА ДА ДА
Firefox ДА ДА ДА
Safari ДА ДА НЕТ
Опера ДА ДА ДА

HTML-видео — типы мультимедиа

Формат файла Тип носителя
MP4 видео / mp4
WebM видео / webm
Огг видео / ogg

Видео в формате HTML — методы, свойства и события

HTML DOM определяет методы, свойства и события для элемента .

Это позволяет загружать, воспроизводить и приостанавливать видео, а также устанавливать продолжительность и громкость.

Есть также события DOM, которые могут уведомить вас, когда видео начинает воспроизводиться, приостанавливается и т. Д.

Для получения полной справки по DOM перейдите к нашему справочнику по HTML-аудио / видео DOM.


HTML-теги для видео

Тег Описание
<видео> Определяет видео или фильм
<источник> Определяет несколько медиаресурсов для медиаэлементов, таких как
<трек> Определяет текстовые дорожки в медиаплеерах

HTML тег видео

Пример

Воспроизвести видео:

<элементы управления видео>


Ваш браузер не поддерживает тег видео.

Попробуй сам »


Определение и использование

Тег используется для встраивания видео.
содержимое документа, например фрагмент ролика или другие видеопотоки.

Тег содержит один или несколько
тегов
с разными видеоисточниками. Браузер выберет первый источник.
поддерживает.

Текст между и
Теги будут отображаться только в браузерах, которые не поддерживают элемент

В HTML поддерживаются три формата видео: MP4, WebM и OGG.

Браузер MP4 WebM Огг
Край ДА ДА ДА
Хром ДА ДА ДА
Firefox ДА ДА ДА
Safari ДА ДА НЕТ
Опера ДА ДА ДА

Советы и примечания

Совет: Для аудиофайлов смотрите
Тег
.



Поддержка браузера

Числа в таблице указывают первую версию браузера, полностью поддерживающую элемент.

Элемент
<видео> 4,0 9,0 3,5 3,1 11,5

Дополнительные атрибуты

Атрибут Значение Описание
автозапуск автовоспроизведение Указывает, что воспроизведение видео начнется, как только оно будет готово
элементы управления контролирует Указывает, что элементы управления видео должны отображаться (например, кнопка воспроизведения / паузы и т. Д.).
высота пикселя Устанавливает высоту видеоплеера
петля петля Указывает, что видео будет начинаться заново каждый раз после завершения
без звука без звука Указывает, что аудиовыход видео должен быть отключен
плакат URL Задает изображение, которое будет отображаться во время загрузки видео или пока пользователь не нажмет кнопку воспроизведения.
предварительный натяг авто
метаданные
нет
Указывает, следует ли, по мнению автора, загружать видео при загрузке страницы и каким образом.
SRC URL Задает URL-адрес видеофайла
ширина пикселя Устанавливает ширину видеоплеера

Глобальные атрибуты

Тег также поддерживает глобальные атрибуты в HTML.


Атрибуты событий

Тег также поддерживает атрибуты событий в HTML.


связанные страницы

Ссылка на HTML DOM: Ссылка на HTML аудио / видео DOM


Настройки CSS по умолчанию

Нет.

: элемент вставки видео — HTML: язык разметки гипертекста

HTML-элемент включает в себя медиаплеер, который поддерживает воспроизведение видео в документ.Вы также можете использовать для аудиоконтента, но элемент может обеспечить более удобное взаимодействие с пользователем.

В приведенном выше примере показано простое использование элемента . Аналогично элементу , мы включаем путь к носителю, который мы хотим отобразить, внутри атрибута src ; мы можем включить другие атрибуты, чтобы указать такую ​​информацию, как ширина и высота видео, хотим ли мы, чтобы оно автоматически воспроизводилось и повторялось, хотим ли мы отображать элементы управления видео по умолчанию в браузере и т. д.

Содержимое внутри открывающих и закрывающих тегов отображается как резервный вариант в браузерах, которые не поддерживают этот элемент.

Как и все другие элементы HTML, этот элемент поддерживает глобальные атрибуты.

автозапуск

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

Примечание: Сайты, которые автоматически воспроизводят аудио (или видео со звуковой дорожкой), могут быть неприятными для пользователей, поэтому по возможности их следует избегать.Если вы должны предложить функцию автовоспроизведения, вы должны сделать ее включенной (требуя, чтобы пользователь специально ее включил). Однако это может быть полезно при создании мультимедийных элементов, источник которых будет установлен позже под контролем пользователя. См. Наше руководство по автозапуску для получения дополнительной информации о том, как правильно использовать автозапуск.

Чтобы отключить автовоспроизведение видео, autoplay = "false" не будет работать; видео будет воспроизводиться автоматически, если атрибут вообще присутствует в теге .Чтобы убрать автовоспроизведение, необходимо полностью удалить атрибут.

В некоторых браузерах (например, Chrome 70.0) автовоспроизведение не работает, если отсутствует атрибут приглушен .

автокартинафотография

Логический атрибут, который, если true , указывает, что элемент должен автоматически переключать режим «картинка в картинке», когда пользователь переключается назад и вперед между этим документом и другим документом или приложением.

управления

Если этот атрибут присутствует, браузер предложит элементы управления, позволяющие пользователю управлять воспроизведением видео, включая громкость, поиск и приостановку / возобновление воспроизведения.

список управления

Атрибут controlslist , если он задан, помогает браузеру выбрать, какие элементы управления отображать в медиа-элементе всякий раз, когда браузер показывает свой собственный набор элементов управления (например,грамм. когда контролирует атрибут ).

Допустимые значения: nodownload , nofullscreen и noremoteplayback .

Используйте атрибут disablepictureinpicture , если вы хотите отключить режим «Картинка в картинке» (и элемент управления).

перекрестное происхождение

Этот перечисляемый атрибут указывает, следует ли использовать CORS для выборки связанного видео.Ресурсы с поддержкой CORS можно повторно использовать в элементе , не подвергая искажению . Допустимые значения:

аноним

Отправляет запрос на другой источник без учетных данных. Другими словами, он отправляет HTTP-заголовок Origin: без cookie, сертификата X.509 или без выполнения базовой проверки подлинности HTTP. Если сервер не предоставляет учетные данные исходному сайту (не задавая HTTP-заголовок Access-Control-Allow-Origin: ), изображение будет испорченным , и его использование будет ограничено.

учетные данные

Отправляет запрос на другой источник с учетными данными. Другими словами, он отправляет HTTP-заголовок Origin: с файлом cookie, сертификатом или выполняет аутентификацию HTTP Basic. Если сервер не предоставляет учетные данные исходному сайту (через HTTP-заголовок Access-Control-Allow-Credentials: ), изображение будет испорчено и его использование будет ограничено.

Если нет, ресурс выбирается без запроса CORS (т.е.е. без отправки HTTP-заголовка Origin: ), предотвращая использование незапятнанного содержимого в элементах . Если он недействителен, он обрабатывается так, как если бы использовалось перечисленное ключевое слово анонимный . Дополнительную информацию см. В разделе Атрибуты настроек CORS.

отключить картинку в картинке

Запрещает браузеру предлагать контекстное меню «Картинка в картинке» или в некоторых случаях автоматически запрашивать картинку в картинке.

отключить удаленное воспроизведение

Логический атрибут, используемый для отключения возможности удаленного воспроизведения на устройствах, подключенных с помощью проводных (HDMI, DVI и т. Д.) И беспроводных технологий (Miracast, Chromecast, DLNA, AirPlay и т. Д.).

В Safari вы можете использовать x-webkit-airplay = "deny" как запасной вариант.

высота

Высота области отображения видео в пикселях CSS (только абсолютные значения; без процентов.)

петля

Логический атрибут; если указано, браузер автоматически вернется к началу по достижении конца видео.

без звука

Логический атрибут, указывающий настройку звука, содержащегося в видео, по умолчанию. Если установлено, звук будет изначально отключен. Его значение по умолчанию — false , что означает, что звук будет воспроизводиться при воспроизведении видео.

прослушиванийинлайн

Логический атрибут, указывающий, что видео должно воспроизводиться «в строке», то есть в пределах области воспроизведения элемента. Обратите внимание, что отсутствие этого атрибута не означает, что означает, что видео всегда будет воспроизводиться в полноэкранном режиме.

плакат

URL-адрес изображения, которое будет отображаться во время загрузки видео. Если этот атрибут не указан, ничего не отображается до тех пор, пока не станет доступен первый кадр, затем первый кадр отображается как кадр плаката.

предварительный натяг

Этот перечисляемый атрибут предназначен для подсказки браузеру о том, что, по мнению автора, приведет к наилучшему взаимодействию с пользователем в отношении того, какой контент загружается перед воспроизведением видео. Может иметь одно из следующих значений:

  • нет : указывает, что видео не должно быть предварительно загружено.
  • метаданных : указывает, что только метаданные видео (например,грамм. длина).
  • auto : указывает, что можно загрузить весь видеофайл, даже если пользователь не ожидает его использования.
  • пустая строка : синоним значения auto .

Значение по умолчанию отличается для каждого браузера. Спецификация рекомендует установить его на метаданных .

Примечание:

  • Атрибут autoplay имеет приоритет над preload .Если указано autoplay , браузеру, очевидно, потребуется начать загрузку видео для воспроизведения.
  • Спецификация не заставляет браузер следить за значением этого атрибута; это всего лишь намек.
SRC

URL-адрес видео для встраивания. Это необязательно; вместо этого вы можете использовать элемент внутри видеоблока, чтобы указать видео для встраивания.

ширина

Ширина области отображения видео в пикселях CSS (только абсолютные значения; без процентов).

Имя события срабатывает, когда
аудиопроцесс Входной буфер ScriptProcessorNode :
готов к обработке.
канплей Браузер может воспроизводить мультимедиа, но считает, что недостаточно данных
был загружен для воспроизведения мультимедиа до конца без необходимости останавливаться на
дальнейшая буферизация контента.
может пройти через Браузер оценивает, что он может воспроизводить мультимедиа до конца без
остановка для буферизации контента.
в сборе Визуализация OfflineAudioContext выполняется
прекращено.
изменение длительности Атрибут длительности обновлен.
опорожнено СМИ опустели; например, это событие отправляется, если медиа
уже загружен (или частично загружен), а
нагрузка ()
вызывается метод, чтобы перезагрузить его.
окончено Воспроизведение остановлено, поскольку достигнут конец носителя.
загруженные данные Завершена загрузка первого кадра носителя.
загруженные метаданные Метаданные загружены.
пауза Воспроизведение приостановлено.
играть Воспроизведение началось.
играет Воспроизведение готово к началу после того, как оно было приостановлено или отложено из-за
отсутствие данных.
прогресс Вызывается периодически, когда браузер загружает ресурс.
обмен Скорость воспроизведения изменилась.
поисков A search Операция завершена.
ищу Началась операция поиска A .
остановлено Пользовательский агент пытается получить данные мультимедиа, но данные неожиданно
не ожидается.
приостановить Загрузка мультимедийных данных приостановлена.
timeupdate Время, указанное атрибутом currentTime , было
обновлено.
изменение объема Изменилась громкость.
ожидание Воспроизведение остановлено из-за временного отсутствия данных

Не все браузеры поддерживают одни и те же видеоформаты; вы можете предоставить несколько источников внутри вложенных элементов , и тогда браузер будет использовать первый из них, который он понимает.

  <элементы управления видео>
  
  
  

Ваш браузер не поддерживает видео в формате HTML5. Вот это взамен ссылку на видео .

Мы предлагаем содержательное и подробное руководство по типам медиафайлов и руководство по кодекам, поддерживаемым для видео. Также доступно руководство по аудиокодекам, которые можно использовать с ними.

Другие примечания по использованию:

  • Если вы не укажете атрибут controls , видео не будет включать элементы управления браузера по умолчанию; вы можете создавать свои собственные пользовательские элементы управления с помощью JavaScript и HTMLMediaElement API. Дополнительные сведения см. В разделе «Создание кроссбраузерного видеопроигрывателя».
  • Чтобы обеспечить точный контроль над вашим видео (и аудио) контентом, HTMLMediaElement запускает множество различных событий. Эти события не только обеспечивают управляемость, но и позволяют отслеживать ход загрузки и воспроизведения мультимедиа, а также состояние и положение воспроизведения.
  • Вы можете использовать свойство object-position , чтобы настроить положение видео в кадре элемента, и свойство object-fit , чтобы управлять тем, как размер видео настраивается так, чтобы он соответствовал кадру.
  • Чтобы показывать субтитры / подписи вместе с вашим видео, вы можете использовать некоторый JavaScript вместе с элементом и форматом WebVTT. Дополнительные сведения см. В разделе Добавление подписей и субтитров к видео HTML5.
  • Вы можете воспроизводить аудиофайлы с помощью элемента .Это может быть полезно, если, например, вам нужно выполнить аудио с расшифровкой WebVTT, поскольку элемент не позволяет использовать субтитры с использованием WebVTT.
  • Чтобы протестировать резервный контент в браузерах, поддерживающих элемент, вы можете заменить несуществующим элементом, например .

Хорошим общим источником информации по использованию HTML является учебное пособие для начинающих по видео- и аудиоконтенту.

Стилизация с помощью CSS

Элемент является заменяемым элементом - его значение display по умолчанию равно inline , но его ширина и высота по умолчанию в области просмотра определяются внедряемым видео.

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

Обнаружение добавления и удаления дорожек

Вы можете определить, когда дорожки добавляются и удаляются из элемента , используя события addtrack и removetrack . Однако эти события не отправляются непосредственно в сам элемент . Вместо этого они отправляются в объект списка дорожек в HTMLMediaElement элемента , который соответствует типу дорожки, которая была добавлена ​​к элементу:

HTMLMediaElement.audioTracks

AudioTrackList , содержащий все звуковые дорожки медиаэлемента. Вы можете добавить к этому объекту слушателя для addtrack , чтобы получать уведомления о добавлении новых звуковых дорожек к элементу.

HTMLMediaElement.videoTracks

Добавьте слушателя addtrack к этому объекту VideoTrackList , чтобы получать информацию о добавлении видеодорожек к элементу.

HTMLMediaElement.textTracks

Добавьте прослушиватель событий addtrack к этому TextTrackList , чтобы получать уведомления, когда к элементу добавляются новые текстовые дорожки.

Например, чтобы определить, когда звуковые дорожки добавляются или удаляются из элемента , вы можете использовать такой код:

  var elem = document.querySelector ("видео");

elem.audioTrackList.onaddtrack = function (event) {
  trackEditor.addTrack (event.отслеживать);
};

elem.audioTrackList.onremovetrack = function (event) {
  trackEditor.removeTrack (event.track);
};
  

Этот код отслеживает добавление и удаление звуковых дорожек из элемента и вызывает гипотетическую функцию редактора дорожек для регистрации и удаления дорожки из списка доступных дорожек редактора.

Вы также можете использовать addEventListener () для прослушивания событий addtrack и removetrack .

Простой пример видео

В этом примере воспроизводится видео при активации, предоставляя пользователю элементы управления видео по умолчанию в браузере для управления воспроизведением.

 


<элементы управления видео
    src = "https://archive.org/download/BigBuckBunny_124/Content/big_buck_bunny_720p_surround.mp4"
    poster = "https://peach.blender.org/wp-content/uploads/title_anouncement.jpg?x11217"
   >

К сожалению, ваш браузер не поддерживает встроенные видео,
но не волнуйтесь, вы можете  загрузить его 
и смотрите его в любимом видеоплеере!


  

Пока видео не начнет воспроизводиться, вместо него будет отображаться изображение, указанное в атрибуте poster .Если браузер не поддерживает воспроизведение видео, отображается резервный текст.

Пример с несколькими источниками

Этот пример основан на последнем, предлагая три разных источника для мультимедиа; это позволяет просматривать видео независимо от того, какие видеокодеки поддерживаются браузером.

 


<элементы управления видео
  poster = "https://upload.wikimedia.org/wikipedia/commons/e/e8/Elephants_Dream_s5_both.jpg">
  <источник
    src = "https://archive.org/download/ElephantsDream/ed_hd.ogv "
    type = "video / ogg">
  <источник
    src = "https://archive.org/download/ElephantsDream/ed_hd.avi"
    type = "video / avi">
  <источник
    src = "https://archive.org/download/ElephantsDream/ed_1024_512kb.mp4"
    type = "video / mp4">

  Ваш браузер не поддерживает видеотег HTML5.

  

Первая попытка WebM. Если это не может быть воспроизведено, то пробуется MP4. Наконец-то судят Огга. Резервное сообщение отображается, если элемент видео не поддерживается, но не в случае сбоя всех источников.

Некоторые типы файлов мультимедиа позволяют предоставить более конкретную информацию, используя параметр кодеков как часть строки типа файла. Относительно простой пример — video / webm; codecs = "vp8, vorbis" , в котором говорится, что файл представляет собой видео WebM с использованием VP8 для видео и Vorbis для звука.

Серверная поддержка видео

Если тип MIME для видео установлен неправильно на сервере, видео может не отображаться или отображать серое поле, содержащее X (если включен JavaScript).

Если вы используете веб-сервер Apache для обслуживания видео Ogg Theora, вы можете решить эту проблему, добавив расширения типа видеофайла к типу MIME «video / ogg». Наиболее распространенные расширения типов видеофайлов — это «.ogm», «.ogv» или «.ogg». Для этого отредактируйте файл «mime.types» в «/ etc / apache» или используйте конфигурационную директиву «AddType» в httpd.conf .

 AddType video / ogg .ogm
Добавить тип видео / ogg .ogv
Добавить тип видео / ogg .ogg
 

Если вы обслуживаете свои видео как WebM, вы можете решить эту проблему для веб-сервера Apache, добавив расширение, используемое вашими видеофайлами («.webm »является наиболее распространенным) в тип MIME« video / webm »через файл« mime.types »в« / etc / apache »или через директиву конфигурации« AddType »в httpd.conf .

 AddType video / webm .webm
 

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

Видео должны содержать как подписи, так и расшифровки, которые точно описывают его содержание (дополнительные сведения о том, как их реализовать, см. В разделе Добавление подписей и субтитров к видео HTML5).Субтитры позволяют людям, страдающим потерей слуха, понимать аудиосодержание видео во время воспроизведения видео, в то время как транскрипты позволяют людям, которым нужно дополнительное время, иметь возможность просматривать аудиоконтент в удобном для них темпе и формате.

Стоит отметить, что, хотя вы можете подписывать только аудиоданные, вы можете делать это только при воспроизведении звука в элементе , поскольку область видео элемента используется для представления подписей. Это один из особых сценариев, в которых полезно воспроизводить звук в элементе видео.

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

Помимо разговорного диалога, субтитры и стенограммы должны также обозначать музыку и звуковые эффекты, которые передают важную информацию. Сюда входят эмоции и тон:

 14
00:03:14 -> 00:03:18
[Драматическая рок-музыка]

15
00:03:19 -> 00:03:21
[шепотом] Что это на расстоянии?

16
00:03:22 -> 00:03:24
Это ... это ...

16 00:03:25 -> 00:03:32
[Громкий стук]
[Стук блюд]
 

Субтитры не должны закрывать основную тему видео.Их можно расположить с помощью параметра align VTT cue.

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

Если элемент имеет src
атрибут: ноль или более элементов,
за которым следует прозрачный контент, не содержащий элементов мультимедиа — это
нет или
<видео>

Иначе: ноль или более элементов, за которыми следуют
на ноль или более элементов, за которыми следует
прозрачный контент, не содержащий медиаэлементов — это не
<аудио> или <видео> .

Отсутствие тега Нет, и начальный, и конечный тег являются обязательными.
Разрешенные родители Любой элемент, который принимает встроенный контент.
Неявная роль ARIA Нет соответствующей роли
Разрешенные роли ARIA заявка
Интерфейс DOM HTMLVideoElement

Таблицы BCD загружаются только в браузере

Как встроить видео в HTML

До HTML5, чтобы воспроизводить видео на веб-странице, вам нужно было использовать плагин, например Adobe Flash Player.С появлением HTML5 вы теперь можете размещать видео прямо на самой странице.

Это позволяет воспроизводить видео на страницах, предназначенных для мобильных устройств, поскольку такие плагины, как Adobe Flash Player, не работают на Android или iOS.

Элемент HTML используется для встраивания видео в веб-документы. Он может содержать один или несколько источников видео, представленных с помощью атрибута src или элемента источника.

Чтобы встроить видеофайл, просто добавьте этот фрагмент кода и измените src на путь к вашему видеофайлу:

  <элементы управления видео>
  
  
  Ваш браузер не поддерживает элемент видео. Пожалуйста, обновите его до последней версии.
  

Элемент поддерживается всеми современными браузерами. Однако не все браузеры поддерживают один и тот же формат видеофайлов. Файлы MP4 являются наиболее распространенным форматом, а другие форматы, такие как WebM и Ogg, поддерживаются в Chrome, Firefox и Opera.

Чтобы ваше видео воспроизводилось в большинстве браузеров, рекомендуется кодировать их как в форматы Ogg, так и в MP4, и включать их в элемент , как в примере выше.Браузеры будут использовать первый распознанный формат.

Если по какой-либо причине браузер не распознает какой-либо из форматов, вместо него будет отображаться текст «Ваш браузер не поддерживает видеоэлемент. Пожалуйста, обновите его до последней версии».

Вы также могли заметить контролирует в теге . Этот элемент включает в себя множество полезных атрибутов для настройки воспроизведения.

<видео> атрибуты

элементы управления

элементы управления атрибуты определяют, отображаются ли такие элементы управления, как кнопка воспроизведения / паузы или ползунок громкости.

Это логический атрибут, означающий, что для него может быть установлено значение true или false. Чтобы установить значение true, просто добавьте его в тег . Если его нет в теге, для него будет установлено значение false, и элементы управления не появятся.

автовоспроизведение

«автовоспроизведение» может иметь значение true или false. Вы устанавливаете его в значение true, добавляя его в тег, если он отсутствует в теге, он устанавливается в значение false. Если установлено значение true, воспроизведение видео начнется, как только в буфере будет достаточно видео, чтобы его можно было воспроизвести.Многие люди считают, что автоматическое воспроизведение видео мешает или раздражает. Так что используйте эту функцию экономно. Также обратите внимание, что некоторые мобильные браузеры, например Safari для iOS, игнорируют этот атрибут.

Это еще один логический атрибут. Если включить autoplay в тег , встроенное видео начнет воспроизводиться, как только его достаточно будет в буфере.

  <автовоспроизведение видео>
  

  

Имейте в виду, что многие люди считают автоматическое воспроизведение видео мешающим или раздражающим, поэтому используйте эту функцию с осторожностью.Также обратите внимание, что некоторые мобильные браузеры, такие как Safari для iOS, полностью игнорируют этот атрибут.

плакат

Атрибут плакат — это изображение, которое отображается на видео, пока пользователь не щелкнет для его воспроизведения.

    

Видео могут быть дорогими

Хотя добавить видео на свою страницу проще, чем когда-либо, часто лучше загрузить видео в службу, такую ​​как YouTube, Vimeo или Wistia, и вместо этого встроить их код.Это связано с тем, что показ видео может быть дорогостоящим как для вас с точки зрения затрат на сервер, так и для ваших зрителей, если у них ограниченные тарифные планы.

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

А теперь вставляйте видео, сколько душе угодно. Или нет — это ваше дело.

Все возможности для встраивания современных медиа с помощью HTML-кода »

Раскрытие информации: Ваша поддержка помогает поддерживать работу сайта! Мы зарабатываем реферальный сбор за некоторые услуги, которые мы рекомендуем на этой странице. Узнать больше

Когда зародился Интернет, это была простая текстовая среда, состоящая в основном из абзацев, списков и гиперссылок. Примерно в 1993 году на рынке появились первые графические веб-браузеры, и в центре внимания оказались визуальные элементы, такие как изображения и графика.Добавление аудио и видео контента быстро последовало за изображениями. Однако, поскольку поддержка этих типов мультимедиа не была встроена в спецификацию HTML, для воспроизведения мультимедиа использовались плагины браузера.

Современные средства массовой информации в Интернете: HTML5

&

С выпуском HTML5 необходимость в подключаемых модулях браузера для аудио- и видеоконтента стала исчезать. HTML5 представил два новых элемента, которые включают функцию воспроизведения для поддерживаемых форматов мультимедиа.Эти два новых элемента — audio и video . В этом руководстве мы расскажем, как использовать новые теги, форматы мультимедиа, поддерживаемые этими тегами, и как использовать элемент iframe для встраивания мультимедийных файлов, размещенных на внешнем веб-сайте.

HTML5

Элемент audio можно использовать для добавления аудиоконтента на веб-страницу. Вложенные таким образом файлы воспроизводятся механизмом воспроизведения звука, встроенным во все браузеры, совместимые с HTML5.Синтаксис может быть очень простым, а можно сделать его более сложным, добавив несколько форматов файлов, а также резервные варианты для неподдерживаемых браузеров.

Как минимум, для использования элемента audio должны использоваться следующие атрибуты:

  • src определяет URL-адрес, по которому размещается аудиоконтент.
  • Тип определяет формат файла.
  • control должен быть указан, иначе визуальный элемент для управления воспроизведением контента не появится.

Должен использоваться закрывающий тег audio , а дополнительное содержимое может быть дополнительно вложено между открывающим и закрывающим тегами. В приведенном ниже коде текст между тегами появится в том случае, если браузер, просматривающий веб-страницу, не поддерживает элемент audio .

Обратите внимание, что мы также предоставили указание авторства, чтобы удовлетворить требованиям, установленным издателем этого аудиоклипа.

  

Это запись выступления под названием Reclaim HTML5 , которое было первоначально доставлен в Ванкувер в Встреча Super VanJS . Он размещен на Интернет-архив и под лицензией CC 3.0 .

Теперь давайте посмотрим, как этот элемент отображается в браузере. Имейте в виду, что вам потребуется современный браузер, чтобы увидеть элементы управления элементами и прослушать клип. Если вы используете неподдерживаемый браузер, вы увидите сообщение о том, что ваш браузер не поддерживает элемент audio .

Мне очень жаль. Ваш браузер не поддерживает HTML5 audio .
Это запись выступления под названием Reclaim HTML5 , которое первоначально было озвучено в Ванкувере на встрече Super VanJS Meetup.Он размещен в Интернет-архиве и лицензирован под CC 3.0.

Есть несколько других атрибутов, которые могут быть дополнительно добавлены к элементу audio. , включая:

  • autoplay : Если этот атрибут используется, звук начнет воспроизводиться, как только будет загружено достаточно, чтобы начать воспроизведение.
  • цикл : Когда присутствует этот атрибут, аудиофайл автоматически запускается заново после воспроизведения.
  • отключен : если вы хотите, чтобы аудиоконтент отключался при первоначальной загрузке, используйте этот атрибут.
  • preload : этот элемент может использоваться со значением none , metadata или auto , чтобы указать браузеру, какой объем аудиофайла нужно предварительно загрузить. Обратите внимание, что если autoplay применяется к элементу audio , он переопределит атрибут preload .

HTML5

Элемент video следует тому же базовому синтаксису, что и элемент audio .В его самой простой форме все, что нам нужно сделать, это использовать элемент src для идентификации URL-адреса видео и добавить атрибут controls , чтобы посетители нашего веб-сайта могли управлять воспроизведением видео. Мы также собираемся использовать атрибуты width и height для установки размера видеопроигрывателя, но это необязательно.

  

  

Пока браузер посетителя веб-сайта поддерживает элемент video и может воспроизводить файл .mp4 , он сможет воспроизводить видео в своем браузере. Если их браузер не поддерживает элемент video или указанный формат файла, они увидят сообщение со ссылкой, по которой они могут скачать видео.

Вот как выглядит этот код.

К сожалению, ваш браузер не поддерживает HTML5 video , но вы можете
загрузить это видео из Интернет-архива.

Возможно, вы заметили, что мы не указали авторство в этом видео. Это потому, что это видео, размещенное в Интернет-архиве, было опубликовано в 1956 году и перешло в общественное достояние. Следовательно, указание авторства не требуется.

Есть несколько дополнительных атрибутов, которые можно использовать, чтобы повлиять на то, как видеоконтент загружается и отображается в браузере.Эти атрибуты включают в себя:

  • автовоспроизведение : Если этот атрибут используется, видео начнет воспроизводиться, как только будет загружено достаточно видео для начала воспроизведения.
  • loop : Когда присутствует этот атрибут, видео автоматически запускается заново после завершения воспроизведения.
  • без звука : если вы хотите, чтобы аудиосодержимое видео было отключено, используйте этот атрибут.
  • preload : этот элемент может использоваться со значением none , metadata или auto , чтобы указать браузеру, какую часть видеофайла нужно предварительно загрузить.Обратите внимание, что если autoplay применяется к элементу video , он переопределит атрибут preload .
  • плакат : Используйте этот атрибут, чтобы выбрать изображение, которое будет отображаться в качестве плаката для видео до начала воспроизведения.

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

для предоставления нескольких форматов файлов

Элемент source можно использовать вместе с элементом audio или video , чтобы указать более одного формата файла.Если предоставляется более одного формата, браузер выбирает формат, наиболее подходящий для устройства посетителя. Когда используется элемент source , он заменяет атрибут src .

Использование нескольких форматов — хорошая идея, потому что не все браузеры могут воспроизводить все форматы файлов. Предоставляя несколько форматов, вы увеличиваете шансы, что каждый посетитель вашего сайта сможет просматривать или слушать медиа-контент на вашем сайте.

Вот пример того, как мы могли бы использовать атрибут source для предоставления двух разных форматов одного и того же аудиофайла.

  
<управление звуком>
  Мне жаль. Ваш браузер не поддерживает HTML5  audio .
  
  

Это запись выступления под названием Reclaim HTML5 , которое первоначально проходило в Ванкувере на Super VanJS Meetup . Он проводится Интернет-архив и распространяется по лицензии CC 3.0 .

Обратите внимание, что мы все еще используем атрибут controls , но вся остальная информация была удалена из тега audio .Вместо этого теперь у нас есть два элемента source , каждый с атрибутом src , указывающим на URL-адрес файла, и атрибутом type , сообщающим браузеру, какой тип файла обслуживается.

Вот как отображается код:

Извините. Ваш браузер не поддерживает HTML5 audio .
Это запись выступления под названием Reclaim HTML5 , которое первоначально было проведено в Ванкувере на встрече Super VanJS Meetup. Он размещен в Интернет-архиве и лицензирован согласно CC 3.0.

Атрибут источника также может использоваться для элементов видео . Если видеофайл доступен в нескольких форматах, все доступные форматы могут быть добавлены путем удаления атрибута src из элемента video и многократного использования элемента source между открывающим и закрывающим тегами video .

  <элементы управления видео>
  К сожалению, ваш браузер не поддерживает HTML5  video , но вы можете
  просмотреть это видео, посетив архив  Интернет-архив .
  
  
  

  

Вот как отображается код video с несколькими элементами source :

К сожалению, ваш браузер не поддерживает HTML5 video , но вы можете просмотреть это видео, посетив Интернет-архив.

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

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

Вместе с этими элементами HTML5 можно использовать множество различных форматов видео и аудио файлов. Однако поддержка разных форматов зависит от браузера.

Выбор форматов файлов для аудиофайлов

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

  • Файлы Wav имеют очень высокое качество, но при этом очень большие.
  • Формат MP3 намного меньше, чем Wav, но это частный формат, и проблемы с качеством становятся очевидными при низких битрейтах.
  • Формат AAC похож на MP3 в том, что это частный формат. Он лучше работает с битрейтом выше 100 кбит / с.
  • Ogg — это стандарт с открытым исходным кодом, что делает его популярным среди разработчиков, а качество звука намного лучше при низких битрейтах, чем в MP3.

Форматы файлов MP3 и AAC поддерживаются почти всеми браузерами. Однако, учитывая проприетарный характер форматов MP3 и AAC, а также тот факт, что файлы Ogg лучше звучат при низких битрейтах, разработчики и кураторы контента, как правило, предпочитают формат Ogg.

Большинство браузеров уже поддерживают Ogg, и можно ожидать, что в будущем поддержка будет добавлена ​​в тех, которые не поддерживаются. В результате при работе с аудиоконтентом имеет смысл предоставить файл в формате Ogg в качестве первого варианта с альтернативным вариантом MP3 или ACC. Wav рекомендуется только в тех случаях, когда качество записи критично.

Выбор форматов файлов для видеофайлов

Существует два основных формата видеофайлов, которые можно использовать с элементом video и которые поддерживаются большинством веб-браузеров:

  • WebM — это новый формат с открытым исходным кодом, разработанный компанией Google.
  • MP4 более высокое качество и более широкая поддержка браузеров, чем WebM.

Если вы собираетесь предлагать только один тип видео, выберите формат MP4, поскольку он практически универсален как с настольными, так и с мобильными браузерами. Однако, поскольку WebM построен на технологиях с открытым исходным кодом, со временем он должен догнать MP4 с точки зрения поддержки браузера и однажды может стать доминирующим форматом для доставки видео через Интернет.

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

для добавления субтитров

Элемент track может быть добавлен в качестве дочернего элемента к любому элементу audio или video , чтобы связать синхронизированный текстовый файл с медиаконтентом.Файл, связанный с элементом track , должен быть отформатирован в формате WebVTT. Довольно часто к элементу video или audio добавляется более одного файла дорожки , чтобы обеспечить подписи или субтитры на нескольких языках.

Атрибут kind используется для указания типа данных, содержащихся в прикрепленном файле. Значения, которые могут быть применены к атрибуту вида , включают субтитров , заголовков , описаний , глав и метаданных .

Другие атрибуты, которые могут использоваться с элементом track. , включают:

  • label : используется для добавления метки, чтобы помочь пользователям определить дорожку, наиболее подходящую для их нужд.
  • src : определяет URL-адрес файла дорожки.
  • srclang : Этот атрибут требуется, если атрибут kind установлен на субтитров и определяет язык субтитров, содержащихся в соответствующем файле дорожки.

Вот пример того, как элемент track добавляется в качестве дочернего элемента video element:

  
  

Встраивание внешних мультимедийных файлов

Элементы audio и video HTML5 являются отличным подспорьем для веб-мастеров и создателей контента, которые хотят размещать мультимедийные файлы на своем собственном сервере или в учетной записи хостинга.Однако контент, добавляемый на веб-страницу с элементами «аудио» или «видео», полностью зависит от встроенных возможностей воспроизведения браузера.

Есть много поставщиков аудио- и видеохостингов, которые отлично справляются с задачей оптимизации воспроизведения мультимедиа таким образом, чтобы обеспечить лучшую производительность, чем собственные элементы HTML5. Возьмем, к примеру, такой веб-сайт, как YouTube. YouTube создал видеопроигрыватель, который по умолчанию использует HTML5, включает резервный вариант на основе флэш-памяти для неподдерживаемых браузеров, регулирует качество видео в зависимости от скорости соединения зрителей и обеспечивает буферизацию и плавную потоковую передачу.

То же самое можно сказать о распространителях аудиоконтента, таких как Soundcloud и Spotify.

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

В результате, если вы хотите добавить мультимедийный контент с веб-сайта, такого как YouTube, SoundCloud, Spotify, The Internet Archive, Vimeo или любого другого ведущего поставщика потокового мультимедиа, вы должны сначала определить, предлагает ли поставщик простой способ встроить родной медиаплеер.Причина этого в том, что когда вы встраиваете медиаплеер поставщика контента, ваши посетители получают преимущества оптимизации, которые поставщик контента встроил в их медиаплеер.

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

Как вы можете видеть ниже, если мы визуализируем видео с использованием этого кода, медиаплеер выглядит немного иначе, и производительность воспроизведения улучшается.

Spotify — еще одна служба, которая использует фреймов для встраивания мультимедийного контента. Вот как выглядит код для встраивания аудиофайла Spotify:

  
  

Если мы визуализируем этот код, мы не получим просто набор простых элементов управления audio .Вместо этого мы получаем аудиоплеер Spotify, встроенный в наш веб-сайт.

YouTube полностью освоил использование фреймов iframe для встраивания контента до такой степени, что в январе 2015 года они объявили, что прекращают поддержку других методов встраивания контента, размещенного на YouTube. Чтобы получить код внедрения для видео YouTube, просто перейдите к видео, которое вы хотите встроить, откройте контекстное меню (щелкните правой кнопкой мыши на ПК или Ctrl и щелкните на Mac) и выберите «Копировать код внедрения». Когда вы это сделаете, код, который выглядит так, как вы видите ниже, будет скопирован в ваш буфер обмена.

  
  

Это довольно простой код, который загружает видеопроигрыватель YouTube, встроенный в веб-страницу, например:

. Важно понимать, что при загрузке медиаплеера, такого как видеоплеер YouTube, вы в конечном итоге используете те же ресурсы браузера, что и при встраивании видео с использованием собственного элемента HTML5 video . Разница в том, что инженеры YouTube создали видеоплеер, который учитывает такие параметры, как скорость вашего интернет-соединения, чтобы автоматически настраивать качество видео на лету.В результате, если вы не являетесь исключительным инженером по интернет-видео, вы не сможете воспроизвести результаты YouTube.

Когда использовать

THEOPlayer - это коммерческий видеоплеер на основе HTML5, предлагающий предварительную интеграцию в обширную экосистему видео.Интернет, мобильный Интернет, мобильные устройства, телевизионные приставки, устройства для трансляции и смарт-телевизоры - все это поддерживается THEO, предлагая впечатляющий охват аудитории. Одна из их самых популярных функций - SDK, который поддерживает потоковую передачу HLS с низкой задержкой от Apple, что делает их одними из первых поставщиков на рынке, которые сделали это.

Основные характеристики:

3. Flowplayer

Flowplayer имеет репутацию одного из самых быстро загружаемых HTML5-плееров.Они предлагают бесплатную пробную версию и различные варианты оплаты от 25 долларов в месяц. Некоторые интересные интеграции через FlowPlayer включают аналитику в реальном времени, назначение ставок по заголовкам и различные возможности монетизации с помощью подписок и решений с оплатой за просмотр.

Основные характеристики:

  • Отмеченные наградами варианты монетизации
  • Аналитика и диагностика в реальном времени
  • HLS, MPEG-DASH, MP4, WebM
  • Расширенное планирование размещения рекламы
  • Плейлисты, Chromecast, ABR

4.hls.js

Построенный на основе библиотеки JavaScript, hls.js работает непосредственно поверх элемента HTML5

Основные характеристики:

  • Поддержка фрагментированного MP4
  • VOD и живые плейлисты с ABR
  • Альтернативный звук для VOD и живых плейлистов
  • Субтитры, титры, аналитика, синхронизированные метаданные
  • Устойчивость к ошибкам / встроенные механизмы повтора

5. Клаппр

Источник: Clappr

Clappr, известный как один из первых плееров HTML5 с открытым исходным кодом, созданных сообществом на GitHub, основан на.js, а также использует элемент

Основные характеристики:

  • Воспроизведение HLS и DASH
  • Поддержка картинки в картинке
  • Поддержка 360 видео
  • Плагин для статусов воспроизведения
  • DVR, Google Analytics, скрытые субтитры

6.dash.js

Плеер dash.js обеспечивает воспроизведение MPEG-DASH в любом браузере, поддерживающем Media Source Extensions (MSE), и основан на JavaScript. Поскольку DASH является протоколом потоковой передачи с адаптивным битрейтом, плеер dash.js предлагает один из лучших алгоритмов адаптивной потоковой передачи. Поскольку это официальный эталонный проигрыватель для отраслевого форума DASH, вы можете рассчитывать на высокое качество и надежность в производственной среде. Он не зависит от кодеков и браузеров и поддерживает кросс-браузерное DRM.Наконец, dash.js предлагает поддержку нового протокола DASH с низкой задержкой.

Основные характеристики:

  • Воспроизведение в высоком качестве MPEG-DASH
  • Поддержка DASH с малой задержкой
  • Расширенные алгоритмы ABR
  • Кроссбраузерный DRM, титры
  • Отслеживание воспроизведения в реальном времени

Заключение

Безусловно, в 2021 году на выбор будет много проигрывателей HTML5, но ключ к выбору подходящего для вас - это найти проигрыватель, который соответствует вашим потребностям в воспроизведении видео.Хотя в этой статье освещаются особенности шести основных рекомендаций, мы предлагаем дополнительную информацию о проигрывателях, которые можно использовать для потоковой передачи видеоконтента, в нашей документации.

О Rose Power

Роуз Пауэр - менеджер сообщества разработчиков Wowza Media Systems. Страстно увлеченная построением отношений с сообществом разработчиков, Роуз стремится предоставлять качественные ресурсы для положительного пользовательского опыта, основанного на доверии.Когда не работает, ее можно найти ... Подробнее

Как вставить видео в HTML - Learn HTML

Есть несколько способов вставить видео на ваш сайт. Теги , и использовались для вставки видео в HTML-документ. Но сейчас они устарели, поэтому давайте посмотрим, как использовать теги