Фраунгофер ФДК ААЦ в ФФмпег

474
RvidD

AAC FFmpeg гид говорит,

Библиотека кодеков Fraunhofer FDK AAC в настоящее время является кодировщиком AAC самого высокого качества, доступным с ffmpeg. Предварительно собранный ffmpeg не поддерживает его. Это можно решить, скомпилировав ffmpeg самостоятельно.

Я пытался добавить его в FFmpeg. Но я даже не мог понять, что говорит мне руководство по составлению . Итак, кто-то, пожалуйста, дайте мне пошаговые инструкции, чтобы добавить « библиотеку кодеков FDK AAC » в мой FFmpeg. Я использую FFmpeg в Windows 10 (64-битная, статическая, Nightly Git).

Кроме того, как я могу сделать аудио DTS с FFmpeg? Встроенный кодировщик DTS является экспериментальным, и я должен добавить, -strict experimentalчтобы кодировать видео с аудио DTS. Есть ли полная библиотека DTS для FFmpeg, такая же, как библиотека FDK_AAC?

0

2 ответа на вопрос

2
dirkt

Очень кратко:

Вы не можете «добавить библиотеку кодеков» в «свой» FFmpeg. Вместо этого вы должны полностью скомпилировать свой собственный бинарный файл FFmpeg из исходного кода. Что немного сложно, если вы сами никогда ничего не компилировали. Так что это требует понимания руководства по компиляции, это требует знаний о том, как компилировать материал в Windows 10, требует работающего компилятора C и т. Д. Учебное пособие о том, как это сделать, вероятно, выходит за рамки этого сайта.

Но начните с выбора компилятора из четырех альтернатив, упомянутых в руководстве по компиляции, установите этот компилятор и скомпилируйте приложение "hello world". Выясните, как работает конфигурация.

В любом случае, после того, как вы сможете каким-то образом скомпилировать ffmpeg, вам нужно добавить --enable-libfdk-aacпараметры конфигурации. Вам также необходимо установить (или скомпилировать) libfdk_aacбиблиотеку.

Вполне возможно, что как-то это уже сделано, и эта библиотека включена в вашу ночную сборку git; проверить с ffmpeg -codecs.

Я не уверен, что понимаю второй вопрос, вы, кажется, уже знаете, как кодировать DTS с помощью встроенного кодировщика. Также обратите внимание, что если у вас нет какого-либо усилителя, который вы не можете подключить к своему ПК, за исключением некоторого канала с низкой скоростью передачи битов, где будет необходим DTS, кодирование звука в DTS на самом деле не нужно и не даст более качественных результатов, чем альтернативы.

Думаю, мне будет очень сложно самостоятельно скомпилировать FFmpeg. Так есть ли альтернативы, которые могут сделать FDK AAC? Второй вопрос: я думал, что встроенный кодировщик DTS находится в стадии бета-тестирования. Вот почему я спросил о правильном кодировщике DTS. RvidD 5 лет назад 0
На https://github.com/jb-alvarado/media-autobuild_suite есть скрипт автоматической сборки для Windows, который скомпилирует ffmpeg с помощью fdk-aac (среди многих других внешних компонентов). Gyan 5 лет назад 1
@ Гьян: Вы должны сделать это ответ. dirkt 5 лет назад 0
Дело в том, что, как я уже говорил, DTS не поможет, если у вас нет особых требований к оборудованию. Вот почему никто не очень заинтересован в написании / завершении кодировщика DTS. Или по-другому: если вы подумали: «Я много слышал о DTS, когда читал об аудио, так что это должно быть круто, и я хочу его использовать», то вы делаете это неправильно. dirkt 5 лет назад 0
@Gyan Просто оставьте свой комментарий в качестве ответа на этот вопрос. Этот сценарий автоматической сборки идеально подходит. RvidD 5 лет назад 0
2
Gyan

Библиотека FDK-AAC определяется FFmpeg как имеющая лицензию, совместимую с LGPL, но не с лицензией GPL. Наиболее популярным дополнением к FFmpeg является библиотека GPLed x264, поэтому редко можно найти общедоступный распространяемый двоичный файл ffmpeg, к которому привязан libfdk_aac.

Тем не менее, для Windows есть скрипт «auto-build», который будет устанавливать цепочку инструментов компилятора, загружать ffmpeg и многие другие популярные библиотеки и компилировать двоичные файлы. Он доступен по адресу https://github.com/jb-alvarado/media-autobuild_suite.