diff options
Diffstat (limited to 'media-video')
18 files changed, 611 insertions, 393 deletions
diff --git a/media-video/Manifest.gz b/media-video/Manifest.gz Binary files differindex adb3211be162..adc61f029445 100644 --- a/media-video/Manifest.gz +++ b/media-video/Manifest.gz diff --git a/media-video/baka-mplayer/Manifest b/media-video/baka-mplayer/Manifest index 91aeef207dd9..a901796e2d51 100644 --- a/media-video/baka-mplayer/Manifest +++ b/media-video/baka-mplayer/Manifest @@ -1,8 +1,9 @@ AUX baka-mplayer-2.0.4-gcc5.patch 1251 BLAKE2B 9f514f754499f5b44ae4a077c2025dfa0a9949a5594c00cb1cdb7bd2fb22e1a113ea864076e7d6846bbe07f75e86346bf65a518c4ebf195d83b59aed22e97962 SHA512 3d6b76227c465869a4497f51cd5b7759d038638a02aa821acd099edb7f4f0fe99dbee145687d286eb40cb7dfb840fdee40625c663476630064e9e88a7961fc79 +AUX baka-mplayer-2.0.4-libmpv-api2.patch 3290 BLAKE2B 5815614a010a8e8da66354514998cc74c6b38421b7dbc142312497bd7fbf7ca889e15784167162e4e0d5ac0cbda3e6993c829f598bc6595017fe07b6ced3fa60 SHA512 ea1608ff7b9d3bd730e7624b400401f1a6777fa1a0bcea4e00bb2defb64c6a628f8f35ccf6fdec5d8b73799a0fec709a6b4298be0d8716577e9c2be94f81fc61 AUX baka-mplayer-2.0.4-mpv23.patch 782 BLAKE2B de90ac31fcbdd1cb9fb00eae1e282c6ff7e5ee14dd81bc2d8e07bd36250dcffa5de74dd83f2558bb15cae54ca83279c20f2776f315eea7f5b7a946e53a2e3f82 SHA512 9fda60f3569b88eb71d42562ef1650bfd125bf69f80b25ff1c123fb7efda524b7c14ae1f782d1786e9e68263f66db5af95a30c4e2e87468782da750eacbe456f AUX baka-mplayer-2.0.4-playlist-regression.patch 886 BLAKE2B b2c0edba4a2a0da89494dec05b78e7768a24af94f06fcda7fa4c4066800e673d551ed82f6b45d14f3f7f2d6d855d3e0be8535b5a6d3093fce90a9627e9f3c5c5 SHA512 3905ce72374c59edb09ed5a311ff257da3010386de9b076de516bd008c23d7e757d7c63151ac350bdc281a575b6387a96a44d1ac5e2229a1a325a3dfc5e6ace4 DIST baka-mplayer-2.0.4.tar.gz 988060 BLAKE2B 4d73e6626bab90b2ac818fdc1b0d8ab7758a924805ca8356c6fa94d25df9acbfd53d7e997b58e5c85b68e033f83ce89d6e3b0c3e30ecc23d7d75b4bf74ae0911 SHA512 7898d65e87540bcb528d429dc70daefc7d4c0711b2983326cf6fa3a14e566c2742334378befdb710b8cc59452f960bc17b290058ba9e6878e830de6dbafce55a EBUILD baka-mplayer-2.0.4-r1.ebuild 1399 BLAKE2B 4e82b0bc35b7740e5891e27412e9156db667106ac2655a5ef6c7c5764893ab73bad86a7362c3dee1a811a95d7bbc319c96d05487ee495a0efcc563520289129a SHA512 e9af289d999d8c35caf425a2a4af7524f5a5031160a5029f683598925f68ef5e567f2a38f18d6218dd5ea47e80d5eaf202b956b86443197d0141f9cd9564c21d -EBUILD baka-mplayer-2.0.4.ebuild 1135 BLAKE2B 22e814220d9493f077d266aee064a279e105d4ed4d35db3ffb8d3447b99580a9abe380042a1bd9a8fa9fe68138893f90bfff657c520168ff8d4cea1e73201431 SHA512 21bef7f1e283eb3a60cacb6502525ba46299aeaed11ae77da182755428adcfb526027452fbcdf80576854fa9d05d6eae5f720d9e10fe0e8ea5af649eb201a8f3 -EBUILD baka-mplayer-9999.ebuild 1187 BLAKE2B f2ce2028cc9c86799e1e676ccc4cf8fd2fd8dd663605deb74801ae812471295cf1f6537dea13a1960400abbc7f0694ed7015688ea2097575738227598fc8cf25 SHA512 c345059930ff6da0691eddd5e6c3a4c5c445af70bf4bb26b1492a65c337ad3c091455e2a22df67dc918774f7712971e727a9f3accd993adca0e6a3ce942cea46 +EBUILD baka-mplayer-2.0.4-r2.ebuild 1440 BLAKE2B 523350695ff4fa37ecbb515034e30fb257bc3db262cdee7e3a9b2015751f8f767d232c00231ac4b6dfe15d868901e9c3e8fcc1ec1b06680aecededc91870dc5d SHA512 b5e66cca00c3524df6de6a414ceef71fb0221f718c9af48dc3b6995f363f15ea5af5d2fb60baaa5c3c1fe3f7bb497a0f201fbadd078ddc528c78350c262e30b7 +EBUILD baka-mplayer-9999.ebuild 1189 BLAKE2B dc54a8dbb9a74fa208db31fd88afd8dae75db62875942e5e5509e63e5a31983c15240b81db5fefd0ebe46871867894db733427d1a125e89605d8b3a2a4566217 SHA512 255abc810d517ae7f1165c7a1989098c1315e3cb3b0384d78c8044c5064bb7163115d1ce04c5be39bf8d1d183a8ab31328d344bba140f63f26a09347c3bc08a7 MISC metadata.xml 741 BLAKE2B 5fea8a8b3fd803742c6f71acc12e35fddee71fe7deddd35c87bfa0a5bef853833ee19864f69986c141a573cbc65cb2ac8b4aa191a8eeb6b28acd05592200956e SHA512 03f290ffac4d0aa5a978d9fe5e7e7a76e83de243c73e920c045a43b333bdc039a2e09f8f65c56dbc77ef7865b2360fc6bb34eaaf64f4a2df992d30dafafb8331 diff --git a/media-video/baka-mplayer/baka-mplayer-2.0.4.ebuild b/media-video/baka-mplayer/baka-mplayer-2.0.4-r2.ebuild index 17edd2e0d77c..824dc5776b15 100644 --- a/media-video/baka-mplayer/baka-mplayer-2.0.4.ebuild +++ b/media-video/baka-mplayer/baka-mplayer-2.0.4-r2.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 -inherit qmake-utils +inherit qmake-utils xdg-utils DESCRIPTION="Cross-platform libmpv-based multimedia player with uncluttered design" HOMEPAGE="http://bakamplayer.u8sand.net/" @@ -11,7 +11,7 @@ SRC_URI="https://github.com/u8sand/Baka-MPlayer/archive/v${PV}.tar.gz -> ${P}.ta LICENSE="GPL-2" SLOT="0" -KEYWORDS="amd64 ~x86" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" IUSE="" BDEPEND=" @@ -25,20 +25,27 @@ RDEPEND=" dev-qt/qtsvg:5 dev-qt/qtwidgets:5 dev-qt/qtx11extras:5 - media-video/mpv[libmpv] - x11-libs/libX11" + media-video/mpv:=[libmpv] + x11-libs/libX11 +" DEPEND="${RDEPEND}" S="${WORKDIR}/Baka-MPlayer-${PV}" -PATCHES=( "${FILESDIR}/${P}-gcc5.patch" ) +PATCHES=( + "${FILESDIR}/${P}-gcc5.patch" + "${FILESDIR}/${P}-mpv23.patch" + "${FILESDIR}/${P}-playlist-regression.patch" + "${FILESDIR}/${P}-libmpv-api2.patch" +) src_prepare() { default - # no need to install license - sed -e '/^INSTALLS/s:license::' -i src/Baka-MPlayer.pro || die - # put manual in our docdir - sed -e '/^manual.path/s:'${PN}':'${PF}':' -i src/Baka-MPlayer.pro || die + # don't install license, man.gz, install the latter manually + sed -e "/^INSTALLS/s:\sman\slicense::" \ + -e '/^manual.path/s:'${PN}':'${PF}':' \ + -i src/Baka-MPlayer.pro || die + gunzip DOCS/baka-mplayer.1.gz || die } src_configure() { @@ -49,3 +56,16 @@ src_configure() { lupdate="$(qt5_get_bindir)"/lupdate \ src/Baka-MPlayer.pro } + +src_install() { + default + doman DOCS/baka-mplayer.1 +} + +pkg_postinst() { + xdg_icon_cache_update +} + +pkg_postrm() { + xdg_icon_cache_update +} diff --git a/media-video/baka-mplayer/baka-mplayer-9999.ebuild b/media-video/baka-mplayer/baka-mplayer-9999.ebuild index 243a21f1b8af..8b7d359ed552 100644 --- a/media-video/baka-mplayer/baka-mplayer-9999.ebuild +++ b/media-video/baka-mplayer/baka-mplayer-9999.ebuild @@ -25,7 +25,7 @@ RDEPEND=" dev-qt/qtsvg:5 dev-qt/qtwidgets:5 dev-qt/qtx11extras:5 - media-video/mpv[libmpv] + media-video/mpv:=[libmpv] x11-libs/libX11 " DEPEND="${RDEPEND}" diff --git a/media-video/baka-mplayer/files/baka-mplayer-2.0.4-libmpv-api2.patch b/media-video/baka-mplayer/files/baka-mplayer-2.0.4-libmpv-api2.patch new file mode 100644 index 000000000000..9ae547b9291f --- /dev/null +++ b/media-video/baka-mplayer/files/baka-mplayer-2.0.4-libmpv-api2.patch @@ -0,0 +1,78 @@ +https://github.com/u8sand/Baka-MPlayer/commit/7864f248c3f +From: Fushan Wen <qydwhotmail@gmail.com> +Date: Mon, 21 Feb 2022 18:50:46 +0800 +Subject: [PATCH] Port away from deprecated/removed APIs in mpv 2.0 + +Register observers as MPV_EVENT_IDLE is deprecated and +MPV_EVENT_PAUSE/MPV_EVENT_UNPAUSE have been removed. +--- a/src/mpvhandler.cpp ++++ b/src/mpvhandler.cpp +@@ -41,6 +41,8 @@ MpvHandler::MpvHandler(int64_t wid, QObject *parent): + mpv_observe_property(mpv, 0, "sub-visibility", MPV_FORMAT_FLAG); + mpv_observe_property(mpv, 0, "mute", MPV_FORMAT_FLAG); + mpv_observe_property(mpv, 0, "core-idle", MPV_FORMAT_FLAG); ++ mpv_observe_property(mpv, 0, "idle-active", MPV_FORMAT_FLAG); ++ mpv_observe_property(mpv, 0, "pause", MPV_FORMAT_FLAG); + mpv_observe_property(mpv, 0, "paused-for-cache", MPV_FORMAT_FLAG); + + // setup callback event handling +@@ -191,6 +193,31 @@ bool MpvHandler::event(QEvent *event) + ShowText(QString(), 0); + } + } ++ else if(QString(prop->name) == "idle-active") ++ { ++ if(prop->format == MPV_FORMAT_FLAG) ++ { ++ if((bool)*(unsigned*)prop->data) ++ { ++ fileInfo.length = 0; ++ setTime(0); ++ setPlayState(Mpv::Idle); ++ } ++ } ++ } ++ else if(QString(prop->name) == "pause") ++ { ++ if(prop->format == MPV_FORMAT_FLAG) ++ { ++ if((bool)*(unsigned*)prop->data) ++ { ++ setPlayState(Mpv::Paused); ++ ShowText(QString(), 0); ++ } ++ else ++ setPlayState(Mpv::Playing); ++ } ++ } + else if(QString(prop->name) == "paused-for-cache") + { + if(prop->format == MPV_FORMAT_FLAG) +@@ -203,12 +230,7 @@ bool MpvHandler::event(QEvent *event) + } + break; + } +- case MPV_EVENT_IDLE: +- fileInfo.length = 0; +- setTime(0); +- setPlayState(Mpv::Idle); +- break; +- // these two look like they're reversed but they aren't. the names are misleading. ++ // these two look like they're reversed but they aren't. the names are misleading. + case MPV_EVENT_START_FILE: + setPlayState(Mpv::Loaded); + break; +@@ -216,13 +238,6 @@ bool MpvHandler::event(QEvent *event) + setPlayState(Mpv::Started); + LoadFileInfo(); + SetProperties(); +- case MPV_EVENT_UNPAUSE: +- setPlayState(Mpv::Playing); +- break; +- case MPV_EVENT_PAUSE: +- setPlayState(Mpv::Paused); +- ShowText(QString(), 0); +- break; + case MPV_EVENT_END_FILE: + if(playState == Mpv::Loaded) + ShowText(tr("File couldn't be opened")); diff --git a/media-video/celluloid/Manifest b/media-video/celluloid/Manifest index 5e5d317b3b3d..1c19e86e8622 100644 --- a/media-video/celluloid/Manifest +++ b/media-video/celluloid/Manifest @@ -1,5 +1,3 @@ -DIST celluloid-0.20.tar.xz 388972 BLAKE2B 9f60bef311a33ed86a78b11742e9ea547dafe0431aba41d9f11a786c17ed6f67480f65507cca27223e7f0d1dfadc2c98f16eb3160a5e25f2165b696f15107e17 SHA512 53bb7ea155cf0b2b96da67851ec598782601ecb68504d4355aa03544fc89c0f64aefb507217d08f8ce49d2b7877215365c9ccce69f5f355ed1792a94ea1a6093 DIST celluloid-0.21.tar.xz 413072 BLAKE2B 726eb035f15c24333151833ded843be611b6d6340d77de13f38d29f92307da1e30c63c657e654327f10b617987f8800e59b72e28bcc65cdcad4ef9ab002214c4 SHA512 6e48d982be127c21cc6afeec8e94ae5c78c667f865690f8fad6db2f0b8290922682334c4d905827e99765dc2084c1b8a36927ff3de485a7a456f4a2fb7058ae6 -EBUILD celluloid-0.20.ebuild 699 BLAKE2B dd4ff1e613ec1e4be49318b92fde90d07a4c3d33176f16c8ffc79bc13e034e1714b28e9c039b87db6731dcb3c09cef8a884c299aa57dbd888c473356e4fa0ae1 SHA512 d5be2ee8bb621a1cb39de249cb96a4452212cf067ad5707a8cf61179c963ed22467df4ba620d0c56d87b7ca64c764f46ca14060284fe7f9496aa507ce0243ebd -EBUILD celluloid-0.21.ebuild 706 BLAKE2B d88cfdc7af694da34a784dc56d8416f518f496f90c78c0614124abe77f24950af93c68e47ea92330ff03929d929b685f9ee85e284016e0b7f3efb64961b76d31 SHA512 60411f443d8a522c7c946b351edf6ea02224bf0abb8465284fac8a274a9a393276154ebd0015e40bc3168016a019c9e1e5031cbb7105d97d75c37987cfbee268 +EBUILD celluloid-0.21-r1.ebuild 717 BLAKE2B 3b4e362fb63f14a372a61e5c960270763d57399f60df5f1e266c8422380355fe78374ecb8b376f670d7eaecbffd2840b22f335eca7329425a972b78687be9720 SHA512 8e4cecfff17f61f1b4c0b8b3dc635bd7b8dce22801ea9638961e56d2b836b6f5cc0e2c4e8edcbb9d14394aa7d6a3ae2249e073e12e72395b46cb90d3d0cbaa9e MISC metadata.xml 241 BLAKE2B 976bb17a5de85e86e06973e02e7dfe782e7b4c2942907deaa9ec15a2d9a47d7eec5ff256069f78e789b7059a061c98641aaff1d21618b68c27fdccdc9474b08d SHA512 6a57f01af8ea264571202d1dcce35b702a444fb9da3e3fdc3930a349b19f9edac50fc04fa4facea682e9584c585c145aec629b2845a4c344332d7dac7d7005e3 diff --git a/media-video/celluloid/celluloid-0.20.ebuild b/media-video/celluloid/celluloid-0.20.ebuild deleted file mode 100644 index ac13348c00be..000000000000 --- a/media-video/celluloid/celluloid-0.20.ebuild +++ /dev/null @@ -1,33 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit gnome2-utils meson xdg - -DESCRIPTION="A simple GTK+ frontend for mpv" -HOMEPAGE="https://celluloid-player.github.io/" -SRC_URI="https://github.com/celluloid-player/celluloid/releases/download/v${PV}/${P}.tar.xz" - -LICENSE="GPL-3+" -SLOT="0" -KEYWORDS="amd64 ~ppc64" - -RDEPEND=">=dev-libs/glib-2.44 - >=x11-libs/gtk+-3.22.23:3 - >=media-video/mpv-0.32[libmpv] - media-libs/libepoxy" -DEPEND="${RDEPEND} - dev-util/glib-utils - >=sys-devel/gettext-0.19.8 - virtual/pkgconfig" - -pkg_postinst() { - xdg_pkg_postinst - gnome2_schemas_update -} - -pkg_postrm() { - xdg_pkg_postrm - gnome2_schemas_update -} diff --git a/media-video/celluloid/celluloid-0.21.ebuild b/media-video/celluloid/celluloid-0.21-r1.ebuild index 447feb7364ca..83ea74a460b0 100644 --- a/media-video/celluloid/celluloid-0.21.ebuild +++ b/media-video/celluloid/celluloid-0.21-r1.ebuild @@ -15,10 +15,10 @@ KEYWORDS="amd64 ~arm64 ~ppc64" RDEPEND=">=dev-libs/glib-2.44 >=x11-libs/gtk+-3.22.23:3 - >=media-video/mpv-0.32[libmpv] + >=media-video/mpv-0.32:=[libmpv] media-libs/libepoxy" -DEPEND="${RDEPEND} - dev-util/glib-utils +DEPEND="${RDEPEND}" +BDEPEND="dev-util/glib-utils >=sys-devel/gettext-0.19.8 virtual/pkgconfig" diff --git a/media-video/jellyfin-media-player/Manifest b/media-video/jellyfin-media-player/Manifest index 17c29ae148b7..2310f5c1fdb7 100644 --- a/media-video/jellyfin-media-player/Manifest +++ b/media-video/jellyfin-media-player/Manifest @@ -1,5 +1,3 @@ -DIST jellyfin-media-player-1.7.0.tar.gz 574396 BLAKE2B 074495988f10e456f3c5cd8c3c0bf470c68df770163403aa6cfc0e1e0b6f51127d9640632f1ad6bf33b5302063971d63c84c86d2d83755991f309bf8882c16f3 SHA512 ebf1ce7d5cbd958ce81ed0f2e2a70e33b26cfeab55eb1acd5b465ec228f8dfa8ee27490cf31099244f022400dd5066e3f685863d841ebb68e31a124c912b5d5d DIST jellyfin-media-player-1.7.1.tar.gz 575001 BLAKE2B b650f981427721a254fd1dcaa58ebf9f93aba47de50f8c24db27e917de8cd8ebb3da67afa68990845f9e019aac0c8d81f5440dd72f604aa74cdc71d8cc476d8f SHA512 7f8cd4c9094254a133430b1d1594d44a92696cd769323ecc51ef973dde1f09b013f9ade0affb9e364d922935994613f662667af46f90aae2ae04d6cb9deb86f0 -EBUILD jellyfin-media-player-1.7.0.ebuild 1749 BLAKE2B acba1565fd7ce4c2c9e0fde57e17680c10127e77acbd5b9305c97d749029ac05a35a06745aebc617f674fe9fe6f0f674b88783236b912fb2d61ec842c1f9b491 SHA512 71d14b2b8f2a22e4d6638779283887e8616c4f1309db90937a87d66893b31edc4f20d19466d49d18c90f4db1420a2afecef4a218b3f34b12860e957e91eef575 -EBUILD jellyfin-media-player-1.7.1.ebuild 1749 BLAKE2B 13394d13a4424cfe09d81b2dd166bf9c12a302d62f8819ddac83a3aac9f02cb89e8e16dee93fd67de6cc3ea9e927c1fdc26843ea65acc79d568594f3777ed4ad SHA512 d7db61b98a6f18f578ea96798ca0a75b0e7c3b929440886c3e854800cec7497312c7a1117aef0136cf915010758178336093033e15e14e98f537ed9bafdde7ac +EBUILD jellyfin-media-player-1.7.1-r1.ebuild 1751 BLAKE2B 7f4854fc4fc348d71d6ffb86dd34b81d46295ecd339a748ef356b5f3c076c38bfd4a7936ea002528069229b1e64e4c4512964cc44afc2e2f1717eed0cc5ee3cc SHA512 5fb326b82140b15a5faddadca9d4f091d02712d87951090a8013a61fb24d45917e3f0a878bbc484dea2e3836daf94d13fe42094fe0b4cdabfdb9e80e482391eb MISC metadata.xml 514 BLAKE2B b1e93ea1ee93d768cdbe7ffa4251b3d647fd39a1f9df6386b3fadaae2420d43358259401c0f0430c4a73adbb7f909614f4c983dd20071fd3e83848ba636013ce SHA512 7640bce309c006863708f7366809bb11a8675e83ae034bec35089e3a4c9fb32713340ee9a22781ab2b56a8454c5cff870c701389de9531f008a5e7f5fda0b533 diff --git a/media-video/jellyfin-media-player/jellyfin-media-player-1.7.0.ebuild b/media-video/jellyfin-media-player/jellyfin-media-player-1.7.0.ebuild deleted file mode 100644 index 348aa5bf5dcc..000000000000 --- a/media-video/jellyfin-media-player/jellyfin-media-player-1.7.0.ebuild +++ /dev/null @@ -1,85 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -JWC_VERSION=10.8.0 - -PYTHON_COMPAT=( python3_{8..11} ) -inherit cmake python-any-r1 - -DESCRIPTION="Jellyfin Desktop Client based on Plex Media Player" -HOMEPAGE="https://github.com/jellyfin/jellyfin-media-player" - -SRC_URI=" - https://github.com/jellyfin/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz -" -# GPL-2.0 for JMP itself -# licenses for code in external/: -# MIT for qhttp -# BSD for qslog -LICENSE=" - GPL-2 - BSD - MIT -" -SLOT="0" - -KEYWORDS="~amd64" -IUSE="+dbus" - -DEPEND=" - dev-libs/libcec - dev-qt/qtcore:5 - dev-qt/qtdeclarative:5 - dev-qt/qtgui:5 - dev-qt/qtnetwork:5 - dev-qt/qtquickcontrols:5 - dev-qt/qtwebchannel:5 - dev-qt/qtwebengine:5 - dev-qt/qtwidgets:5 - dev-qt/qtwidgets:5 - dev-qt/qtx11extras:5 - dev-qt/qtxml:5 - media-libs/libsdl2 - media-video/mpv[libmpv] - sys-libs/zlib - virtual/opengl - x11-libs/libX11 - x11-libs/libXrandr - dbus? ( dev-qt/qtdbus:5 ) -" - -BDEPEND=" - ${PYTHON_DEPS} - virtual/pkgconfig -" - -# x11-misc/xdg-utils is used for xdg-screensaver, which is used to inhibit -# screen locking - -RDEPEND=" - ${DEPEND} - ~media-video/jellyfin-web-jmp-bin-${JWC_VERSION} - !dbus? ( x11-misc/xdg-utils ) -" - -src_prepare() { - # disable jmp installing jwc in it's build system - sed -i '/..\/dist\//d' src/CMakeLists.txt || die 'sed failed' - - cmake_src_prepare -} - -src_configure() { - local mycmakeargs=( - -DOpenGL_GL_PREFERENCE=GLVND - # PMP, at least prior to the fork into JMP, used to download codecs, - # for safe measure, disable that. - -DENABLE_CODECS=OFF - # LINUX_X11POWER instructs JMP to use xdg-screensaver instead of dbus - # for inhibiting screen saving. - -DLINUX_X11POWER="$(usex dbus OFF ON)" - ) - cmake_src_configure -} diff --git a/media-video/jellyfin-media-player/jellyfin-media-player-1.7.1.ebuild b/media-video/jellyfin-media-player/jellyfin-media-player-1.7.1-r1.ebuild index 3c158eb6555d..e6aa73578b71 100644 --- a/media-video/jellyfin-media-player/jellyfin-media-player-1.7.1.ebuild +++ b/media-video/jellyfin-media-player/jellyfin-media-player-1.7.1-r1.ebuild @@ -42,7 +42,7 @@ DEPEND=" dev-qt/qtx11extras:5 dev-qt/qtxml:5 media-libs/libsdl2 - media-video/mpv[libmpv] + media-video/mpv:=[libmpv] sys-libs/zlib virtual/opengl x11-libs/libX11 diff --git a/media-video/mpv/Manifest b/media-video/mpv/Manifest index e3d1ea637032..f4bb3fbb1e27 100644 --- a/media-video/mpv/Manifest +++ b/media-video/mpv/Manifest @@ -1,6 +1,8 @@ AUX mpv-9999-docdir.patch 536 BLAKE2B eeb4bec0a51a68515c7c321a4419679e4b6d0567db2145ce44f0ff5141b2043ec3de057607dca0798f2d63f7b5f2e8fde3ed87be725e156e0b769ca561598702 SHA512 e8a122dec7adea75681e285378d99a7f94f4f75926cbde65dd5f0c7014b4a49d4567e719d92a9d9d428f8f746ff0cd3495ba59c5e7b3acb43d83329a10b338c5 DIST mpv-0.34.1.tar.gz 3288356 BLAKE2B c0e5dc3cd23307449a526bd2cf0df5d870322aa1914a139784fd50d77274d42648a769ee4da3ba74e34a7a080700a5740dae13ed0827df1b3cfef36846f983ab SHA512 77ea349d6999f8cce9b5cce4cebd3506a224fc18ab08d22dd16bd34c34d012bb170879b268ddd62db40d116b4cc0b2d9d651b8097f387ed9115c426834cac77e +DIST mpv-0.34.1_p20221105.tar.gz 3366581 BLAKE2B 52bf8f339e6535c17430d4a8f865a4559681200bfff379e98104ad1365addade3899a3339ae480c23f7e8470623374395aa2e948ee3d616fa8ce152821340fd0 SHA512 a246087a5af191459af71c729e5da5f09a7466792774e1114b8775294ed1de6a9d882e0d2076e35f7d09cd2a57780f504fedbbfc572fb533dc1d72f87e59dabc DIST waf-2.0.22 104880 BLAKE2B 6cae9e764712012ef97f790c723b86a2603dc64e9bafcec02c5251dbc1b23ec629db26c02eee2a72a77cf70c11d2729a626ea71f3cb50a6281257fd6f63eadf0 SHA512 4156cefa65b7e6349ddb1ca643bbdf3e4444449d137e5f595535564271d521362291f257765329015671584ac2c596a0ad98cfdbd621f5d5352141a55d384292 EBUILD mpv-0.34.1-r1.ebuild 9733 BLAKE2B 7c2c0935efc35f23a5389f4f9e367e3e0e0dc862b27b27c816edcaf0623c5dc9879ccef5e3519fc35b9be1ae87b3ba80f5e60dd430bbb43df581245e92b3be80 SHA512 64f06b5d6e16d943d4bf614117304839c09cb34cba4ce561b5e68c826e83672a0e9218a486de68fd506ce9c7b2a50e92b0627c66c3ebe048175c214dabd09aba -EBUILD mpv-9999.ebuild 9318 BLAKE2B f24bafee78b38fe48f1ab415541318a0a171b2f83b6e8b839e3bdda9b64410dd01d1ad3436bbd155f138a7704ec120ddd89de0732725b14c07b2b2468ebd803a SHA512 b3014d8ee025d73668ad7f8c1ff4f5b3a829eafc0cb7493de07d10f2483cac7070a517e178582d4d82c5e6a46bbf522f790f58925f9d4d1590293bbb7dedde05 -MISC metadata.xml 2668 BLAKE2B 986eaf5b4d8b23a76b0d5b921d54b26006dde9e4547ea73356a7870b7bb93213188ef6b69825f3b6cd29fbc835315e0538aad127bbe18fbe0d9a7b8ef703fddc SHA512 a2b9e21028281edbdb3c6343a391c323f1452e7cdfc07eefee07797153111d32e963aab8265d9c8ea0f9f5ef6790f465e9777e4b2bde8c66303b864739bf45b5 +EBUILD mpv-0.34.1_p20221105.ebuild 7389 BLAKE2B 742c5b973fabaca9261248deabcf08de55e67183d5f4758f01ea3f2fc7987a043edb27d04709c0766c059d5a99ca1b387110f67c37191e6d4a9267b8cf7f1721 SHA512 60d1f0bbfe057a4baabd80d4d49e3872e6eaf3b972c2aeb251989c0fa8bd61116e3fd51bf635c69e491eede9a853b0f4a06948e5fbf23c7140a1d26917a477cc +EBUILD mpv-9999.ebuild 7389 BLAKE2B 742c5b973fabaca9261248deabcf08de55e67183d5f4758f01ea3f2fc7987a043edb27d04709c0766c059d5a99ca1b387110f67c37191e6d4a9267b8cf7f1721 SHA512 60d1f0bbfe057a4baabd80d4d49e3872e6eaf3b972c2aeb251989c0fa8bd61116e3fd51bf635c69e491eede9a853b0f4a06948e5fbf23c7140a1d26917a477cc +MISC metadata.xml 2790 BLAKE2B e080803b3907aadd28e9d0b54177cf210def169d84242503b6bca102a621d0f75bd19a6e9ee2939aaae070bd9e09b6b33c10bba481d5e8db0927035057c048be SHA512 50ca35e8cb726bd6828801f97d49a3bd748051de8d4d94f8c21b3a63db28877b02de0d4599a92a9228113104314d7a99dc8c1a1c9a4e779a785382d74bf12bac diff --git a/media-video/mpv/metadata.xml b/media-video/mpv/metadata.xml index 60caeb2ccc60..76c201612ef0 100644 --- a/media-video/mpv/metadata.xml +++ b/media-video/mpv/metadata.xml @@ -20,6 +20,7 @@ <flag name="gbm">Enable Graphics Buffer Manager based EGL video backend</flag> <flag name="jpeg">Enable support for saving screenshots in JPEG format</flag> <flag name="libmpv">Build mpv shared library</flag> + <flag name="libplacebo">Enable support for GPU accelerated video rendering with <pkg>media-libs/libplacebo</pkg></flag> <flag name="lua">Enable Lua scripting, OSC (On Screen Controller) GUI and <pkg>net-misc/youtube-dl</pkg> hook-script</flag> <flag name="mmal">Enables Multi-Media Abstraction Layer (MMAL) decoding support: Available e.g. on the Raspberry Pi.</flag> <flag name="opengl" restrict="<media-video/mpv-0.28.0">Enable the recommended 'opengl' video output</flag> diff --git a/media-video/mpv/mpv-0.34.1_p20221105.ebuild b/media-video/mpv/mpv-0.34.1_p20221105.ebuild new file mode 100644 index 000000000000..44b6c139ad77 --- /dev/null +++ b/media-video/mpv/mpv-0.34.1_p20221105.ebuild @@ -0,0 +1,289 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LUA_COMPAT=( lua5-1 luajit ) +PYTHON_COMPAT=( python3_{8..11} ) +inherit edo flag-o-matic lua-single meson optfeature pax-utils python-single-r1 xdg + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/mpv-player/mpv.git" +else + HASH_MPV=c416a38ef227067ef7b81b9650a13157300cdfbe + SRC_URI="https://github.com/mpv-player/mpv/archive/${HASH_MPV}.tar.gz -> ${P}.tar.gz" + S="${WORKDIR}/${PN}-${HASH_MPV}" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux" +fi + +DESCRIPTION="Media player for the command line" +HOMEPAGE="https://mpv.io/" + +LICENSE="LGPL-2.1+ GPL-2+ BSD ISC MIT" #506946 +SLOT="0/2" # soname +IUSE=" + +X +alsa aqua archive bluray cdda +cli coreaudio debug drm dvb + dvd +egl gamepad +iconv jack javascript jpeg lcms libcaca libmpv + +libplacebo +lua mmal nvenc openal opengl pipewire pulseaudio + raspberry-pi rubberband sdl selinux sndio test tools +uchardet + vaapi vdpau +vector vulkan wayland +xv zimg zlib" +REQUIRED_USE=" + ${PYTHON_REQUIRED_USE} + || ( cli libmpv ) + egl? ( || ( X drm wayland ) ) + libplacebo? ( || ( egl opengl vulkan ) ) + lua? ( ${LUA_REQUIRED_USE} ) + nvenc? ( || ( egl opengl vulkan ) ) + opengl? ( || ( X aqua ) ) + test? ( cli ) + tools? ( cli ) + uchardet? ( iconv ) + vaapi? ( || ( X egl libplacebo wayland ) ) + vdpau? ( X ) + vulkan? ( || ( X wayland ) libplacebo ) + xv? ( X )" +RESTRICT="!test? ( test )" + +COMMON_DEPEND=" + media-libs/libass:=[fontconfig] + media-video/ffmpeg:=[encode,threads,vaapi?,vdpau?] + X? ( + x11-libs/libX11 + x11-libs/libXScrnSaver + x11-libs/libXext + x11-libs/libXinerama + x11-libs/libXpresent + x11-libs/libXrandr + xv? ( x11-libs/libXv ) + ) + alsa? ( media-libs/alsa-lib ) + archive? ( app-arch/libarchive:= ) + bluray? ( media-libs/libbluray:= ) + cdda? ( + dev-libs/libcdio-paranoia:= + dev-libs/libcdio:= + ) + drm? ( + media-libs/mesa[gbm(+)] + x11-libs/libdrm + ) + dvd? ( + media-libs/libdvdnav + media-libs/libdvdread:= + ) + egl? ( media-libs/libglvnd ) + gamepad? ( media-libs/libsdl2[joystick] ) + iconv? ( + virtual/libiconv + uchardet? ( app-i18n/uchardet ) + ) + jack? ( virtual/jack ) + javascript? ( dev-lang/mujs:= ) + jpeg? ( media-libs/libjpeg-turbo:= ) + lcms? ( media-libs/lcms:2 ) + libcaca? ( media-libs/libcaca ) + libplacebo? ( + >=media-libs/libplacebo-4.202:=[opengl?,vulkan?] + egl? ( media-libs/libplacebo[opengl] ) + ) + lua? ( ${LUA_DEPS} ) + openal? ( media-libs/openal ) + opengl? ( media-libs/libglvnd[X?] ) + pipewire? ( media-video/pipewire:= ) + pulseaudio? ( media-libs/libpulse ) + raspberry-pi? ( media-libs/raspberrypi-userland ) + rubberband? ( media-libs/rubberband ) + sdl? ( media-libs/libsdl2[sound,threads,video] ) + sndio? ( media-sound/sndio:= ) + vaapi? ( media-libs/libva:=[X?,drm(+)?,wayland?] ) + vdpau? ( x11-libs/libvdpau ) + vulkan? ( + media-libs/shaderc + media-libs/vulkan-loader[X?,wayland?] + ) + wayland? ( + dev-libs/wayland + dev-libs/wayland-protocols + x11-libs/libxkbcommon + ) + zimg? ( media-libs/zimg ) + zlib? ( sys-libs/zlib:= )" +RDEPEND=" + ${COMMON_DEPEND} + selinux? ( sec-policy/selinux-mplayer ) + tools? ( ${PYTHON_DEPS} )" +DEPEND=" + ${COMMON_DEPEND} + X? ( x11-base/xorg-proto ) + dvb? ( virtual/linuxtv-dvb-headers ) + nvenc? ( media-libs/nv-codec-headers ) + wayland? ( dev-libs/wayland-protocols )" +BDEPEND=" + ${PYTHON_DEPS} + virtual/pkgconfig + cli? ( dev-python/docutils ) + wayland? ( dev-util/wayland-scanner )" + +pkg_setup() { + use lua && lua-single_pkg_setup + python-single-r1_pkg_setup +} + +src_prepare() { + default + + [[ ${PV} == 9999 ]] || sed -i "s/UNKNOWN/${HASH_MPV::11}/" VERSION || die + + sed -i "s/'rst2html/&.py/" meson.build || die +} + +src_configure() { + if use !debug; then + if use test; then + einfo "Skipping -DNDEBUG due to USE=test" + else + append-cppflags -DNDEBUG # treated specially + fi + fi + + if use raspberry-pi; then + append-cflags -I"${ESYSROOT}"/opt/vc/include + append-ldflags -L"${ESYSROOT}"/opt/vc/lib + fi + + mpv_feature_multi() { + local use set + for use in ${1} ${2}; do + use ${use} || set=disabled + done + echo -D${3-${2}}=${set-enabled} + } + + local emesonargs=( + $(meson_use cli cplayer) + $(meson_use libmpv) + $(meson_use test tests) + + $(meson_feature cli html-build) + $(meson_feature cli manpage-build) + -Dpdf-build=disabled + + -Dbuild-date=false + + # misc options + $(meson_feature archive libarchive) + $(meson_feature bluray libbluray) + $(meson_feature cdda) + -Dcplugins=enabled + $(meson_feature dvb dvbin) + $(meson_feature dvd dvdnav) + $(meson_feature gamepad sdl2-gamepad) + $(meson_feature iconv) + $(meson_feature javascript) + -Dlibavdevice=enabled + $(meson_feature lcms lcms2) + -Dlua=$(usex lua "${ELUA}" disabled) + $(meson_feature rubberband) + -Dsdl2=$(use gamepad || use sdl && echo enabled || echo disabled) #857156 + $(meson_feature uchardet) + -Dvapoursynth=disabled # only available in overlays + $(meson_feature vector) + $(meson_feature zimg) + $(meson_feature zlib) + + # audio output + $(meson_feature alsa) + $(meson_feature coreaudio) + $(meson_feature jack) + $(meson_feature openal) + $(meson_feature pipewire) + $(meson_feature pulseaudio pulse) + $(meson_feature sdl sdl2-audio) + $(meson_feature sndio) + + # video output + $(meson_feature X x11) + $(meson_feature aqua cocoa) + $(meson_feature drm) + $(meson_feature drm gbm) + $(meson_feature jpeg) + $(meson_feature libcaca caca) + $(meson_feature libplacebo) + $(meson_feature mmal rpi-mmal) + $(meson_feature sdl sdl2-video) + -Dsixel=disabled # TODO? needs keywording/testing + $(meson_feature wayland) + $(meson_feature xv) + + -Dgl=$(use egl || use libmpv || use opengl || use raspberry-pi && + echo enabled || echo disabled) + $(meson_feature egl) + $(mpv_feature_multi egl X egl-x11) + $(mpv_feature_multi egl drm egl-drm) + $(mpv_feature_multi egl wayland egl-wayland) + $(meson_feature libmpv plain-gl) + $(mpv_feature_multi opengl X gl-x11) + $(mpv_feature_multi opengl aqua gl-cocoa) + $(meson_feature raspberry-pi rpi) + + $(meson_feature vulkan) + $(meson_feature vulkan shaderc) + + # hardware decoding + $(meson_feature nvenc cuda-hwaccel) + $(meson_feature nvenc cuda-interop) + + $(meson_feature vaapi) + $(mpv_feature_multi vaapi X vaapi-x11) + $(mpv_feature_multi 'vaapi X' egl vaapi-x-egl) + $(mpv_feature_multi 'vaapi egl' drm vaapi-drm) + $(mpv_feature_multi 'vaapi egl' wayland vaapi-wayland) + + $(meson_feature vdpau) + $(mpv_feature_multi vdpau opengl vdpau-gl-x11) + + $(mpv_feature_multi aqua opengl videotoolbox-gl) + ) + + meson_src_configure +} + +src_test() { + # https://github.com/mpv-player/mpv/blob/master/DOCS/man/options.rst#debugging + edo "${BUILD_DIR}"/mpv --no-config -v --unittest=all-simple +} + +src_install() { + meson_src_install + + if use lua; then + insinto /usr/share/${PN} + doins -r TOOLS/lua + + if use cli && use lua_single_target_luajit; then + pax-mark -m "${ED}"/usr/bin/${PN} + fi + fi + + if use tools; then + dobin TOOLS/{mpv_identify.sh,umpv} + newbin TOOLS/idet.sh mpv_idet.sh + python_fix_shebang "${ED}"/usr/bin/umpv + fi + + if use cli; then + dodir /usr/share/doc/${PF}/html + mv "${ED}"/usr/share/doc/{mpv,${PF}/html}/mpv.html || die + mv "${ED}"/usr/share/doc/{mpv,${PF}/examples} || die + fi + + local GLOBIGNORE=*/*build*:*/*policy* + dodoc RELEASE_NOTES DOCS/*.{md,rst} +} + +pkg_postinst() { + xdg_pkg_postinst + + optfeature "URL support" net-misc/yt-dlp +} diff --git a/media-video/mpv/mpv-9999.ebuild b/media-video/mpv/mpv-9999.ebuild index 566af4acb50c..44b6c139ad77 100644 --- a/media-video/mpv/mpv-9999.ebuild +++ b/media-video/mpv/mpv-9999.ebuild @@ -3,285 +3,254 @@ EAPI=8 -LUA_COMPAT=( lua5-{1..2} luajit ) +LUA_COMPAT=( lua5-1 luajit ) PYTHON_COMPAT=( python3_{8..11} ) -PYTHON_REQ_USE='threads(+)' +inherit edo flag-o-matic lua-single meson optfeature pax-utils python-single-r1 xdg -inherit edo flag-o-matic lua-single optfeature meson pax-utils python-single-r1 toolchain-funcs xdg - -DESCRIPTION="Media player based on MPlayer and mplayer2" -HOMEPAGE="https://mpv.io/ https://github.com/mpv-player/mpv" - -if [[ ${PV} == *9999* ]]; then - EGIT_REPO_URI="https://github.com/mpv-player/mpv.git" +if [[ ${PV} == 9999 ]]; then inherit git-r3 - - DOCS=() + EGIT_REPO_URI="https://github.com/mpv-player/mpv.git" else - SRC_URI="https://github.com/mpv-player/mpv/archive/v${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux" - - DOCS=( RELEASE_NOTES ) + HASH_MPV=c416a38ef227067ef7b81b9650a13157300cdfbe + SRC_URI="https://github.com/mpv-player/mpv/archive/${HASH_MPV}.tar.gz -> ${P}.tar.gz" + S="${WORKDIR}/${PN}-${HASH_MPV}" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux" fi -DOCS+=( README.md DOCS/{client-api,interface}-changes.rst ) - -# See Copyright in sources and Gentoo bug #506946. libmpv is ISC. -# See https://github.com/mpv-player/mpv/blob/6265724f3331e3dee8d9ec2b6639def5004a5fa2/Copyright which -# says other files may be BSD/MIT/ISC. -LICENSE="LGPL-2.1+ GPL-2+ BSD MIT ISC" -SLOT="0" -IUSE="+alsa aqua archive bluray cdda +cli coreaudio cplugins debug doc drm dvb - dvd +egl gamepad gbm +iconv jack javascript jpeg lcms libcaca libmpv +lua - mmal nvenc openal +opengl pipewire pulseaudio raspberry-pi rubberband sdl - selinux sndio test tools +uchardet vaapi vdpau +vector vulkan wayland +X +xv zlib zimg" - +DESCRIPTION="Media player for the command line" +HOMEPAGE="https://mpv.io/" + +LICENSE="LGPL-2.1+ GPL-2+ BSD ISC MIT" #506946 +SLOT="0/2" # soname +IUSE=" + +X +alsa aqua archive bluray cdda +cli coreaudio debug drm dvb + dvd +egl gamepad +iconv jack javascript jpeg lcms libcaca libmpv + +libplacebo +lua mmal nvenc openal opengl pipewire pulseaudio + raspberry-pi rubberband sdl selinux sndio test tools +uchardet + vaapi vdpau +vector vulkan wayland +xv zimg zlib" REQUIRED_USE=" + ${PYTHON_REQUIRED_USE} || ( cli libmpv ) - aqua? ( opengl ) - egl? ( || ( gbm X wayland ) ) - gamepad? ( sdl ) - gbm? ( drm egl opengl ) - lcms? ( opengl ) + egl? ( || ( X drm wayland ) ) + libplacebo? ( || ( egl opengl vulkan ) ) lua? ( ${LUA_REQUIRED_USE} ) - nvenc? ( opengl ) - opengl? ( || ( aqua egl X raspberry-pi !cli ) ) - raspberry-pi? ( opengl ) - test? ( opengl ) + nvenc? ( || ( egl opengl vulkan ) ) + opengl? ( || ( X aqua ) ) + test? ( cli ) tools? ( cli ) uchardet? ( iconv ) - vaapi? ( || ( gbm X wayland ) ) + vaapi? ( || ( X egl libplacebo wayland ) ) vdpau? ( X ) - vulkan? ( || ( X wayland ) ) - wayland? ( egl ) - X? ( egl? ( opengl ) ) - xv? ( X ) - ${PYTHON_REQUIRED_USE} -" - + vulkan? ( || ( X wayland ) libplacebo ) + xv? ( X )" RESTRICT="!test? ( test )" COMMON_DEPEND=" - >=media-video/ffmpeg-4.0:0=[encode,threads,vaapi?,vdpau?] - alsa? ( >=media-libs/alsa-lib-1.0.18 ) - archive? ( >=app-arch/libarchive-3.4.0:= ) - bluray? ( >=media-libs/libbluray-0.3.0:= ) - cdda? ( dev-libs/libcdio-paranoia - dev-libs/libcdio:= ) - drm? ( x11-libs/libdrm ) + media-libs/libass:=[fontconfig] + media-video/ffmpeg:=[encode,threads,vaapi?,vdpau?] + X? ( + x11-libs/libX11 + x11-libs/libXScrnSaver + x11-libs/libXext + x11-libs/libXinerama + x11-libs/libXpresent + x11-libs/libXrandr + xv? ( x11-libs/libXv ) + ) + alsa? ( media-libs/alsa-lib ) + archive? ( app-arch/libarchive:= ) + bluray? ( media-libs/libbluray:= ) + cdda? ( + dev-libs/libcdio-paranoia:= + dev-libs/libcdio:= + ) + drm? ( + media-libs/mesa[gbm(+)] + x11-libs/libdrm + ) dvd? ( - >=media-libs/libdvdnav-4.2.0:= - >=media-libs/libdvdread-4.1.0:= + media-libs/libdvdnav + media-libs/libdvdread:= ) - egl? ( media-libs/mesa[egl(+),gbm(+)?,wayland(-)?] ) - gamepad? ( media-libs/libsdl2 ) + egl? ( media-libs/libglvnd ) + gamepad? ( media-libs/libsdl2[joystick] ) iconv? ( virtual/libiconv uchardet? ( app-i18n/uchardet ) ) jack? ( virtual/jack ) - javascript? ( >=dev-lang/mujs-1.0.0 ) + javascript? ( dev-lang/mujs:= ) jpeg? ( media-libs/libjpeg-turbo:= ) - lcms? ( >=media-libs/lcms-2.6:2 ) - >=media-libs/libass-0.12.1:=[fontconfig,harfbuzz(+)] - virtual/ttf-fonts - libcaca? ( >=media-libs/libcaca-0.99_beta18 ) + lcms? ( media-libs/lcms:2 ) + libcaca? ( media-libs/libcaca ) + libplacebo? ( + >=media-libs/libplacebo-4.202:=[opengl?,vulkan?] + egl? ( media-libs/libplacebo[opengl] ) + ) lua? ( ${LUA_DEPS} ) - openal? ( >=media-libs/openal-1.13 ) - pulseaudio? ( media-libs/libpulse ) + openal? ( media-libs/openal ) + opengl? ( media-libs/libglvnd[X?] ) pipewire? ( media-video/pipewire:= ) - raspberry-pi? ( >=media-libs/raspberrypi-userland-0_pre20160305-r1 ) - rubberband? ( >=media-libs/rubberband-1.8.0 ) + pulseaudio? ( media-libs/libpulse ) + raspberry-pi? ( media-libs/raspberrypi-userland ) + rubberband? ( media-libs/rubberband ) sdl? ( media-libs/libsdl2[sound,threads,video] ) - sndio? ( media-sound/sndio ) - vaapi? ( media-libs/libva:=[drm(+)?,X?,wayland?] ) + sndio? ( media-sound/sndio:= ) + vaapi? ( media-libs/libva:=[X?,drm(+)?,wayland?] ) vdpau? ( x11-libs/libvdpau ) vulkan? ( - >=media-libs/libplacebo-4.192.1:=[vulkan] media-libs/shaderc + media-libs/vulkan-loader[X?,wayland?] ) wayland? ( - >=dev-libs/wayland-1.6.0 - >=dev-libs/wayland-protocols-1.14 - >=x11-libs/libxkbcommon-0.3.0 - ) - X? ( - x11-libs/libX11 - x11-libs/libXScrnSaver - x11-libs/libXext - x11-libs/libXinerama - x11-libs/libXpresent - x11-libs/libXrandr - opengl? ( - x11-libs/libXdamage - virtual/opengl - ) - xv? ( x11-libs/libXv ) + dev-libs/wayland + dev-libs/wayland-protocols + x11-libs/libxkbcommon ) - zlib? ( sys-libs/zlib ) - zimg? ( >=media-libs/zimg-2.9.2 ) -" -DEPEND="${COMMON_DEPEND} - dvb? ( virtual/linuxtv-dvb-headers ) - nvenc? ( >=media-libs/nv-codec-headers-8.2.15.7 ) -" -RDEPEND="${COMMON_DEPEND} - nvenc? ( x11-drivers/nvidia-drivers[X] ) + zimg? ( media-libs/zimg ) + zlib? ( sys-libs/zlib:= )" +RDEPEND=" + ${COMMON_DEPEND} selinux? ( sec-policy/selinux-mplayer ) - tools? ( ${PYTHON_DEPS} ) -" -BDEPEND="dev-python/docutils + tools? ( ${PYTHON_DEPS} )" +DEPEND=" + ${COMMON_DEPEND} + X? ( x11-base/xorg-proto ) + dvb? ( virtual/linuxtv-dvb-headers ) + nvenc? ( media-libs/nv-codec-headers ) + wayland? ( dev-libs/wayland-protocols )" +BDEPEND=" + ${PYTHON_DEPS} virtual/pkgconfig -" - -PATCHES=( - "${FILESDIR}"/${PN}-9999-docdir.patch -) + cli? ( dev-python/docutils ) + wayland? ( dev-util/wayland-scanner )" pkg_setup() { use lua && lua-single_pkg_setup - use tools && python-single-r1_pkg_setup + python-single-r1_pkg_setup +} + +src_prepare() { + default + + [[ ${PV} == 9999 ]] || sed -i "s/UNKNOWN/${HASH_MPV::11}/" VERSION || die + + sed -i "s/'rst2html/&.py/" meson.build || die } src_configure() { - tc-export CC PKG_CONFIG AR + if use !debug; then + if use test; then + einfo "Skipping -DNDEBUG due to USE=test" + else + append-cppflags -DNDEBUG # treated specially + fi + fi if use raspberry-pi; then - append-cflags -I"${ESYSROOT}/opt/vc/include" - append-ldflags -L"${ESYSROOT}/opt/vc/lib" + append-cflags -I"${ESYSROOT}"/opt/vc/include + append-ldflags -L"${ESYSROOT}"/opt/vc/lib fi - if use debug && ! use test; then - append-cppflags -DNDEBUG - fi + mpv_feature_multi() { + local use set + for use in ${1} ${2}; do + use ${use} || set=disabled + done + echo -D${3-${2}}=${set-enabled} + } local emesonargs=( - -Dbuild-date=false $(meson_use cli cplayer) $(meson_use libmpv) $(meson_use test tests) - $(meson_feature doc html-build) - -Dmanpage-build=enabled + $(meson_feature cli html-build) + $(meson_feature cli manpage-build) -Dpdf-build=disabled - $(meson_feature cplugins) - $(meson_feature iconv) - $(meson_feature javascript) - $(meson_feature zlib) - $(meson_feature bluray libbluray) - $(meson_feature dvd dvdnav) + -Dbuild-date=false + # misc options + $(meson_feature archive libarchive) + $(meson_feature bluray libbluray) $(meson_feature cdda) - - $(meson_feature uchardet) - $(meson_feature rubberband) + -Dcplugins=enabled + $(meson_feature dvb dvbin) + $(meson_feature dvd dvdnav) + $(meson_feature gamepad sdl2-gamepad) + $(meson_feature iconv) + $(meson_feature javascript) + -Dlibavdevice=enabled $(meson_feature lcms lcms2) - - # Only available in overlays. - -Dvapoursynth=disabled - + -Dlua=$(usex lua "${ELUA}" disabled) + $(meson_feature rubberband) + -Dsdl2=$(use gamepad || use sdl && echo enabled || echo disabled) #857156 + $(meson_feature uchardet) + -Dvapoursynth=disabled # only available in overlays $(meson_feature vector) + $(meson_feature zimg) + $(meson_feature zlib) - $(meson_feature archive libarchive) - - -Dlibavdevice=enabled - - # Needed for either of the more specific audio or video options - # bug #857156 - $(meson_feature sdl sdl2) - - # Audio outputs: - $(meson_feature sdl sdl2-audio) - $(meson_feature pulseaudio pulse) + # audio output + $(meson_feature alsa) + $(meson_feature coreaudio) $(meson_feature jack) $(meson_feature openal) $(meson_feature pipewire) - -Dopensles=disabled - $(meson_feature alsa) - $(meson_feature coreaudio) + $(meson_feature pulseaudio pulse) + $(meson_feature sdl sdl2-audio) $(meson_feature sndio) - # Video outputs: - $(meson_feature sdl sdl2-video) + # video output + $(meson_feature X x11) $(meson_feature aqua cocoa) $(meson_feature drm) - $(meson_feature gbm) + $(meson_feature drm gbm) + $(meson_feature jpeg) + $(meson_feature libcaca caca) + $(meson_feature libplacebo) + $(meson_feature mmal rpi-mmal) + $(meson_feature sdl sdl2-video) + -Dsixel=disabled # TODO? needs keywording/testing $(meson_feature wayland) - $(meson_feature X x11) $(meson_feature xv) - $(meson_feature opengl gl) - $(usex opengl "$(meson_feature aqua gl-cocoa)" '-Dgl-cocoa=disabled') - $(usex opengl "$(meson_feature X gl-x11)" '-Dgl-x11=disabled') - + -Dgl=$(use egl || use libmpv || use opengl || use raspberry-pi && + echo enabled || echo disabled) $(meson_feature egl) - $(usex egl "$(meson_feature X egl-x11)" "-Degl-x11=disabled") - $(usex egl "$(meson_feature gbm egl-drm)" "-Degl-drm=disabled") - $(usex opengl "$(meson_feature wayland egl-wayland)" '-Degl-wayland=disabled') - - $(meson_feature vdpau) - $(usex vdpau "$(meson_feature opengl vdpau-gl-x11)" '-Dvdpau-gl-x11=disabled') - - $(meson_feature vaapi) # See below for vaapi-glx, vaapi-x-egl. - $(usex vaapi "$(meson_feature X vaapi-x11)" "-Dvaapi-x11=disabled") - $(usex vaapi "$(meson_feature wayland vaapi-wayland)" "-Dvaapi-wayland=disabled") - $(usex vaapi "$(meson_feature gbm vaapi-drm)" "-Dvaapi-drm=disabled") - - $(meson_feature libcaca caca) - $(meson_feature jpeg) - $(meson_feature vulkan shaderc) - $(meson_feature vulkan libplacebo) + $(mpv_feature_multi egl X egl-x11) + $(mpv_feature_multi egl drm egl-drm) + $(mpv_feature_multi egl wayland egl-wayland) + $(meson_feature libmpv plain-gl) + $(mpv_feature_multi opengl X gl-x11) + $(mpv_feature_multi opengl aqua gl-cocoa) $(meson_feature raspberry-pi rpi) - $(meson_feature mmal rpi-mmal) - -Dsixel=disabled - -Dspirv-cross=disabled - - $(usex libmpv "$(meson_feature opengl plain-gl)" "-Dplain-gl=disabled") - $(meson_feature opengl gl) $(meson_feature vulkan) - $(meson_feature gamepad sdl2-gamepad) + $(meson_feature vulkan shaderc) - # HWaccels: - # Automagic Video Toolbox HW acceleration. See Gentoo bug 577332. + # hardware decoding $(meson_feature nvenc cuda-hwaccel) $(meson_feature nvenc cuda-interop) - # TV features: - $(meson_feature dvb dvbin) + $(meson_feature vaapi) + $(mpv_feature_multi vaapi X vaapi-x11) + $(mpv_feature_multi 'vaapi X' egl vaapi-x-egl) + $(mpv_feature_multi 'vaapi egl' drm vaapi-drm) + $(mpv_feature_multi 'vaapi egl' wayland vaapi-wayland) - # Miscellaneous features: - $(meson_feature zimg) - ) - - if use lua; then - emesonargs+=( -Dlua="${ELUA}" ) - else - emesonargs+=( -Dlua=disabled ) - fi - - if use vaapi && use X; then - emesonargs+=( - $(meson_feature egl vaapi-x-egl) - ) - fi - - # Not for us - emesonargs+=( - -Duwp=disabled - -Daudiounit=disabled - -Doss-audio=disabled - -Dwasapi=disabled + $(meson_feature vdpau) + $(mpv_feature_multi vdpau opengl vdpau-gl-x11) - -Dd3d11=disabled - -Ddirect3d=disabled + $(mpv_feature_multi aqua opengl videotoolbox-gl) ) meson_src_configure } src_test() { + # https://github.com/mpv-player/mpv/blob/master/DOCS/man/options.rst#debugging edo "${BUILD_DIR}"/mpv --no-config -v --unittest=all-simple } @@ -291,10 +260,10 @@ src_install() { if use lua; then insinto /usr/share/${PN} doins -r TOOLS/lua - fi - if use cli && use lua_single_target_luajit; then - pax-mark -m "${ED}"/usr/bin/${PN} + if use cli && use lua_single_target_luajit; then + pax-mark -m "${ED}"/usr/bin/${PN} + fi fi if use tools; then @@ -302,52 +271,19 @@ src_install() { newbin TOOLS/idet.sh mpv_idet.sh python_fix_shebang "${ED}"/usr/bin/umpv fi -} - -pkg_postinst() { - local rv softvol_0_18_1=0 osc_0_21_0=0 txtsubs_0_24_0=0 opengl_0_25_0=0 - - for rv in ${REPLACING_VERSIONS}; do - ver_test ${rv} -lt 0.18.1 && softvol_0_18_1=1 - ver_test ${rv} -lt 0.21.0 && osc_0_21_0=1 - ver_test ${rv} -lt 0.24.0 && txtsubs_0_24_0=1 - ver_test ${rv} -lt 0.25.0 && ! use opengl && opengl_0_25_0=1 - done - - if [[ ${softvol_0_18_1} -eq 1 ]]; then - elog "Since version 0.18.1 the software volume control is always enabled." - elog "This means that volume controls don't change the system volume," - elog "e.g. per-application volume with PulseAudio." - elog "If you want to restore the previous behaviour, please refer to" - elog - elog "https://wiki.gentoo.org/wiki/Mpv#Volume_in_0.18.1" - elog - fi - if [[ ${osc_0_21_0} -eq 1 ]]; then - elog "In version 0.21.0 the default OSC layout was changed." - elog "If you want to restore the previous layout, please refer to" - elog - elog "https://wiki.gentoo.org/wiki/Mpv#OSC_in_0.21.0" - elog + if use cli; then + dodir /usr/share/doc/${PF}/html + mv "${ED}"/usr/share/doc/{mpv,${PF}/html}/mpv.html || die + mv "${ED}"/usr/share/doc/{mpv,${PF}/examples} || die fi - if [[ ${txtsubs_0_24_0} -eq 1 ]]; then - elog "Since version 0.24.0 subtitles with .txt extension aren't autoloaded." - elog "If you want to restore the previous behaviour, please refer to" - elog - elog "https://wiki.gentoo.org/wiki/Mpv#Subtitles_with_.txt_extension_in_0.24.0" - elog - fi + local GLOBIGNORE=*/*build*:*/*policy* + dodoc RELEASE_NOTES DOCS/*.{md,rst} +} - if [[ ${opengl_0_25_0} -eq 1 ]]; then - elog "Since version 0.25.0 the 'opengl' USE flag is mapped to" - elog "the 'opengl' video output and no longer explicitly requires" - elog "X11 or Mac OS Aqua. Consider enabling the 'opengl' USE flag." - fi +pkg_postinst() { + xdg_pkg_postinst optfeature "URL support" net-misc/yt-dlp - - xdg_icon_cache_update - xdg_desktop_database_update } diff --git a/media-video/vidcutter/Manifest b/media-video/vidcutter/Manifest index 5aa1743f4214..8dbaac4446cd 100644 --- a/media-video/vidcutter/Manifest +++ b/media-video/vidcutter/Manifest @@ -1,4 +1,5 @@ +DIST vidcutter-6.0.5.1-libmpv-api2.patch 2327139 BLAKE2B c2665e2c501a19db86a25145da39e6990843fb11a7bdf3170ec7e268e23a23abb21cd8d4b459a4c862ffc27756106d81e7d9b5d58bf3417fd787c03528eba770 SHA512 063908bf939c03952d623cc0ae7ea301d4605660a548e3088f6c901f3d98cf13a5e49180414c8a1c05931d9c4ca2a251858951676632768ff30954a6df7a4e4a DIST vidcutter-6.0.5.1.tar.gz 9909274 BLAKE2B 063c20f6ae0565b0f3a160b5ee298aae05b2ee1876cd4c73d9f37578a9e86a872353c3e2b7b1b6302db3d5a876139bfb19d50bf7cb4dd18e6e1d1a1ca3587fbd SHA512 f2ea2a86d9eaa3c6593e785daad6869c151baa1add529c9edaf2282f7acad762fbb29804790aece5e4fcd89e9e9bc77f61d1f0b68a1b1f3ecf58951ee8f200e9 -EBUILD vidcutter-6.0.5.1-r1.ebuild 1015 BLAKE2B 0641285f5b5664b13f674a150c13f6de3b5f9f70ddc54acd2d33047744de6bf23086ded1ef518d754196bc50901a362c20a44540fc22697ae82d88afda966fad SHA512 06bc78a0fce27b6723a3b7008ce1fd6fec03bf6f9f926a48937453c2eac16b39a97ca426459e7347c368f01d43ec4794911fa87332dee1ca1a05229635889b30 -EBUILD vidcutter-9999.ebuild 1017 BLAKE2B 39221734a676128dd3e2f7d11e202d9c64108d7d3e47d93c3dd695787d5168a247211d2c92dba369fe7e6c3e87072a157c4d0421123b54042ab6af307d734cd9 SHA512 06d0fdbd049767fd39eb1f6f203a5bc75e2cdecab9bebf18c813237f54891181bb3cd3235481d25fcec5b23eebef5bb7562d1726f42996f6431577d2c2b18ea0 +EBUILD vidcutter-6.0.5.1-r2.ebuild 1466 BLAKE2B 8fe4eadf3972ef62828e5d38e1abfd1897dda6153b11f1ba372dabee574723a250b7792298b4e1f833eed72e9f64cc1c19d225d5e3eff39b02f23b5418d6e26b SHA512 6ab60812cfe8424202f80538395813bdc4b387f0ee37c68f5b45034e2efa364a9ffc9fad55a9d5106b107dbaabfc31c0c2e89c1020761c2f0678169c5fe9714d +EBUILD vidcutter-9999.ebuild 1007 BLAKE2B 8fe9d8317bb53da52747563e97ef61142c2cc933c65c4fa2b411437e9f4c899ac7ec5530650492a4cc3d5c57d37bbcf628cbf4686a435d62099f334fbce1673c SHA512 76d199b9621c95027e7c9eefdb22f0deadb4ef86789866be023db0921a1641ddcba35dffb28181ea84ac72c548445a00848b663d18d594e480c05d9a530de030 MISC metadata.xml 461 BLAKE2B 0eeb6abbb7914b27cd567263de9001cfe17c9bd3b98a0887b21fd76b908a48c0abb3695039d21803709d47483078d15c5d412be7c408640ece0a433806272640 SHA512 55fd2db2f66d5cbc2410dfc57f235b90554cf3de4aaa88fc5069d499590ec45264499881f049c5469771f063638a65adad89686717c28abb89ef6ea632c88a30 diff --git a/media-video/vidcutter/vidcutter-6.0.5.1-r1.ebuild b/media-video/vidcutter/vidcutter-6.0.5.1-r2.ebuild index a94a18c5e7bf..87cdb433df76 100644 --- a/media-video/vidcutter/vidcutter-6.0.5.1-r1.ebuild +++ b/media-video/vidcutter/vidcutter-6.0.5.1-r2.ebuild @@ -3,7 +3,7 @@ EAPI=7 -PYTHON_COMPAT=( python3_{7..10} ) +PYTHON_COMPAT=( python3_{8..10} ) inherit distutils-r1 xdg @@ -15,6 +15,7 @@ if [[ ${PV} == 9999 ]];then EGIT_REPO_URI="https://github.com/ozmartian/vidcutter" else SRC_URI="https://github.com/ozmartian/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" + SRC_URI+=" https://github.com/ozmartian/${PN}/commit/1d88825feb5a73a50d019914ba9d0008562a58ce.patch -> ${P}-libmpv-api2.patch" KEYWORDS="amd64 x86" fi @@ -23,7 +24,7 @@ SLOT="0" IUSE="" DEPEND=" - >=media-video/mpv-0.25[libmpv] + >=media-video/mpv-0.25:=[libmpv] " RDEPEND="${DEPEND} >=dev-python/PyQt5-5.7[dbus,multimedia,widgets,${PYTHON_USEDEP}] @@ -35,7 +36,18 @@ BDEPEND=" dev-python/setuptools[${PYTHON_USEDEP}]" REQUIRED_USE="${PYTHON_REQUIRED_USE}" +src_prepare() { + # needed for mpv:0/2 but breaks stable mpv:0/0, do conditional patching + # for now (we can do has_version given the := binding operator) + # https://github.com/ozmartian/vidcutter/issues/345 + if has_version -d 'media-video/mpv:0/2'; then + eapply "${DISTDIR}"/${P}-libmpv-api2.patch + fi + + distutils-r1_src_prepare +} + src_install() { distutils-r1_src_install - mv "${ED}/usr/share/doc/${PN}" "${ED}/usr/share/doc/${P}" + mv "${ED}"/usr/share/doc/{${PN},${PF}} || die } diff --git a/media-video/vidcutter/vidcutter-9999.ebuild b/media-video/vidcutter/vidcutter-9999.ebuild index 383061cd1bcc..cb619436f0cf 100644 --- a/media-video/vidcutter/vidcutter-9999.ebuild +++ b/media-video/vidcutter/vidcutter-9999.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 -PYTHON_COMPAT=( python3_{7..10} ) +PYTHON_COMPAT=( python3_{8..10} ) inherit distutils-r1 xdg @@ -23,7 +23,7 @@ SLOT="0" IUSE="" DEPEND=" - >=media-video/mpv-0.25[libmpv] + >=media-video/mpv-0.25:=[libmpv] " RDEPEND="${DEPEND} >=dev-python/PyQt5-5.7[dbus,multimedia,widgets,${PYTHON_USEDEP}] @@ -37,5 +37,5 @@ REQUIRED_USE="${PYTHON_REQUIRED_USE}" src_install() { distutils-r1_src_install - mv "${ED}/usr/share/doc/${PN}" "${ED}/usr/share/doc/${P}" + mv "${ED}"/usr/share/doc/{${PN},${PF}} || die } |