Запись экрана при загрузке с использованием ffmpeg в 5-минутных сегментах (12.04)

Так что я немного поиграл с этим, но в этот момент мне удалось пробить стену, чтобы обдумать следующий шаг.

У меня есть этот скрипт, который работает из туннеля ssh для отображения записи: 0.0

#!/bin/dash
# Sleep to try not to break everything YAY
sleep 30
# Export the main display
export DISPLAY=0.0
#Start an infinite loop
while true; do
        # Set variable now to todays date and the time right now in Hours-Minutes-Seconds_Month-Day-Year
        now=$(date +'%H-%M-%S_%m-%d-%Y')
        # Start recording using ffmpeg at 5fps with a time limit of 300 seconds(Five Minutes) to file $now
        ffmpeg -f x11grab -s 1024x768 -r 5 -t 300 -i :0.0 /home/swuser/Videos/$now.mp4
done

Я пробовал его с заданием upstart, но он зависнет при запуске, если я не переведу его в состояние сна , в котором он затем не записывает (я предполагаю, что он не может найти display: 0.0, даже если сон находится перед экспортом), и скрипт продолжает работать, ничего не делая, кроме завершения ffmpeg снова и снова.

Для справки я бегу ffmpeg 0.10.12-7:0.10.12-1~precise1

любая помощь очень ценится!

0
задан 22 June 2014 в 08:05

1 ответ

Я закончил тем, что использовал .profile файл и менял мой код к ним:

В .profile:

if [ "$RECORDISRUNNING" != "1" ]; then
    export RECORDISRUNNING=1
    /home/swuser/sleep.sh &
fi

В sleep.sh:

#!/bin/sh
# sleep for 30 seconds then call record.sh
sleep 30
/home/swuser/scripts/record.sh &

В record.sh

#!/bin/sh
# Check to see if there is a display, and if not, exit with error code of 1
if [ -z "$DISPLAY" ]; then
exit 1
fi
# Export the main display
export DISPLAY=0.0
# Set variable now to todays date and the time right now in Hours-Minutes-Seconds_Month-Day-Year
now=$(date +'%H-%M-%S_%m-%d-%Y')
# Start recording using ffmpeg at 5fps with a time limit of 300 seconds(Five Minutes) to file $now
ffmpeg -f x11grab -s 1024x768 -r 5 -t 300 -i :0.0 /home/swuser/Videos/$now.mp4
# Call the script again (to continually record in 300 second increments)
/home/swuser/scripts/record.sh &

И что об оборачивает его.

1
ответ дан 22 June 2014 в 08:05

Другие вопросы по тегам:

Похожие вопросы: