Как получить живое видео с CSI камеры

Posted by

Цель заметки: Организовать получение реального видео с CSI камеры которая подключена к плате .

Ранее я пробовал подключить имеющуюся у меня камеру к сервису MotionEye, да он хорош, его я буду использовать. Но вот для другого проекта мне хочется просто видеть получаемое живое видео без записи, без снятия скриншотов, по сути как Youtube ролик.

  • На системе raspbian запускаю следующую строку:

pi@raspberrypi:~ $ -t -0 -w 800 -h 600 -hf -ih -fps 20 -o - | nc -k -l 2222

  • Подключаюсь со своего компьютера к запущенному на миникомпьютере:

ekzorchik@navy:~$ mplayer -fps 200 -demuxer h264es ffmpeg://tcp://10.7.8.53:2222

И в итоге запускается приложение где я все вижу, что видит камера:

Что видит камера куда она направлено, пример одного кадра

А теперь нужно разобрать используемые опции:

  • -t → временная задержка перед запуском, но т. к. у меня указано 0 ее нет.
  • -w → высота захватываемого окна
  • -h → ширина захватываемого окна
  • -hf → установить горизонтальный флип
  • -in → Вставить заголовки в поток
  • -ftps → Указать количество кадров в секунду
  • -o → указать куда сохранять либо же создать сокет ожидающий подключения.
  • Nc → программа подключающаяся, как к TCP или UDP сокетам и позволяющая ожидать подключение к сервису.

Я бы сказал, что такой способ как выше который я увидел на одном форуме всецело удовлетворяет мои задумки простого просмотра того что видит камера.

Все опции утилиты raspivid можно таким образом задействовать, например эффект негатива:

pi@raspberrypi:~ $ raspivid -t -0 -ifx negative -w 800 -h 600 -hf -ih -fps 20 -o - | nc -k -l 2222

ekzorchik@navy:~$ mplayer -fps 200 -demuxer h264es ffmpeg://tcp://10.7.8.53:2222

и на выходе видео, но здесь я приведу лишь скриншот:

Накладываемый эффект "Негатив" на видеопотокВот
таким вот образом на примере снимая
своих птиц: Pirrura Frontalis я поиграюсь с
возможными эффектами. И
если что будет интересно я поделюсь с
читателями своего блога. На этом у меня
всё, с уважением автор блога Олло
Александр aka ekzorchik.