Вернуться   Форум > Университет > Видеораздел > Школа релизеров
Регистрация Справка Пользователи Календарь Поиск Сообщения за день Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме
Старый 25.02.2024, 15:37   #1
tlya85
Главный Кинооператор
Медаль пользователю. ЗОЛОТО Новичок
Регистрация: 06.02.2023
Сообщения: 54
Репутация: 7
Сообщение Где взять хорошие энкодеры для AAC

Кодек 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.html
https://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.html
https://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_suite

https://superuser.com/questions/1425...cygwin-windows

2) Linux
г) Собрать самому сборку ffmpeg с поддержкой FDK AAC
https://github.com/markus-perl/ffmpeg-build-script

д) Использовать/собрать другие различные утилиты(не ffmpeg)
https://wiki.hydrogenaud.io/index.ph...nhofer_FDK_AAC

3) MacOS/OSX
е) Собрать самому сборку ffmpeg с поддержкой FDK AAC
https://github.com/markus-perl/ffmpeg-build-script

ж) или использовать QAAC =)))

Разные варианты имеют разные возможности помимо 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 FhG (не путайте FDK и FhG), который ещё сложней достать.


Если есть вопросы или есть ссылки на программы с вышеописанными кодеками - пишите в тему.
  Ответить с цитированием
Старый 05.05.2024, 17:59   #2
Arachnid79
Заблокирован
Медаль пользователю. ЗОЛОТО Новичок
Регистрация: 11.10.2013
Сообщения: 76
Репутация: 3
А почему не упомянуты последние из этого семейства USAC (xHE-AAC)? И про сложность "добычи" платных энкодеров на пиратском ресурсе смешно писать.
  Ответить с цитированием
Старый 06.05.2024, 07:14   #3
1234567890
Главный Кинооператор
Медаль пользователю. ЗОЛОТОМедаль автору. ЗОЛОТО Великий Гуру
Аватар для 1234567890
Регистрация: 15.03.2008
Адрес: Всеми́рная паути́на
Сообщения: 4,555
Репутация: 500
tlya85 сказал(a):
Если хочется использовать что-то особо новое, то лучше использовать Opus.
Cкрытый текст -
 
Arachnid79 сказал(a):
А почему не упомянуты последние из этого семейства USAC (xHE-AAC)?
Cкрытый текст -
 
Exhale выходил победителем в предварительном персональном ABC-HR тесте на 64-кбит/с, обойдя даже Opus.
  Ответить с цитированием
Старый 06.05.2024, 08:34   #4
EvraGo
Главный Кинооператор
Регистрация: 21.02.2023
Сообщения: 4
Репутация: 1
Интересная статья. Сам пользуюсь fdkaac для Windows, но не вшитый в ffmpeg, последний медленно кодирует на моем компьютере, вне зависимости от сборки, перепробовал штуки три. Пришёл к отдельной библиотеке с командной строкой от nu774. Время на кодинг сократилось с 2 мин до 20 сек для дорожек продолжительностью примерно 20 мин. Без проблем подружил её с Audacity.

https://github.com/nu774/fdkaac - Интерфейс кодировщика командной строки для libfdk-aac

https://www.rarewares.org/files/aac/...-1.0.5-x86.zip - библиотека fdk-aac 2.0.2 с консолью от nu774 скомпилированная под Windows х32

https://www.rarewares.org/files/aac/...-1.0.5-x64.zip - библиотека fdk-aac 2.0.2 с консолью от nu774 скомпилированная под Windows х64
  Ответить с цитированием
Старый 04.06.2024, 20:46   #5
tlya85
Главный Кинооператор
Медаль пользователю. ЗОЛОТО Новичок
Регистрация: 06.02.2023
Сообщения: 54
Репутация: 7
Arachnid79 сказал(a):
А почему не упомянуты последние из этого семейства USAC (xHE-AAC)? И про сложность "добычи" платных энкодеров на пиратском ресурсе смешно писать.


