Прекратить запись через определенный промежуток времени

7

У меня есть устройство, которое записывает видео с помощью веб-камеры с ffmpeg . Он отлично работает, когда запись началась, я получаю сигнал USR1. И после остановки записи мы получаем сигнал USR2.

Но я хочу остановить запись после 1 часа записи.

Я не знаю, но я думаю, что я должен передать сигнал USR2 на устройство через 1 час.

Итак, как я могу это сделать ... !!!

Спасибо заранее.

    
задан Prakash V Holkar 20.03.2014 в 15:47
источник

2 ответа

14

Используйте параметр -t . От man ffmpeg :

  

-t duration (вход / выход)

     

При использовании в качестве параметра ввода (до -i ) ограничьте продолжительность данных, считанных из входного файла.

     

При использовании в качестве опции вывода (перед именем выходного файла) остановите   запись результата после его продолжительности достигает duration .

     

продолжительность должна быть спецификацией продолжительности времени, см. продолжительность времени   в руководстве ffmpeg-utils (1).

     

-to и -t являются взаимоисключающими, а -t имеет приоритет.

Пример:

ffmpeg -f v4l2 -i /dev/video0 -t 01:00:00 output
    
ответ дан LordNeckbeard 20.03.2014 в 17:35
источник
4

Если вы используете ffmpeg или avconv из командной строки, вы можете использовать команду timeout :

timeout 3600 avconv -f video4linux2 -r 25 -i /dev/video0  -vcodec mpeg4 -y out.mp4
    
ответ дан Sylvain Pineau 20.03.2014 в 16:01
источник

Ознакомьтесь с другими вопросами по меткам