Источник видео H264 не воспроизводится ни в одном браузере - PullRequest
0 голосов
/ 29 апреля 2018

Я использую Янус для передачи видеопотока с камеры RTSP / H.264 ( QD800 ) через WebRTC в браузеры.

В каких браузерах я говорю? Вот подробности:

  • Firefox (Linux, 64-разрядная версия 59.0.2)
  • Firefox (Windows7, 64-разрядная версия 59.0.2)
  • Chrome (Linux, 64-разрядная версия 49.0.2623.87)
  • Chrome (Windows7, 64-разрядная версия 66.0.3359.139)

Изначально камера отправляет 420029 в качестве идентификатора уровня профиля в SDP при согласовании с клиентом (Янус).

Однако, как таковой, Firefox не может воспроизводить эту версию (420029 означает уровень 4.1, FF способен играть только 3.1 в теории, но оба имеют ограниченный базовый профиль).

Теперь моя конфигурация потокового плагина Janus выглядит следующим образом:

[rtsp-test]
type = rtsp
id = 4
description = RTSP
url = rtsp://admin:admin@a.b.c.d:554/11

audio = no
video = yes
videopt = 96

videortpmap = H264/90000
videofmtp = profile-level-id=42e01f\;packetization-mode=1\;sprop-parameter-sets=Z00AKpWoHgCJ+VA=,aO48gA==
secret = adminpwd

Как видите, он переопределяет идентификатор уровня профиля в конфигурации videofmtp.

Это работает нормально, я могу проверить новый идентификатор уровня профиля в консоли WebRTC как в FF, так и в Chrome в обеих ОС.

Я использую демонстрационный HTML-код по умолчанию, который предоставляется для Janus (demos / streamingtest.html).

Ни в одном браузере не отображается ни одно видео. Отображается только белое поле.

Когда я нажимаю на игру:

  • в Chrome: «Начался поток 405 кбит / с». Белый видеоэкран, спиннер крутится.
  • в Firefox: «Поток начался 0x0 407 кбит / с». Белый видеоэкран, без счетчика, без видео.

PS1 .: Моя камера работает, VLC может воспроизводить поток RTSP непосредственно с нее.

PS2 .: FF и Chrome фактически принимают поток, но не могут его декодировать.

PS3 .: Я также пытался пропустить весь RTSP через FFMPEG:

ffmpeg -i 'rtsp://ip-camera' -an -codec copy -f rtp 'rtp://127.0.0.1:20000' 

А затем используйте образец RTP Януса, но я получил тот же результат, что и выше. См. Вывод FFMPEG .

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

Ссылки:

...