yandex-gentoo / overlay

Gentoo overlay with yandex things (mostly chromium-based browser)
10 stars 7 forks source link

Add to install libffmpeg for h.264 support #5

Closed umag closed 1 year ago

umag commented 7 years ago

Добавьте пожалуйста поддержку установки libffmpeg из chromium-codecs-ffmpeg-extra чтобы появилась поддержка h.264 https://yandex.ru/support/browser/troubleshooting/functional.xml#video-linux https://mirrors.kernel.org/ubuntu/pool/universe/c/chromium-browser/

alexws54tk commented 7 years ago

Хорошо, спасибо. Посмотрю, что с этим можно сделать.

msva commented 7 years ago

По сути, есть три пути: 1) либо костылять отдельный пакет, в котором билдить забандленный в хром ffpmeg (причём, с гугловым брендингом и проприетарными кодеками, см. ебилд хромиума в дереве) 2) либо тянуть в зависимостях установленный хромиум с включенными проприетарными кодеками 3) либо костылять потрошение убунтушного пакета и ставить оттуда.

Если честно, все три варианта очень дурно пахнут

alexws54tk commented 7 years ago

@uMag, или один раз взять этот самый chromium-codecs-ffmpeg-extra_….deb, распаковать любым архиватором, и положить тамошнюю libffmpeg.so в /opt/yandex/browser-beta/lib/. Ну и рестартануть браузер же.

usern1983 commented 7 years ago

Мужики! это из-за этой библиотеки видео в контакте не пашет? Хотя chromium у меня везде стоит.

programmador commented 7 years ago

Состряпал ebuild, который выполняет 3й пункт из перечисленных @msva вариантов, т.е. потрошит пакет убунты: https://bitbucket.org/programmador/gentoo-overlay/src/7cc21d859a3b04b3bed5fc87c9b690482eef0886/www-client/yandex-browser-ffmpeg-codecs/?at=default Оверлей 'programmador'. Можете найти пакет yandex-browser-ffmpeg-codecs в gpo.zugaina.org когда он перекеширует мой репозиторий.

Есть по нему пара косячков, возможно даже взаимосвязанных. Во-первых файл libffmpeg.so не удаляется при удалении моего пакета:

!!! existing preserved libs:
>>> package: www-client/yandex-browser-ffmpeg-codecs-59.0.3071.109
 *  - /opt/yandex/browser-beta/libffmpeg.so
 *      used by /opt/yandex/browser-beta/yandex_browser (www-client/yandex-browser-beta-17.6.1.835_p1)

Он удаляется автоматически при удалении www-client/yandex-browser-beta. Ни emerge @preserved-rebuild ни revdep-rebuild не помогут, только удаление браузера.

Во-вторых мне repoman чего-то ругался:

$ repoman full

RepoMan scours the neighborhood...
  dependency.bad [fatal]        12
   www-client/yandex-browser-ffmpeg-codecs/yandex-browser-ffmpeg-codecs-59.0.3071.109.ebuild: RDEPEND: ~amd64(default/linux/amd64/13.0)
['www-client/yandex-browser-beta']
   www-client/yandex-browser-ffmpeg-codecs/yandex-browser-ffmpeg-codecs-59.0.3071.109.ebuild: RDEPEND: ~amd64(default/linux/amd64/13.0/desktop)
['www-client/yandex-browser-beta']
   www-client/yandex-browser-ffmpeg-codecs/yandex-browser-ffmpeg-codecs-59.0.3071.109.ebuild: RDEPEND: ~amd64(default/linux/amd64/13.0/desktop/gnome)
['www-client/yandex-browser-beta']
   www-client/yandex-browser-ffmpeg-codecs/yandex-browser-ffmpeg-codecs-59.0.3071.109.ebuild: RDEPEND: ~amd64(default/linux/amd64/13.0/desktop/gnome/systemd)
