1

У меня есть медиа-файл со следующим форматом в соответствии с ffprobe:

  Metadata:
    major_brand     : M4A 
    minor_version   : 0
    compatible_brands: M4A mp42isom
    creation_time   : 2013-03-21 07:05:30
  Duration: 00:00:00.42, start: 0.000000, bitrate: 118 kb/s
    Stream #0:0(und): Audio: aac (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 100 kb/s (default)
    Metadata:
      creation_time   : 2013-03-21 07:05:30
      handler_name    : Core Media Audio

Возможно ли иметь вывод ffmpeg именно в этот формат?

1 ответ1

2

Вы можете кодировать поток AAC с этими параметрами, используя такую команду:

ffmpeg -i in.wav -map 0:a -acodec libfdk_aac -ar 44100 -ac 2 -ab 100k out.m4a

Любой поддерживаемый формат ввода может быть использован вместо wav .

Если ваш ffmpeg не настроен с помощью libfdk_aac вы можете использовать -acodec libfaac или -acodec aac -strict experimental . См. Руководство по кодированию AAC ffmpeg для получения более подробной информации о различных кодерах AAC.

Контейнер будет иметь главную марку M4A но не будет иметь точных значений для minor_version и compatibility_brands. Если вам нужны эти значения, вы можете изменить их с помощью mp4box. Например, это установит основной бренд на M4A с младшей версией 0 и удалит iso2 (добавленный ffmpeg) из списка совместимых брендов:

mp4box -brand "M4A :0" -rb iso2 out.m4a

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .