1006
правок
Kekaloav (обсуждение | вклад) |
Kekaloav (обсуждение | вклад) |
||
Строка 19: | Строка 19: | ||
#url камеры | #url камеры | ||
CAMURL="rtsp://subaccount:Subxxxxx@10.xx.xx.xx" | CAMURL="rtsp://subaccount:Subxxxxx@10.xx.xx.xx" | ||
#укажите номер кабинета | |||
CAB="302" | |||
#формат даты можно установить по вкусу прочитав man date | |||
DATE=`date +%F-%H-%M` | |||
#файл куда писать. например в самба шару | #файл куда писать. например в самба шару | ||
FILE="/home/share/ | FILE="/home/share/${DATE}-${CAB}-%02d.mp4" | ||
#длительность записи в секундах | #длительность записи в секундах | ||
LEN=4000 | LEN=4000 | ||
#длительность одного файла (программа нарезает запись как Вам надо) | |||
SEGMENT=3600 | |||
ffmpeg -i ${CAMURL} -vcodec copy -acodec copy -map 0 -t ${LEN} -f segment -segment_time | 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, когда некуда будет выводить, команда закроется). Чтобы этого не происходило, вывод перенаправлнен в /dev/null - то есть в пустоту. Обратите внимание, Linux имеет два выводных потока - обычный, так называемый stdout и ошибок stderr. И перенаправлять надо оба, что и сделано. Если есть желание почитать что выводит программа, можно перенаправить вывод в файл (только чтобы он был в каталоге, доступном для записи) | Пояснение: знак & в конце означает запустить программу и выйти в shell - то есть по сути сделать программу резидентной или демоном. НО! это работает долго только если программа ничего не выводит (иначе при закрытии shell, когда некуда будет выводить, команда закроется). Чтобы этого не происходило, вывод перенаправлнен в /dev/null - то есть в пустоту. Обратите внимание, Linux имеет два выводных потока - обычный, так называемый stdout и ошибок stderr. И перенаправлять надо оба, что и сделано. Если есть желание почитать что выводит программа, можно перенаправить вывод в файл (только чтобы он был в каталоге, доступном для записи) |