1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/MegEngine-MegFlow

Клонировать/Скачать
04-web-visualization.zh.md 5.1 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 02.12.2024 12:04 e2ca17f

Визуализация видео в Web

Зависимости

Для работы требуется команда ffmpeg, необходимо убедиться, что она установлена и работает корректно.

Схема развёртывания

  1. video input. В качестве источника может выступать rtsp-сервер или видеофайл, указывается абсолютный путь.
  2. MegFlow. Анализирует видео и передаёт результаты рендеринга в формате bgr24 нижестоящим компонентам.
  3. LiveGo используется для преобразования raw_video в формат flv. Причины использования:
    • браузеры не могут напрямую воспроизводить потоки rtsp, рекомендуемые решения — HLS или http-flv;
    • возможно наличие нескольких проигрывателей, требуется услуга переадресации трафика;
    • в производственной среде необходимы функции хранения и потоковой передачи, MegFlow не обладает этими возможностями, поэтому требуются дополнительные сервисы.

Инструкция по эксплуатации

  1. Скачайте и запустите LiveGo:
$ wget https://github.com/gwuhaolin/livego/releases/download/0.0.15/livego_0.0.15_linux_amd64.tar.gz && tar xvf livego_0.0.15_linux_amd64.tar.gz && ./livego &
... 
INFO[2021-10-27T15:44:40+08:00] HLS server enable....                        
INFO[2021-10-27T15:44:40+08:00] RTMP Listen On :1935                         
INFO[2021-10-27T15:44:40+08:00] HTTP-API listen On :8090                     
INFO[2021-10-27T15:44:40+08:00] HTTP-FLV listen On :7001                     
...
Порт Описание
8090 Управляющий порт, возвращает канал при создании room
1935 Порт загрузки, используется channel для создания URL загрузки
7001 Порт воспроизведения, room используется для создания адреса воспроизведения
  1. Протестируйте видеопотоки и воспроизведение.

Предположим, что тестовое видео — это demo.flv (рекомендуется продолжительность более 30 секунд), используйте push_video.py для отправки потока на LiveGo:

$ cd ${MegFlow_dir}/flow-python/examples/misc/visualize_client
$ python3 push_video.py

Откройте index.html в браузере, чтобы проверить, воспроизводится ли видео.

  1. Запустите конфигурацию визуализации кошачьего ограждения.

Конфигурация среды кошачьего ограждения описана в cat_finder README. После запуска версии video base можно запустить версию video visualize:

$ cd ${MegFlow_dir}/flow-python/examples
$ megflow_run -c cat_finder/video_visualize.toml  -p cat_finder
...

В браузере откройте порт 8002, предоставьте rtsp адрес или абсолютный путь к видеофайлу, попробуйте.

Откройте index.html, чтобы воспроизвести визуализированный результат.

  1. Обратите внимание и распространённые проблемы

Адрес воспроизведения

Обратите внимание, что в адресе воспроизведения index.html не должно быть лишних '/', например, http://10.199.1.100/:7001/live/megflow-test.flv не будет воспроизводиться.

Продолжительность видео

Рекомендуется, чтобы тестовое видео было длиннее 30 с. Должно быть как минимум два I-кадра, иначе это повлияет на преобразование flv.

Размер видео

Рекомендуется использовать стандартные разрешения 480p/720p/1080p для тестового видео.

Проблемы с междоменными запросами

Клиент web был изменён с помощью flv.js. Если вы не используете index.html и напрямую открываете исходный demo в браузере, вам нужно самостоятельно решить проблему с междоменным доступом.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/MegEngine-MegFlow.git
git@api.gitlife.ru:oschina-mirror/MegEngine-MegFlow.git
oschina-mirror
MegEngine-MegFlow
MegEngine-MegFlow
master