Страница 1 из 1

Убить процесс записи потокового видео ffmpeg по завершению трансляции

Добавлено: 17 апр 2024, 22:13
ya
Ставим проверку нагрузки процессора с интервалом времени один раз в минуту в расписание crontab -e

Код: Выделить всё

*/1 * * * * ~/ffanakill.sh

Трансляция потокового видео завершится в тот момент, когда упадёт нагрузка на процессор ниже 20%
ffanakill.sh

Код: Выделить всё

#!/bin/bash

#cpu_mpstat=$(mpstat 1 1 | grep -A 5 "%idle" | tail -n 1 | awk -F " " '{print 100 - $12}'a)

ffpi=$(ps -A | grep "ffmpeg" | awk '{print $1}')

if [ ! -z $ffpi ]; then
    cpu_mpstat=$(mpstat 1 1 | grep -A 5 "%idle" | tail -n 1 | awk -F " " '{print 100 - $12}'a)
    if [ $cpu_mpstat -lt 20 ]; then
        kill -2 $ffpi
    fi
#elif [ -z $ffpi ]; then
#    if [ $cpu_mpstat -gt 7 ]; then
#       /bin/bash ~/rec.sh
#    fi
fi


Возобновить процесс записи потокового видео
rec.sh

Код: Выделить всё

#!/bin/bash

ffpi=$(ps -A | grep "ffmpeg" | awk '{print $1}')
if [ ! -z $ffpi ]; then
    kill -2 $ffpi
    sleep 1
fi

screen -d -m -S jabber ffmpeg -hide_banner -framerate 29.97 -f x11grab \
-indexmem 64M -rtbufsize 64M -probesize 64M -analyzeduration 64M -thread_queue_size 2048 \
-avoid_negative_ts "make_zero"  -vsync 1 -r 29.97 -i :0.0 -c:v h264 -f pulse -ac 2 -i default \
-c:a aac -b:a 320K \
-t 2:0:0 \
"$HOME/chaturbate/chaturbate-$(date +%Y.%m.%d_%H-%M-%S)-23.mkv"