1006
правок
Kekaloav (обсуждение | вклад) |
Kekaloav (обсуждение | вклад) |
||
Строка 1: | Строка 1: | ||
=== IP камеры === | === IP камеры === | ||
Для записи с IP камер во время диагностики МЦКО удобно использовать например моноблок учителя. Чтобы ничего не забыть прописываем в crontab (файл /var/spool/cron/teacher) расписание диагностик на день, и комп сам их включит и выключит запись через заданное время, а файлы заботливо сложит в указанный Вами каталог, который можно и расшарить. | Для записи с IP камер во время диагностики МЦКО удобно использовать например моноблок учителя. Чтобы ничего не забыть прописываем в crontab (файл /var/spool/cron/teacher) расписание диагностик на день, и комп сам их включит и выключит запись через заданное время, а файлы заботливо сложит в указанный Вами каталог, который можно и расшарить. | ||
Строка 32: | Строка 33: | ||
Если процесс запускается на сервере через ssh, то следует знать об особенности запуска процессов от пользователя, который собирается после запуска разлогиниться. В Альтлинукс и МОС процессы, запущенные пользователем останавливаются при выходе этого пользователя. В случае, если Вы собираетесь запустить и разлогиниться, для корректного функционирования записи эту особенность поведения (она зависит от дистрибутива Linux) надо заблокировать. для этого нужно установить пакет systemd-settings-disable-kill-user-processes. | Если процесс запускается на сервере через ssh, то следует знать об особенности запуска процессов от пользователя, который собирается после запуска разлогиниться. В Альтлинукс и МОС процессы, запущенные пользователем останавливаются при выходе этого пользователя. В случае, если Вы собираетесь запустить и разлогиниться, для корректного функционирования записи эту особенность поведения (она зависит от дистрибутива Linux) надо заблокировать. для этого нужно установить пакет systemd-settings-disable-kill-user-processes. | ||
=== WEB камеры === | === WEB камеры === | ||
Скрипт ниже можно запускать на доске, чтобы превратить ее c подключенной web-камерой в rtsp камеру наблюдения. Скрипт пока в разработке<syntaxhighlight lang="bash"> | |||
#!/bin/bash | |||
#крипт запускается НЕ от root | |||
#ПОИСК ИСТОЧНИКА ЗВУК ПО НАЗВАНИЮ webcam | |||
PULSE=`pactl list short sources | grep --ignore-case webcam | awk '{ print $1 }'` | |||
#НЕ найдя берем источник по умолчанию | |||
if [ -z "${PULSE}" ]; then | |||
PULSE=default | |||
fi | |||
#ПОМСК ИСТОЧНИКА ВИДЕО | |||
V4L=`v4l2-ctl --list-devices | grep -A 1 --ignore-case webcam | grep /dev/ | awk '{ print $1 }'` | |||
#НЕ НАЙДЯ БЕРЕМ ПЕРВЫЙ | |||
if [ -z "${V4L}" ]; then | |||
V4L=/dev/video0 | |||
fi | |||
#запуск сервера rtdp на порту 8554 | |||
nohup ffmpeg -thread_queue_size 1024 -f v4l2 -input_format mjpeg -i ${V4L} -f pulse -ac 1 -thread_queue_size 1024 -i ${PULSE} -acodec aac -vcodec libx264 -preset ultrafast -crf 22 -s hd720 -vf format=yuv420p -profile:v main -threads 0 -f mpegts - | vlc -vv -I dummy - --sout='#rtp{sdp=rtsp://:8554/} --sout-all --sout-keep' >/dev/null 2>/dev/null & | |||
# | |||
#vlc -I dummy - --sout='#std{access=http,mux=ts,dst=:8080}' | |||
</syntaxhighlight> | |||
[[Категория:МОС]] | [[Категория:МОС]] | ||
[[Категория:Скрипты]] | [[Категория:Скрипты]] |