Сборка современного mpv

Что: b3c74ae056226b1e3952e51696cb6af9a1abfe0f

Когда: 2024-03-16 12:48:42+03:00

Темы: multimedia

Сборка современного mpv

https://www.opennet.ru/opennews/art.shtml?num=60788
Вышли тут кодеки SVT-AV1 и dav1d, где куча оптимизаций и улучшений. Я
ярый приверженец AV1 кодека. Обновил их -- mpv перестал запускаться
из-за другого имени библиотеки. Я почему-то подумал что это
FFmpeg-related вещь не запускается, поэтому пошёл и FFmpeg обновлять,
где тоже прилично изменений подъехало. mpv перестал собираться из-за
того, что то тут, то там (руками то одно, то другое попытался быстренько
поправить) mpv использовал deprecated API.

А сам mpv я давно не обновлял, ибо с какой-то версии что-то он начал
требовать касательно X11, чего в штатных X-ах из пакетов не было. У меня
поэтому он стоял на последнем коммите не требующим странность от X11. Но
это всё сильно устарело и не будет работать напротив современных FFmpeg.

Ладно, решил обновить таки mpv и посмотреть может чего исправилось.
Вместо WAF он стал использовать Meson. И обязательной зависимостью стала
libplacebo. Но, оказалось, что mpv предусмотрел возможность
использования её и её немалочисленных зависимостей через рекурсивную
инициализацию git модулей:
    git clone --depth=1 --recursive subprojects/libplacebo \
        https://code.videolan.org/videolan/libplacebo.git
Пришлось явно добавлять включение поддержки X11:
    meson setup -Dgpl=true -Dx11=enabled -Dalsa=disabled build
Но после всего этого -- вполне себе собирается и работает. В принципе,
даже стало менее геморройно его собирать, ибо прежде ещё приходилось
после сборки добавлять __progname+environ в build/mpv.def и пересобирать
снова. Плюс требовались разные несовместимые версии WAF. Как
проигрыватель, mpv хорош. Но его сборка это всегда была какой-то
постоянной проблемой. Плюс какие-то пертурбации с поддержкой OSS были.

оставить комментарий

Сгенерирован: SGBlog 0.34.0