Как преобразовать AC3 6ch аудио в HE-AAC? GUI решение?

Я хочу преобразовать звуковую дорожку файла MKV в HE-AAC (AAC+/AACplus). Аудио дорожка AC3. Но, кажется, нет графического интерфейса для кодирования HE-AAC? Я только узнал, что есть инструмент командной строки (CLI) от Nero, но я не знаю, может ли это сделать HE-AAC.

Любая помощь? Любая рекомендация для графического интерфейса, который может конвертировать AC3 в HE-AAC? Также должен уметь обрабатывать объемный звук (5.1/6 каналов).

2 ответа

Использование Nero AAC Encoder

neroAacEnc поддерживает HE-AAC и HE-AAC v2 через -he а также -hev2 параметры.

Этот кодер (все еще?) Считается лучшим по качеству кодером. Nero предлагает его бесплатно, но не поддерживает его. Одна проблема, с которой вы столкнетесь с большими файлами, такими как 5.1 WAV, - это ограничение размера файла. Дело не в том, что этот кодер является программным обеспечением, а в том, как обрабатывать большие числа в программе. Чтобы обойти это, вам нужно передать вход с другой программой в кодировщик и использовать -ignorelength параметр. Если вы ввели формат уже WAV, должно работать следующее:

cat $myfile | neroAacEnc -q 0.5 -he -ignorelength -if - -of $myencodedfile

Вы также можете использовать avconv (ранее известный как ffmpeg, теперь разветвленный и с переименованным инструментом CLI), чтобы сделать преобразование в WAV.

avconv -i $myfile -f wav - | neroAacEnc -q 0.3 -he -ignorelength -if - -of $myencodedfile

Обратите внимание, что результирующий файл представляет собой MP4 с потоком AAC в контейнере MP4, а не необработанный поток AAC. Вы можете извлечь сырой поток с MP4Box от gpac пакет, если вы хотите.

Настройка качества Nero AAC

Настройка качества зависит от используемого вами профиля. С LC-AAC вы можете подняться на -q 1.0, HE-ACC ограничен -q 0.5Я думаю, и HE-AAC v2 еще ниже. Это связано с методами, лежащими в основе этих профилей, которые сосредоточены вокруг низких битрейтов. С помощью -q 0.5 приведет к тому, что файл больше, чем обычный AC3 6ch аудио с DVD, используя -q 0.3 уменьшит размер файла пополам.

Советы по выбору кодека и качеству многоканального звука

Ситуация (все еще?) Действительно грязная, поэтому не существует такого простого в использовании графического интерфейса, как Handbrake. Наиболее эффективным кодеком является HE-AAC v2, но он не очень хорошо поддерживается в Ubuntu из-за проблем с лицензированием / патентами в некоторых странах. Ворбис тоже хорош, но менее эффективен. Многоканальное сопоставление должно быть исправлено в последней версии LTS (12.04, не было в 10.04). Оставив MP3, AC3 занимает третье место. FLAC является четвертым по эффективности и наиболее поддерживаемым форматом без потерь. DTS - полная неудача, и ее также следует исключить, например, MP3. Конвертируйте в FLAC, если можете.

Так что, если у вас есть звук в кодировке AC3, вы, вероятно, оставите это, если формат устройства и контейнера поддерживает это. Может быть полезна таблица поддерживаемых форматов мультимедиа на Android.

Приложение: файл справки neroAacEnc

Usage:
neroAacEnc [options] -if <input-file> -of <output-file>
Where:
<input-file>  : Path to source file to encode.
                The file must be in Microsoft WAV format and contain PCM data.
                Specify - to encode from stdin.
                Note that multiple input files can be specified, they will be
                encoded together into a single output file with chapter marks
                indicating source file divisions.
<output-file> : Path to output file to encode to, in MP4 format.

  ==== Available options: ====  

Quality/bitrate control:
-q <number>   : Enables "target quality" mode.
                <number> is a floating-point number in 0...1 range.
-br <number>  : Specifies "target bitrate" mode.
                <number> is target bitrate in bits per second.
-cbr <number> : Specifies "target bitrate (streaming)" mode.
                <number> is target bitrate in bits per second.
                When neither of above quality/bitrate options is used,
                the encoder defaults to equivalent of -q 0.5

Multipass encoding:
-2pass        : Enables two-pass encoding mode.
                Note that two-pass more requires a physical file as input,
                rather than stdin.
-2passperiod  : Overrides two-pass encoding bitrate averaging period, 
  <number>    : in milliseconds.
              : Specify zero to use least restrictive value possible (default).

Advanced features / troubleshooting:
-lc           : Forces use of LC AAC profile (HE features disabled).
-he           : Forces use of HE AAC profile (HEv2 features disabled).
-hev2         : Forces use of HEv2 AAC profile
                Note that the above switches (-lc, -he, -hev2) should not be
                used; optimal AAC profile is automatically determined from
                quality/bitrate settings when no override is specified.
-ignorelength : Ignores length signaled by WAV headers of input file.
                Useful for certain frontends using stdin.

Боюсь, командная строка всегда будет лучшим вариантом для этой работы. Если ваша копия FFmpeg скомпилирована с поддержкой fdkaac, вы можете создавать высококачественные высокоэффективные файлы AAC из файлов mkv/ac3.

Протестируйте свою копию FFmpeg следующим образом:

      andrew@ilium~$ ffmpeg -encoders -hide_banner | grep libfdk_aac
 A..... libfdk_aac           Fraunhofer FDK AAC (codec aac)
andrew@ilium~$

В приведенном выше примере показано, что у меня есть кодировщик fdkaac (A=Audio).

Ниже приведены два примера необходимого синтаксиса, обратите внимание, что я просто скопировал предполагаемый видеопоток из исходного файла:

1. AAC-HE версия 1:

      ffmpeg -i input.mkv \
       -c:v copy \
       -c:a libfdk_aac -profile:a aac_he \
       -b:a 64k -movflags +faststart \
       output.mkv

2. AAC-HE версия 2:

      ffmpeg -i input.mkv \
       -c:v copy \
       -c:a libfdk_aac -profile:a aac_he_v2 \
       -b:a 32k -movflags +faststart \
       output.mkv

Насколько мне известно, нет приложения с графическим интерфейсом, которое могло бы позволить вам такой тонкий контроль над вашей командной строкой и позволить вам создавать выходные файлы именно так, как вы хотите.

Другие вопросы по тегам