433
правки
Kekaloav (обсуждение | вклад) |
Admin (обсуждение | вклад) |
||
Строка 1: | Строка 1: | ||
Строка 6: | Строка 7: | ||
Также можно писать видео с аналогового видеорегистратора DAHUA (RVI), а также другие с программой стандарта ONVIF по сети. Регистратор при этом используется как конвертор сигнала, наличие в нем HDD по сути необязательно. | Также можно писать видео с аналогового видеорегистратора DAHUA (RVI), а также другие с программой стандарта ONVIF по сети. Регистратор при этом используется как конвертор сигнала, наличие в нем HDD по сути необязательно. | ||
URL в случае DAHUA/RVI (возможно не всех моделей - сверяйте с данными | URL в случае DAHUA/RVI (возможно не всех моделей - сверяйте с данными производителя) имеет вид rtsp://admin:<pass>@<ip>:554/cam/realmonitor?channel=4&subtype=0, subtype - поток высокого (0) или низкого (1) разрешения | ||
URL в случае IP регистратора HIKVISION вид rtsp://<user>:<pass>@<ip>:554/ISAPI/Streaming/Channels/102 ( | URL в случае IP регистратора HIKVISION вид rtsp://<user>:<pass>@<ip>:554/ISAPI/Streaming/Channels/102 (Здесь 1- номер канала 2- низкое разрешение) высокое разрешение (1 вместо 2) записывается в H265 | ||
Благодаря | Благодаря отсутствию перекодировки, загрузка процессора минимальна, однако формат файла определённый. Для настроенных на ЕЦХД камер в кабинетах информатики это кодек H264. Файл проигрывается проигрывателем VLC | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
Строка 32: | Строка 33: | ||
ffmpeg -i ${CAMURL} -vcodec copy -acodec copy -map 0 -t ${LEN} -f segment -segment_time ${SEGMENT} -segment_format mp4 ${FILE} >/dev/null 2>/dev/null & | ffmpeg -i ${CAMURL} -vcodec copy -acodec copy -map 0 -t ${LEN} -f segment -segment_time ${SEGMENT} -segment_format mp4 ${FILE} >/dev/null 2>/dev/null & | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Пояснение: знак & в конце означает запустить программу и выйти в shell - то есть по сути сделать программу резидентной или демоном. НО! это работает долго только если программа ничего не выводит (иначе при закрытии shell, когда некуда будет выводить, команда закроется). Чтобы этого не происходило, вывод | Пояснение: знак & в конце означает запустить программу и выйти в shell - то есть по сути сделать программу резидентной или демоном. НО! это работает долго только если программа ничего не выводит (иначе при закрытии shell, когда некуда будет выводить, команда закроется). Чтобы этого не происходило, вывод перенаправлен в /dev/null - то есть в пустоту. Обратите внимание, Linux имеет два выводных потока - обычный, так называемый stdout и ошибок stderr. И перенаправлять надо оба, что и сделано. Если есть желание почитать что выводит программа, можно перенаправить вывод в файл (только чтобы он был в каталоге, доступном для записи) | ||
Если процесс запускается на сервере через ssh, то следует знать об особенности запуска процессов от пользователя, который собирается после запуска разлогиниться. В Альтлинукс и МОС процессы, запущенные пользователем останавливаются при выходе этого пользователя. В случае, если Вы собираетесь запустить и разлогиниться, для корректного функционирования записи эту особенность поведения (она зависит от дистрибутива Linux) надо заблокировать. для этого нужно установить пакет systemd-settings-disable-kill-user-processes. | |||
[[Категория:МОС]] | [[Категория:МОС]] | ||
[[Категория:Скрипты]] | [[Категория:Скрипты]] |