xHE упомянул. Там сложности и с тем чтобы найти/установить и с тем чтобы воспроизвести. Экономия уже практическ на спичках. Проще взять OPUS.
Но если Вы выложите инструкцию как это сделать - кому-то может быть пригодится.
  Ответить с цитированием
Старый 04.06.2024, 21:00   #6
tlya85
Главный Кинооператор
Медаль пользователю. ЗОЛОТО Новичок
Регистрация: 06.02.2023
Сообщения: 54
Репутация: 7
Да, если массово кодировать и есть желание разбираться с доками на консольные утилиты помимо ffmpeg - можно попробовать и другие утилиты. Mac'овский(Apple-вский) кодировщик кстати тоже не медленный. Даже через ffmpeg.
За ссылочки спасибо - может кому пригодятся. Есть сборки каких нибудь GUI программ для этого кодека? Я знаю тех кому пригодилось бы. Поискал - нету. Хоть самому писать на каком-нибудь Tkinter.



EvraGo сказал(a):
Интересная статья. Сам пользуюсь fdkaac для Windows, но не вшитый в ffmpeg, последний медленно кодирует на моем компьютере, вне зависимости от сборки, перепробовал штуки три. Пришёл к отдельной библиотеке с командной строкой от nu774. Время на кодинг сократилось с 2 мин до 20 сек для дорожек продолжительностью примерно 20 мин. Без проблем подружил её с Audacity.

https://github.com/nu774/fdkaac - Интерфейс кодировщика командной строки для libfdk-aac

https://www.rarewares.org/files/aac/...-1.0.5-x86.zip - библиотека fdk-aac 2.0.2 с консолью от nu774 скомпилированная под Windows х32

https://www.rarewares.org/files/aac/...-1.0.5-x64.zip - библиотека fdk-aac 2.0.2 с консолью от nu774 скомпилированная под Windows х64
  Ответить с цитированием
Старый 06.06.2024, 18:06   #7
EvraGo
Главный Кинооператор
Регистрация: 21.02.2023
Сообщения: 4
Репутация: 1
tlya85 сказал(a):
Да, если массово кодировать и есть желание разбираться с доками на консольные утилиты помимо ffmpeg - можно попробовать и другие утилиты. Mac'овский(Apple-вский) кодировщик кстати тоже не медленный. Даже через ffmpeg.
За ссылочки спасибо - может кому пригодятся. Есть сборки каких нибудь GUI программ для этого кодека? Я знаю тех кому пригодилось бы. Поискал - нету. Хоть самому писать на каком-нибудь Tkinter.
На прямую с консолью я не работаю. Уже упомянул ранее про Audacity, он хорош тем, что можно подключать к нему кодировщик с консолью. Все манипуляции провожу не выходя из программы, что очень удобно. И да, в XviD4PSP 8 кодек fdkaac присутствует.

Последний раз редактировалось EvraGo, 07.06.2024 в 18:11.
  Ответить с цитированием
Старый 08.06.2024, 14:34   #8
tlya85
Главный Кинооператор
Медаль пользователю. ЗОЛОТО Новичок
Регистрация: 06.02.2023
Сообщения: 54
Репутация: 7
Спасибо за примеры! Было бы круто если бы скинулы ссылки на инструкции и если они на английском - то тезисно описали бы здесь на русском что и куда надо "вбить".
EvraGo сказал(a):
На прямую с консолью я не работаю. Уже упомянул ранее про Audacity, он хорош тем, что можно подключать к нему кодировщик с консолью. Все манипуляции провожу не выходя из программы, что очень удобно. И да, в XviD4PSP 8 кодек fdkaac присутствует.
  Ответить с цитированием
Старый 09.06.2024, 20:14   #9
EvraGo
Главный Кинооператор
Регистрация: 21.02.2023
Сообщения: 4
Репутация: 1
tlya85 сказал(a):
Спасибо за примеры! Было бы круто если бы скинулы ссылки на инструкции и если они на английском - то тезисно описали бы здесь на русском что и куда надо "вбить".
Напишу небольшую инструкцию под Windows. Ссылки на инструкции все на английском языке, пользуемся переводчиком страницы.
1. Нам нужен сам Audacity - бесплатный звуковой редактор. Официальная станица Audacity с инструкциями . Поможет разобраться с тонкостями программы.
2. Дальше надо подключить к Audacity ffmpeg, вот инструкция, а именно пункт Manual installation (Ручная установка). Разработчики с радостью добавили бы её в программу, но лицензия не позволяет. Зато оставили возможность отдельно её подгружать. Без ffmpeg мы не сможем работать с некоторыми аудио форматами, в том числе и с популярным AC-3 и AAC.
Я использую сборку от gyan.dev ffmpeg. Скачивайте архив, который заканчивается на full-shared.7z. Если все правильно сделали в настройках "Библиотеки" будет отображаться версия ffmpeg и в "Экспорт аудиоданных" появятся новые пункты.



3. (Дополнительный пункт). Тут будет разъяснение, что же такое "внешняя программа" при выборе формата в экспорте аудиоданных (см. предыдущий скриншот). Разбор будет на примере формата AAC. В ffmpeg не самый лучший энкодер AAC, поэтому мы можем подключить еще одну библиотеку, например qaac. Скачиваем библиотеку qaac с консолью от nu774 и энкодер Apple's Core Audio AAC для qaac (архив QTfiles64.7z). Распаковываем в одну папку (см. скриншот) и прописываем в переменных среды путь к библиотеке: Параметры-Система-О системе-Дополнительные параметры системы-Вкладка "Дополнительно"-Переменные среды...-Создать. Указываем путь к библиотеке (см. скриншот)



С этого момента можем пользоваться qaac. Выбираем в Audacity дорожку, жмем экспорт аудиоданных. Во вкладке "формат" выбираем "внешняя программа". В поле "Команда" прописываем qaac64 -c 192 - -o "%f".m4a, где -c 192 этот битрейд звука. С полным списком команд можно ознакомится здесь.

Последний раз редактировалось EvraGo, 23.11.2024 в 12:50.
  Ответить с цитированием
Старый 29.06.2024, 13:24   #10
tlya85
Главный Кинооператор
Медаль пользователю. ЗОЛОТО Новичок
Регистрация: 06.02.2023
Сообщения: 54
Репутация: 7
Кстати, AAC можно резать и склеивать без конвертирования. главное чтобы параметры совпадали (стерео, 5.1, 5.1, side и сам кодес AAC LC). Делать надо через контейнер mka - больше параметров сохраняется(в первую очередь длительность, она теряется в контейнере .aac.)
Как я отрезал рекламу

Сначала нарезаем куски опенингов и ендингов без рекламы из исходной версии, например из английской. Если исходник не AAC - можно конвертнуть в AAC, но в контейнер mka
Делаем опенинг и эндинг:
ffmpeg -i video_audio_source.mkv -to 00:00:31.573 -vn -sn -map 0:2 -c:a aac -ac 2 -b:a 128k audio_out_put_opening.mka
ffmpeg -i video_audio_source.mkv -ss 00:59:09.790 -vn -sn -map 0:2 -c:a aac -ac 2 -b:a 128k audio_out_put_ending.mka


потом отрезаем серединку аудио с типом copy (без переконвертирования, потому что этот кусок и так замучен обработкой и переконвертированием)

ffmpeg -i dubbed_video_audio.mp4 -vn -sn -c:a copy -ss 00:00:31.573 -to 00:59:09:09.790 dubbed_audio_cutted.mka


потом пишем в файл my_list.txt что склеивать
# this is a comment
file 'audio_out_put_opening.mka'
file 'dubbed_audio_cutted'
file 'audio_out_put_ending.mka'


потом говорим склеить
ffmpeg -f concat -safe 0 -i mylist.txt -c copy dubbed_with_clean_open-ending.mka


В итоге основной кусок не подвергся очередной процедуре обработки



Подробнее тут

