Кодек AAC очень хорош. Даже его первая версия AAC LC гораздо лучше чем AC3. Плохие отзывы о AAC обусловлены тем что у AAC много энкодеров и они сильно отличаются по качеству. Стандартные энкодеры вшитые в стандартные версии OpenSource приложения типа ffmpeg, Handbrake и другие - среднего качества. В проприетарные взломанные или фримиум программы часто вставляют старые версии кодеков, которые выдавали поток не соответствующий стандарту. Ну и железные плееры тоже первое время не блестали качеством воспроизведения AAC. Все эти проблемы уже в прошлом, главное не использовать кривые энкодеры.
На данный момент самыми качественными(из бесплатных) энкодерами AAC являются энкодеры:
1) Apple(QAAC, QuickTime AAC, aac_at, Apple AAC,audiotoolbox Encoder)
2) Fraunhofer FDK AAC (FDK AAC, libfdk_aac) - не путать с "Fraunhofer FhG AAC"(платный энкодер от Fraunhofer) и не путать с FAAC(Free AAC, libfaac).
Оба энкодера просто так не достать и это и плохая и хорошая новость. Плохая новость очевидна. Хорошая же новость заключается в том что именно этот факт объясняет почему AAC иногда некачественный из-за легкодоступных плохих энкодеров и вытекающую из этого нелюбовь пользователей к кодеку. И эту проблему можно решить! Давайте я расскажу Вам как заполучить эти энкодеры.
I) Энкодер от Apple. Лучший энкодер AAC на средних и средне-высоких битрейтах.1) MacOS/OSXа) Каких-нибудь GUI приложений
Например сразу из проводника Finder-а:
https://www.techjunkie.com/convert-e...c-os-x-finder/там немного вариантов битрейта.
Или в Handbrake
https://handbrake.fr/docs/en/latest/...io-codecs.htmlФраза "On Mac, HandBrake uses Apple’s CoreAudio AAC encoder." говорит о том что используется внутренний энкодер Apple.
б) ffmpeg. Из brew лучше не устанавливать, потому что там плохо согласованы зависимости
Лучше скачать готовые сборки, например:
https://evermeet.cx/ffmpeg/Для базовых функций синтаксис такой же привычный. Только надо указать энкодер "aac_at". Например для постоянного битрейта:
ffmpeg -i input.wav -c:a aac_at -b:a 160k output.m4a
Энкодер Apple AAC имеет режимы. Например стерео в режиме AAC LC имеет шаги 128кбит/с, 144кбит/с и так далее. И если задать 140 кбит/с, то конвертация запуститься, но примет режим 144кбит/с (о чём ffmpeg оповестит дополнительно).
в) Коммандная утилита afconvert в базовой поставке MacOS
https://ss64.com/mac/afconvert.htmlhttps://wiki.hydrogenaud.io/index.php?title=Apple_AACЗамороченная. Но тонких режимов настройки побольше чем при использовании в QuickTime, ffmpeg. Есть режим TVBR - TrueVBR - True Variable BitRate- "Настоящий переменный битрейт" который подразумевает более широкий разброс битрейта чем при VBR и вроде бы качество повыше при одинаковом битрейте.
2) Windowsг) QAAC - обёртка над QuickTime для Windows. Скорее всего надо будет скачать QuickTime и выдрать пару файликов.
https://github.com/nu774/qaac/wikiд) Запуск MacOS в виртуальной машине. VirtualBox, VMware.
А оттуда уже всё что можно запустить всё что перечисленно в MacOS
3) Linuxе) Запуск QAAC в Wine
https://www.andrews-corner.org/qaac.htmlhttps://github.com/ishehadeh/install-qaac.shж) Запуск MacOS в виртуальной машине. VirtualBox, VMware.
А оттуда уже всё что можно запустить всё что перечисленно в MacOS
II) Fraunhofer FDK AAC (FDK AAC, libfdk_aac).В общем можно скомпилить самому. Это можно сделать по стандартному скрипту для ffmpeg с одним дополнительным параметром, либо использовать упрощенные скрипты/медиа.
1) Windowsа) Готовые сборки ffmpeg
https://github.com/marierose147/ffmp...k_aac/releasesб) Готовые сборки Handbrake(и FFmpeg заодно)
https://github.com/FT129/Handbrake-a...k-aac/releasesв) Собрать самому сборку ffmpeg с поддержкой FDK AAC
https://github.com/m-ab-s/media-autobuild_suitehttps://superuser.com/questions/1425...cygwin-windows2) Linuxг) Собрать самому сборку ffmpeg с поддержкой FDK AAC
https://github.com/markus-perl/ffmpeg-build-scriptд) Использовать/собрать другие различные утилиты(не ffmpeg)
https://wiki.hydrogenaud.io/index.ph...nhofer_FDK_AAC3) MacOS/OSXе) Собрать самому сборку ffmpeg с поддержкой FDK AAC
https://github.com/markus-perl/ffmpeg-build-scriptж) или использовать QAAC
![=)](https://nnmstatic.win/forum/images/smiles/k_smile.gif)
))
Разные варианты имеют разные возможности помимо AAC LC. Есть ещё HE-AAC, HE-AAC v2, xHE-AAC. Но для целей использования аудио в фильмах/сериалах для бОльшей совместимости лучше использовать только AAC LC. Если хочется использовать что-то особо новое, то лучше использовать Opus. Хотя для второстепенных дорожек типа оригинальной английской можно использовать и AAC HE v1, HE v2, xHE.
Полезные ссылки и команды
посмотреть список доступных энкодеров ffmpeg и отфильтровать только те которые имеют в названии "aac"
ffmpeg -hide_banner -encoders | grep aac
Также есть ещё платный Fraunhofer F
hG (не путайте FDK и FhG), который ещё сложней достать.
Если есть вопросы или есть ссылки на программы с вышеописанными кодеками - пишите в тему.