Мой вопрос похож наВот этотэтот вопрос был задан почти 3 года назад.
Я хотел бы скомпилировать Chromium с поддержкой MP3, AAC и т. д. на Mac OS X (я использую 10.11.6 El Capitan). Пока что мне удалось скомпилировать его со стандартными настройками согласноинструкции на chromium.org. После запускаHTML5TestЯ понял, что по умолчанию он не компилируется с поддержкой фирменных кодеков, таких как MP3.
После некоторого гугления я нашелэта страницана сайте Chromium.org, где упоминаются некоторые флаги компилятора:
ffmpeg_branding
Overrides which version of FFmpeg to use
Default: $(branding)
Values:
Chrome - includes additional proprietary codecs (MP3, etc..) for use with Google Chrome
Chromium - builds default set of codecs
proprietary_codecs
Alters the list of codecs Chromium claims to support, which affects <source> and canPlayType() behaviour
Default: 0(gyp)/false(gn)
Values:
0/false - <source> and canPlayType() assume the default set of codecs
1/true - <source> and canPlayType() assume they support additional proprietary codecs
Я добавил оба в свой args.gn, используя gn args out/gn
, но это привело к ошибке компоновщика при сборке с десятками строк, например, такими:
duplicate symbol in:
obj/components/policy/proto/libproto_internal.a(device_management_backend.pb.o)
Я удалил первый флаг и запустил ninja
снова, что привело к той же ошибке компоновщика всего через несколько секунд. Я поменял местами и теперь убрал второй добавленный мной флаг, и компиляция началась снова.
После успешной компиляции в течение еще одного часа я получаю ту же версию, что и раньше, и получаю тот же результат HTML5Test — отсутствие поддержки MP3/AAC.
Теперь у меня вопрос: как мне скомпилировать Chromium с поддержкой этих кодеков?
решение1
Для того, чтобы завершитьофициальные инструкции, вы увидите другую информацию оэта страница githubдля компиляции Chromium со всеми кодеками (кодеки по умолчанию + AAC, H264/AVC, H265/HEVC, MPEG-4). Он ориентирован на ОС Windows, но похож на MacOS. Используйте флаги GN. Обратите внимание, что компиляция H265/HEVC более сложная.
Например, мы используем эти настройки для создания и распространения наших собственных версий Chromium для Windows и MacOS (Бинарные файлы доступны на этом сайте). Так что вы можете сделать похожую версию Chromium самостоятельно! ;)