Тёрка в тагах


Друзья

Его(2) Общие(0) Хотят дружить(0)


  • Atrinax

  • Blackoff

  • login

  • login

  • login

  • login

Враги

Его(0) Общие(0) Обиженные(1)

Большая Тёрка / Мысли / Личная лента olegchir /


olegchir

Проверка трансляции MJPEG Axis-видеокамеры без самой видеокамеры

flussonic, erlyvideo

Допустим, нужно простестировать, как MJPEG Axis-видеокамера будет ретранслироваться с сервера.
И опционально потом попоробовать этот поток добавить во Flussonic и показать по HLS.
Но Axis-камеры у нас нету, и нужно как-то ее сэмулировать.
Дальше будет объяснение как это сделать.
Сразу оговорюсь, что это решение даже близко не production и может/будет глючить, это чисто для теста.

Читать далее
===

Если кодеки и ffmpeg еще не установлены, устанавливаем:
http://users.livejournal.com/__hedin/656496.html
===

Теперь устанавливаем эмулятор Axis-видеокамеры.

Официальный сайт тут:
http://avreg.net/manual_tuning_webcam-emu.html
(Программа из неизвестного/неподписанного/недоверенного источника. Я предупредил.)

Для saucy репозитория нет. Скрепя сердце берем raring

(ну или какой там будет самый новый на момент написания статьи.
Посмотреть все можно тут:
http://avreg.net/repos/6.0/ubuntu/dists/).

Вот наши APT-lines:
deb http://avreg.net/repos/6.0/ubuntu raring main
deb http://avreg.net/repos/6.0/ubuntu raring contrib
deb http://avreg.net/repos/6.0/ubuntu raring non-free

Их можно либо добавить в Ubuntu Software Center (Edit->Software sources->Other software->Add)
Либо из консоли вот так:
echo "deb http://avreg.net/repos/6.0/ubuntu raring main" > /etc/apt/sources.list

Устанавливаем сам эмулятор:
apt-get install webcam-emu

Редактируем файл с настройками эмулятора:
sudo vim /etc/webcam-emu.yaml
Port меняем на что-нибудь, что не занято. Например, на 50001.
default_fps меняем на 15.

Запускаем: webcam-emu
В браузере проверяем: http://localhost:50001/axis-cgi/mjpg/video.cgi

Должны появиться цифры.

===

Дальше, настраиваем avserver.

Проверяем, что avserver установлен:
sudo apt-get install libav-tools

Редактируем файл настроек:

vim /etc/avserver.conf

Port 8091
RTSPPort 5454
BindAddress 0.0.0.0
MaxHTTPConnections 2000
MaxClients 100
MaxBandwidth 1000
CustomLog -
NoDaemon


#avconv http://localhost:8090/feed1.ffm
File /tmp/feed.ffm
FileMaxSize 3M
Launch avconv -f mjpeg -i http://localhost:50001/axis-cgi/mjpg/video.cgi
#ACL allow 127.0.0.1



Feed feed.ffm
Format mpegts
VideoCodec libx264
VideoFrameRate 15
VideoBufferSize 5000
VideoBitRate 300
VideoQMin 1
VideoQMax 5
VideoSize 320x240
#AVOptionVideo preset default
#AVOptionVideo preset baseline
#AVOptionVideo flags +global_header
AVOptionVideo bsf h264_mp4toannexb
PreRoll 15
NoAudio
VideoGopSize 15
StartSendOnKey



Теперь, в отдельной консоли запускаем эмулятор:
sudo webcam-emu

И в отдельной консоли запускаем avserver:
avserver -d -f /etc/avserver.conf

Ждем некоторое время, пока avserver прогрузится.

Потом идем в VLC и открываем источник:
http://localhost:8091/live.ts

Источник должен нормально открыться и работать, показывать переключающиеся цифры.

===

Потом можно пойти во Flussonic и создать новый stream с вот таким адресом:
tshttp://localhost:8091/live.ts

(протокол - tshttp, а не просто http!)

Транскодер включать не нужно.

Если предполагать, что флюссоник установлен на localhost, и стрим называется live,
то теперь этот стрим можно посмотреть в VLC в формате HLS:

http://localhost:8080/live/index.m3u8