Можно ли вывести rtmp поток напрямую (без hls,dash и т.д.) в html5 плеер?

Здравствуйте. Есть nginx настроенный на отдачу rtmp с использованием OBS. Использую uppod:
flash по rtmp:///live/test воспроизводит
html5 по hls/test.m3u8 воспроизводит
Если пытаюсь использовать rtmp:///live/test для html5, то ничего не происходит, испробовал много плееров.
Реально ли это вообще? Если да, то посоветуйте плеер пожалуйста. Или нужно как то перенастроить nginx? не совсем устраивает то что, как создается плейлист, по сути нагружается жесткий диск при создании фрагментов (+ к этому идет запись в один файл) Заранее спасибо.
  • Вопрос задан
  • 1484 просмотра
Решения вопроса 1
Aquary
@Aquary
softvelum.ru
Для проигрывания видео через HTML5 сейчас используется Media Source Extensions, которые на вход получают данные от плеера или браузера. Для проигрывания MPEG-DASH эта схема подходит отлично, т.к. там приходящие данные практически сразу, условно говоря, без смены контейнера отдаются MSE.

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

Но вообще рекомендую использовать DASH или HLS для проигрывания в браузере через относительно лёгкие плееры. Либо, если вам критична задержка между отправкой данных и их проигрышем (например, вы транслируете камеры наблюдения или ставки в реальном времени), использовать специальные разработки на базе WebRTC или "чистых" Websockets.
Например, мы разработали технологию SLDP как раз для второго случая, где поток идёт через вебсокеты и отдаётся на проигрывание в MSE в браузере. Для веба есть JavaScript-плеер и SDK. Плюс есть плееры и SDK для мобильных платформ.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@mrxakerrus
для rtmp есть только выход использовать плагины, если пишешь для себя, то можно использовать плагины типа vlc, если пишешь что-то глобальное, то заменой можно пускать видео на ffpmpeg в конце команды добавить - и через stdout отдавать уже поток, главное с командами ffmpeg разобраться выставить битрейт, скорость, звук, кодеки и все прочее, у nginx есть плагин nginx-rtmp с ffmpeg как-раз, который выдает HLS..
P.S RTMP/RTSP все это работает через ActiveX, многие браузеры уже его убрали, поэтому IE его использует еще, но на EDGE кажется его уже не имеется, запихни его в object просто
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы