Расскажу как из обычной веб камеры снять rtsp поток и использовать модуль Camshoter. Только Linux!
Давно меня манил модуль Camshoter (camshoter) от directman66, очень я его хотел себе приколхозить ибо покупать камеру, которая умеет rtsp совсем не хотелось, да и в закромах валяется 6 USB камер Logitec C270.
1) Устанавливаем ffserver
apt-get install ffmpeg
2) Открываем конфиг
sudo nano /etc/ffserver.conf
3) Вбиваем в конфиг
HttpPort 8090
RtspPort 5554
HttpBindAddress 0.0.0.0
MaxClients 1000
MaxBandwidth 10000
NoDaemon
<Feed feed1.ffm>
File /tmp/feed1.ffm
FileMaxSize 5M
</Feed>
<Stream test.mpeg4>
Feed feed1.ffm
Format rtp
VideoCodec mpeg4
VideoFrameRate 30
VideoBufferSize 80000
VideoBitRate 100
VideoQMin 1
VideoQMax 5
VideoSize 640x480
PreRoll 0
Noaudio
</Stream>
Естественно, порты можно поменять. Веб админку отключим, но порт все равно нужно оставить в конфиге.
4) Создаем 2 .sh скрипта для запуска и остановки службы (Я создал в папке /var/www/
sudo -i
nano /var/www/start_ffserver.sh
в нем пишем:
#!/bin/bash -
# Запускаем ffserver
/usr/bin/ffserver;
Сохраняем, закрываем.
Дальше еще 1 скрипт:
nano /var/www/start_ffmpeg.sh
и в нем:
#!/bin/bash -
ffmpeg -r 30 -s 640x480 -f video4linux2 -i /dev/video0 http://localhost:8090/feed1.ffm
Сохраняем, закрываем.
Дальше еще 1 скрипт:
nano /var/www/stop_ffserver.sh
в нем:
#!/bin/bash -
killall ffserver;
killall ffmpeg;
Сохраняем, закрываем.
Далее делаем их испольняемыми:
chmod ugo+x /var/www/start_ffserver.sh
chmod ugo+x /var/www/stop_ffserver.sh
chmod ugo+x /var/www/start_ffmpeg.sh
Готовченко! Осталось запилить скрыпты как службы и запускать при старте системы...
1 служба:
nano /etc/systemd/system/ffserver.service
в ней пишем:
[Unit]
Description=Start_FFServer
[Service]
ExecStart=/var/www/start_ffserver.sh
ExecStop=/var/www/stop_ffserver.sh
[Install]
WantedBy=multi-user.target
Сохраняем, закрываем.
2 служба:
nano /etc/systemd/system/ffmpeg.service
в ней пишем:
[Unit]
Description=Start_FFMpeg
Requires=ffserver.service
After=ffserver.service
[Service]
ExecStart=/var/www/start_ffmpeg.sh
[Install]
WantedBy=multi-user.target
Сохраняем, закрываем.
Выставляем права:
chmod 664 /etc/systemd/system/ffserver.service
chmod 664 /etc/systemd/system/ffmpeg.service
Релод служб:
systemctl daemon-reload
и включаем автозапуск:
systemctl enable ffserver
systemctl enable ffmpeg
Готово!
systemctl start ffserver
systemctl start ffmpeg
Идем в модуль и добавлем нашу камеру как у меня (Если ничего не меняли):
Нижний Новгород, Россия
На форуме: SmoKE_xDDD