https://trac.ffmpeg.org/wiki/Concatenate
  Ответить с цитированием
Старый 25.11.2024, 02:14   #11
tlya85
Главный Кинооператор
Медаль пользователю. ЗОЛОТО Новичок
Регистрация: 06.02.2023
Сообщения: 54
Репутация: 7
AudioToolboxWrapper

Есть ещё AudioToolboxWrapper . Эта штука которая позволяет использовать Apple aac в ffmpeg на Windows. Плюс в том что по сравнению с QAAC сохраняет метаданные и delay. Не надо отдельно запоминать и прописывать после склейки.



https://github.com/dantmnf/AudioToolboxWrapper


Есть форк чуть поновей(уточнённый путь к Itunes):
https://github.com/cynagenautes/AudioToolboxWrapper


В общем тем кто понимает что да как - могут настроить себе сами. Но это знания надо иметь.
  Ответить с цитированием
Старый 23.02.2025, 02:03   #12
tlya85
Главный Кинооператор
Медаль пользователю. ЗОЛОТО Новичок
Регистрация: 06.02.2023
Сообщения: 54
Репутация: 7
Смех foobar2000 как интерфейс с кнопками для AAC Apple QAAC

Как кодировать в AAC Apple и HE-AAC Apple с помощью foobar2000(интерфейс с кнопками) в Windows

Для этого надо каким-то образом осуществить схему взаимодействия foobar2000 + qaac(прослойка для управления Apple AAC Encoder) + Apple AAC Encoder(Apple Application Support в составе iTunes). Схемы установки есть разные. Где-то можно попробовать взять уже готовую сборку всего вместе, где-то есть отдельно qaac + Apple AAC Encoder, я постараюсь описать несколько вариантов. Главное что Foobar2000 должен увидеть QAAC, а QAAC должен увидеть файлы Apple Application Support.

I вариант. Стандартный.
1) Установить foobar2000.
https://www.foobar2000.org/download

2) Установить foobar2000 Free Encoder Pack в ту же папку, чтобы появилась папка "encoders" на примере вот так: C:\Program Files\foobar2000\encoders . Там появится qaac

3) Установить iTunes или QuickTime в стандартную папку Program files. Ссылки давать не буду, потому что последний раз не смог скачать напрямую, видимо "из-за санкций". Если с последней версией не срабатывает - можно попробовать где-то найти iTunes 2-3 летней давности и переустановить.

4) В настройках foobar2000: Preferences -> Advanced -> Tools -> Converter -> Additional command-line encoder paths укажите путь до папки Encoders, например вот так C:\Program Files\foobar2000\encoders
Подробнее о настройке энкодеров в foobar2000
https://audiophilesoft.ru/publ/softw...setup/4-1-0-27


II вариант. Ручной.
1) Установить foobar2000.
https://www.foobar2000.org/download

2) Скачать и установить qaac.
https://github.com/nu774/qaac/releases

3.1) Скачать iTunes. Ссылки давать не буду, потому что последний раз не смог скачать напрямую, видимо "из-за санкций".
Раскрыть iTunes.exe или Itunes.msi как архив с помощью 7z, найти там какой-нибудь AppleApplicationSupport.msi или AppleApplicationSupport64.msi и установить только Apple Application Support.

или
3.2)Натравить makeportable2.cmd на iTunes.exe чтобы выдрать файлы и сделать портабельными
https://github.com/nu774/makeportabl...eportable2.cmd.

или
3.3)Или можно скачать уже готовые файлы отдельно и положить папку QTFiles рядом с файлом qaac.exe
https://github.com/AnimMouse/QTFiles/releases

3.4)Вот ещё вариант QAAC + файлы(если даст скачать):
https://audiophilesoft.ru/load/coder.../qaac/7-1-0-50


3.5) поискать сборки портабельную версию QAAC + файлы самостоятельно


4) В настройках foobar2000: Preferences -> Advanced -> Tools -> Converter -> Additional command-line encoder paths укажите путь до папки Encoders, например вот так C:\Program Files\foobar2000\encoders . Если папки такой нет - создайте.
Либо если вам нужен только qaac и qaac лежит в другом месте - укажите путь до папки с qaac.exe
Подробнее о настройке энкодеров в foobar2000
https://audiophilesoft.ru/publ/softw...setup/4-1-0-27


ДАЛЕЕ

В последней версии foobar2000 можно уже пользоваться или тестировать qaac - есть парочку преднастроенных режимов кодирования для Apple AAC. Удобно. Даже можно создать несколько преднастроенных режимов кодирования для AAC, причём путём натыкивания мышкой режимов(CBR, VRB и так далее) и ползунков для указания качества.
Если же что-то что сложнее перекодирования - например если надо переводить 5.1 в стерео - то надо будет прописывать самостоятельно

https://github.com/nu774/qaac/wiki/Examples
https://audiophilesoft.ru/load/coder.../qaac/7-1-0-50


Также надо помнить что битрейт высставляется на конечный файл. То есть для стерео и для 5.1 надо создавать 2 пресета по отдельности.



QAAC поддерживает битрейты (или качество для TVBR) ступенями. Поэтому если вы будете создавать пресеты сами - то например бессмысленно выставлять битрейт между 128 кбит/с и 160 кбит/с. Всё равно QAAC выберет один из них(128 или 160). Но все равно можно вручную создать пресет чтобы назвать его по своему и чтобы он всегда отображался вверху списка.
Например я создал пресет
Encoder file = qaac64.exe
Extentions = m4a
Parametrs = -s -v 128 --ignorelength - -o %d (обратите внимание что где-то надо сделать 1у чёрточку, где-то две)

Format is = lossy (для QAAC это не имеет значение)
Highest BPS mode supported = 32-bit
Encoder name: = _QAAC cvbr 128 stereo (с нижнем подчеркиванием вначале)
Bitrate (kbps): = 128
Settings: = cvbr 128


это обычный QAAC cvbr 128 кбит/с который можно натыкать мышкой, но так как в "Encoder name:" стоит нижнее подчёркивание в начале - то этот пресет отображается вверху списка.


Какие проблемы могут возникнуть
Вы можете делать всё правильно, но оно может не заработать. Причины:
а) новые версии iTunes устанавливаются не туда. Или нет так. Или не все файлы. Или файлы под другим именем. Установите iTunes какого-нибудь 2019-2020 года. Если не сработает то qaac того же года.
Чтобы проверить то что qaac "видит" файлы Apple Application Support - в консоле запустить:
qaac --check
или
qaac64 --check


б) битность(32/x86 и 64) не соблюдена. qaac должен быть той же битности что и Apple Application Support. Если используете qaac64.exe - то и устанавливать надо AppleApplicationSupport64.msi. Или если пользуетесь готовыми файлами - то к qaac64.exe надо подкладывать папку QTFiles64. ну и так далее.


в) если Вы не указали расположение энкодеров(qaac), то foobar2000 сам спросит где qaac. А если вы потом укажите дополнительно другой путь в Preferences -> Advanced -> Tools -> Converter -> Additional command-line encoder paths, то потом foobar2000 будет брать первый попавшийся qaac (если их несколько) и если этот qaac не увидит файлы Apple Application Support - выпадет ошибка. Просто будьте внимательны на то что прописано в Additional command-line encoder paths.

Последний раз редактировалось tlya85, 09.03.2025 в 13:20.
  Ответить с цитированием
Старый 09.03.2025, 13:39   #13
tlya85
Главный Кинооператор
Медаль пользователю. ЗОЛОТО Новичок
Регистрация: 06.02.2023
Сообщения: 54
Репутация: 7
Режимы QAAC

