Как заставить VLC не создавать файл, если нет трансляции?

Здравствуйте! Помогите пожалуйста с небольшой проблемой, записываю с помощью vlc трансляции таким скриптом:
#!/bin/bash
while true
do
file_time=`date +%H.%M.%S`
cvlc http://localhost:8080 --network-caching=10 --sout file/ts:./$file_time.ts --run-time 300 --play-and-exit
done
exit 0

Делю весь поток по 5 минут и в случае обрыва запись начинается снова. Но если трансляция отсутствует, то начинает создаваться куча файлов нулевого размера, каждую секунду. Как это победить?
  • Вопрос задан
  • 180 просмотров
Пригласить эксперта
Ответы на вопрос 1
@sm1tt Автор вопроса
Вобщем, сделал так, файлы нулевого размера просто удаляются, а если скрипт такие файлы обнаруживает, то он ставит рандомную задержку по времени, после чего снова перезапускает цикл в попытке записать трансляцию
#!/bin/bash
while true
do
file_time=`date +%H.%M.%S`
cvlc http://localhost:8080 --network-caching=10 --sout file/ts:./$file_time.ts --run-time 300 --play-and-exit
null=`stat -c %s *.ts | grep -w 0 | head -1`
rand=`shuf -i 5-15 -n 1`
if [ $null -eq 0 ]
then
sleep $rand
fi
find . -size 0 -delete
done
exit 0
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы