Как автоматически добавить дату в выходной файл, сгенерированный в ffmpeg?

#ffmpeg

#ffmpeg

Вопрос:

Я использую терминал для запуска команд ffmpeg (Mac OS) для записи радиопередач, транслируемых онлайн. Поток находится в m3u8, я хочу вывести его в формате mp3. Пока все хорошо, я могу этого добиться. Однако я бы хотел, чтобы в выходном файле было указано, YYYYMMDD-fm93-segal.mp3 где YYYYMMMDD указана дата, когда была сделана запись.

По какой-то причине я не могу добиться этого с помощью -strftime 1 . При использовании моего кода выходной файл считывается %Y%mamp;d-fm93-segal.mp3 вместо замены строк реальной датой.

Вот строка, которую я использую:

 ffmpeg -i "https://cogecomedia.leanstream.co/cogecomedia/CJMFFM.stream/playlist.m3u8" -acodec mp3 -strftime 1 "%Y%m%d-fm93-segal.mp3" 
  

Кто-нибудь знает почему и мог бы помочь мне с этим?

Ответ №1:

-strftime это не универсальный параметр, а поддерживается только некоторыми мультиплексорами: hls, image, segment.

Один из методов заключается в использовании мультиплексирования сегментов и присвоении ему большого -segment_time значения при желании:

 ffmpeg -i "https://cogecomedia.leanstream.co/cogecomedia/CJMFFM.stream/playlist.m3u8" -f segment -segment_time 24:00:00 -acodec mp3 -strftime 1 "%Y%m%d-fm93-segal.mp3"
  

Комментарии:

1. поможет ли это мне установить продолжительность? Допустим, я хочу, чтобы эта запись продолжалась 60 минут, а затем завершилась?

2. @MaximeRichard Добавить -t 01:00:00 или -t 3600 .