Apple AAC имеет свои режимы. Режимы могут вести себя по разному даже в рамках одного кодека, но разных энкодеров (Apple AAC, FDK AAC, FhG AAC, FAAC(winamp), NeroAAC, FFmpeg AAC, Exhale). И даже разные версии одного энкодера могут вести себя по разному. Поэтому надо полагаться на описание каждого режима для каждого энкодера. И читать надо внимательно - потому что один и тот же режим может иметь разные наименования.
Я буду описывать параметры для кодирования озвучки, а не музыки. Хотя и этого коснусь. Глобально существует 2 вида режима - постоянный битрейт(обычно 2 вариант) и переменный(несколько вариантов).
1) CBR - Constant BitRate - постоянный битрейт. Битрейт постоянный +- несколько кбит/с без пиков и просадок. Минус - сильно жрёт битрейт даже для тишины. А для всплесков насыщенности (музыка, много голосов, и так далее) - может не хватать битрейта. Маленький плюс - воспроизведётся даже на старых телевизорах(первом айФоне, на старом DVD проигрывателе с USB). В общем я бы советовал использовать только для каких-нибудь видео записей трансляций концертов для воспроизведения на старых телевизорах по USB на битрейте 192 кбит/с для стерео и 320 кбит/с для 5.1.
Хотя иногда мне попадаются такие говённые исходники аудио(хоть в AC3, хоть в E-AC3) с отрезанными частотами выше 15 кГц и в принципе с плохим сведением, что при конвертировании в AAC CBR 128 кбит/с для стерео будет достаточно. Если же источник с нормальным звуком - CBR надо выставлять в диапазоне как минимум 160-192 кбит/с для стерео.
2) ABR - Average BitRate - средний битрей (переменный). Энкодер пытается соответствовать среднему заданному битрейту, но при этом колебаться в каких-то небольших пределах, чтобы средний битрейт соответствовал заданному в пределах нескольких секунд. По качеству уже лучше чем CBR при том же битрейте.
3) VBR - Variable BitRate - переменный битрейт. Для qaac ещё называется Constrained Variable BitRate (CVBR). Это уже реальный переменный битрейт, но при этом средний битрейт тоже ограниченый. Отличается от ABR тем что может сильнее колебаться и пытается оптимизировать средний битрейт более длинными кусками(до нескольких минут). По качеству ещё лучше чем CBR и ABR при том же битрейте.
4) TVBR - True Variable BitRate. "Настоящий" переменный битрейт. Другой механизм подбора битрейта. В этом режиме выставляется не битрейт, а качество! А битрейт прыгает как ему угодно. Поставив одно и тоже качество для разных аудиосэмплов вы можете получить сильно отличающийся битрейт(и итоговый размер) в 2-3 раза. Натравите на 1-минутный файл с речью - получите размер X, натравите на 1 минутный файл с песней - получите размер 2X.
Минусы этого режима - а) непредсказуемый битрейт(и размер соответственно), особенно на 5.1. б) в этом режиме энкодер если ему кажется что качество задано недостаточно - самостоятельно отрезает частоты даже при выставлении хорошего качества, и все силы кидает на оставшиеся частоты. К сожалению отрезает не только то что выше 20 КГц, но может опуститься и до 16 КГц и до 15 КГц.
В общем если исходник с порезанными частотами до 15 КГц - можно использовать этот режим чтобы ещё сильнее сэкономить размер.

Есть ещё возможность для CBR, ABR, и CVBR использовать AAC-HE (он же AAC LC + SBR). Плюс а) в том что ещё сильней экономит битрейт с помощью некоторых техник, либо улучшает качество при том же битрейте(особенно на низких битрейтах). б) cохраняет частоты выше 20 КГц (если вы слышите эти частоты или вы дельфин - обратите внимание) Минусы в) может не воспроизвестись на некоторых устройствах. Этот минус встречается всё реже и когда-то совсем исчезнет. г) на очень высоких битрейтах качество может немного отличаться от обычного AAC-LC. Но там и смысла нет делать AAC-HE.

QAAC не умеет делать AAC-xHEv1 и AAC-xHEv2. Но они нужны больше для кодирования речи и чтобы потягаться с бесплатным и открытым OPUS.

В общем по моему мнению расклад такой в случае с QAAC:
-2) Будете воспроизводить на даче со старого плеера или старого ТВ по USB - AAC LC CBR (да и видео кодек и контейнер тоже должны быть не современными)
-1) Исходник с частотами выше 20 КГц и Вы дельфин? Или Вы младше 25 годков и у Вас прекрасных слух и дорогая аудиоапаратура - CVBR HE (битрейт сами подбирайте).
1) Стерео для ситкома/блаблабла-жанра/детектива/мыльной оперы/документалки - CVBR 128 кбит/с или TVBR 73. Для видео с каким-то упором на звуковую составляющую - CVBR 160 кбит/с или TVBR 91. Для записи концерта - CVBR 192 кбит/с или TVBR 100-109
2) 5.1 - для ситкома/блаблабла-жанра/детектива/мыльной оперы/документалки - CVBR 224 кбит/с или CVBR HE 192 кбит/с. Для видео с каким-то упором на звуковую составляющую - CVBR 256 кбит/с или CVBR HE 224 кбит/с. Для записи концерта - CVBR 320 кбит/с или CVBR HE 256 кбит/с.


Я в основном использую 3-4 режима:
1)
Encoder file = qaac64.exe
Extentions = m4a
Parametrs = -s -v 128 --ignorelength - -o %d

Format is = lossy
Highest BPS mode supported = 32-bit
Encoder name: = _QAAC cvbr 128 stereo
Bitrate (kbps): = 128
Settings: = cvbr 128

2)
Encoder file = qaac64.exe
Extentions = m4a
Parametrs = -s -v 160 --ignorelength - -o %d

Format is = lossy
Highest BPS mode supported = 32-bit
Encoder name: = _QAAC cvbr 160 stereo
Bitrate (kbps): = 160
Settings: = cvbr 160

3)
Encoder file = qaac64.exe
Extentions = m4a
Parametrs = -s -v 224 --he --ignorelength - -o %d

Format is = lossy
Highest BPS mode supported = 32-bit
Encoder name: = _QAAC cvbr-he 224 5.1
Bitrate (kbps): = 224
Settings: = cvbr-he 224




Примерно также можно использовать QAAC и в других редакторах(не только в foobar2000). Главное там будет задать правильно Параметры типа таких:
-s -v 160 --ignorelength - -o %d


Почему 5.1 не в 3 раза больше битрейт? потому что кодирование сабвуфера(LFE) занимает 1 кбит/с в среднем(на фильмах майкла бэя - 2 кбит/с). То есть можно принебречь. И если этот 5.1 - не самопальное Г***О сделанное из стерео, то там на каждом канале должно быть меньше шумов и меньше в принципе информации для кодирования в большинстве сцен. Центральный канал может вообще содержать только речь. Боковые - только определённые звуки. Используя CVBR, а тем более CVBR+HE не стоит задирать битрейт - это бессмысленно.


Почему для стерео не использовать HE? В принципе можно - но так как некоторые старые устройства могут не воспроизвести AAC HE и для стерео экономия выходит небольшая - то пока нет большого резона использовать HE для стерео. 10-20 кбит/с не сыграют роли.
  Ответить с цитированием
Старый 11.03.2025, 15:27   #14
EvraGo
Главный Кинооператор
Регистрация: 21.02.2023
Сообщения: 4
Репутация: 1
tlya85 сказал(a):
Кстати, AAC можно резать и склеивать без конвертирования. главное чтобы параметры совпадали (стерео, 5.1, 5.1, side и сам кодес AAC LC). Делать надо через контейнер mka - больше параметров сохраняется(в первую очередь длительность, она теряется в контейнере .aac.)

Лучше использовать контейнер m4a, в mka битрейт аудио отображается не точно или вовсе не отображается (например в MediaInfo)