['www-client/yandex-browser-beta']
   www-client/yandex-browser-ffmpeg-codecs/yandex-browser-ffmpeg-codecs-59.0.3071.109.ebuild: RDEPEND: ~amd64(default/linux/amd64/13.0/desktop/plasma)
['www-client/yandex-browser-beta']
   www-client/yandex-browser-ffmpeg-codecs/yandex-browser-ffmpeg-codecs-59.0.3071.109.ebuild: RDEPEND: ~amd64(default/linux/amd64/13.0/desktop/plasma/systemd)
['www-client/yandex-browser-beta']
   www-client/yandex-browser-ffmpeg-codecs/yandex-browser-ffmpeg-codecs-59.0.3071.109.ebuild: RDEPEND: ~amd64(default/linux/amd64/13.0/developer)
['www-client/yandex-browser-beta']
   www-client/yandex-browser-ffmpeg-codecs/yandex-browser-ffmpeg-codecs-59.0.3071.109.ebuild: RDEPEND: ~amd64(default/linux/amd64/13.0/systemd)
['www-client/yandex-browser-beta']
   www-client/yandex-browser-ffmpeg-codecs/yandex-browser-ffmpeg-codecs-59.0.3071.109.ebuild: RDEPEND: ~amd64(hardened/linux/amd64)
['www-client/yandex-browser-beta']
   www-client/yandex-browser-ffmpeg-codecs/yandex-browser-ffmpeg-codecs-59.0.3071.109.ebuild: RDEPEND: ~amd64(hardened/linux/amd64/no-multilib)
['www-client/yandex-browser-beta']
   www-client/yandex-browser-ffmpeg-codecs/yandex-browser-ffmpeg-codecs-59.0.3071.109.ebuild: RDEPEND: ~amd64(hardened/linux/amd64/no-multilib/selinux)
['www-client/yandex-browser-beta']
   www-client/yandex-browser-ffmpeg-codecs/yandex-browser-ffmpeg-codecs-59.0.3071.109.ebuild: RDEPEND: ~amd64(hardened/linux/amd64/selinux)
['www-client/yandex-browser-beta']

Note: use --include-dev (-d) to check dependencies for 'dev' profiles

Please fix these important QA issues first.
RepoMan sez: "Make your QA payment on time and you'll never see the likes of me."

Когда я пробовал закомментировать в ebuild'е зависимость от браузера - ругаться переставал. Но я строчку всё равно оставил. Есть у меня подозрение, что он ругается из-за того, что yandex-browser-beta хоть и присутствует в оверлее yandex, но отсутствует в основном репозитории gentoo, где его repoman пытается найти.

programmador commented 7 years ago

По фен шую нужен ebuild типа вот этого для Arch: https://aur.archlinux.org/packages/yandex-browser-ffmpeg-codecs/ https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=yandex-browser-ffmpeg-codecs

msva commented 7 years ago

первый "косяк" - just as planned. Ибо Gentoo, всё же, рассчитана не на проприетарщину (а фича сделана чтобы не ломать софт при обновлении зависимостей) :) второй - из-за того что в мастерах оверлея указан только gentoo. А яндексо- оверлей — нет.

Поэтому репоман ищет зависимости только в самом оверлее и в мастер-репе (gentoo). Ни там ни там не находит, потому и ругается.

msva commented 7 years ago

к слову, можно было бы и сюда законтрибьютить тот ебилд :)

programmador commented 7 years ago

Хм, ну да, можно ж pull request сделать, чё-то я затупил. Ща.

programmador commented 7 years ago

https://github.com/yandex-gentoo/overlay/pull/8

alexws54tk commented 7 years ago

@programmador, да, вчера в Арче тоже увидел этот пакет, на неделе запилю ебилд из него, но это будет 1й пункт из перечисленных @msva вариантов.

msva commented 7 years ago

@alexws54tk я пока приму пулл-реквест и подправлю немного (переименую в *-bin чтобы не конфликтовал с твоим, и изменю зависимости (логичнее чтобы я-браузер от кодеков зависел, а не наоборот).

Но, не помню, говорил ли я уже или нет, но я не то, чтобы особо активно пользуюсь яузером, так что потесчу только поверхностно.

msva commented 7 years ago

Кстати, я придумал как пофиксить RPATH и заодно впилю этот фикс. Правда, я что-то не могу найти зачем мы симлинкаем libudev (что-то судя по ldd от него никто не зависит)

А вот судя по грепу - бинарник yandex_browser таки содержит упоминание .0 удеволибы. Видимо, DL()'ит. А учитывая, что .0 больше нету - придётся тянуть враппер в зависимости

msva commented 7 years ago

а на чём без логина куда-либо можно потестить что 264 видео заработало? А то в ютубе всё vp9 и играется с той libffmpeg что в коробке :(

msva commented 7 years ago

В общем, всё, проверил, работает, всё пофиксил. Яузер бампну на пару ревизий.

programmador commented 7 years ago
 * Package:    www-client/yandex-browser-beta-17.6.1.835_p1-r1
 * Repository: yandex
 * Maintainer: yandex-gentoo-overlay@mva.name alex@ws54.tk
 * USE:        abi_x86_64 amd64 elibc_glibc kernel_linux l10n_ru userland_GNU
 * FEATURES:   preserve-libs sandbox userpriv usersandbox
 * Determining the location of the kernel source code
 * Found kernel source directory:
 *     /usr/src/linux
 * Found kernel object directory:
 *     /lib/modules/4.9.34-gentoo/build
 * Found sources for kernel version:
 *     4.9.34-gentoo
 * Checking for suitable kernel configuration options...
 *   USER_NS is required for sandbox to work
 *   CONFIG_COMPAT_VDSO causes segfaults (bug #556286)
 * Please check to make sure these options are set correctly.
 * Failure to do so may cause unexpected problems.
>>> Unpacking source...
>>> Unpacking yandex-browser-beta-17.6.1.835_p1.deb to /var/tmp/portage/www-client/yandex-browser-beta-17.6.1.835_p1-r1/work
>>> Unpacking data.tar.xz to /var/tmp/portage/www-client/yandex-browser-beta-17.6.1.835_p1-r1/work
>>> Source unpacked in /var/tmp/portage/www-client/yandex-browser-beta-17.6.1.835_p1-r1/work
>>> Preparing source in /var/tmp/portage/www-client/yandex-browser-beta-17.6.1.835_p1-r1/work ...
stat: No such file or directory
 * ERROR: www-client/yandex-browser-beta-17.6.1.835_p1-r1::yandex failed (prepare phase):
 *   Failed to fix library rpath (yandex_browser-sandbox)
 * 
 * Call stack:
 *     ebuild.sh, line 115:  Called src_prepare
 *   environment, line 3068:  Called die
 * The specific snippet of code:
 *       patchelf --remove-rpath "${YANDEX_HOME}/yandex_browser-sandbox" || die "Failed to fix library rpath (yandex_browser-sandbox)";
 * 
 * If you need support, post the output of `emerge --info '=www-client/yandex-browser-beta-17.6.1.835_p1-r1::yandex'`,
 * the complete build log and the output of `emerge -pqv '=www-client/yandex-browser-beta-17.6.1.835_p1-r1::yandex'`.
 * The complete build log is located at '/var/tmp/portage/www-client/yandex-browser-beta-17.6.1.835_p1-r1/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/www-client/yandex-browser-beta-17.6.1.835_p1-r1/temp/environment'.
 * Working directory: '/var/tmp/portage/www-client/yandex-browser-beta-17.6.1.835_p1-r1/work'
 * S: '/var/tmp/portage/www-client/yandex-browser-beta-17.6.1.835_p1-r1/work'

Это случайно не из-за ревизии? Есть мысль, что название папки какой-то теперь не совпадает.

msva commented 7 years ago

вот прямо сейчас проверил - прекрасно устанавливается... А что если открыть ебилд в текстовом редакторе и продублировать соответствующую строчку, только в одной из них (та, что раньше) добавить в начало echo?

Какой путь покажет?

msva commented 7 years ago

ну и pwd тоже.

А ещё я сейчас запушу коммит, который это может пофиксить.

Но от инфы, которую я попросил выше - всё равно бы не отказался :)

programmador commented 7 years ago

Перед patchelf...... добавил:

elog "YANDEX_HOME=${YANDEX_HOME}"
elog "src_prepare is called in "`pwd`
elog "ls in src_prepare: "`ls`

и получил:

 * YANDEX_HOME=opt/yandex/browser-beta
 * src_prepare is called in /var/tmp/portage/www-client/yandex-browser-beta-17.6.1.835_p1-r1/work
 * ls in src_prepare: opt usr

то ли ничего криминального, то ли я не понял, в какой строке pwd дёргать

programmador commented 7 years ago
elog "ls in ${YANDEX_HOME}: "`ls ${YANDEX_HOME}`

даёт: ls in opt/yandex/browser-beta: Extensions brand_config browser_100_percent.pak browser_200_percent.pak clids.xml compiz.sh default-app-block find_ffmpeg i10n_resource.json icudtl.dat lib locales master_preferences nacl_helper nacl_helper_bootstrap nacl_irt_x86_64.nexe natives_blob.bin partner_config product_logo_128.png product_logo_16.png product_logo_22.png product_logo_24.png product_logo_256.png product_logo_32.png product_logo_32.xpm product_logo_48.png product_logo_512.png product_logo_64.png resources resources.pak signature.dat snapshot_blob.bin trusted.json xdg-mime xdg-settings yandex-browser yandex-browser-beta yandex_browser yandex_browser-sandbox

programmador commented 7 years ago

P.S. Коммит не пофиксил

programmador commented 7 years ago
elog `ls -l "${YANDEX_HOME}/yandex_browser-sandbox"`

=> -rwxr-xr-x 1 portage portage 14608 Июн 27 08:06 opt/yandex/browser-beta/yandex_browser-sandbox Ну т.е. есть этот файл, всё ок, но patchelf не хочет его жрать

msva commented 7 years ago

а patchelf какой версии?

Что если поставить 0.9?

programmador commented 7 years ago

Было 0.8. Поставил 0.9 - теперь устанавливается, но не запускается:

 $ yandex-browser-beta 
Found ffmpeg: /opt/yandex/browser-beta/libffmpeg.so
    avcodec: 3756644
    avformat: 3752551
    avutil: 3616613
Ffmpeg version is OK! Let's use it.
[28449:28449:0729/233728.671358:FATAL:setuid_sandbox_host.cc(158)] The SUID sandbox helper binary was found, but is not configured correctly. Rather than run without sandboxing I'm aborting now. You need to make sure that /opt/yandex/browser-beta/yandex_browser-sandbox is owned by root and has mode 4755.
--2017-07-29 23:37:28--  https://crash-reports.browser.yandex.net/submit
Распознаётся crash-reports.browser.yandex.net… ошибка: Временный сбой в разрешении имен.
wget: не удаётся разрешить адрес «crash-reports.browser.yandex.net»

Failed to get crash dump id.
Report Id: 
Аварийный останов (core dumped)

Ща попробую старую версию, до b745ee21e1ae3c2c8f6fc830d8d082178a4c11d5

programmador commented 7 years ago

то же самое и на старой, без ${S}.

programmador commented 7 years ago

кстати, в manpage patchelf'а 0.8 не было опции --remove-rpath. Но, видимо, она на самом деле была. А в 0.9 уже появилось в manpage

programmador commented 7 years ago

На всякий случай (вдруг у меня в системе чё-то сломано) попробовал взять код ebuild'а из старой ревизии (ещё до моего PR'а): https://github.com/yandex-gentoo/overlay/blob/cedb69b4ce056b8633654c3b4dcfc11bbe66208f/www-client/yandex-browser-beta/yandex-browser-beta-17.6.1.835_p1.ebuild Ставится и работает.

msva commented 7 years ago

странно. У меня ставится и работает. Причём, без SUID'а.

Сейчас с SUID'ом закоммичу. Если не поможет, то уже завтра.

Что странно - почему у меня запускается и работает без SUID'а, а у тебя - нет...

msva commented 7 years ago

а сейчас работает, после того, как я его с SUID'ом запушил?

programmador commented 7 years ago

Да, теперь работает. Наверное suid для запуска браузера - это слегка не по фен шую? Странно, на фиг оно ему. Я правильно понимаю, старый ebuild у меня работал благодаря вот этому? https://github.com/yandex-gentoo/overlay/blob/cedb69b4ce056b8633654c3b4dcfc11bbe66208f/www-client/yandex-browser-beta/yandex-browser-beta-17.6.1.835_p1.ebuild#L90

programmador commented 7 years ago

А, не-не-не. Вот же ж: https://github.com/yandex-gentoo/overlay/blob/cedb69b4ce056b8633654c3b4dcfc11bbe66208f/www-client/yandex-browser-beta/yandex-browser-beta-17.6.1.835_p1.ebuild#L128

alexws54tk commented 6 years ago

Я-таки дособирал ебилд для сборки libffmpeg.so, версия сорцов хромиума совпадает с таковой в яузере. Бинарного deb-пакета под свежий яузер нету.

programmador commented 6 years ago

ссылка "ебилд" ведёт на 404. Но неважно. Снёс браузер с бинарными кодеками (т.е. 2 пакета), затем установил с новыми, которые из сорцов. Всё гут, работает шикарно.

usern1983 commented 6 years ago

chromium шибко часто обновляется...

emerge www-client/yandex-browser-beta

Local copy of remote index is up-to-date and will be used.

 * IMPORTANT: 4 news items need reading for repository 'gentoo'.
 * Use eselect news read to view new items.

Calculating dependencies... done!

>>> Verifying ebuild manifests

>>> Emerging (1 of 3) www-plugins/yandex-browser-ffmpeg-codecs-bin-60.0.3112.113::yandex
 * Fetching files in the background.
 * To view fetch progress, run in another terminal:
 * tail -f /var/log/emerge-fetch.log
>>> Downloading 'http://security.ubuntu.com/ubuntu/pool/universe/c/chromium-browser/chromium-codecs-ffmpeg-extra_60.0.3112.113-0ubuntu0.17.04.1369_amd64.deb'
--2017-11-04 20:01:07--  http://security.ubuntu.com/ubuntu/pool/universe/c/chromium-browser/chromium-codecs-ffmpeg-extra_60.0.3112.113-0ubuntu0.17.04.1369_amd64.deb
Resolving security.ubuntu.com (security.ubuntu.com)... 91.189.88.162, 91.189.91.26, 91.189.88.152, ...
Connecting to security.ubuntu.com (security.ubuntu.com)|91.189.88.162|:80... connected.
HTTP request sent, awaiting response... 404 Not Found
2017-11-04 20:01:08 ERROR 404: Not Found.

!!! Couldn't download 'chromium-codecs-ffmpeg-extra_60.0.3112.113-0ubuntu0.17.04.1369_amd64.deb'. Aborting.
 * Fetch failed for 'www-plugins/yandex-browser-ffmpeg-codecs-bin-60.0.3112.113', Log file:
 *  '/var/calculate/tmp/portage/www-plugins/yandex-browser-ffmpeg-codecs-bin-60.0.3112.113/temp/build.log'

>>> Failed to emerge www-plugins/yandex-browser-ffmpeg-codecs-bin-60.0.3112.113, Log file:

>>>  '/var/calculate/tmp/portage/www-plugins/yandex-browser-ffmpeg-codecs-bin-60.0.3112.113/temp/build.log'

 * Messages for package www-plugins/yandex-browser-ffmpeg-codecs-bin-60.0.3112.113:

 * Fetch failed for 'www-plugins/yandex-browser-ffmpeg-codecs-bin-60.0.3112.113', Log file:
 *  '/var/calculate/tmp/portage/www-plugins/yandex-browser-ffmpeg-codecs-bin-60.0.3112.113/temp/build.log'
alexws54tk commented 6 years ago

@usern1983, я выложил «нормальный» ебилд, смотри мой комментарий выше. В текущей версии Яузера версия хромиума 60.0.3112.113, а убунтушного дебпакета с такой версией нету. screenfetch-2017-11-05_21-34-34_646x388 Если уж так хочется пользовать собранный кем-то libffmpeg, то возьмите или любой другой дебпакет, или вот собранный мной пакет yandex-browser-ffmpeg-codecs-60.0.3112.113.tbz2. ЗЫ: обновил бинарный ебилд до версии 62.0.3202.75 в последний раз.

@msva, не вижу смысла обновлять ебилд бинарных убунтушных кодеков несколько раз в неделю. Как насчёт выпилить yandex-browser-ffmpeg-codecs-bin из дерева?

msva commented 6 years ago

@msva, не вижу смысла обновлять ебилд бинарных убунтушных кодеков несколько раз в неделю. Как насчёт выпилить yandex-browser-ffmpeg-codecs-bin из дерева?

Ну, можно и выпилить, если текущая версия работает :) --

band-a-prend commented 6 years ago

У всех нормально собирается yandex-browser-ffmpeg-codecs-67.0.3396.99 с помощью sys-devel/clang-6.0.1? У меня сборка падает с ошибками clang-6.0: linking error.

Вроде бы писал уже здесь сообщение с прикреплением полного лога сборки на 13 мб, но, видимо, так и не нажал "отправить".

programmador commented 6 years ago

Аналогично. Я не писал ничего, т.к. по логу шланга не понял что именно падает

band-a-prend commented 6 years ago

Попробую 5-й версией собрать.

@alexws54tk Александр, не подскажешь, ты какой версией clang собирал плагин, который прикреплён архивом на главной странице оверлея?

alexws54tk commented 6 years ago

@band-a-prend Сергей, у меня до сих пор стоит clang-5.0.1 и gcc-6.4.0. Собрано с их помощью. Попробую за выходные обновить шланг, и собрать кодэки.

programmador commented 6 years ago

build.log

alexws54tk commented 6 years ago

@programmador Александр, у тебя вот такое нашёл в билдлоге

[5500/5923] /usr/bin/python2 "../../build/toolchain/gcc_solink_wrapper.py" --readelf="readelf" --nm="x86_64-pc-linux-gnu-nm" --sofile="./libgfx.so" --tocfile="./libgfx.so.TOC" --output="./libgfx.so"  -- x86_64-pc-linux-gnu-clang++ -shared -fPIC -Wl,-z,noexecstack -Wl,-z,now -Wl,-z,relro -Wl,-z,defs -Wl,--no-as-needed -lpthread -Wl,--as-needed -Wl,--export-dynamic -Wl,-O1 -Wl,--as-needed -o "./libgfx.so" -Wl,-soname="libgfx.so" @"./libgfx.so.rsp"
FAILED: libgfx.so libgfx.so.TOC 
/usr/bin/python2 "../../build/toolchain/gcc_solink_wrapper.py" --readelf="readelf" --nm="x86_64-pc-linux-gnu-nm" --sofile="./libgfx.so" --tocfile="./libgfx.so.TOC" --output="./libgfx.so"  -- x86_64-pc-linux-gnu-clang++ -shared -fPIC -Wl,-z,noexecstack -Wl,-z,now -Wl,-z,relro -Wl,-z,defs -Wl,--no-as-needed -lpthread -Wl,--as-needed -Wl,--export-dynamic -Wl,-O1 -Wl,--as-needed -o "./libgfx.so" -Wl,-soname="libgfx.so" @"./libgfx.so.rsp"
clang-6.0: error: linker command failed with exit code 1 (use -v to see invocation)

