Summary: | Паковать плагин libffmpeg.so отдельно | ||||||
---|---|---|---|---|---|---|---|
Product: | Sisyphus | Reporter: | Sergey V Turchin <zerg> | ||||
Component: | ffmpeg-plugin-browser | Assignee: | Sergey V Turchin <zerg> | ||||
Status: | CLOSED FIXED | QA Contact: | qa-sisyphus | ||||
Severity: | normal | ||||||
Priority: | P5 | CC: | cas, darktemplar, lav, legion, rider, zerg | ||||
Version: | unstable | ||||||
Hardware: | x86_64 | ||||||
OS: | Linux | ||||||
Attachments: |
|
Description
Sergey V Turchin
2022-04-25 15:37:20 MSK
Created attachment 10653 [details]
Файлы упакечивания из Ubuntu
Видно, что в отдельном подпакете chromium-codecs-ffmpeg-extra следующее содержимое:
/usr/lib/chromium-browser/libffmpeg.so
/usr/share/doc/chromium-codecs-ffmpeg-extra/changelog.Debian.gz
/usr/share/doc/chromium-codecs-ffmpeg-extra/copyright
/usr/share/lintian/overrides/chromium-codecs-ffmpeg-extra
Я из описания ничего не понял. $ rpmquery -l chromium |grep -ic ffmpeg 0 и, простите, причём тут хромиум если речь в описании про какой-то Яндекс.Браузер ? В каталог /usr/lib*/chromium пакуются _только_ файлы chromium. Их не должны использовать другие пакеты. Если это где-то не так, то это ошибка в пакете. (Ответ для Alexey Gladkov на комментарий #2) > Я из описания ничего не понял. Нужен libffmpeg.so из пакета chromium упакованный отдельно. Не хочется отдельно городить ещё один src-пакет. > $ rpmquery -l chromium |grep -ic ffmpeg > 0 В Ubuntu в 100-м chromium есть. Я исхожу из этого. > и, простите, причём тут хромиум В Ubuntu chromium пакуют так. > если речь в описании про какой-то Яндекс.Браузер ? Не суть. Может ещё для кого-то пригодится. > В каталог /usr/lib*/chromium пакуются _только_ файлы chromium. Я хочу именно это. > Их не должны использовать другие пакеты. Но это не запрещено. > Если это где-то не так, то это ошибка в пакете. Мантейнеры этого пакета уже наверняка читают тут. Но, это не тема этого обсуждения. В нашем пакете ffmpeg собирается внутренний и не предоставляется в виде отдельного компонента в том числе, чтобы не было соблазна его использовать где-то ещё. Я не хочу поддерживать API/ABI библиотеки, которую правят разработчики chromium под свои нужды. Если cas@ захочет, то пусть и реализовывает, но и поддерживать будет только он. Я считаю это неправильным подходом. (Ответ для Sergey V Turchin на комментарий #3) > > Их не должны использовать другие пакеты. > Но это не запрещено. А пакету не запрещено не собирать отдельно свои внутренние компоненты. (Ответ для Alexey Gladkov на комментарий #4) > В нашем пакете ffmpeg собирается внутренний и не предоставляется в виде > отдельного компонента в том числе, чтобы не было соблазна его использовать > где-то ещё. На Ubuntu это не распространяется, поэтому происходит соблазн стащить его оттуда. > Я не хочу поддерживать API/ABI библиотеки, которую правят > разработчики chromium под свои нужды. Уверен, с этим проблем не будет. (Ответ для Alexey Gladkov на комментарий #6) > А пакету не запрещено не собирать отдельно свои внутренние компоненты. Вопрос только в том, что не хотелось делать ещё один отдельный src-пакет. (Ответ для Sergey V Turchin на комментарий #7) > (Ответ для Alexey Gladkov на комментарий #4) > > В нашем пакете ffmpeg собирается внутренний и не предоставляется в виде > > отдельного компонента в том числе, чтобы не было соблазна его использовать > > где-то ещё. > На Ubuntu это не распространяется, поэтому происходит соблазн стащить его > оттуда. Я не могу отвечать за других. Может быть там царит слабоумие и отвага, Может быть им пофиг. Кто знает. Но это внутренняя библиотека и нельзя гарантировать даже её наличие т.к. возможно завтра разработчики решат собираться с системным ffmpeg. Также это предложение ограничивает меня в действиях. Этот пакет одно время собирался с системной ffmpeg. Я был вынужден выключить это из-за того, что разработчики стали использовать символы, которые были только в их форке. Но это не значит, что хромиум будет собираться со своим ffmpeg всегда. Я не хочу всегда собирать их внутренний форк, потому что его кто-то использует. Если тебе нужен их ffmpeg, то собирай: https://chromium.googlesource.com/chromium/third_party/ffmpeg.git > > Я не хочу поддерживать API/ABI библиотеки, которую правят > > разработчики chromium под свои нужды. > Уверен, с этим проблем не будет. https://chromium.googlesource.com/chromium/third_party/ffmpeg.git/+/refs/heads/master/chromium/patches/README Они постоянно добавляют что-то и потом убирают или апстримят. С таким подходом я уверен будут проблемы. (Ответ для Alexey Gladkov на комментарий #9) > Но это внутренняя библиотека и нельзя гарантировать даже её наличие т.к. > возможно завтра разработчики решат собираться с системным ffmpeg. Значит, завтра у кого-то настанет момент что-то обдумать. > Также это предложение ограничивает меня в действиях. Этот пакет одно время > собирался с системной ffmpeg. Я был вынужден выключить это из-за того, что > разработчики стали использовать символы, которые были только в их форке. Но > это не значит, что хромиум будет собираться со своим ffmpeg всегда. Я не > хочу всегда собирать их внутренний форк, потому что его кто-то использует. В моём chromium/ffmpeg из qtwebengine я ещё ни разу не натыкался на эту проблему. > https://chromium.googlesource.com/chromium/third_party/ffmpeg.git Да, я знаю. (Ответ для Sergey V Turchin на комментарий #10) > > Также это предложение ограничивает меня в действиях. Этот пакет одно время > > собирался с системной ffmpeg. Я был вынужден выключить это из-за того, что > > разработчики стали использовать символы, которые были только в их форке. Но > > это не значит, что хромиум будет собираться со своим ffmpeg всегда. Я не > > хочу всегда собирать их внутренний форк, потому что его кто-то использует. > В моём chromium/ffmpeg из qtwebengine я ещё ни разу не натыкался на эту > проблему. > > > https://chromium.googlesource.com/chromium/third_party/ffmpeg.git > Да, я знаю. Если ты знаешь этот урл, то ты видел, что они используют свой форк как песочницу. В такой ситуации в принципе нельзя ничего обещать. Некому Яндекс.Браузеру нужно носить свою версию, потому что разные версии хромиума используют разные символы и если посмотреть по истории они то добавляются, то удаляются [1][2]. Мне лень сравнивать какие из этих символов были уникальными для форка в тот момент. [1] https://chromium.googlesource.com/chromium/third_party/ffmpeg.git/+/refs/heads/master/chromium/ffmpeg.sigs [2] https://git.altlinux.org/gears/c/chromium.git?p=chromium.git;a=history;f=third_party/ffmpeg/chromium/ffmpeg.sigs;h=83c90539b18b848aeae528d33b5d0cbec55c4fe4;hb=d3ecbfb94843fcb1ba432aa11a365257ba39ef25 (Ответ для Alexey Gladkov на комментарий #5) > Если cas@ захочет, то пусть и реализовывает, но и поддерживать будет только > он. Я считаю это неправильным подходом. Я не хочу заниматься этим. Вопрос сборки нужного для работы Яндекс Браузера пакета -- исключительно проблема собирающих Яндекс Браузер. Кроме того, кто бы не хотел использовать эту внутреннюю библиотеку он должен быть синхронизирован по версии самого хромиума. Сейчас форк и использующий его код обновляются синхронно. У нас в репозитории libavcodecXX накручены не просто так. Ну, что ж. Значит, я соберу. Да, действительно, мало смысла было даже в ffmpeg-chromium, т.к. жёсткая привязка на версию. Придётся собирать ffmpeg-yandex-browser. (Ответ для Sergey V Turchin на комментарий #16) > Да, действительно, мало смысла было даже в ffmpeg-chromium, т.к. жёсткая > привязка на версию. > Придётся собирать ffmpeg-yandex-browser. yandex-browser-stable-22.7.3.817-alt1 $ yandex-browser-stable Found ffmpeg: /usr/lib64/ffmpeg-plugin-browser/libffmpeg.so avcodec: 3871844 avformat: 3871077 avutil: 3740260 FFmpeg version is too old. Need: avcodec: 3873124 avformat: 3871844 avutil: 3741796 find_ffmpeg failed, using the integrated library. (Ответ для Vitaly Lipatov на комментарий #17) > find_ffmpeg failed, using the integrated library. https://git.altlinux.org/tasks/archive/done/_298/305287/ В будущем планируется избежать расхождений. перевешу на новый пакет, что бы не триггериться на ffmpeg. |