Со склейкой не все так просто)
1. Редактируемые и исходные аудиодорожки должны быть одной громкости. В противном случае получится, что вставки громче/тише чем надо.
2. Не получится обеспечить необходимую точность при врезках, аудиокодеки группируют определенное количество сэмплов SPF в один “кадр”. Без декодировки аудио, резка происходит по "кадрам", например при Frame rate: 46.875 FPS (1024 SPF) шаг составит 21,3мс (могу ошибаться, поправьте если что). Применимо только если начало и конец врезки имеют тишину.

Если не хотите возится с .txt файлом для ffmpeg, могу порекомендовать lossless-cut для резки и склеивания.

tlya85 сказал(a):
Для этого надо каким-то образом осуществить схему взаимодействия foobar2000 + qaac(прослойка для управления Apple AAC Encoder) + Apple AAC Encoder(Apple Application Support в составе iTunes). Схемы установки есть разные. Где-то можно попробовать взять уже готовую сборку всего вместе, где-то есть отдельно qaac + Apple AAC Encoder, я постараюсь описать несколько вариантов. Главное что Foobar2000 должен увидеть QAAC, а QAAC должен увидеть файлы Apple Application Support.

Пользуюсь сборкой от LUR. Скорость и простота выше свяких похвал.
  Ответить с цитированием
Старый 11.03.2025, 20:52   #15
tlya85
Главный Кинооператор
Медаль пользователю. ЗОЛОТО Новичок
Регистрация: 06.02.2023
Сообщения: 54
Репутация: 7
В mka битрейт отображается лучше чем где либо. Там можно хоть кучу параметров запихнуть, будь то пиковый битрейт и так далее. Просто не все кодировщики/упаковщики хотят это делать. ffmpeg зачастую не хочет если ему явно не сказать. А MKVToolnix(на основе ffprobe) подсчитывает и проставляет средний битрейт.


Если вырезаешь АДИНИКСБЕТ и проставляешь оригинальную дорожку переконвертированную в AAC, то пусть она будет и громче и тише. Но ничего не мешает для небольшого кусочка переконвертировать с повышением громкости.



необходимую точность при врезках - а при накладывании - всегда получится? 21 миллисекунда(0,021) - это полкадра видео(при 25 кадрах в секунду). Ты даже не поймёшь куда тебе лучше отрезать - влево или вправо. Конечно если 100 раз куда-то что-то отрезать, склеить, переконвертировать, потом снова и снова, то лучше в какой-то момент синхронизнуть куски. Но 0,021 секунда в аудиоозвучке - это просто ни-о-чём. Столько же рассинхрона ещё накинется на постобработку звука и видео на ТВ.



losslell-cut - я не нашёл как нарезать видео+аудио, но оставлять только аудио. Не умеет он так. (или не умел год назад - не знаю как сейчас). Я вообще искал такую программу, когда можно было взять два видеоряда и их озвучки, отметить куски и потом выдать только аудио без переконвертирования(тем же склеиванием если в одинаковом формате). Не нашёл.



Чужую сборку я бы прогнал сначала через virustotal. В описании не увидел qaac+сам энкодер из itunes. А с ними больше всего проблем при подборе работающих комбинаций.



EvraGo сказал(a):
Лучше использовать контейнер m4a, в mka битрейт аудио отображается не точно или вовсе не отображается (например в MediaInfo)

Со склейкой не все так просто)
1. Редактируемые и исходные аудиодорожки должны быть одной громкости. В противном случае получится, что вставки громче/тише чем надо.
2. Не получится обеспечить необходимую точность при врезках, аудиокодеки группируют определенное количество сэмплов SPF в один “кадр”. Без декодировки аудио, резка происходит по "кадрам", например при Frame rate: 46.875 FPS (1024 SPF) шаг составит 21,3мс (могу ошибаться, поправьте если что). Применимо только если начало и конец врезки имеют тишину.

Если не хотите возится с .txt файлом для ffmpeg, могу порекомендовать lossless-cut для резки и склеивания.

Пользуюсь сборкой от LUR. Скорость и простота выше свяких похвал.
  Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей - 0 , гостей - 1)
 
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск



Часовой пояс GMT +3, время: 04:13.