Raspberry Pi Вебкамера — различия между версиями

Материал из Вікі Фаланстэра
Перейти к: навигация, поиск
(Новая страница: «в '''raspi-config''' включаем вэбкамеру проверяем наличии файла '''/dev/video0''' выполняем '''fswebcam -r 640x480…»)
 
м (Bot: Adding category Non-category)
 
(не показаны 3 промежуточные версии 2 участников)
Строка 1: Строка 1:
 
в '''raspi-config''' включаем вэбкамеру
 
в '''raspi-config''' включаем вэбкамеру
проверяем наличии файла '''/dev/video0'''
+
проверяем наличии файла '''/dev/video0'''
выполняем '''fswebcam -r 640x480 -d /dev/video0 /var/www/test.jpg'''
+
выполняем '''fswebcam -r 640x480 -d /dev/video0 /var/www/test.jpg'''
должны получить фото, у меня пришлось еще поставить и '''libjpeg62-dev'''
+
должны получить фото, у меня пришлось еще поставить и '''libjpeg62-dev'''
Есть 2 вида трансляции это фото и видео
+
Есть 2 вида трансляции это фото и видео
Фото Moniton
+
Ставим '''apt-get install motion'''
+
Конфиг '''nano/etc/motion/motion.conf'''
+
Стартуем '''moniton'''
+
Видео '''ffmpeg''' и '''ffserver'''
+
ffmpeg - записывает видео
+
ffserver - транслирует его
+
конфиг '''nano /etc/ffserver.conf'''
+
---
+
# Порт, на котором будет работать ffserver
+
Port 4444
+
# Адрес, на котором будет работать ffserver.
+
# Если указать 0.0.0.0 то будут использованы все доступные адреса
+
BindAddress 0.0.0.0
+
# Максимальное количество обслуживаемых соединений
+
MaxHTTPConnections 10
+
# Максимальное количество клиентов
+
MaxClients 10
+
# Максимальная используемая полоса (в килобитах)
+
MaxBandwidth 5000
+
# Файл журнала. Формат подобен формату лога apache
+
CustomLog /var/log/ffserver-access.log
+
# Описываем источник
+
<Feed webcam.ffm>
+
# Временный файл для хранения промежуточных данных
+
File /tmp/video.flv
+
# Максимальный размер файла с промежуточными данными
+
FileMaxSize 1M
+
# Команда запуска ffmpeg для захвата видео с камеры и отправки ffserver-у.
+
# Адрес для отправки данных (localhost) автоматически будет добавлен в конец этой строки.
+
# (подробнее см. ниже).
+
#Launch ffmpeg -s 640x480 -f video4linux2 -i /dev/video0 -f alsa -i hw:1
+
# С каких адресов может обращаться источник. Если закоментировано - с любых.
+
# ACL allow 127.0.0.1
+
</Feed>
+
# Описываем поток. SWF-файл с FLV-потоком внутри.
+
  
<Stream webcam.swf>
+
Фото Moniton
    Feed webcam.ffm
+
Ставим '''apt-get install motion'''
    Format swf
+
Конфиг '''nano/etc/motion/motion.conf'''
    VideoCodec flv
+
Стартуем '''moniton'''
    VideoFrameRate 30
+
    VideoBufferSize 80000
+
    VideoBitRate 200
+
    VideoQMin 1
+
    VideoQMax 5
+
    VideoSize 640x480
+
    PreRoll 1
+
    NoAudio
+
</Stream>
+
  
</Stream>
+
Видео '''ffmpeg''' и '''ffserver'''
# При обращении к индексной страницы ffserver будем отображать текущий статус сервера
+
ffmpeg - записывает видео
<Stream index.html>
+
ffserver - транслирует его
    Format status
+
конфиг '''nano /etc/ffserver.conf'''
</Stream>
+
 
---
+
---
Запускаем сначала ffmpeg
+
# Порт, на котором будет работать ffserver
'''ffmpeg -f video4linux2 -i /dev/video0 -f flv /tmp/video.flv'''
+
Port 4444
а патом ffserver
+
# Адрес, на котором будет работать ffserver.
'''ffserver -f /etc/ffserver.conf'''
+
# Если указать 0.0.0.0 то будут использованы все доступные адреса
идем на '''http://ip_server:4444/'''
+
BindAddress 0.0.0.0
 +
# Максимальное количество обслуживаемых соединений
 +
MaxHTTPConnections 10
 +
# Максимальное количество клиентов
 +
MaxClients 10
 +
# Максимальная используемая полоса (в килобитах)
 +
MaxBandwidth 5000
 +
# Файл журнала. Формат подобен формату лога apache
 +
CustomLog /var/log/ffserver-access.log
 +
# Описываем источник
 +
<Feed webcam.ffm>
 +
# Временный файл для хранения промежуточных данных
 +
File /tmp/video.flv
 +
# Максимальный размер файла с промежуточными данными
 +
FileMaxSize 1M
 +
# Команда запуска ffmpeg для захвата видео с камеры и отправки ffserver-у.
 +
# Адрес для отправки данных (localhost) автоматически будет добавлен в конец этой строки.
 +
# (подробнее см. ниже).
 +
#Launch ffmpeg -s 640x480 -f video4linux2 -i /dev/video0 -f alsa -i hw:1
 +
# С каких адресов может обращаться источник. Если закоментировано - с любых.
 +
# ACL allow 127.0.0.1
 +
</Feed>
 +
# Описываем поток. SWF-файл с FLV-потоком внутри.
 +
<Stream webcam.swf>
 +
Feed webcam.ffm
 +
Format swf
 +
VideoCodec flv
 +
VideoFrameRate 30
 +
VideoBufferSize 80000
 +
VideoBitRate 200
 +
VideoQMin 1
 +
VideoQMax 5
 +
VideoSize 640x480
 +
PreRoll 1
 +
NoAudio
 +
</Stream>
 +
# При обращении к индексной страницы ffserver будем отображать текущий статус сервера
 +
<Stream index.html>
 +
Format status
 +
</Stream>
 +
---
 +
 
 +
Запускаем сначала ffmpeg
 +
'''ffmpeg -f video4linux2 -i /dev/video0 -f flv /tmp/video.flv'''
 +
а патом ffserver
 +
'''ffserver -f /etc/ffserver.conf'''
 +
идем на '''http://ip_server:4444/'''
 +
 
 +
[[Категория:Non-category]]

Текущая версия на 22:12, 14 апреля 2017

в raspi-config включаем вэбкамеру

проверяем наличии файла /dev/video0
выполняем fswebcam -r 640x480 -d /dev/video0 /var/www/test.jpg
должны получить фото, у меня пришлось еще поставить и libjpeg62-dev
Есть 2 вида трансляции это фото и видео
Фото Moniton
Ставим apt-get install motion
Конфиг nano/etc/motion/motion.conf
Стартуем moniton
Видео ffmpeg и ffserver
ffmpeg - записывает видео 
ffserver - транслирует его
конфиг nano /etc/ffserver.conf
---
# Порт, на котором будет работать ffserver
Port 4444
# Адрес, на котором будет работать ffserver.
# Если указать 0.0.0.0 то будут использованы все доступные адреса
BindAddress 0.0.0.0
# Максимальное количество обслуживаемых соединений
MaxHTTPConnections 10
# Максимальное количество клиентов
MaxClients 10
# Максимальная используемая полоса (в килобитах)
MaxBandwidth 5000
# Файл журнала. Формат подобен формату лога apache
CustomLog /var/log/ffserver-access.log
# Описываем источник
<Feed webcam.ffm>
# Временный файл для хранения промежуточных данных
File /tmp/video.flv
# Максимальный размер файла с промежуточными данными
FileMaxSize 1M
# Команда запуска ffmpeg для захвата видео с камеры и отправки ffserver-у.
# Адрес для отправки данных (localhost) автоматически будет добавлен в конец этой строки.
# (подробнее см. ниже).
#Launch ffmpeg -s 640x480 -f video4linux2 -i /dev/video0 -f alsa -i hw:1
# С каких адресов может обращаться источник. Если закоментировано - с любых.
# ACL allow 127.0.0.1
</Feed>
# Описываем поток. SWF-файл с FLV-потоком внутри.
<Stream webcam.swf>
Feed webcam.ffm
Format swf
VideoCodec flv
VideoFrameRate 30
VideoBufferSize 80000
VideoBitRate 200
VideoQMin 1
VideoQMax 5
VideoSize 640x480
PreRoll 1
NoAudio
</Stream>
# При обращении к индексной страницы ffserver будем отображать текущий статус сервера
<Stream index.html>
Format status
</Stream>
---
Запускаем сначала ffmpeg
ffmpeg -f video4linux2 -i /dev/video0 -f flv /tmp/video.flv
а патом ffserver
ffserver -f /etc/ffserver.conf
идем на http://ip_server:4444/