Возможно вызвать внешнее действие между сегментами файла на FFMPEG - PullRequest
0 голосов
/ 10 января 2020

Когда я использую ffmpeg с -f segment форматом

ffmpeg -f decklink -channels 16 -i "DeckLink Quad (channel_number)" -c:v h264 -s 1280x720 -b:v 1.5M -c:a mp3 -b:a 48K -f segment -segment_time 10 -segment_atclocktime 1 -strftime 1 "/output/path/%Y%m%d%H%M%S.mp4"

, он создает последовательность файлов mp4 в кодировке h264. Затем мне нужно перекодировать эти файлы в HEV C по причинам хранения / экономии полосы пропускания.

На данный момент, если я хочу автоматизировать этот процесс, я не всегда знаю, когда сегменты готовы к транскодированию , что я делаю по:

ffmpeg -y -i path + filename -map 0 -c:v hevc -b:v 500K -s 1280x720 -c:a aac -b:a 48K path + "converted/" + filename

Мой вопрос: Есть ли способ вызывать что-либо внешнее каждый раз, когда ffmpeg открывает новый файл для записи?

Информация: я не могу напрямую кодировать HEV C из ввода, потому что у меня нет подходящего графического процессора, чтобы сделать это, следовательно, кодирование процессора медленнее, чем входной поток, что вызывает «переполнение буфера» на входе decklink

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...