Я хочу преобразовать звуковую дорожку файла MKV в HE-AAC (AAC + / AACplus). Аудио дорожка AC3. Но, кажется, нет графического интерфейса для кодирования HE-AAC? Я только узнал, что есть инструмент командной строки (CLI) из Nero , но я не знаю, может ли это сделать HE-AAC.
Любая помощь? Любая рекомендация для графического интерфейса, который может конвертировать AC3 в HE-AAC? Также должен уметь обрабатывать объемный звук (5.1 / 6 каналов).
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
, если хотите.
Настройка качества зависит от используемого профиля. С LC-AAC вы можете подняться до -q 1.0
. HE-ACC ограничен -q 0.5
, я думаю, а HE-AAC v2 еще ниже. Это связано с методами, лежащими в основе этих профилей, которые сосредоточены вокруг низких битрейтов. Использование -q 0.5
приведет к получению файла размером больше, чем обычное 6-канальное аудио AC3 с DVD, а использование -q 0.3
уменьшит размер файла вдвое.
Ситуация (все еще?) Действительно грязная, поэтому не существует простого в использовании графического интерфейса, подобного Handbrake . Наиболее эффективным кодеком является HE-AAC v2, но он не очень хорошо поддерживается в Ubuntu из-за проблем с лицензированием / патентами в некоторых странах. Ворбис тоже хорош, но менее эффективен. Многоканальное сопоставление должно быть исправлено в последней версии LTS (12.04, не было в 10.04). Оставив MP3, AC3 занимает третье место. FLAC является четвертым по эффективности и наиболее поддерживаемым форматом без потерь. DTS - полная неудача, и ее также следует исключить, например, MP3. Преобразуйте во FLAC, если можете.
Так что, если у вас есть кодированный звук AC3, вы, вероятно, оставите это на том же уровне, если формат устройства и контейнера его поддерживает. Может быть полезна таблица поддерживаемых форматов мультимедиа на Android .
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.