Подтвердить не могу, т.к. шестой ллвм и, соответственно, шланг не устанавливаются. Разбираюсь. С версиями sys-devel/clang-5.0.2 и sys-devel/llvm-5.0.2 всё собирается.

programmador commented 5 years ago

На вышеупомянутой странице есть аналогичная версия пакета кодеков (ранее такого пакета, похоже, не было).

Распаковал и подсунул ручками, работает. Т.е. теоретически можно бинарный пакет сбацать как у нас был раньше, временно вместо сборки из исходников.

Кто захочет так же ручками подсунуть libffmpeg.so - смотрите внимательно на архитектуру процессора и наличие суффикса extra в названии deb пакета, а то я тут учудил у себя немного, некоторое время не мог понять, почему не работает.

alexws54tk commented 5 years ago

@programmador Александр, потрошение убунтушного пакета делайте самостоятельно. Для ленивых собирать из исходников я специально выкладываю гентушный пакет с libffmpeg.so на странице оверлея. По факту — это .tar.bz2 архив с libffmpeg.so внутри.

Т.е. теоретически можно бинарный пакет сбацать как у нас был раньше, временно вместо сборки из исходников.

Такое у нас раньше было, но повторюсь

не вижу смысла обновлять ебилд бинарных убунтушных кодеков несколько раз в неделю

у меня нету столько лишнего времени.

Гугля штампует версии Хрома и Хромиума как горячие пирожки и у них есть гадкая привычка подтирать предыдущие версии пакетов на всех источниках. Ябраузер же выходит не так часто — от силы один (редко два) раза в месяц.

programmador commented 5 years ago

На странице оверлея версия ffmpeg старая. Убунтушные сборки больше не подтягиваются яндекс браузером - говорит, что не может распознать версию ffmpeg. Попытки нагагуглить что-нибудь рабочее завели меня сюда: http://packman.links2linux.org/package/chromium-ffmpeg-extra Похоже, это rpm пакет из openSUSE_Leap 15.0 и .so из него прекрасно завёлся.

programmador commented 5 years ago

На настоящий момент это http://packman.links2linux.org/download/chromium-ffmpeg-extra/3011196/chromium-ffmpeg-extra-69.0.3497.100-lp150.2.2.x86_64.rpm

alexws54tk commented 5 years ago

На странице оверлея версия ffmpeg старая.

Это связано с проблемами сборки кодеков при помощи шланга шестой и седьмой версий. См. сообщения в этой ветке и соседний тикет. У меня пока не получается стабильной не падающей сборки на этих версиях. Поэтому нету нового ебилда.

alexws54tk commented 5 years ago

@programmador Сегодня наткнулся на пакет кодеков для яндекса, сделанный из кодеков для оперы, сравнил с нашим ебилдом, немного почесал, и — оно у меня собралось. www-plugins/yandex-browser-ffmpeg-codecs-70.0.3538.102-r1.ebuild и соотв. пект www-plugins/yandex-browser-ffmpeg-codecs-70.0.3538.102-r1.tbz2

Пробуй.

programmador commented 5 years ago

Собрал, но не работает:

Found ffmpeg: /opt/yandex/browser-beta/libffmpeg.so
    avcodec: 3806570
    avformat: 3805541
    avutil: 3674726
FFmpeg version is too old. Need:
    avcodec: 3809125
    avformat: 3805799
    avutil: 3674981
alexws54tk commented 5 years ago

Добавил ебилд версии 71.0.3578.99 Теперь всё ОК.

% cd /opt/yandex/browser-beta                                    
% ./find_ffmpeg                                                  
Found ffmpeg: /opt/yandex/browser-beta/libffmpeg.so
    avcodec: 3809125
    avformat: 3805799
    avutil: 3674981
Ffmpeg version is OK! Let's use it.
/opt/yandex/browser-beta/libffmpeg.so