Какая поддержка для потоковой передачи в реальном времени имеет элемент видео HTML5?

Поддерживает ли видео-элемент HTML5 потоковые протоколы без HTTP (HLS, SmoothStreaming и т.д.)?

Поддерживает ли он протоколы потоковой передачи RTP/RTSP? Поддерживает ли он RT M P? Существуют ли определенные браузеры, которые поддерживают или не поддерживают его?

Ответ 1

Тег HTML5 имеет очень ограниченную поддержку источников видео. Поддерживаемые видеоисточники также ограничены тем, какой браузер использует ваш посетитель. Пожалуйста, смотрите:

http://www.w3schools.com/html/html5_video.asp

для таблицы поддерживаемых форматов в зависимости от браузера. Подводя итог, HTML5 Video поддерживает MP4 во всех браузерах и OGG, WEBM в FireFox, Opera и Chrome. С учетом сказанного, Технически возможно передавать RTSP/RTP, но очень не рекомендуется.

Если вы должны использовать HTML5 Video и иметь больше контроля над потоковым сервером, вы можете попробовать Это решение, в котором объясняется, как передавать видео через файл ogg с помощью VLC. Затем эту ссылку ogg файла можно использовать для потоковой передачи видео на странице с помощью тега HTML5.

Альтернативы HTML5 тегам видео

Flash Video Player поддерживает немного больше, чем видео HTML5. Например JW Player поддерживает:

  • 3 типа видеофайлов: MP4, WebM и FLV.
  • 3 типа аудиофайлов: AAC, MP3 и Vorbis.
  • 2 потоковых протокола: HLS и RTMP.

И для более продвинутой поддержки видео и аудио вы можете попробовать VLC Web Plugin или новый WebChimera (на основе libvlc). (для обоих из них требуется плагин, Flash также требует плагин, но обычно он уже установлен)

UPDATE

Поскольку плагины NPAPI устарели в большинстве браузеров, использование VLC Web Plugin и WebChimera NPAPI больше не является решением.

Еще одна интересная вещь, которая стоит отметить на эту тему: Dailymotion HLS.js, которая дает возможность прямой трансляции всех браузеров через HLS.