diff options
Diffstat (limited to 'media-video')
30 files changed, 1255 insertions, 423 deletions
diff --git a/media-video/Manifest.gz b/media-video/Manifest.gz Binary files differindex c29d93dc1cd7..609427920a42 100644 --- a/media-video/Manifest.gz +++ b/media-video/Manifest.gz diff --git a/media-video/avidemux/Manifest b/media-video/avidemux/Manifest index 661e8c4f20f5..f5f7ff3a5cd9 100644 --- a/media-video/avidemux/Manifest +++ b/media-video/avidemux/Manifest @@ -1,8 +1,5 @@ AUX avidemux-2.7.0-glibc-2.27.patch 872 BLAKE2B 2edd751aa7de1d6b4ed6d6dc12bff1f02e54e4950b8402cd531776bba7be1481c205ee3b11249addfe759c2d730db0831280e6bdcafb470a683220242ee79937 SHA512 3bf0bc7b15cb50141b5ec771dcee97971d2889af8913c9d825a3d6cc929143eabf04af76d033257722cb6be90f966a34e3ba2c069470cfb6097bc959bb0feead AUX avidemux-2.7.0-qt-5.11.patch 1664 BLAKE2B 080497a678e869e143eb350ecdca2b77d5e5906a8a469e24f16fc58853665791dbbd94880418b492df6816b8f420d54ee7ecd06c805b0aab16e8d05ab43f545d SHA512 49186e7648db60e081f78e1257ea788313cac6e991c995249701189ab344744f0c410203b39b49e5530a8dd33de937582099eb8b615d19fe7d0e3731254d535c -DIST avidemux_2.6.20.tar.gz 20172362 BLAKE2B d458749e470e60b133a177ddf97ee04a665da3f7b2c52e8cc51f907aa5b51d11338ddab9306603b615170b5cf75ec2d3444bd648756bdb724aa442abf7044553 SHA512 d01d0fc24a3004770bd3923c2debc4fa2752eb71df08cfe423746b9c44a2562ca01d82965ed2563b99572a4bed8034b79487199ce330208b51a3b7f87ccf7103 DIST avidemux_2.7.0.tar.gz 21474504 BLAKE2B c6e55a0b5220d6d3746fa06162bf11253145fd28f2f6f744702d5e0342fba85e546a28883eb847139eadd34c94037ebc7d68f5576e7505a85288556468d14b96 SHA512 7c92213d3bd2849dbdb5a1aff2acd6da231fd76c561b756fbf4a1d5a41e9705d609d7a35b6ca6b77ceb3bf5138f861cd24ed16d8fcec4fd713f09a2ff07e9015 -EBUILD avidemux-2.6.20-r1.ebuild 4366 BLAKE2B cf89350d867c09eb88d6efa63c1ef56d28eba7cb7b137b599d2431c9c129957296536d96438bc1d5f627110ef7cfa9b62fa29fdadd0b8eb287407e03251aad80 SHA512 7fb00801367a6c0adbe85641c28b4e09dc1ffcc8493e8066ae734a85e75cd957afb6b0366526e1fae1d072c6bc6c05b8fb1622491d97cfeedea0f715f9bd7988 EBUILD avidemux-2.7.0.ebuild 4518 BLAKE2B 6eb480a6467eb5a734891ffeefbbb0a37abbb83469ca12a090c18502e3a3836701ef43439681e51ac5f3259af368f6b045c830207b05b5df7febbbf70a534b66 SHA512 5d7c46c56e237386d0c9e8c74ddfe5f25aa3e510a0e7683c91880a863fe40d51e3d5d4661cb670af25c6ff7a43264a303f74e9a7c9033bf0daa3d3d55968a8d0 -EBUILD avidemux-9999.ebuild 4432 BLAKE2B 4b1c6dd8436233da06e74f0bbffa6881d545c49a187489660746653111b7b40845f286a7e843c824020edc14cd645c60c7c3b90ed6bc9868d6cebdd2c7bd6e05 SHA512 35a665d74df41a431551500be75c186d686a28bd6e208d02575226bfa3f8c9c8424234a3628475893f6235759a0882639d59bedc52e7e8039018c18a02c28bdc MISC metadata.xml 489 BLAKE2B 51c28e4d932facf14fe99d0d18e736f16c754961e8fde468505f03c989e8ec3cb9afab9c916752468a5f9f0a07ad8d25da01e64cb987cfed1db835f657512b1e SHA512 7a1b885e05a9bb6684583dcaefc5853903330bbcfc6b1e07b76cde7405894d94e0f095fcfe18bc33bc24c1bbf260814c9ebb8219397e0e861a2fb5977361bc4d diff --git a/media-video/avidemux/avidemux-2.6.20-r1.ebuild b/media-video/avidemux/avidemux-2.6.20-r1.ebuild deleted file mode 100644 index 0dfaecb51eaf..000000000000 --- a/media-video/avidemux/avidemux-2.6.20-r1.ebuild +++ /dev/null @@ -1,166 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit cmake-utils qmake-utils xdg-utils - -DESCRIPTION="Video editor designed for simple cutting, filtering and encoding tasks" -HOMEPAGE="http://fixounet.free.fr/${PN}" - -# Multiple licenses because of all the bundled stuff. -LICENSE="GPL-1 GPL-2 MIT PSF-2 public-domain" -SLOT="2.6" -IUSE="debug opengl nls nvenc qt5 sdl vaapi vdpau xv" - -if [[ ${PV} == *9999* ]] ; then - MY_P="${P}" - EGIT_REPO_URI="https://github.com/mean00/avidemux2.git" - - inherit git-r3 -else - MY_P="${PN}_${PV}" - SRC_URI="mirror://sourceforge/${PN}/${PN}/${PV}/${MY_P}.tar.gz" - KEYWORDS="~amd64 ~x86" -fi - -COMMON_DEPEND=" - ~media-libs/avidemux-core-${PV}:${SLOT}[nls?,sdl?,vaapi?,vdpau?,xv?,nvenc?] - opengl? ( virtual/opengl:0 ) - qt5? ( dev-qt/qtgui:5 ) - vaapi? ( x11-libs/libva:0 ) - nvenc? ( amd64? ( media-video/nvidia_video_sdk:0 ) ) -" -DEPEND="${COMMON_DEPEND} - qt5? ( dev-qt/linguist-tools:5 ) -" -RDEPEND="${COMMON_DEPEND} - nls? ( virtual/libintl:0 ) -" -PDEPEND="~media-libs/avidemux-plugins-${PV}:${SLOT}[opengl?,qt5?]" - -S="${WORKDIR}/${MY_P}" - -src_prepare() { - default - - processes="buildCli:avidemux/cli" - if use qt5 ; then - processes+=" buildQt4:avidemux/qt4" - fi - - for process in ${processes} ; do - CMAKE_USE_DIR="${S}"/${process#*:} cmake-utils_src_prepare - done - - # Fix icon name -> avidemux-2.6.png - sed -i -e "/^Icon/ s:${PN}:${PN}-2.6:" ${PN}2.desktop || die "Icon name fix failed." - - # The desktop file is broken. It uses avidemux2 instead of avidemux3 - # so it will actually launch avidemux-2.5 if it is installed. - sed -i -e "/^Exec/ s:${PN}2:${PN}3:" ${PN}2.desktop || die "Desktop file fix failed." - if use qt5; then - sed -i -re '/^Exec/ s:(avidemux3_)gtk:\1qt5:' ${PN}2.desktop || \ - die "Desktop file fix failed." - fi - - # Fix QA warnings that complain a trailing ; is missing and Application is deprecated. - sed -i -e 's/Application;AudioVideo/AudioVideo;/g' ${PN}2.desktop || die "Desktop file fix failed." - - # Now rename the desktop file to not collide with 2.5. - mv ${PN}2.desktop ${PN}-2.6.desktop || die "Collision rename failed." - - # Remove "Build Option" dialog because it doesn't reflect what the GUI can or has been built with. (Bug #463628) - sed -i -e '/Build Option/d' avidemux/common/ADM_commonUI/myOwnMenu.h || die "Couldn't remove \"Build Option\" dialog." -} - -src_configure() { - # Add lax vector typing for PowerPC. - if use ppc || use ppc64 ; then - append-cflags -flax-vector-conversions - fi - - # See bug 432322. - use x86 && replace-flags -O0 -O1 - - # The build relies on an avidemux-core header that uses 'nullptr' - # which is from >=C++11. Let's use the GCC-6 default C++ dialect. - append-cxxflags -std=c++14 - - local mycmakeargs=( - -DAVIDEMUX_SOURCE_DIR='${S}' - -DGETTEXT="$(usex nls)" - -DSDL="$(usex sdl)" - -DLibVA="$(usex vaapi)" - -DVDPAU="$(usex vdpau)" - -DXVIDEO="$(usex xv)" - ) - - if use qt5 ; then - mycmakeargs+=( - -DENABLE_QT5="$(usex qt5)" - -DLRELEASE_EXECUTABLE="$(qt5_get_bindir)/lrelease" - ) - fi - - if use debug ; then - mycmakeargs+=( -DVERBOSE=1 -DADM_DEBUG=1 ) - fi - - for process in ${processes} ; do - local build="${WORKDIR}/${P}_build/${process%%:*}" - CMAKE_USE_DIR="${S}"/${process#*:} BUILD_DIR="${build}" cmake-utils_src_configure - done -} - -src_compile() { - for process in ${processes} ; do - local build="${WORKDIR}/${P}_build/${process%%:*}" - BUILD_DIR="${build}" cmake-utils_src_compile - done -} - -src_test() { - for process in ${processes} ; do - local build="${WORKDIR}/${P}_build/${process%%:*}" - BUILD_DIR="${build}" cmake-utils_src_test - done -} - -src_install() { - for process in ${processes} ; do - local build="${WORKDIR}/${P}_build/${process%%:*}" - BUILD_DIR="${build}" cmake-utils_src_install - done - - if [[ -f "${ED}"/usr/bin/avidemux3_cli ]] ; then - fperms +x /usr/bin/avidemux3_cli - fi - - if [[ -f "${ED}"/usr/bin/avidemux3_jobs ]] ; then - fperms +x /usr/bin/avidemux3_jobs - fi - - cd "${S}" || die "Can't enter source folder." - newicon ${PN}_icon.png ${PN}-2.6.png - - if [[ -f "${ED}"/usr/bin/avidemux3_qt5 ]] ; then - fperms +x /usr/bin/avidemux3_qt5 - fi - - if [[ -f "${ED}"/usr/bin/avidemux3_jobs_qt5 ]] ; then - fperms +x /usr/bin/avidemux3_jobs_qt5 - fi - - if use qt5 ; then - domenu ${PN}-2.6.desktop - fi -} - -pkg_postinst() { - xdg_desktop_database_update -} - -pkg_postrm() { - xdg_desktop_database_update -} diff --git a/media-video/avidemux/avidemux-9999.ebuild b/media-video/avidemux/avidemux-9999.ebuild deleted file mode 100644 index 6d44aea9bcd2..000000000000 --- a/media-video/avidemux/avidemux-9999.ebuild +++ /dev/null @@ -1,172 +0,0 @@ -# Copyright 1999-2018 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -if [[ ${PV} == *9999* ]] ; then - MY_P="${P}" - EGIT_REPO_URI="https://github.com/mean00/avidemux2.git" - inherit git-r3 -else - MY_P="${PN}_${PV}" - SRC_URI="mirror://sourceforge/${PN}/${PN}/${PV}/${MY_P}.tar.gz" - KEYWORDS="~amd64 ~x86" -fi -inherit cmake-utils qmake-utils xdg-utils - -DESCRIPTION="Video editor designed for simple cutting, filtering and encoding tasks" -HOMEPAGE="http://fixounet.free.fr/avidemux" - -# Multiple licenses because of all the bundled stuff. -LICENSE="GPL-1 GPL-2 MIT PSF-2 public-domain" -SLOT="2.7" -IUSE="debug nls nvenc opengl qt5 sdl vaapi vdpau xv" - -COMMON_DEPEND=" - ~media-libs/avidemux-core-${PV}:${SLOT}[nls?,sdl?,vaapi?,vdpau?,xv?,nvenc?] - nvenc? ( amd64? ( media-video/nvidia_video_sdk:0 ) ) - opengl? ( virtual/opengl:0 ) - qt5? ( - dev-qt/qtcore:5 - dev-qt/qtgui:5 - dev-qt/qtopengl:5 - dev-qt/qtwidgets:5 - ) - vaapi? ( x11-libs/libva:0= ) -" -DEPEND="${COMMON_DEPEND} - qt5? ( dev-qt/linguist-tools:5 ) -" -RDEPEND="${COMMON_DEPEND} - nls? ( virtual/libintl:0 ) - !<media-video/avidemux-${PV} -" -PDEPEND="~media-libs/avidemux-plugins-${PV}:${SLOT}[opengl?,qt5?]" - -S="${WORKDIR}/${MY_P}" - -src_prepare() { - processes="buildCli:avidemux/cli" - if use qt5 ; then - processes+=" buildQt4:avidemux/qt4" - fi - - for process in ${processes} ; do - CMAKE_USE_DIR="${S}"/${process#*:} cmake-utils_src_prepare - done - - # Fix icon name -> avidemux-2.7.png - sed -i -e "/^Icon/ s:${PN}:${PN}-${SLOT}:" ${PN}2.desktop || \ - die "Icon name fix failed." - - # The desktop file is broken. It uses avidemux2 instead of avidemux3 - # so it will actually launch avidemux-2.7 if it is installed. - sed -i -e "/^Exec/ s:${PN}2:${PN}3:" ${PN}2.desktop || \ - die "Desktop file fix failed." - if use qt5; then - sed -i -re '/^Exec/ s:(avidemux3_)gtk:\1qt5:' ${PN}2.desktop || \ - die "Desktop file fix failed." - fi - - # QA warnings: missing trailing ';' and 'Application' is deprecated. - sed -i -e 's/Application;AudioVideo/AudioVideo;/g' ${PN}2.desktop || \ - die "Desktop file fix failed." - - # Now rename the desktop file to not collide with 2.6. - mv ${PN}2.desktop ${PN}-${SLOT}.desktop || die "Collision rename failed." - - # Remove "Build Option" dialog because it doesn't reflect - # what the GUI can or has been built with. (Bug #463628) - sed -i -e '/Build Option/d' avidemux/common/ADM_commonUI/myOwnMenu.h || \ - die "Couldn't remove \"Build Option\" dialog." -} - -src_configure() { - # Add lax vector typing for PowerPC. - if use ppc || use ppc64 ; then - append-cflags -flax-vector-conversions - fi - - # See bug 432322. - use x86 && replace-flags -O0 -O1 - - # The build relies on an avidemux-core header that uses 'nullptr' - # which is from >=C++11. Let's use the GCC-6 default C++ dialect. - append-cxxflags -std=c++14 - - local mycmakeargs=( - -DGETTEXT="$(usex nls)" - -DSDL="$(usex sdl)" - -DLibVA="$(usex vaapi)" - -DVDPAU="$(usex vdpau)" - -DXVIDEO="$(usex xv)" - ) - - if use qt5 ; then - mycmakeargs+=( - -DENABLE_QT5="$(usex qt5)" - -DLRELEASE_EXECUTABLE="$(qt5_get_bindir)/lrelease" - ) - fi - - if use debug ; then - mycmakeargs+=( -DVERBOSE=1 -DADM_DEBUG=1 ) - fi - - for process in ${processes} ; do - local build="${WORKDIR}/${P}_build/${process%%:*}" - CMAKE_USE_DIR="${S}"/${process#*:} BUILD_DIR="${build}" cmake-utils_src_configure - done -} - -src_compile() { - for process in ${processes} ; do - local build="${WORKDIR}/${P}_build/${process%%:*}" - BUILD_DIR="${build}" cmake-utils_src_compile - done -} - -src_test() { - for process in ${processes} ; do - local build="${WORKDIR}/${P}_build/${process%%:*}" - BUILD_DIR="${build}" cmake-utils_src_test - done -} - -src_install() { - for process in ${processes} ; do - local build="${WORKDIR}/${P}_build/${process%%:*}" - BUILD_DIR="${build}" cmake-utils_src_install - done - - if [[ -f "${ED}"/usr/bin/avidemux3_cli ]] ; then - fperms +x /usr/bin/avidemux3_cli - fi - - if [[ -f "${ED}"/usr/bin/avidemux3_jobs ]] ; then - fperms +x /usr/bin/avidemux3_jobs - fi - - cd "${S}" || die "Can't enter source folder." - newicon ${PN}_icon.png ${PN}-${SLOT}.png - - if [[ -f "${ED}"/usr/bin/avidemux3_qt5 ]] ; then - fperms +x /usr/bin/avidemux3_qt5 - fi - - if [[ -f "${ED}"/usr/bin/avidemux3_jobs_qt5 ]] ; then - fperms +x /usr/bin/avidemux3_jobs_qt5 - fi - - if use qt5 ; then - domenu ${PN}-${SLOT}.desktop - fi -} - -pkg_postinst() { - xdg_desktop_database_update -} - -pkg_postrm() { - xdg_desktop_database_update -} diff --git a/media-video/ffmpeg/Manifest b/media-video/ffmpeg/Manifest index 7eaff08e79e3..d46f7957e139 100644 --- a/media-video/ffmpeg/Manifest +++ b/media-video/ffmpeg/Manifest @@ -1,5 +1,6 @@ AUX chromium-r1.patch 1582 BLAKE2B 48547a7d53fd1f0f44b682c7e2306e79f007f8e96b36253f76775c4a3ced54ffaaf403dfaae94e81aa26c60887677b2dabdd2c5cef9fc4553e203f8259453910 SHA512 808daad5afed13a6d3926c9f9ab5cb58f80e16969533022c7ee959147908bb2c12d066d2125a6b6975ef9304d9b8d49c39aeb0a047009adabb4529e3cf54498f AUX chromium.patch 1420 BLAKE2B 1acf931cd2e635b0b6c2c42d649d1bc92ac59321acc451501c70076d84449fd17b3a95c24a33208994df9aac8f8959a084f0ebaedaf0c997f535008594872bd8 SHA512 1f3f6d08aac64bb8c9d8a974170064b8a3531a6d06cea6fb208439dc687addeaf0c90f7f407dd7e71f50cd524f69c110c92d5276d04fe3bcaf7fb1ff2494ec59 +AUX ffmpeg-3.4.6-fix-building-against-fdk-aac-2.patch 2820 BLAKE2B 05c0dc79d8e34de518625d4dff4c08f529ee85062da9185f1312e3b32ea2577a249cfbd40e665cbc185ca5acb68cf5cdc9891a0454428bc0f2a602491df59589 SHA512 d9918a659e4548f0da6ef5621d8ab2face7e9382e3ac008e47014691aebafd5e7b2f5e059b8fcf41a4a39c2efc408dda0015905f8d7cca874c0104f20327e511 AUX ffmpeg32-openjpeg22.patch 4777 BLAKE2B 4ea7ed6b6b31c6d0d3e99358231ce27f18423aab866ceed75c10bf2c4b514ae4d023f9b0f4dd91346773f2ef2014943a08e6093e53266fa307557da69d766c8b SHA512 0d619b0e353ee9f80dffdb94bedd31b55fb4e6a18a0e60d8ef7119e5012583c1c0531b0b200b41c32caaa71cbade4899f74c9d0ae70d15403ef0aa6f3d77e07d AUX openjpeg22.patch 4770 BLAKE2B b5fd034e2af9d180b2e0ee76e5227fcc948e20bacc5e463c8d7d640db3c3e52dd0f12149e5a095388c3b8db0d7c37bb4080be3141b90fd554c46aa4650585b27 SHA512 8a198910cdf43df83fdf50e372c2ec5d911637dd61768d5ac3a1984f99d1f374f594af9ff6c501b248c390a22898e4964f7d07c81eb3586fa1bebad2c9e00730 AUX openjpeg23.patch 5105 BLAKE2B 64aab97ec21e44f7ab94c9513ebf63e60a76698889ed3cafebec3a25adb07dddffe9358c4c3b29f89b0d0b4c8bb54d9197a5b8ca2e4105c539fd6b513ad5c247 SHA512 a1e3b91add49a80633e19eb49870ecb7ef1493cf3503d121bdeb74f2fcd0320b8e5f04a3505241f7375f4a598f5da651afb92350e3b92412977f55b9193409a7 @@ -19,9 +20,10 @@ EBUILD ffmpeg-3.3.4.ebuild 15808 BLAKE2B c64f1cd480d0bf2e8834073571f40eef01093b6 EBUILD ffmpeg-3.3.6.ebuild 15809 BLAKE2B b78701e736d5b1a8c029bbbec3c5ce40356223c35e78e160cb93a3e30732441abe1a14ab5940d302556abffde9d798de3ad160a98cd274334d467b0e9ba5de80 SHA512 b71dfc45bf7e29e8a5e70402c1dccfe2148223e60a1270a58918c3c3486472193e269e81cd8a1074a792b12b3d24d7a8733f62e3ef5002689d46ce9ce588f605 EBUILD ffmpeg-3.3.8.ebuild 15815 BLAKE2B 2bce668121996c1bbdf472dcede998450fa4b53b36dfa25ef62b1eaa988cb6b7f8ab216ef29ebefae026ee06b9d4ad001ecb90076efb61e1c6bbaff9b09dce1f SHA512 8650a978d1283d35f37b549e937f9c04cdc860540f7e7ee1871c07b21c13c3c165322075dd00ffbbeaf629d2c79b445b0fd715ae88fba3e59b0fd217b4c3dc72 EBUILD ffmpeg-3.4.5.ebuild 15589 BLAKE2B 4c0a74578c7e93f007e149a0874a3bde915d5037f9d7ae038eaae815b86254341045bb4d730ae0726c09b61c50622544afb548776476e8d7118b9c64dbc8c6f3 SHA512 e71404901e95550401dc6a0a58e74778327d7a0f32d154ea05e6e5537e5ce629bed613bf9c7a4d6844e501231e1775d8005846ad8698c03e7028f6661c06ce70 +EBUILD ffmpeg-3.4.6-r1.ebuild 15660 BLAKE2B ae3b4da3da992fdb606850366282f68c813556cc5c4b31d48b670c1cf9fa525d4ede9cc43c50548b64d74ee0226364e2091c2162932fd35ab16e6ee8ad7c0a2e SHA512 704a0c1afa0dca84fa781730e9d91d54c177ec620cd657ba51ee3254ca9bd82bb7a4dc6e5edca4ddfba17813b4c88ed3569a6aa83a77b7b7b021e375ff50b98d EBUILD ffmpeg-3.4.6.ebuild 15588 BLAKE2B d49f5b8411ee48a41af83136a8f0ec673f4feb3a13e194d72716c5d220b929688ff1bb20555091ee113546669ba385df7d1cd880fb724556f90420bffcdb00c7 SHA512 8497f50238398bb270e20bf3a896c95fac17ffae62482d3475aa28df27f7ac23c5d230a0a68de089a9f3230826345cbf9b12cd38a2f6fdbdf76b533fa50b1d84 EBUILD ffmpeg-4.1.1.ebuild 17072 BLAKE2B 4e3d25a7b01920c2e89740ef5847b3f99aa283e8926efcb641687ce9064f69aac5a25132f1295fd0c1dd1dff0f532d12acda72acaf09671549adb8d626266229 SHA512 3e2f5362b30dc2dc9a14356887304af89768774efb3025c4af7276da03ee75ae0a0ed85afd43c0a04b59c687aee901eba4db868720d130b0e282d25324e77977 EBUILD ffmpeg-4.1.2.ebuild 17072 BLAKE2B 4e3d25a7b01920c2e89740ef5847b3f99aa283e8926efcb641687ce9064f69aac5a25132f1295fd0c1dd1dff0f532d12acda72acaf09671549adb8d626266229 SHA512 3e2f5362b30dc2dc9a14356887304af89768774efb3025c4af7276da03ee75ae0a0ed85afd43c0a04b59c687aee901eba4db868720d130b0e282d25324e77977 -EBUILD ffmpeg-4.1.3.ebuild 17070 BLAKE2B c04bc55b090d81d9a587a18a19f0518306d65c17255999c8e63c5aa2c9e10b10088b88ad9a549c0576ea33750b5654efecee70ec75017eb2ff8ce542937504e5 SHA512 6d818dafb8835ded68e62fb810e591e41668a21d0a0bd6f0b8d1789df78c9eaf9c47ebc31545ea9ae46c25ced1c93a7164743ff172284e8c8b10fce091970d90 +EBUILD ffmpeg-4.1.3.ebuild 17069 BLAKE2B 9bd743bce0fbe0a31076f8918449a655d40b05bdbb4d1aebbeda7faf005bd868435514feea267a38d58d59c52cf728a3d2ecd80e9cbecb02dc3d4d3c7ac8aa1e SHA512 577f0103c4201cef03cd5a8492f82767b824fb6bb985ad00e3270c45ac5357515456952c4ce79d1a6c51bcc8fd0ffbd795b0ed7aff2c8a2a987714927d49d8af EBUILD ffmpeg-9999.ebuild 17208 BLAKE2B 0c9c9bbbdf2238d995008d6ac8f6a357993abd976958738747edca1e966caabf6dd5816a70c9da34072157fe08b3fad6b04bf2cc65cfe5a548144d968a116938 SHA512 b6e99a8d554b18afc5719468f80d46b5d6a1f3e71ec1c68beb17797f3c7ef301418afdbf9f365db554617564b290d3596e1ad0e355b4b08da47f76c747ad9aec MISC metadata.xml 5992 BLAKE2B 640b4b6e9904cc8653cd5c7788cbd5b0b48579e7a87fdd58b98e5ad88d3e34f05aa181a89830aabca4f9262c1ce9e07ed1b1c323352d40b1da6800b5e0e41fe7 SHA512 542bf49855f46b3391a9061b3c5e8c025ea5fb67af6046f0aa2bd6fb5cdf17bff92d5c2fea181f7e2f7dffb84452f8876ed8ef744b41b7828d0188ce57b184ae diff --git a/media-video/ffmpeg/ffmpeg-3.4.6-r1.ebuild b/media-video/ffmpeg/ffmpeg-3.4.6-r1.ebuild new file mode 100644 index 000000000000..dcd142fdee87 --- /dev/null +++ b/media-video/ffmpeg/ffmpeg-3.4.6-r1.ebuild @@ -0,0 +1,489 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +# Subslot: libavutil major.libavcodec major.libavformat major +# Since FFmpeg ships several libraries, subslot is kind of limited here. +# Most consumers will use those three libraries, if a "less used" library +# changes its soname, consumers will have to be rebuilt the old way +# (preserve-libs). +# If, for example, a package does not link to libavformat and only libavformat +# changes its ABI then this package will be rebuilt needlessly. Hence, such a +# package is free _not_ to := depend on FFmpeg but I would strongly encourage +# doing so since such a case is unlikely. +FFMPEG_SUBSLOT=55.57.57 + +SCM="" +if [ "${PV#9999}" != "${PV}" ] ; then + SCM="git-r3" + EGIT_REPO_URI="git://source.ffmpeg.org/ffmpeg.git" +fi + +inherit eutils flag-o-matic multilib multilib-minimal toolchain-funcs ${SCM} + +DESCRIPTION="Complete solution to record, convert and stream audio and video. Includes libavcodec" +HOMEPAGE="http://ffmpeg.org/" +if [ "${PV#9999}" != "${PV}" ] ; then + SRC_URI="" +elif [ "${PV%_p*}" != "${PV}" ] ; then # Snapshot + SRC_URI="mirror://gentoo/${P}.tar.bz2" +else # Release + SRC_URI="http://ffmpeg.org/releases/${P/_/-}.tar.bz2" +fi +FFMPEG_REVISION="${PV#*_p}" + +SLOT="0/${FFMPEG_SUBSLOT}" +LICENSE=" + !gpl? ( LGPL-2.1 ) + gpl? ( GPL-2 ) + amr? ( + gpl? ( GPL-3 ) + !gpl? ( LGPL-3 ) + ) + gmp? ( + gpl? ( GPL-3 ) + !gpl? ( LGPL-3 ) + ) + encode? ( + amrenc? ( + gpl? ( GPL-3 ) + !gpl? ( LGPL-3 ) + ) + ) + samba? ( GPL-3 ) +" +if [ "${PV#9999}" = "${PV}" ] ; then + KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris" +fi + +# Options to use as use_enable in the foo[:bar] form. +# This will feed configure with $(use_enable foo bar) +# or $(use_enable foo foo) if no :bar is set. +# foo is added to IUSE. +FFMPEG_FLAG_MAP=( + +bzip2:bzlib cpudetection:runtime-cpudetect debug gcrypt gnutls gmp + +gpl +hardcoded-tables +iconv lzma +network opencl openssl +postproc + samba:libsmbclient sdl:ffplay sdl:sdl2 vaapi vdpau X:xlib xcb:libxcb + xcb:libxcb-shm xcb:libxcb-xfixes +zlib + # libavdevice options + cdio:libcdio iec61883:libiec61883 ieee1394:libdc1394 libcaca openal + opengl + # indevs + libv4l:libv4l2 pulseaudio:libpulse libdrm + # decoders + amr:libopencore-amrwb amr:libopencore-amrnb fdk:libfdk-aac + jpeg2k:libopenjpeg bluray:libbluray gme:libgme gsm:libgsm + mmal modplug:libmodplug opus:libopus libilbc librtmp ssh:libssh + speex:libspeex svg:librsvg vorbis:libvorbis + vpx:libvpx zvbi:libzvbi + # libavfilter options + appkit + bs2b:libbs2b chromaprint flite:libflite frei0r + fribidi:libfribidi fontconfig ladspa libass truetype:libfreetype + rubberband:librubberband zeromq:libzmq zimg:libzimg + # libswresample options + libsoxr + # Threads; we only support pthread for now but ffmpeg supports more + +threads:pthreads +) + +# Same as above but for encoders, i.e. they do something only with USE=encode. +FFMPEG_ENCODER_FLAG_MAP=( + amrenc:libvo-amrwbenc mp3:libmp3lame + kvazaar:libkvazaar nvenc:nvenc + openh264:libopenh264 snappy:libsnappy theora:libtheora twolame:libtwolame + wavpack:libwavpack webp:libwebp x264:libx264 x265:libx265 xvid:libxvid +) + +IUSE=" + alsa chromium doc +encode jack oss pic static-libs test v4l + ${FFMPEG_FLAG_MAP[@]%:*} + ${FFMPEG_ENCODER_FLAG_MAP[@]%:*} +" + +# Strings for CPU features in the useflag[:configure_option] form +# if :configure_option isn't set, it will use 'useflag' as configure option +ARM_CPU_FEATURES=( + cpu_flags_arm_thumb:armv5te + cpu_flags_arm_v6:armv6 + cpu_flags_arm_thumb2:armv6t2 + cpu_flags_arm_neon:neon + cpu_flags_arm_vfp:vfp + cpu_flags_arm_vfpv3:vfpv3 + cpu_flags_arm_v8:armv8 +) +ARM_CPU_REQUIRED_USE=" + arm64? ( cpu_flags_arm_v8 ) + cpu_flags_arm_v8? ( cpu_flags_arm_vfpv3 cpu_flags_arm_neon ) + cpu_flags_arm_neon? ( cpu_flags_arm_thumb2 cpu_flags_arm_vfp ) + cpu_flags_arm_vfpv3? ( cpu_flags_arm_vfp ) + cpu_flags_arm_thumb2? ( cpu_flags_arm_v6 ) + cpu_flags_arm_v6? ( cpu_flags_arm_thumb ) +" +MIPS_CPU_FEATURES=( mipsdspr1:mipsdsp mipsdspr2 mipsfpu ) +PPC_CPU_FEATURES=( altivec ) +X86_CPU_FEATURES_RAW=( 3dnow:amd3dnow 3dnowext:amd3dnowext aes:aesni avx:avx avx2:avx2 fma3:fma3 fma4:fma4 mmx:mmx mmxext:mmxext sse:sse sse2:sse2 sse3:sse3 ssse3:ssse3 sse4_1:sse4 sse4_2:sse42 xop:xop ) +X86_CPU_FEATURES=( ${X86_CPU_FEATURES_RAW[@]/#/cpu_flags_x86_} ) +X86_CPU_REQUIRED_USE=" + cpu_flags_x86_avx2? ( cpu_flags_x86_avx ) + cpu_flags_x86_fma4? ( cpu_flags_x86_avx ) + cpu_flags_x86_fma3? ( cpu_flags_x86_avx ) + cpu_flags_x86_xop? ( cpu_flags_x86_avx ) + cpu_flags_x86_avx? ( cpu_flags_x86_sse4_2 ) + cpu_flags_x86_aes? ( cpu_flags_x86_sse4_2 ) + cpu_flags_x86_sse4_2? ( cpu_flags_x86_sse4_1 ) + cpu_flags_x86_sse4_1? ( cpu_flags_x86_ssse3 ) + cpu_flags_x86_ssse3? ( cpu_flags_x86_sse3 ) + cpu_flags_x86_sse3? ( cpu_flags_x86_sse2 ) + cpu_flags_x86_sse2? ( cpu_flags_x86_sse ) + cpu_flags_x86_sse? ( cpu_flags_x86_mmxext ) + cpu_flags_x86_mmxext? ( cpu_flags_x86_mmx ) + cpu_flags_x86_3dnowext? ( cpu_flags_x86_3dnow ) + cpu_flags_x86_3dnow? ( cpu_flags_x86_mmx ) +" + +CPU_FEATURES_MAP=( + ${ARM_CPU_FEATURES[@]} + ${MIPS_CPU_FEATURES[@]} + ${PPC_CPU_FEATURES[@]} + ${X86_CPU_FEATURES[@]} +) +IUSE="${IUSE} + ${CPU_FEATURES_MAP[@]%:*}" + +CPU_REQUIRED_USE=" + ${ARM_CPU_REQUIRED_USE} + ${X86_CPU_REQUIRED_USE} +" + +FFTOOLS=( aviocat cws2fws ffescape ffeval ffhash fourcc2pixfmt graph2dot ismindex pktdumper qt-faststart sidxindex trasher ) +IUSE="${IUSE} ${FFTOOLS[@]/#/+fftools_}" + +RDEPEND=" + alsa? ( >=media-libs/alsa-lib-1.0.27.2[${MULTILIB_USEDEP}] ) + amr? ( >=media-libs/opencore-amr-0.1.3-r1[${MULTILIB_USEDEP}] ) + bluray? ( >=media-libs/libbluray-0.3.0-r1:=[${MULTILIB_USEDEP}] ) + bs2b? ( >=media-libs/libbs2b-3.1.0-r1[${MULTILIB_USEDEP}] ) + bzip2? ( >=app-arch/bzip2-1.0.6-r4[${MULTILIB_USEDEP}] ) + cdio? ( >=dev-libs/libcdio-paranoia-0.90_p1-r1[${MULTILIB_USEDEP}] ) + chromaprint? ( >=media-libs/chromaprint-1.2-r1[${MULTILIB_USEDEP}] ) + encode? ( + amrenc? ( >=media-libs/vo-amrwbenc-0.1.2-r1[${MULTILIB_USEDEP}] ) + kvazaar? ( media-libs/kvazaar[${MULTILIB_USEDEP}] ) + mp3? ( >=media-sound/lame-3.99.5-r1[${MULTILIB_USEDEP}] ) + nvenc? ( media-video/nvidia_video_sdk ) + openh264? ( >=media-libs/openh264-1.4.0-r1[${MULTILIB_USEDEP}] ) + snappy? ( >=app-arch/snappy-1.1.2-r1:=[${MULTILIB_USEDEP}] ) + theora? ( + >=media-libs/libtheora-1.1.1[encode,${MULTILIB_USEDEP}] + >=media-libs/libogg-1.3.0[${MULTILIB_USEDEP}] + ) + twolame? ( >=media-sound/twolame-0.3.13-r1[${MULTILIB_USEDEP}] ) + wavpack? ( >=media-sound/wavpack-4.60.1-r1[${MULTILIB_USEDEP}] ) + webp? ( >=media-libs/libwebp-0.3.0:=[${MULTILIB_USEDEP}] ) + x264? ( >=media-libs/x264-0.0.20130506:=[${MULTILIB_USEDEP}] ) + x265? ( >=media-libs/x265-1.6:=[${MULTILIB_USEDEP}] ) + xvid? ( >=media-libs/xvid-1.3.2-r1[${MULTILIB_USEDEP}] ) + ) + fdk? ( >=media-libs/fdk-aac-0.1.3:=[${MULTILIB_USEDEP}] ) + flite? ( >=app-accessibility/flite-1.4-r4[${MULTILIB_USEDEP}] ) + fontconfig? ( >=media-libs/fontconfig-2.10.92[${MULTILIB_USEDEP}] ) + frei0r? ( media-plugins/frei0r-plugins ) + fribidi? ( >=dev-libs/fribidi-0.19.6[${MULTILIB_USEDEP}] ) + gcrypt? ( >=dev-libs/libgcrypt-1.6:0=[${MULTILIB_USEDEP}] ) + gme? ( >=media-libs/game-music-emu-0.6.0[${MULTILIB_USEDEP}] ) + gmp? ( >=dev-libs/gmp-6:0=[${MULTILIB_USEDEP}] ) + gnutls? ( >=net-libs/gnutls-2.12.23-r6:=[${MULTILIB_USEDEP}] ) + gsm? ( >=media-sound/gsm-1.0.13-r1[${MULTILIB_USEDEP}] ) + iconv? ( >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}] ) + iec61883? ( + >=media-libs/libiec61883-1.2.0-r1[${MULTILIB_USEDEP}] + >=sys-libs/libraw1394-2.1.0-r1[${MULTILIB_USEDEP}] + >=sys-libs/libavc1394-0.5.4-r1[${MULTILIB_USEDEP}] + ) + ieee1394? ( + >=media-libs/libdc1394-2.2.1[${MULTILIB_USEDEP}] + >=sys-libs/libraw1394-2.1.0-r1[${MULTILIB_USEDEP}] + ) + jack? ( virtual/jack[${MULTILIB_USEDEP}] ) + jpeg2k? ( >=media-libs/openjpeg-2:2[${MULTILIB_USEDEP}] ) + libass? ( >=media-libs/libass-0.10.2:=[${MULTILIB_USEDEP}] ) + libcaca? ( >=media-libs/libcaca-0.99_beta18-r1[${MULTILIB_USEDEP}] ) + libdrm? ( x11-libs/libdrm[${MULTILIB_USEDEP}] ) + libilbc? ( >=media-libs/libilbc-2[${MULTILIB_USEDEP}] ) + libsoxr? ( >=media-libs/soxr-0.1.0[${MULTILIB_USEDEP}] ) + libv4l? ( >=media-libs/libv4l-0.9.5[${MULTILIB_USEDEP}] ) + lzma? ( >=app-arch/xz-utils-5.0.5-r1[${MULTILIB_USEDEP}] ) + mmal? ( media-libs/raspberrypi-userland ) + modplug? ( >=media-libs/libmodplug-0.8.8.4-r1[${MULTILIB_USEDEP}] ) + openal? ( >=media-libs/openal-1.15.1[${MULTILIB_USEDEP}] ) + opencl? ( virtual/opencl[${MULTILIB_USEDEP}] ) + opengl? ( >=virtual/opengl-7.0-r1[${MULTILIB_USEDEP}] ) + openssl? ( >=dev-libs/openssl-1.0.1h-r2:0=[${MULTILIB_USEDEP}] ) + opus? ( >=media-libs/opus-1.0.2-r2[${MULTILIB_USEDEP}] ) + pulseaudio? ( >=media-sound/pulseaudio-2.1-r1[${MULTILIB_USEDEP}] ) + librtmp? ( >=media-video/rtmpdump-2.4_p20131018[${MULTILIB_USEDEP}] ) + rubberband? ( >=media-libs/rubberband-1.8.1-r1[${MULTILIB_USEDEP}] ) + samba? ( >=net-fs/samba-3.6.23-r1[client,${MULTILIB_USEDEP}] ) + sdl? ( media-libs/libsdl2[sound,video,${MULTILIB_USEDEP}] ) + speex? ( >=media-libs/speex-1.2_rc1-r1[${MULTILIB_USEDEP}] ) + ssh? ( >=net-libs/libssh-0.5.5[${MULTILIB_USEDEP}] ) + svg? ( gnome-base/librsvg:2=[${MULTILIB_USEDEP}] ) + truetype? ( >=media-libs/freetype-2.5.0.1:2[${MULTILIB_USEDEP}] ) + vaapi? ( >=x11-libs/libva-1.2.1-r1[${MULTILIB_USEDEP}] ) + vdpau? ( >=x11-libs/libvdpau-0.7[${MULTILIB_USEDEP}] ) + vorbis? ( + >=media-libs/libvorbis-1.3.3-r1[${MULTILIB_USEDEP}] + >=media-libs/libogg-1.3.0[${MULTILIB_USEDEP}] + ) + vpx? ( >=media-libs/libvpx-1.4.0:=[${MULTILIB_USEDEP}] ) + X? ( + >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}] + >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}] + >=x11-libs/libXv-1.0.10[${MULTILIB_USEDEP}] + ) + xcb? ( >=x11-libs/libxcb-1.4[${MULTILIB_USEDEP}] ) + zeromq? ( >=net-libs/zeromq-4.1.6 ) + zimg? ( >=media-libs/zimg-2.4:=[${MULTILIB_USEDEP}] ) + zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] ) + zvbi? ( >=media-libs/zvbi-0.2.35[${MULTILIB_USEDEP}] ) + !media-video/qt-faststart + postproc? ( !media-libs/libpostproc ) +" + +DEPEND="${RDEPEND} + >=sys-devel/make-3.81 + doc? ( sys-apps/texinfo ) + >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] + ladspa? ( >=media-libs/ladspa-sdk-1.13-r2[${MULTILIB_USEDEP}] ) + cpu_flags_x86_mmx? ( || ( >=dev-lang/nasm-2.13 >=dev-lang/yasm-1.3 ) ) + test? ( net-misc/wget sys-devel/bc ) + v4l? ( sys-kernel/linux-headers ) +" + +# Code requiring FFmpeg to be built under gpl license +GPL_REQUIRED_USE=" + postproc? ( gpl ) + frei0r? ( gpl ) + cdio? ( gpl ) + samba? ( gpl ) + encode? ( + x264? ( gpl ) + x265? ( gpl ) + xvid? ( gpl ) + X? ( !xcb? ( gpl ) ) + ) +" +REQUIRED_USE=" + libv4l? ( v4l ) + fftools_cws2fws? ( zlib ) + test? ( encode ) + ${GPL_REQUIRED_USE} + ${CPU_REQUIRED_USE}" +RESTRICT=" + gpl? ( openssl? ( bindist ) fdk? ( bindist ) ) +" + +S=${WORKDIR}/${P/_/-} + +PATCHES=( + "${FILESDIR}"/chromium.patch + "${FILESDIR}"/${PN}-3.4.6-fix-building-against-fdk-aac-2.patch #682890 +) + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/libavutil/avconfig.h +) + +src_prepare() { + if [[ "${PV%_p*}" != "${PV}" ]] ; then # Snapshot + export revision=git-N-${FFMPEG_REVISION} + fi + default + echo 'include $(SRC_PATH)/ffbuild/libffmpeg.mak' >> Makefile || die +} + +multilib_src_configure() { + local myconf=( ${EXTRA_FFMPEG_CONF} ) + + local ffuse=( "${FFMPEG_FLAG_MAP[@]}" ) + use openssl && use gpl && myconf+=( --enable-nonfree ) + use samba && myconf+=( --enable-version3 ) + + # Encoders + if use encode ; then + ffuse+=( "${FFMPEG_ENCODER_FLAG_MAP[@]}" ) + + # Licensing. + if use amrenc ; then + myconf+=( --enable-version3 ) + fi + else + myconf+=( --disable-encoders ) + fi + + # Indevs + use v4l || myconf+=( --disable-indev=v4l2 --disable-outdev=v4l2 ) + for i in alsa oss jack ; do + use ${i} || myconf+=( --disable-indev=${i} ) + done + + # Outdevs + for i in alsa oss sdl ; do + use ${i} || myconf+=( --disable-outdev=${i} ) + done + + # Decoders + use amr && myconf+=( --enable-version3 ) + use gmp && myconf+=( --enable-version3 ) + use fdk && use gpl && myconf+=( --enable-nonfree ) + + for i in "${ffuse[@]#+}" ; do + myconf+=( $(use_enable ${i%:*} ${i#*:}) ) + done + + # (temporarily) disable non-multilib deps + if ! multilib_is_native_abi; then + for i in frei0r libzmq ; do + myconf+=( --disable-${i} ) + done + fi + + # CPU features + for i in "${CPU_FEATURES_MAP[@]}" ; do + use ${i%:*} || myconf+=( --disable-${i#*:} ) + done + + if use pic ; then + myconf+=( --enable-pic ) + # disable asm code if PIC is required + # as the provided asm decidedly is not PIC for x86. + [[ ${ABI} == x86 ]] && myconf+=( --disable-asm ) + fi + [[ ${ABI} == x32 ]] && myconf+=( --disable-asm ) #427004 + + # Try to get cpu type based on CFLAGS. + # Bug #172723 + # We need to do this so that features of that CPU will be better used + # If they contain an unknown CPU it will not hurt since ffmpeg's configure + # will just ignore it. + for i in $(get-flag mcpu) $(get-flag march) ; do + [[ ${i} = native ]] && i="host" # bug #273421 + myconf+=( --cpu=${i} ) + break + done + + # LTO support, bug #566282 + is-flagq "-flto*" && myconf+=( "--enable-lto" ) + + # Mandatory configuration + myconf=( + --enable-avfilter + --enable-avresample + --disable-stripping + --disable-libcelt # bug #664158 + "${myconf[@]}" + ) + + # cross compile support + if tc-is-cross-compiler ; then + myconf+=( --enable-cross-compile --arch=$(tc-arch-kernel) --cross-prefix=${CHOST}- --host-cc="$(tc-getBUILD_CC)" ) + case ${CHOST} in + *freebsd*) + myconf+=( --target-os=freebsd ) + ;; + *mingw32*) + myconf+=( --target-os=mingw32 ) + ;; + *linux*) + myconf+=( --target-os=linux ) + ;; + esac + fi + + # doc + myconf+=( + $(multilib_native_use_enable doc) + $(multilib_native_use_enable doc htmlpages) + $(multilib_native_enable manpages) + ) + + set -- "${S}/configure" \ + --prefix="${EPREFIX}/usr" \ + --libdir="${EPREFIX}/usr/$(get_libdir)" \ + --shlibdir="${EPREFIX}/usr/$(get_libdir)" \ + --docdir="${EPREFIX}/usr/share/doc/${PF}/html" \ + --mandir="${EPREFIX}/usr/share/man" \ + --enable-shared \ + --cc="$(tc-getCC)" \ + --cxx="$(tc-getCXX)" \ + --ar="$(tc-getAR)" \ + --optflags="${CFLAGS}" \ + $(use_enable static-libs static) \ + "${myconf[@]}" + echo "${@}" + "${@}" || die + + if multilib_is_native_abi && use chromium; then + einfo "Configuring for Chromium" + mkdir -p ../chromium || die + pushd ../chromium >/dev/null || die + set -- "${@}" \ + --disable-shared \ + --enable-static \ + --enable-pic \ + --extra-cflags="-DFF_API_CONVERGENCE_DURATION=0" + echo "${@}" + "${@}" || die + popd >/dev/null || die + fi +} + +multilib_src_compile() { + emake V=1 + + if multilib_is_native_abi; then + for i in "${FFTOOLS[@]}" ; do + if use fftools_${i} ; then + emake V=1 tools/${i}$(get_exeext) + fi + done + + if use chromium; then + einfo "Compiling for Chromium" + pushd ../chromium >/dev/null || die + emake V=1 libffmpeg + popd >/dev/null || die + fi + fi +} + +multilib_src_install() { + emake V=1 DESTDIR="${D}" install install-doc + + if multilib_is_native_abi; then + for i in "${FFTOOLS[@]}" ; do + if use fftools_${i} ; then + dobin tools/${i}$(get_exeext) + fi + done + + if use chromium; then + einfo "Installing for Chromium" + pushd ../chromium >/dev/null || die + emake V=1 DESTDIR="${D}" install-libffmpeg + popd >/dev/null || die + fi + fi +} + +multilib_src_install_all() { + dodoc Changelog README.md CREDITS doc/*.txt doc/APIchanges + [ -f "RELEASE_NOTES" ] && dodoc "RELEASE_NOTES" +} + +multilib_src_test() { + LD_LIBRARY_PATH="${BUILD_DIR}/libpostproc:${BUILD_DIR}/libswscale:${BUILD_DIR}/libswresample:${BUILD_DIR}/libavcodec:${BUILD_DIR}/libavdevice:${BUILD_DIR}/libavfilter:${BUILD_DIR}/libavformat:${BUILD_DIR}/libavutil:${BUILD_DIR}/libavresample" \ + emake V=1 fate +} diff --git a/media-video/ffmpeg/ffmpeg-4.1.3.ebuild b/media-video/ffmpeg/ffmpeg-4.1.3.ebuild index 907398cc03c3..1e051099cb54 100644 --- a/media-video/ffmpeg/ffmpeg-4.1.3.ebuild +++ b/media-video/ffmpeg/ffmpeg-4.1.3.ebuild @@ -55,7 +55,7 @@ LICENSE=" samba? ( GPL-3 ) " if [ "${PV#9999}" = "${PV}" ] ; then - KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris" + KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris" fi # Options to use as use_enable in the foo[:bar] form. diff --git a/media-video/ffmpeg/files/ffmpeg-3.4.6-fix-building-against-fdk-aac-2.patch b/media-video/ffmpeg/files/ffmpeg-3.4.6-fix-building-against-fdk-aac-2.patch new file mode 100644 index 000000000000..0ee99da96b3b --- /dev/null +++ b/media-video/ffmpeg/files/ffmpeg-3.4.6-fix-building-against-fdk-aac-2.patch @@ -0,0 +1,74 @@ +https://bugs.gentoo.org/682890 +https://git.ffmpeg.org/gitweb/ffmpeg.git/commit/141c960e21d2860e354f9b90df136184dd00a9a8 + +--- a/libavcodec/libfdk-aacenc.c ++++ b/libavcodec/libfdk-aacenc.c +@@ -26,6 +26,11 @@ + #include "audio_frame_queue.h" + #include "internal.h" + ++#define FDKENC_VER_AT_LEAST(vl0, vl1) \ ++ (defined(AACENCODER_LIB_VL0) && \ ++ ((AACENCODER_LIB_VL0 > vl0) || \ ++ (AACENCODER_LIB_VL0 == vl0 && AACENCODER_LIB_VL1 >= vl1))) ++ + typedef struct AACContext { + const AVClass *class; + HANDLE_AACENCODER handle; +@@ -290,7 +295,11 @@ static av_cold int aac_encode_init(AVCodecContext *avctx) + } + + avctx->frame_size = info.frameLength; ++#if FDKENC_VER_AT_LEAST(4, 0) ++ avctx->initial_padding = info.nDelay; ++#else + avctx->initial_padding = info.encoderDelay; ++#endif + ff_af_queue_init(avctx, &s->afq); + + if (avctx->flags & AV_CODEC_FLAG_GLOBAL_HEADER) { +@@ -323,28 +332,35 @@ static int aac_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, + int out_buffer_size, out_buffer_element_size; + void *in_ptr, *out_ptr; + int ret; ++ uint8_t dummy_buf[1]; + AACENC_ERROR err; + + /* handle end-of-stream small frame and flushing */ + if (!frame) { ++ /* Must be a non-null pointer, even if it's a dummy. We could use ++ * the address of anything else on the stack as well. */ ++ in_ptr = dummy_buf; ++ in_buffer_size = 0; ++ + in_args.numInSamples = -1; + } else { +- in_ptr = frame->data[0]; +- in_buffer_size = 2 * avctx->channels * frame->nb_samples; +- in_buffer_element_size = 2; ++ in_ptr = frame->data[0]; ++ in_buffer_size = 2 * avctx->channels * frame->nb_samples; + +- in_args.numInSamples = avctx->channels * frame->nb_samples; +- in_buf.numBufs = 1; +- in_buf.bufs = &in_ptr; +- in_buf.bufferIdentifiers = &in_buffer_identifier; +- in_buf.bufSizes = &in_buffer_size; +- in_buf.bufElSizes = &in_buffer_element_size; ++ in_args.numInSamples = avctx->channels * frame->nb_samples; + + /* add current frame to the queue */ + if ((ret = ff_af_queue_add(&s->afq, frame)) < 0) + return ret; + } + ++ in_buffer_element_size = 2; ++ in_buf.numBufs = 1; ++ in_buf.bufs = &in_ptr; ++ in_buf.bufferIdentifiers = &in_buffer_identifier; ++ in_buf.bufSizes = &in_buffer_size; ++ in_buf.bufElSizes = &in_buffer_element_size; ++ + /* The maximum packet size is 6144 bits aka 768 bytes per channel. */ + if ((ret = ff_alloc_packet(avpkt, FFMAX(8192, 768 * avctx->channels)))) { + av_log(avctx, AV_LOG_ERROR, "Error getting output packet\n"); diff --git a/media-video/libav/Manifest b/media-video/libav/Manifest index 33620a4dcf5e..7ca9af9c4b83 100644 --- a/media-video/libav/Manifest +++ b/media-video/libav/Manifest @@ -1,7 +1,8 @@ +AUX libav-12.3-x264.patch 2466 BLAKE2B 8dd7fe5a6699f34bd1662f10eebbe5f189a22c43f827a0bb2b323a99da3e3699168fdd8c20f6513c44b2f59d089a10751ca1522c78e302fa8086beab1ad27c6e SHA512 25aeb874b4a08654b22f45cd79d9aec91e790233d93369422d3547e0ca853724347b22a2f7d404b4f076b96aae6e9b84466cd24c11e8601b4cede48e183ee15f DIST fate-12-r1.tar.xz 763758260 BLAKE2B 299e1a2a773e49c7a51c1222ac34eaea24f77420570a1b0c0b18db5517736656f52ad0a7ca807f65f5e9f9597709265fcd950cf989ad995aa4289ba0e364950e SHA512 084f584c34d34b66c1f4d4742a11376ee2b90f6a07529b5aba6d50421dc8f863fded73dd57ad2c201aadfd529f0f923fa531ea9b41aaaa7b682846ef565a1018 DIST libav-12.3.tar.xz 5267988 BLAKE2B 92147dde4f41a5aa05d93824d3ffa9a21b067f99cec5fa17bc4b8e3600f2b1913f7e74d4ea766c864cdba686dd14d5d3a8bc8af8f9e6de4c956f14cb8e20ab88 SHA512 fd4838a934792797a975ece034cbd63760c94ee6becc99b8707e8345e41777baf26e30ef6937ab30b7d2f722977e69aabc2cfca3fcdf88373d579f9cc9d69162 DIST libav-13_pre20171219.tar.xz 5427904 BLAKE2B 074dc5d071aeb656fc14a015c2e3c168aa81d25e2fb08d99e300dc47d7ea28f61500fcfab0b16fa136261a5af27631b7536eb3aefa0e1feb4d615af57f9f5a36 SHA512 0c9b59957f1fbbff8f5b95b02c11014a4efdddf4b7e1b158cd0fda3af8b89bd90d48263ed0239915adfb7abcd7a8b22c278cd5cf1d01822bd22df65cc7f69689 -EBUILD libav-12.3.ebuild 11191 BLAKE2B 1e4b56dbb7f37997e3a26839e15bfd491b0fdaf08188fc9493333d39362f34a7ed5c323260da4a2c7dff3b4c800af5c52255edb4e754af50d0888fbb210a3824 SHA512 13f9c792a8dab0503af1226d6fc56cb700e6f4343652e64892c2e84c57e34e6d63cdb14cc3946fa98f7ffae5d03a4a9b9b3659d2c97d14705170ed3d70993acb +EBUILD libav-12.3.ebuild 11242 BLAKE2B 25ad4fbef4ff27561de0184450b79991cb80661558aabc5b2b84d1ef69974a2230990b9cbaa04c963eedbb48b4b1cecef20a64ffb3b7bd0d9186d98a1e73ae24 SHA512 49793537ed1c926b4f3d3ab9829b2516da5280bab76af76fd627ae9a1f37edd6a6d6beb7160a0000352b96ea6fb0f7be62224f7d683f0331e508edd570147497 EBUILD libav-13_pre20171219.ebuild 10625 BLAKE2B 33a1d89df5a2188d5322f690c93a3832be3777a73b7a154e07e4167c5938bef5dd05b3b965e136d85ae6e3e010bb035bb304e5cd555894890109309afcfd1b6f SHA512 e14e5698c35358bc02450ac248053687c18734044499feb1c1bd2c4cc07394c1ad4cc31e43b134b5c04138d34965f8882021503e293273d7ebd9b2abd9907476 EBUILD libav-9999.ebuild 10766 BLAKE2B 89157d8d1e2ec75cddf618a5a788f55def679462b4e61cc252528a5fd80bd66811a732b504b0bd969bda48d8634fda53e7eee47f6c88c94c02c8b2aec40dedba SHA512 b0f81f087eb16c64eaf2bd1eea1da95f5ecbcc7c23dd08f50bde7ffee7cdc1cfdcf23d42636f4d59fd86584e9e2ae5cf2935a5356a14b95ee684fb73f9317452 MISC metadata.xml 2601 BLAKE2B d09d7ca403657b7d446f2504ff22c74ebb86303db22d4df43cb4b026ca39c059e754459f5f99ffc5cf6c5a29a189ed47754fbe709bc4897901cab96ed6928ab3 SHA512 12d2a41647e3e9ca824de3276098f742c9a068a8d4b33b2dbc45f32329ccdbdbe13c1f6f52cc4028ef5511c9f8557cea39bf1926c2433c7ae85687bf1f6ea7a1 diff --git a/media-video/libav/files/libav-12.3-x264.patch b/media-video/libav/files/libav-12.3-x264.patch new file mode 100644 index 000000000000..25c089bfeac1 --- /dev/null +++ b/media-video/libav/files/libav-12.3-x264.patch @@ -0,0 +1,85 @@ +From c6558e8840fbb2386bf8742e4d68dd6e067d262e Mon Sep 17 00:00:00 2001 +From: Luca Barbato <lu_zero@gentoo.org> +Date: Tue, 26 Dec 2017 12:32:42 +0100 +Subject: [PATCH] x264: Support version 153 + +It has native simultaneus 8 and 10 bit support. +--- + libavcodec/libx264.c | 30 ++++++++++++++++++++++++++++++ + 1 file changed, 30 insertions(+) + +diff --git a/libavcodec/libx264.c b/libavcodec/libx264.c +index 0dec12edd..3dc53aaf3 100644 +--- a/libavcodec/libx264.c ++++ b/libavcodec/libx264.c +@@ -243,7 +243,11 @@ static int X264_frame(AVCodecContext *ctx, AVPacket *pkt, const AVFrame *frame, + + x264_picture_init( &x4->pic ); + x4->pic.img.i_csp = x4->params.i_csp; ++#if X264_BUILD >= 153 ++ if (x4->params.i_bitdepth > 8) ++#else + if (x264_bit_depth > 8) ++#endif + x4->pic.img.i_csp |= X264_CSP_HIGH_DEPTH; + x4->pic.img.i_plane = 3; + +@@ -395,6 +399,9 @@ static av_cold int X264_init(AVCodecContext *avctx) + x4->params.p_log_private = avctx; + x4->params.i_log_level = X264_LOG_DEBUG; + x4->params.i_csp = convert_pix_fmt(avctx->pix_fmt); ++#if X264_BUILD >= 153 ++ x4->params.i_bitdepth = av_pix_fmt_desc_get(avctx->pix_fmt)->comp[0].depth; ++#endif + + if (avctx->bit_rate) { + x4->params.rc.i_bitrate = avctx->bit_rate / 1000; +@@ -659,6 +666,7 @@ FF_ENABLE_DEPRECATION_WARNINGS + return 0; + } + ++#if X264_BUILD < 153 + static const enum AVPixelFormat pix_fmts_8bit[] = { + AV_PIX_FMT_YUV420P, + AV_PIX_FMT_YUVJ420P, +@@ -685,15 +693,37 @@ static const enum AVPixelFormat pix_fmts_10bit[] = { + AV_PIX_FMT_NV20, + AV_PIX_FMT_NONE + }; ++#else ++static const enum AVPixelFormat pix_fmts_all[] = { ++ AV_PIX_FMT_YUV420P, ++ AV_PIX_FMT_YUVJ420P, ++ AV_PIX_FMT_YUV422P, ++ AV_PIX_FMT_YUVJ422P, ++ AV_PIX_FMT_YUV444P, ++ AV_PIX_FMT_YUVJ444P, ++ AV_PIX_FMT_NV12, ++ AV_PIX_FMT_NV16, ++ AV_PIX_FMT_NV21, ++ AV_PIX_FMT_YUV420P10, ++ AV_PIX_FMT_YUV422P10, ++ AV_PIX_FMT_YUV444P10, ++ AV_PIX_FMT_NV20, ++ AV_PIX_FMT_NONE ++}; ++#endif + + static av_cold void X264_init_static(AVCodec *codec) + { ++#if X264_BUILD < 153 + if (x264_bit_depth == 8) + codec->pix_fmts = pix_fmts_8bit; + else if (x264_bit_depth == 9) + codec->pix_fmts = pix_fmts_9bit; + else if (x264_bit_depth == 10) + codec->pix_fmts = pix_fmts_10bit; ++#else ++ codec->pix_fmts = pix_fmts_all; ++#endif + } + + #define OFFSET(x) offsetof(X264Context, x) +-- +2.21.0 + diff --git a/media-video/libav/libav-12.3.ebuild b/media-video/libav/libav-12.3.ebuild index 30617cd70e6e..2e4a307f5bd2 100644 --- a/media-video/libav/libav-12.3.ebuild +++ b/media-video/libav/libav-12.3.ebuild @@ -144,6 +144,7 @@ src_unpack() { src_prepare() { eapply_user + eapply "${FILESDIR}/${P}-x264.patch" # bug 681888 # if we have snapshot then we need to hardcode the version if [[ ${PV%_p*} != ${PV} ]]; then diff --git a/media-video/pipewire/Manifest b/media-video/pipewire/Manifest new file mode 100644 index 000000000000..a9f613d3ec2d --- /dev/null +++ b/media-video/pipewire/Manifest @@ -0,0 +1,7 @@ +AUX pipewire-0.2.6-alsa-lib-1.1.9.patch 1909 BLAKE2B 4e6c1143dff1b48cd415068369d0a9f99b37002b1ecd083bcf39c7d060cd59b211f7ed585cafd6a8a980897ffa24fa68366346f3ff62cdc1ddddd2b327343633 SHA512 27aabf39e6615925ef21f2a1b4c2914204d4dd9f2de674912a76e049a30f685c036a78f4243e8005c1739acb9d698129f4e59ef78576acd5287a31dab22aca3c +AUX pipewire-0.2.6-fix-probing-without-starting.patch 2119 BLAKE2B f7180ad95f0f285a633059e8e1d0dee9f3d42ac04237ed47931da16813af2fc4f766720e2ee73442af102f856938caa1243b4c65584e9a79e5b5772718393727 SHA512 101762a2b468c280ee3f8010d3a8603f4a026b77659f34056821d9ba164bb4255a6c83a3fe30721c2092727bfed00f637bfe3d726f67a71eaf6e51050d928e04 +AUX pipewire-0.2.6-reuse-fd-in-pipewiresrc.patch 5684 BLAKE2B 9ce85e2f15b18ef458d21a44b10c875b0cb456972a61dd1ff127ad62510604d35ea6dd70daa0191181a34d2fea613ac254ffd6fa4f0fa3bb6114191e3a62996e SHA512 ba194a678b1130a29b17f1831c1a94c24db6cb05ae1d2a0e825fd1099aa2a300200d7cbfd5e5b592c54aea33893c68e554edd4bdfd1ca6cc84739b12e33058f6 +AUX pipewire-0.2.6-revert-combine-all-perms.patch 1039 BLAKE2B 5fd1d82c92680b6097ac70367eb5f7fc8190d0589d4bb228dc93c6f673763a65a7c18a5fd3b242686ba86773d90078cc50a5d7c2277dc90edcdb341d5ecb9f23 SHA512 c9bab5e79b4a88f240d34702dfe5de2df4ab7c5158d5b95228647018cb5bb69ec124fb47405074aef91480d25d388df7cdbb7fa94396d228b6f573697b2f8333 +DIST pipewire-0.2.6.tar.gz 421137 BLAKE2B 155667d14fe5380e21f0b70accea72dc4478085916a9126185136f6d33bd7729d91b790c171dcf7b6aea2c52894462d16516f8821229ca0bf9f6cde15df524d9 SHA512 3d1db41f5beb42a0ee15ae7bc8afb89b54a37c3a6a414e88b5e33ceaf98ec6dda0d9a2d03ac47a8dfce48e9637e647291919e6670bb70589b0d1951fbcbd3ff8 +EBUILD pipewire-0.2.6.ebuild 1831 BLAKE2B 53426ccce169bb1d4ac89251afa82deefb9ed416fc764fc12bc0a7193295ac6a771d0e16ccf90b6fc489302b47b04af36d7bae8bc4c9d1a70061332e2d72d31d SHA512 88d98a80a6f04d16b6ea1ce8a9e7758a42e406314e7174abf96bfd0d90e36e101a1ec81625e98efa4902e627252cef7545f1b94314ddff146a8fae51cc52a4e3 +MISC metadata.xml 449 BLAKE2B c580fa69fbecd1046123d51f0a556bf54e7dd76a7ced768ae31289969a3fcb0c03f301a214da222201bad2cd0bcf68674807e28efcdee27edd9fa6d913cdc146 SHA512 73c4b73b417e92d1bdf802ce38939afdff2ba42bc638e0c6ba42593894755ce6f197678e8676f763bd66bb0b2bb9175c1369c173be3ab64e7323795d3b00bf0c diff --git a/media-video/pipewire/files/pipewire-0.2.6-alsa-lib-1.1.9.patch b/media-video/pipewire/files/pipewire-0.2.6-alsa-lib-1.1.9.patch new file mode 100644 index 000000000000..7b2b4c894da3 --- /dev/null +++ b/media-video/pipewire/files/pipewire-0.2.6-alsa-lib-1.1.9.patch @@ -0,0 +1,66 @@ +From 37613b67ba52b5ad4e81d7ea38adc04027d9f9e5 Mon Sep 17 00:00:00 2001 +From: Wim Taymans <wtaymans@redhat.com> +Date: Thu, 23 May 2019 09:25:51 +0200 +Subject: [PATCH] alsa: handle alsa-lib 1.1.9 + +alsa-lib 1.1.9 removed /usr/include/alsa from the include path, we +must include <alsa/asoundlib.h> +--- + spa/plugins/alsa/alsa-monitor.c | 2 +- + spa/plugins/alsa/alsa-sink.c | 2 +- + spa/plugins/alsa/alsa-source.c | 2 +- + spa/plugins/alsa/alsa-utils.h | 2 +- + 4 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/spa/plugins/alsa/alsa-monitor.c b/spa/plugins/alsa/alsa-monitor.c +index d8935cd7..16a01302 100644 +--- a/spa/plugins/alsa/alsa-monitor.c ++++ b/spa/plugins/alsa/alsa-monitor.c +@@ -25,7 +25,7 @@ + #include <poll.h> + + #include <libudev.h> +-#include <asoundlib.h> ++#include <alsa/asoundlib.h> + + #include <spa/support/log.h> + #include <spa/support/type-map.h> +diff --git a/spa/plugins/alsa/alsa-sink.c b/spa/plugins/alsa/alsa-sink.c +index c31fe3e2..3c252fab 100644 +--- a/spa/plugins/alsa/alsa-sink.c ++++ b/spa/plugins/alsa/alsa-sink.c +@@ -19,7 +19,7 @@ + + #include <stddef.h> + +-#include <asoundlib.h> ++#include <alsa/asoundlib.h> + + #include <spa/node/node.h> + #include <spa/param/audio/format.h> +diff --git a/spa/plugins/alsa/alsa-source.c b/spa/plugins/alsa/alsa-source.c +index 74bbb3c0..8efc8fde 100644 +--- a/spa/plugins/alsa/alsa-source.c ++++ b/spa/plugins/alsa/alsa-source.c +@@ -19,7 +19,7 @@ + + #include <stddef.h> + +-#include <asoundlib.h> ++#include <alsa/asoundlib.h> + + #include <spa/node/node.h> + #include <spa/utils/list.h> +diff --git a/spa/plugins/alsa/alsa-utils.h b/spa/plugins/alsa/alsa-utils.h +index 5ba57bc5..3b590007 100644 +--- a/spa/plugins/alsa/alsa-utils.h ++++ b/spa/plugins/alsa/alsa-utils.h +@@ -26,7 +26,7 @@ extern "C" { + + #include <stddef.h> + +-#include <asoundlib.h> ++#include <alsa/asoundlib.h> + + #include <spa/support/type-map.h> + #include <spa/support/loop.h> diff --git a/media-video/pipewire/files/pipewire-0.2.6-fix-probing-without-starting.patch b/media-video/pipewire/files/pipewire-0.2.6-fix-probing-without-starting.patch new file mode 100644 index 000000000000..9b3aed33b961 --- /dev/null +++ b/media-video/pipewire/files/pipewire-0.2.6-fix-probing-without-starting.patch @@ -0,0 +1,63 @@ +From 37e66c9e55f556558088d9f6b2200d4341a37f04 Mon Sep 17 00:00:00 2001 +From: Michael Olbrich <m.olbrich@pengutronix.de> +Date: Tue, 18 Jun 2019 09:53:12 +0200 +Subject: [PATCH] deviceprovider: fix probing without starting + +self->type is needed in registry_event_global() so it must be set in +gst_pipewire_device_provider_probe() as well. + +self->devices is initialized as NULL when probing is started. So it should +be just a simple GList* pointer. + +Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de> +--- + src/gst/gstpipewiredeviceprovider.c | 8 ++++++-- + src/gst/gstpipewiredeviceprovider.h | 2 +- + 2 files changed, 7 insertions(+), 3 deletions(-) + +diff --git a/src/gst/gstpipewiredeviceprovider.c b/src/gst/gstpipewiredeviceprovider.c +index b6472d96..02b38c2e 100644 +--- a/src/gst/gstpipewiredeviceprovider.c ++++ b/src/gst/gstpipewiredeviceprovider.c +@@ -265,7 +265,7 @@ static void do_add_node(void *data) + nd->dev = new_node (self, nd); + if (nd->dev) { + if(self->list_only) +- *self->devices = g_list_prepend (*self->devices, gst_object_ref_sink (nd->dev)); ++ self->devices = g_list_prepend (self->devices, gst_object_ref_sink (nd->dev)); + else + gst_device_provider_device_add (GST_DEVICE_PROVIDER (self), nd->dev); + } +@@ -555,6 +555,8 @@ gst_pipewire_device_provider_probe (GstDeviceProvider * provider) + + t = pw_core_get_type(c); + ++ self->type = pw_core_get_type (c); ++ + if (!(r = pw_remote_new (c, NULL, sizeof(*data)))) + goto failed; + +@@ -612,7 +614,9 @@ gst_pipewire_device_provider_probe (GstDeviceProvider * provider) + pw_core_destroy (c); + pw_loop_destroy (l); + +- return *self->devices; ++ self->type = NULL; ++ ++ return self->devices; + + failed: + pw_loop_destroy (l); +diff --git a/src/gst/gstpipewiredeviceprovider.h b/src/gst/gstpipewiredeviceprovider.h +index 81622605..3cf2d41b 100644 +--- a/src/gst/gstpipewiredeviceprovider.h ++++ b/src/gst/gstpipewiredeviceprovider.h +@@ -98,7 +98,7 @@ struct _GstPipeWireDeviceProvider { + + gboolean end; + gboolean list_only; +- GList **devices; ++ GList *devices; + }; + + struct _GstPipeWireDeviceProviderClass { diff --git a/media-video/pipewire/files/pipewire-0.2.6-reuse-fd-in-pipewiresrc.patch b/media-video/pipewire/files/pipewire-0.2.6-reuse-fd-in-pipewiresrc.patch new file mode 100644 index 000000000000..a1176d3e1b30 --- /dev/null +++ b/media-video/pipewire/files/pipewire-0.2.6-reuse-fd-in-pipewiresrc.patch @@ -0,0 +1,137 @@ +From 151b2b266e1dae3679584f38b954e4357cf1e5cc Mon Sep 17 00:00:00 2001 +From: Wim Taymans <wtaymans@redhat.com> +Date: Wed, 19 Jun 2019 10:49:28 +0200 +Subject: [PATCH] connection: add do_close flag to connect_fd + +Make pw_remote_connect_fd() not automatically close the provided +fd but let the caller take care of that. This allows us to reuse +the fd in pipewiresrc. + +Fixes #155 +--- + src/modules/module-protocol-native.c | 7 ++++--- + src/modules/module-protocol-native/local-socket.c | 2 +- + src/pipewire/protocol.h | 4 ++-- + src/pipewire/remote.c | 8 ++++---- + src/pipewire/remote.h | 3 ++- + 5 files changed, 13 insertions(+), 11 deletions(-) + +diff --git a/src/modules/module-protocol-native.c b/src/modules/module-protocol-native.c +index 131657f6..0e7b7e27 100644 +--- a/src/modules/module-protocol-native.c ++++ b/src/modules/module-protocol-native.c +@@ -619,7 +619,7 @@ static const struct pw_protocol_native_connection_events conn_events = { + .need_flush = on_need_flush, + }; + +-static int impl_connect_fd(struct pw_protocol_client *client, int fd) ++static int impl_connect_fd(struct pw_protocol_client *client, int fd, bool do_close) + { + struct client *impl = SPA_CONTAINER_OF(client, struct client, this); + struct pw_remote *remote = client->remote; +@@ -638,14 +638,15 @@ static int impl_connect_fd(struct pw_protocol_client *client, int fd) + impl->source = pw_loop_add_io(remote->core->main_loop, + fd, + SPA_IO_IN | SPA_IO_HUP | SPA_IO_ERR, +- true, on_remote_data, impl); ++ do_close, on_remote_data, impl); + if (impl->source == NULL) + goto error_close; + + return 0; + + error_close: +- close(fd); ++ if (do_close) ++ close(fd); + return -ENOMEM; + } + +diff --git a/src/modules/module-protocol-native/local-socket.c b/src/modules/module-protocol-native/local-socket.c +index 5ab5a210..0e68eea9 100644 +--- a/src/modules/module-protocol-native/local-socket.c ++++ b/src/modules/module-protocol-native/local-socket.c +@@ -84,7 +84,7 @@ int pw_protocol_native_connect_local_socket(struct pw_protocol_client *client, + goto error_close; + } + +- res = pw_protocol_client_connect_fd(client, fd); ++ res = pw_protocol_client_connect_fd(client, fd, true); + + done_callback(data, res); + +diff --git a/src/pipewire/protocol.h b/src/pipewire/protocol.h +index 2b6592d1..4a0845fb 100644 +--- a/src/pipewire/protocol.h ++++ b/src/pipewire/protocol.h +@@ -44,14 +44,14 @@ struct pw_protocol_client { + int (*connect) (struct pw_protocol_client *client, + void (*done_callback) (void *data, int result), + void *data); +- int (*connect_fd) (struct pw_protocol_client *client, int fd); ++ int (*connect_fd) (struct pw_protocol_client *client, int fd, bool close); + int (*steal_fd) (struct pw_protocol_client *client); + void (*disconnect) (struct pw_protocol_client *client); + void (*destroy) (struct pw_protocol_client *client); + }; + + #define pw_protocol_client_connect(c,cb,d) ((c)->connect(c,cb,d)) +-#define pw_protocol_client_connect_fd(c,fd) ((c)->connect_fd(c,fd)) ++#define pw_protocol_client_connect_fd(c,fd,cl) ((c)->connect_fd(c,fd,cl)) + #define pw_protocol_client_steal_fd(c) ((c)->steal_fd(c)) + #define pw_protocol_client_disconnect(c) ((c)->disconnect(c)) + #define pw_protocol_client_destroy(c) ((c)->destroy(c)) +diff --git a/src/pipewire/remote.c b/src/pipewire/remote.c +index f63a973a..472b2684 100644 +--- a/src/pipewire/remote.c ++++ b/src/pipewire/remote.c +@@ -305,7 +305,7 @@ void pw_remote_destroy(struct pw_remote *remote) + spa_list_consume(stream, &remote->stream_list, link) + pw_stream_destroy(stream); + +- pw_protocol_client_destroy (remote->conn); ++ pw_protocol_client_destroy(remote->conn); + + spa_list_remove(&remote->link); + +@@ -413,7 +413,7 @@ int pw_remote_connect(struct pw_remote *remote) + + pw_remote_update_state(remote, PW_REMOTE_STATE_CONNECTING, NULL); + +- if ((res = pw_protocol_client_connect (remote->conn, done_connect, remote)) < 0) { ++ if ((res = pw_protocol_client_connect(remote->conn, done_connect, remote)) < 0) { + pw_remote_update_state(remote, PW_REMOTE_STATE_ERROR, + "connect failed %s", spa_strerror(res)); + return res; +@@ -428,7 +428,7 @@ int pw_remote_connect_fd(struct pw_remote *remote, int fd) + + pw_remote_update_state(remote, PW_REMOTE_STATE_CONNECTING, NULL); + +- if ((res = pw_protocol_client_connect_fd (remote->conn, fd)) < 0) { ++ if ((res = pw_protocol_client_connect_fd(remote->conn, fd, false)) < 0) { + pw_remote_update_state(remote, PW_REMOTE_STATE_ERROR, + "connect_fd failed %s", spa_strerror(res)); + return res; +@@ -462,7 +462,7 @@ int pw_remote_disconnect(struct pw_remote *remote) + pw_proxy_destroy(proxy); + remote->core_proxy = NULL; + +- pw_protocol_client_disconnect (remote->conn); ++ pw_protocol_client_disconnect(remote->conn); + + pw_map_clear(&remote->objects); + pw_map_clear(&remote->types); +diff --git a/src/pipewire/remote.h b/src/pipewire/remote.h +index df0c496c..2974a04a 100644 +--- a/src/pipewire/remote.h ++++ b/src/pipewire/remote.h +@@ -177,7 +177,8 @@ void pw_remote_add_listener(struct pw_remote *remote, + int pw_remote_connect(struct pw_remote *remote); + + /** Connect to a remote PipeWire on the given socket \memberof pw_remote +- * \param fd the connected socket to use ++ * \param fd the connected socket to use, the socket will not be closed ++ * automatically on disconnect or error. + * \return 0 on success, < 0 on error */ + int pw_remote_connect_fd(struct pw_remote *remote, int fd); + diff --git a/media-video/pipewire/files/pipewire-0.2.6-revert-combine-all-perms.patch b/media-video/pipewire/files/pipewire-0.2.6-revert-combine-all-perms.patch new file mode 100644 index 000000000000..57ada7d5fb47 --- /dev/null +++ b/media-video/pipewire/files/pipewire-0.2.6-revert-combine-all-perms.patch @@ -0,0 +1,34 @@ +From 4350bd624f165de81de10293a8ec5a59e8b7ce64 Mon Sep 17 00:00:00 2001 +From: Wim Taymans <wtaymans@redhat.com> +Date: Fri, 28 Jun 2019 12:22:33 +0200 +Subject: [PATCH] Revert "global: combine all permissions of the object tree" + +This reverts commit 83bc033837f7525d898f1de91119f669f9bf97f5. + +This needs some more work. +--- + src/pipewire/global.c | 10 ++-------- + 1 file changed, 2 insertions(+), 8 deletions(-) + +diff --git a/src/pipewire/global.c b/src/pipewire/global.c +index c963965e..00258ff8 100644 +--- a/src/pipewire/global.c ++++ b/src/pipewire/global.c +@@ -38,15 +38,9 @@ uint32_t pw_global_get_permissions(struct pw_global *global, struct pw_client *c + { + uint32_t perms = PW_PERM_RWX; + +- if (client->permission_func == NULL) +- return perms; +- +- perms = client->permission_func(global, client, client->permission_data); +- +- while (global != global->parent) { +- global = global->parent; ++ if (client->permission_func != NULL) + perms &= client->permission_func(global, client, client->permission_data); +- } ++ + return perms; + } + diff --git a/media-video/pipewire/metadata.xml b/media-video/pipewire/metadata.xml new file mode 100644 index 000000000000..a5d6bb1343ab --- /dev/null +++ b/media-video/pipewire/metadata.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>gnome@gentoo.org</email> + <name>Gentoo GNOME Desktop</name> + </maintainer> + <maintainer type="person"> + <email>asturm@gentoo.org</email> + <name>Andreas Sturmlechner</name> + </maintainer> + <upstream> + <remote-id type="github">PipeWire/pipewire</remote-id> + </upstream> +</pkgmetadata> diff --git a/media-video/pipewire/pipewire-0.2.6.ebuild b/media-video/pipewire/pipewire-0.2.6.ebuild new file mode 100644 index 000000000000..53944bcd82fd --- /dev/null +++ b/media-video/pipewire/pipewire-0.2.6.ebuild @@ -0,0 +1,88 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit meson + +if [[ ${PV} == 9999 ]]; then + EGIT_REPO_URI="https://github.com/PipeWire/pipewire.git" + inherit git-r3 +else + SRC_URI="https://github.com/PipeWire/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64" +fi + +DESCRIPTION="Multimedia processing graphs" +HOMEPAGE="https://pipewire.org/" + +LICENSE="LGPL-2.1" +SLOT="0" +IUSE="bluetooth doc ffmpeg libav gstreamer sdl systemd vaapi X" + +BDEPEND=" + app-doc/xmltoman + doc? ( + app-doc/doxygen + media-gfx/graphviz + ) +" +DEPEND=" + media-libs/alsa-lib + sys-apps/dbus + virtual/libudev + bluetooth? ( media-libs/sbc ) + ffmpeg? ( + !libav? ( media-video/ffmpeg:= ) + libav? ( media-video/libav:= ) + ) + gstreamer? ( + media-libs/gstreamer:1.0 + media-libs/gst-plugins-base:1.0 + ) + sdl? ( media-libs/libsdl2 ) + systemd? ( sys-apps/systemd ) + vaapi? ( x11-libs/libva ) + X? ( x11-libs/libX11 ) +" +RDEPEND="${DEPEND}" + +PATCHES=( + "${FILESDIR}"/${P}-alsa-lib-1.1.9.patch + "${FILESDIR}"/${P}-reuse-fd-in-pipewiresrc.patch + "${FILESDIR}"/${P}-fix-probing-without-starting.patch + "${FILESDIR}"/${P}-revert-combine-all-perms.patch +) + +src_prepare() { + spa_use() { + if ! use ${1}; then + sed -e "/.*dependency.*'${2-$1}'/s/'${2-$1}'/'${2-$1}-disabled-by-USE-no-${1}'/" \ + -i spa/meson.build || die + fi + } + + default + spa_use bluetooth sbc + spa_use ffmpeg libavcodec + spa_use ffmpeg libavformat + spa_use ffmpeg libavfilter + spa_use vaapi libva + spa_use sdl sdl2 + spa_use X x11 +} + +src_configure() { + local emesonargs=( + -Dman=true + $(meson_use doc docs) + $(meson_feature gstreamer) + $(meson_use systemd) + ) + meson_src_configure +} + +pkg_postinst() { + elog "Package has optional sys-auth/rtkit RUNTIME support that may be" + elog "disabled by setting DISABLE_RTKIT env var." +} diff --git a/media-video/shotcut/Manifest b/media-video/shotcut/Manifest index 5ee4d42047dc..5651e7c10b80 100644 --- a/media-video/shotcut/Manifest +++ b/media-video/shotcut/Manifest @@ -1,5 +1,3 @@ -DIST shotcut-19.01.24.tar.gz 4864498 BLAKE2B e76f38e2545bff176730f1287fbba35de9d82e11d5ea4b396e69e71f90dd09325aceae8ffefe6914e66e37c983415a28c4fcdeba14314e370b3220cc8399a6be SHA512 1026e0701dd7a0a5dc3bc5f9babe0f58c6d3a0871af7b09cfca8d71b4c3e370708103d6f78de1061505cd162ade3de0189c9dc085d51546e85bb472f38b0363d DIST shotcut-19.06.15.tar.gz 5066141 BLAKE2B ca140045b181287089486f8e7c857ddee29b41727cc9808f37b39118875927a46b0d80558403870b478d2e6b53aadb9acc6456b09560ec94d63c91a5b36bffba SHA512 bf1dbd1233f587ba33dff9c551cdaa22c0ca8bb389c79e817d3eb7af60834b47da2be29872c50125a93e152442a7f7afe8f76f353464334de399dda793d15591 -EBUILD shotcut-19.01.24.ebuild 1225 BLAKE2B 21c4442cf654b4a423dcf5d906bd8932f8ff86ef70d1dc9558400454fc30996e6c115ca0a870a23d5337695e800881ae5f6a99038fd0e500de5f4a95c00b19c5 SHA512 a1b2b473cb58041135d05af1aeee46855f40b72628542d4d8d3f0384bf3b8203e5c39cca2e09af845194c7dca8b01d8ce65bc73f90164bcb250ccc4a18181e73 EBUILD shotcut-19.06.15.ebuild 1168 BLAKE2B 4cc8943a78ca62013b316ddca70b5d3f0d3afda15ed4151064669605d50d338120ca165916e13b04fa10098dde6eb1d556498cb584644ff04d9e1497645b49eb SHA512 bd29b2c85b1eade3560639fa15250713b2c8d97e15106a4f80583fcc5f124ea716e2ecde3f4c12969b6f7ca3b28569d110968628d58346c1d8374e54ede0e65f MISC metadata.xml 451 BLAKE2B 7438699cd72f469998316ff1f3efd8bda67aab68f0fdbd405bb24b286e75f998a82b88c01c7d74d63fadeec47f58c381c51652854ac3dc8bd6a3a687fb8cb42f SHA512 58f1a6ddd5eef3a6cfd81936d61e34ea29aa7a26e5e841e96218642fa9fafc5529c3c6e0283f8c1e948a11eb819163e03056335d989933f390854f22aeb61ed0 diff --git a/media-video/shotcut/shotcut-19.01.24.ebuild b/media-video/shotcut/shotcut-19.01.24.ebuild deleted file mode 100644 index 3a03e0931931..000000000000 --- a/media-video/shotcut/shotcut-19.01.24.ebuild +++ /dev/null @@ -1,60 +0,0 @@ -# Copyright 1999-2019 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit qmake-utils xdg - -DESCRIPTION="A free, open source, cross-platform video editor" -HOMEPAGE="https://www.shotcut.org/" -SRC_URI="https://github.com/mltframework/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" - -KEYWORDS="~amd64 ~x86" -LICENSE="GPL-3" -SLOT="0" -IUSE="" - -RDEPEND=" - dev-qt/qtcore:5 - dev-qt/qtdeclarative:5 - dev-qt/qtgraphicaleffects:5 - dev-qt/qtgui:5 - dev-qt/qtmultimedia:5 - dev-qt/qtnetwork:5 - dev-qt/qtopengl:5 - dev-qt/qtprintsupport:5 - dev-qt/qtquickcontrols:5[widgets] - dev-qt/qtsql:5 - dev-qt/qtwebkit:5 - dev-qt/qtwebsockets:5 - dev-qt/qtwidgets:5 - dev-qt/qtxml:5 - media-libs/ladspa-sdk - media-libs/libsdl:0 - media-libs/libvpx - >=media-libs/mlt-6.10.0-r1[ffmpeg,frei0r,qt5,sdl,xml] - media-libs/x264 - media-plugins/frei0r-plugins - media-sound/lame - media-video/ffmpeg - virtual/jack -" -DEPEND="${RDEPEND} - dev-qt/linguist-tools:5 -" - -src_prepare() { - local mylrelease="$(qt5_get_bindir)/lrelease" - "${mylrelease}" "${S}/src/src.pro" || die "preparing locales failed" - - default -} - -src_configure() { - eqmake5 PREFIX="${EPREFIX}/usr" -} - -src_install() { - emake INSTALL_ROOT="${D}" install - einstalldocs -} diff --git a/media-video/subliminal/Manifest b/media-video/subliminal/Manifest index 4fb3d60ff329..a7b19501ffec 100644 --- a/media-video/subliminal/Manifest +++ b/media-video/subliminal/Manifest @@ -2,5 +2,6 @@ AUX subliminal-2.0.5-add-missing-comma.patch 1196 BLAKE2B 1042b22bf4c6f488ada97c DIST matroska_test_w1_1.zip 184550509 BLAKE2B f111725aa08267661942072c2d4ac019d3d322c4e933aad10afb3aa6f69bb3469114c4400d161e53d8a7618b818b22465177460003804a7ac3e69fa4f4db000d SHA512 f170a8e83dab15228f992b3692330163da2402b8e436c7fa195ac1ecc06cf1eaf1a48d8c99a85c031122c158c2d4006023aae75d5b7805385ba25a6d601cb78f DIST subliminal-2.0.5-r2.tar.gz 4442435 BLAKE2B ea2139bd61344d6a0cb4b48a2b75cbfd29905adc81bca25a332443725fff80bc03b58704d0e6289d44ddc26104e15744f67acb7e0e4eafae584098b02fb4c007 SHA512 b0f99c6b2fa6bc3860c86592bb428c7b4b34836df7a619b19d69b15532a68b4d05369f724131e120d4b390bd91f430aea442aef72ebc00ae8e3d31a457925eec EBUILD subliminal-2.0.5-r2.ebuild 2387 BLAKE2B 3166277c1cd80023b54103b8ba9cbf2075e16874f8834c973395403b0da0dd42b3ca015dfd192bfcc14822b3eae7244f50688203e3d97c20b757aba51ae0443f SHA512 66e0facc888f2c58351accd0ca1a792278027dc71327307989ba00afca932270b938477acc133ff7c323a928f051b6bd9010661af99f44ce21ecfd9f4b1c08ef -EBUILD subliminal-9999.ebuild 2198 BLAKE2B 501b26fe3327c44258dc913318301eb71d2173aedcdd2826a10bc40108ce137e345396d30cdc7d5bac87b97e8f145fb49ef450edcdf0b463482d4ba5e5583be4 SHA512 6c344b91493ffd3f780d35c1e2c42bdc735c2b6307a146054b7f93cf20e7e5203e4a98e5300d798139ad5ffdd91b99690976b92c552f3df6f4c5760333dbbe4a +EBUILD subliminal-2.0.5-r3.ebuild 2475 BLAKE2B d708951ee24309e97054423de7e2b7061b22f4e33f8ffc9838f2615c64e506221dca712c6d7b5ef25314e2397a357d4fd2e4e5767482dce36299e15742601426 SHA512 fc99a04ea7c6d697e6bc8e77f7f2bf42cd7e5ac8a71dcb984b4ce4496959bef2d6b52f67ba74f54b756d16f69cbcf2ae6a363ecdb7f915670f1f7342bb60f105 +EBUILD subliminal-9999.ebuild 2238 BLAKE2B 5375536b8ea031dba6e0c54edf737f8ba25a8a8caa3fc3b7958181cb36aec20e636b93171f01430528eaf661d25b83e36850646caa211c81b217a27c575d1fc4 SHA512 0279f0d36bbc32f4aaf650f5debb39a03c6044a88eaa494e5e6357d67c01634b4876c90182d1bce6459bac767393060f7ddda2446bb589dffc4f1a5abd267fba MISC metadata.xml 549 BLAKE2B 296a55c59aad7c1d33e65258eaa0481ed167e1c78fa4fa8273acf83366c7b9365f30136ed7d0ad1b71bbde76aa4d0c5e3da98f375be9ad20b76ee77c835d6947 SHA512 cccd163878caccdee339a2e19f9cd5b0954477e767284c4183f9e589c0b5fe59353dfec14982e6dea83d91fc2f2d66904f8f40a1e69c7abab4a6d6baabfdc0c4 diff --git a/media-video/subliminal/subliminal-2.0.5-r3.ebuild b/media-video/subliminal/subliminal-2.0.5-r3.ebuild new file mode 100644 index 000000000000..88a4d3d9653b --- /dev/null +++ b/media-video/subliminal/subliminal-2.0.5-r3.ebuild @@ -0,0 +1,82 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python{2_7,3_5,3_6} ) +PYTHON_REQ_USE='xml(+)' +COMMIT_ID='dd74383d1cba82829ce720f2e439a65d13ffe7ef' + +inherit distutils-r1 + +DESCRIPTION="Python library to search and download subtitles" +HOMEPAGE="https://github.com/Diaoul/subliminal https://pypi.org/project/subliminal/" +SRC_URI=" + https://github.com/Diaoul/${PN}/archive/${COMMIT_ID}.tar.gz -> ${P}-r2.tar.gz + test? ( mirror://sourceforge/matroska/test_files/matroska_test_w1_1.zip ) +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="test" + +RDEPEND=" + >=dev-python/appdirs-1.3[${PYTHON_USEDEP}] + >=dev-python/babelfish-0.5.2[${PYTHON_USEDEP}] + >=dev-python/beautifulsoup-4.4.0:4[${PYTHON_USEDEP}] + >=dev-python/chardet-2.3.0[${PYTHON_USEDEP}] + >=dev-python/click-4.0[${PYTHON_USEDEP}] + dev-python/decorator[${PYTHON_USEDEP}] + >=dev-python/dogpile-cache-0.6.0[${PYTHON_USEDEP}] + >=dev-python/enzyme-0.4.1[${PYTHON_USEDEP}] + >=dev-python/guessit-2.0.1[${PYTHON_USEDEP}] + >=dev-python/pysrt-1.0.1[${PYTHON_USEDEP}] + >=dev-python/pytz-2012c[${PYTHON_USEDEP}] + >=dev-python/rarfile-2.7[compressed,${PYTHON_USEDEP}] + >=dev-python/requests-2.0[${PYTHON_USEDEP}] + dev-python/setuptools[${PYTHON_USEDEP}] + >=dev-python/six-1.9.0[${PYTHON_USEDEP}] + >=dev-python/stevedore-1.0.0[${PYTHON_USEDEP}] + virtual/python-futures[${PYTHON_USEDEP}] +" +DEPEND=" + dev-python/setuptools[${PYTHON_USEDEP}] + test? ( + ${RDEPEND} + app-arch/unzip + $(python_gen_cond_dep 'dev-python/mock[${PYTHON_USEDEP}]' python2_7) + dev-python/pytest-cov[${PYTHON_USEDEP}] + dev-python/pytest-runner[${PYTHON_USEDEP}] + dev-python/pytest[${PYTHON_USEDEP}] + dev-python/sympy[${PYTHON_USEDEP}] + >=dev-python/vcrpy-1.6.1[${PYTHON_USEDEP}] + ) +" + +# Tests don't work in 2.0.5. Recheck in later versions. See Gentoo bug 630114. +RESTRICT=test + +PATCHES=( "${FILESDIR}/${P}-add-missing-comma.patch" ) + +S="${WORKDIR}/${PN}-${COMMIT_ID}" + +python_prepare_all() { + # Disable code checkers as they require unavailable dependencies. + sed -i -e 's/--\(pep8\|flakes\)//g' pytest.ini || die + sed -i -e "s/'pytest-\(pep8\|flakes\)',//g" setup.py || die + + # Disable unconditional dependency on dev-python/pytest-runner. + sed -i -e "s|'pytest-runner'||g" setup.py || die + + if use test; then + mkdir -p tests/data/mkv || die + ln -s "${WORKDIR}"/test*.mkv tests/data/mkv/ || die + fi + + distutils-r1_python_prepare_all +} + +python_test() { + esetup.py test +} diff --git a/media-video/subliminal/subliminal-9999.ebuild b/media-video/subliminal/subliminal-9999.ebuild index 95473f3790c2..7c83f3864f02 100644 --- a/media-video/subliminal/subliminal-9999.ebuild +++ b/media-video/subliminal/subliminal-9999.ebuild @@ -1,7 +1,7 @@ # Copyright 1999-2019 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 +EAPI=7 PYTHON_COMPAT=( python{2_7,3_5,3_6} ) PYTHON_REQ_USE='xml(+)' @@ -20,32 +20,33 @@ KEYWORDS="" IUSE="test" RDEPEND=" - >=dev-python/guessit-2.0.1[${PYTHON_USEDEP}] + >=dev-python/appdirs-1.3[${PYTHON_USEDEP}] >=dev-python/babelfish-0.5.2[${PYTHON_USEDEP}] - >=dev-python/enzyme-0.4.1[${PYTHON_USEDEP}] >=dev-python/beautifulsoup-4.4.0:4[${PYTHON_USEDEP}] - >=dev-python/requests-2.0[${PYTHON_USEDEP}] + >=dev-python/chardet-2.3.0[${PYTHON_USEDEP}] >=dev-python/click-4.0[${PYTHON_USEDEP}] + dev-python/decorator[${PYTHON_USEDEP}] >=dev-python/dogpile-cache-0.6.0[${PYTHON_USEDEP}] - >=dev-python/stevedore-1.0.0[${PYTHON_USEDEP}] - >=dev-python/chardet-2.3.0[${PYTHON_USEDEP}] + >=dev-python/enzyme-0.4.1[${PYTHON_USEDEP}] + >=dev-python/guessit-2.0.1[${PYTHON_USEDEP}] >=dev-python/pysrt-1.0.1[${PYTHON_USEDEP}] - >=dev-python/six-1.9.0[${PYTHON_USEDEP}] - >=dev-python/appdirs-1.3[${PYTHON_USEDEP}] - >=dev-python/rarfile-2.7[compressed,${PYTHON_USEDEP}] >=dev-python/pytz-2012c[${PYTHON_USEDEP}] + >=dev-python/rarfile-2.7[compressed,${PYTHON_USEDEP}] + >=dev-python/requests-2.0[${PYTHON_USEDEP}] dev-python/setuptools[${PYTHON_USEDEP}] + >=dev-python/six-1.9.0[${PYTHON_USEDEP}] + >=dev-python/stevedore-1.0.0[${PYTHON_USEDEP}] virtual/python-futures[${PYTHON_USEDEP}] " DEPEND="${RDEPEND} test? ( app-arch/unzip - >=dev-python/vcrpy-1.6.1[${PYTHON_USEDEP}] - dev-python/pytest[${PYTHON_USEDEP}] + $(python_gen_cond_dep 'dev-python/mock[${PYTHON_USEDEP}]' python2_7) dev-python/pytest-cov[${PYTHON_USEDEP}] dev-python/pytest-runner[${PYTHON_USEDEP}] + dev-python/pytest[${PYTHON_USEDEP}] dev-python/sympy[${PYTHON_USEDEP}] - $(python_gen_cond_dep 'dev-python/mock[${PYTHON_USEDEP}]' python2_7) + >=dev-python/vcrpy-1.6.1[${PYTHON_USEDEP}] ) " diff --git a/media-video/subtitlecomposer/Manifest b/media-video/subtitlecomposer/Manifest index 6dd8eb362712..ea8a7407f7a1 100644 --- a/media-video/subtitlecomposer/Manifest +++ b/media-video/subtitlecomposer/Manifest @@ -1,4 +1,7 @@ AUX subtitlecomposer-0.6.6-cmake.patch 454 BLAKE2B 61bce9ca11c64c243aefdee08994d18e0e11a9dc4f985198ab83131b328da20cfe4d92a439395cda3a4d0b3eae6fc9f05531adf41a2955bdf124fc160421c653 SHA512 cbcfba8c34430640eb6351012e1d0358041b5dbd7b1565ab170b5937d51300c85be4331c52181e1176d60a97a0d995685b71559ead096a188fa3879c487fa9df +AUX subtitlecomposer-0.7.0-tests-optional.patch 242 BLAKE2B 6a3d88a537ad39a151b8a6ac071376eda0d1e5d504e92052b9f55e4693633b47fc2b6986d560bd086adf76630ad24bc3671b88f3bc97f9cb429a9e14ad9376bc SHA512 65f5c8db0c5e99b51600db772c918acb7154c7999bbbbbed18ed859f4defcb70d4f907c02a08d9a7529f3aaf4867d6154b9987fb3528cb100f4daa4466e33e74 DIST subtitlecomposer-0.6.6.tar.gz 1637272 BLAKE2B 0a3a7cc7f0301b5ea8cb7affd4600349c8b65bf8a856480e706a3549d8deb7ddc687faad11258d7753e6484783b50fff99ddbd1fc9f68a35fbd0b4346a7a2748 SHA512 0f1513d3ff0abcbd0979b370e1ec4cd0b92f7e65adef8c922ddbf37e2dbc73fb4cd821356df6dc1ba3d8832ab8cba25573f68297f4f6be05b5c4d824a663872a +DIST subtitlecomposer-0.7.0.tar.gz 1649840 BLAKE2B a60d3917cc9bd8025d75782e850ba2507ab140ffaeff84e995d58994e848ebe4e103a87824a20dd689132235f67102e7fec39bf0f99d827c78883165e01e9fb7 SHA512 b1c71496a2609686946af2377862b86d70e357565646a3de2f158481bc9e397f649d0907499ecd21a193ec07eaf2135b7f5831697e6b20ba6721a743227fbe04 EBUILD subtitlecomposer-0.6.6-r1.ebuild 1887 BLAKE2B 9831047dcacaf709f98c3c6b675985393c2576cef8c0611aa8026b7dd0e82026e87e36434f00b3b2bccf2640e91719745ab8de22d881422aabf51d85d1bc322e SHA512 2195648b03d14a6981f04a63c866de1f062bdcd64d0c1409c6dfb461e8f23393455b399bc034bec14ebb21f757506366194d82bf13246dd3a5ba1829818ba764 +EBUILD subtitlecomposer-0.7.0.ebuild 1873 BLAKE2B d7909e43abc21d4bb3f241b33d486e0fa5f864a9350c66bf5ec1d1f9e00e7e1c1ae86a8c32ffbf9cb0845a4a037d29703bb44226b3f2f29f6d753f7d389363b8 SHA512 b50a4e390eab135c8ec2ea1203d5332a0f3975ae20d2016fc159a337932c50ac475c29f71dda5dc492d806e8b8a0145e3fb0a601ec972d2450706b56efc7ffd2 MISC metadata.xml 524 BLAKE2B 662474bada941eadcab48ae4432e72af4f786ff61d2bc1db20115e2f70ca4953e01c38fd550cce72908fe5c36077d9e1b240f53e24142c7556802f3a7783d1bd SHA512 c2ef5d88d2b12534ba76ba4949c4ceee405f88b546f3b749704d8f7529d1b19b3ce8b20b18b496203259dcbde74ba7bf948ae9e4fa4601984554f8f0664a6efe diff --git a/media-video/subtitlecomposer/files/subtitlecomposer-0.7.0-tests-optional.patch b/media-video/subtitlecomposer/files/subtitlecomposer-0.7.0-tests-optional.patch new file mode 100644 index 000000000000..b2db3d9975e6 --- /dev/null +++ b/media-video/subtitlecomposer/files/subtitlecomposer-0.7.0-tests-optional.patch @@ -0,0 +1,9 @@ +--- a/src/core/CMakeLists.txt 2019-07-04 21:15:26.000891815 +0200 ++++ b/src/core/CMakeLists.txt 2019-07-04 21:15:26.005891858 +0200 +@@ -13,4 +13,6 @@ + CACHE INTERNAL EXPORTEDVARIABLE + ) + ++if(BUILD_TESTING) + add_subdirectory(tests) ++endif() diff --git a/media-video/subtitlecomposer/subtitlecomposer-0.7.0.ebuild b/media-video/subtitlecomposer/subtitlecomposer-0.7.0.ebuild new file mode 100644 index 000000000000..210696b121d1 --- /dev/null +++ b/media-video/subtitlecomposer/subtitlecomposer-0.7.0.ebuild @@ -0,0 +1,77 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +KDE_TEST="forceoptional" +VIRTUALX_REQUIRED="test" +inherit kde5 + +DESCRIPTION="Text-based subtitles editor" +HOMEPAGE="https://github.com/maxrd2/subtitlecomposer" +SRC_URI="https://github.com/maxrd2/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-2" +KEYWORDS="~amd64 ~x86" +IUSE="gstreamer libav mpv unicode xine" + +BDEPEND=" + sys-devel/gettext + virtual/pkgconfig +" +DEPEND=" + $(add_frameworks_dep kcodecs) + $(add_frameworks_dep kcompletion) + $(add_frameworks_dep kconfig) + $(add_frameworks_dep kconfigwidgets) + $(add_frameworks_dep kcoreaddons) + $(add_frameworks_dep ki18n) + $(add_frameworks_dep kio) + $(add_frameworks_dep kross) + $(add_frameworks_dep ktextwidgets) + $(add_frameworks_dep kwidgetsaddons) + $(add_frameworks_dep kxmlgui) + $(add_frameworks_dep sonnet) + $(add_qt_dep qtgui) + $(add_qt_dep qtwidgets) + media-libs/phonon[qt5(+)] + gstreamer? ( + dev-libs/glib:2 + media-libs/gstreamer:1.0 + media-libs/gst-plugins-base:1.0 + ) + libav? ( media-video/libav:= ) + !libav? ( media-video/ffmpeg:0= ) + mpv? ( media-video/mpv[libmpv] ) + unicode? ( dev-libs/icu:= ) + xine? ( + media-libs/xine-lib + x11-libs/libX11 + x11-libs/libxcb + ) +" +RDEPEND="${DEPEND}" + +PATCHES=( "${FILESDIR}/${P}-tests-optional.patch" ) + +S="${WORKDIR}/SubtitleComposer-${PV}" + +src_configure() { + local mycmakeargs=( + -DCMAKE_DISABLE_FIND_PACKAGE_PocketSphinx=ON # bug 616706 + $(cmake-utils_use_find_package gstreamer GStreamer) + $(cmake-utils_use_find_package mpv MPV) + $(cmake-utils_use_find_package unicode ICU) + $(cmake-utils_use_find_package xine Xine) + $(cmake-utils_use_find_package xine X11) + ) + + kde5_src_configure +} + +pkg_postinst() { + kde5_pkg_postinst + + elog "Some example scripts provided by ${PN} require dev-lang/ruby" + elog "or dev-lang/python to be installed." +} diff --git a/media-video/vlc/Manifest b/media-video/vlc/Manifest index 4d0f113cbc3d..aecf322d403a 100644 --- a/media-video/vlc/Manifest +++ b/media-video/vlc/Manifest @@ -9,7 +9,7 @@ AUX vlc-9999-libupnp-slot-1.8.patch 763 BLAKE2B 6bc8cf46f029db27d6d30d96e871d3bc DIST vlc-3.0.6.tar.xz 25699704 BLAKE2B 91c43fa3ceb6f55a3808c64a661ca453f0872f01eecc801921eb1b9f9cc462478b1fcd6f7cc36f33b7e1085320710b27a42a3b7b49dd74338fe63a3a46f36b0f SHA512 7c72e98f30ce5c5a94d74e097fa9960442f89240079b042a729f8a33dd7fedee2538c86c99738ccef2eb27f29055f0221d4c70316e3312c5ebba9565eaa15c52 DIST vlc-3.0.7.1.tar.xz 26052372 BLAKE2B 349e967ff00db2fd5ea1a62deb12009ff0d85c56a82774aa4fedf7bffecd21b0c8c745f41eb4b9b4d36aaddcce95e79146901f318d18eab99f08e347841a8008 SHA512 6b99ae0564630a7a7ca9187c3bb954c601e384522ce93460b73f2dbf31787ce5828daca9f31c781b97db77872d76b6a3e871ff3401d70f1b5829fee7c4e847fd EBUILD vlc-3.0.6-r1.ebuild 13308 BLAKE2B 69eb584b41942885678439a16b0b99ccba1e00f6c369233a23d190b739d9ce2906e5c7fe2d4a2bff38edd5f03bb047f016a40839c9ea788c60b5824068e64db9 SHA512 fa81f931ed9216997be00835584542224eec9c74086b2df48c6c00ad8d3b15b88e51769402997103ed303fc77e81a35ed087b46a59c2306a1f510260454c5075 -EBUILD vlc-3.0.7.1.ebuild 13051 BLAKE2B 2e824fb9cdff5b9622e4321a40173a87487aee437539d87a3811a676e3523dfc5e9f494ec9e7e2de6f8062e50d5298eb77ebe520b7c6bb19b18ce25be979a038 SHA512 cb0b69d3902b78ab6b767d4ad23a240d048f1839b89a41760dbde5df01cf9837f2e2e823e9e599e10b068728000d5b700b89e1689dacd15c8070f77bb03f7196 +EBUILD vlc-3.0.7.1.ebuild 13048 BLAKE2B bb256aca2e4ba0f58817f25527462475b37ae6f10c3a79459bc262dbef45a30563f4c8bed949d4496ae9cf1d1d02c8ae914238c2a1b8220e8bce2fb6fb016cd7 SHA512 cd5a7ebb8cfe0c712051b01a8f1f52195bee65c96aa105567a4557bf573b23b27c6d38caefe6a9014dbe1b27874fdde6d8ff2050f0da7f0830c83742ab3db0ab EBUILD vlc-3.0.9999.ebuild 13051 BLAKE2B 2e824fb9cdff5b9622e4321a40173a87487aee437539d87a3811a676e3523dfc5e9f494ec9e7e2de6f8062e50d5298eb77ebe520b7c6bb19b18ce25be979a038 SHA512 cb0b69d3902b78ab6b767d4ad23a240d048f1839b89a41760dbde5df01cf9837f2e2e823e9e599e10b068728000d5b700b89e1689dacd15c8070f77bb03f7196 EBUILD vlc-9999.ebuild 12990 BLAKE2B a55dc13a60632cbdb925007c8dd52ebc964125e8d4412557ff281cc206143c35ef9d41ba813b68d1976e5dd1224bc0c030b0bf0819ec7921b2d196da4e0b8820 SHA512 86e8e1e2d58d59d6c3ae5999fa27b025e4b1304c000a10c9935f013bb9c77379a2397b0a13d5447c7f04167a1de9938ded9ea60baf9e071d411ff8a117ffddb4 MISC metadata.xml 5087 BLAKE2B 57254aa856882b33eb97358623d2600cb07e30d1554316de645d808f1bb6a7442cfb3b3fe6422f5de72dcadab06fbae28aa2c7b1d88d8fa588472de76d20fa23 SHA512 eb14beac4431445a8920190edac1a2a0b818565dc352b5df1e05dcddd4ff15a817e2624bce66a6aea431fa17b2203732bb9165396528e9a13c5dafacfce39274 diff --git a/media-video/vlc/vlc-3.0.7.1.ebuild b/media-video/vlc/vlc-3.0.7.1.ebuild index 329fb3dedb9b..f3499f475675 100644 --- a/media-video/vlc/vlc-3.0.7.1.ebuild +++ b/media-video/vlc/vlc-3.0.7.1.ebuild @@ -19,7 +19,7 @@ else else SRC_URI="https://download.videolan.org/pub/videolan/testing/${MY_P}/${MY_P}.tar.xz" fi - KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 -sparc ~x86 ~x86-fbsd" + KEYWORDS="amd64 ~arm ~arm64 ~ppc ppc64 -sparc x86 ~x86-fbsd" fi inherit autotools flag-o-matic toolchain-funcs virtualx xdg diff --git a/media-video/x264-encoder/Manifest b/media-video/x264-encoder/Manifest index 5cd049436dcf..726269315765 100644 --- a/media-video/x264-encoder/Manifest +++ b/media-video/x264-encoder/Manifest @@ -2,6 +2,6 @@ AUX gpac.patch 507 BLAKE2B 7872c56ed87e96a247b63b92c6a23c094346fea9ee5127a6086a4 DIST x264-snapshot-20170701-2245.tar.bz2 750527 BLAKE2B ccf276da31383ab4b4a1ac48866bc49b4b2bc5913361c933fa2359de4d6e90cca091dd4aba781f3735a5b28d6ce006aa9d4e149ba48745b80cb971c2952ca867 SHA512 28fc9850c36ac385fced6dec9a0f68a5605a68805e1ef7b8cedcd78917eaa1ad6e47e57fe5a74fee0a6e482f3a33de6011f675e6c77b5db94c8fe01d5c5f3e9f DIST x264-snapshot-20190214-2245.tar.bz2 770462 BLAKE2B d90a3bafb88febe12526b225617616a62c32fa3d3eacf410267e1fbd7e0fafaadca7c146172c08fc525bce8791d81c7d87dc27b06d61a6a44bf2ad92f6c1def6 SHA512 c8b1b46d4e6c0ef653dab35083a454c635ebf72c6a5255ce30bbb5d9d6bb8e23fca0e6cc197ea99f3c702fbfec096587df6fa82dec338d8bd45e35fa89c43039 EBUILD x264-encoder-0.0.20170701.ebuild 2156 BLAKE2B a6e2252f2e39ac64f848497e1935cde5acb657ababe7025ad1519a433a0011df3a0d458595855de26a942af1d118a0caf3d228e518a1e4fa34d78c9ab0fe9526 SHA512 102967504f754527bc34430a549d918f5d15ce7144094e2f583a8542f1c89e38892b4061050fc6a8c46e1a4db2bb9d900dae4b3ec4ca69d78e9d02259c2c56da -EBUILD x264-encoder-0.0.20190214.ebuild 2135 BLAKE2B 6e2999f14ba5ebd68ec86eb00f8039c21159aae811241c77ea09de8ca61c7e103d5567f29f973eba549b1650506ee0cd8110e321209e25f79ca7ac2607766d8c SHA512 4ed53d1b52d17ec1c3dc8aa1ed20bd350b00b300ebb707894e0ad4596bb5b551a0c8841eba02350d838e97a4f40adb68bfe1b2e3f42fd62d02f91174773855a5 +EBUILD x264-encoder-0.0.20190214.ebuild 2133 BLAKE2B 60e4e1dd5a5625fdb17d37c551d42ce983b7c6e3b7e2f76fb1c2be19bc3bfdd10883c7e75f5ab623e458bf9cfe7b637007e12f340025666bc610535c0be90676 SHA512 e45fb0e38ca9fb60b800c3def2bb01d30597ff3de369a98289d5ead339fc8ace562f559674f29723d7bd320de12d6f39170609b85e6ad290b26773f2864d13aa EBUILD x264-encoder-9999.ebuild 2135 BLAKE2B 6e2999f14ba5ebd68ec86eb00f8039c21159aae811241c77ea09de8ca61c7e103d5567f29f973eba549b1650506ee0cd8110e321209e25f79ca7ac2607766d8c SHA512 4ed53d1b52d17ec1c3dc8aa1ed20bd350b00b300ebb707894e0ad4596bb5b551a0c8841eba02350d838e97a4f40adb68bfe1b2e3f42fd62d02f91174773855a5 MISC metadata.xml 587 BLAKE2B c768f1adecd9c56480a7ae1c3c4907230d5e1ffd7884abdf569de00f64bc34faf6314e473928540d6c9fa747bfaf2573717b2fdca0996a80f69ea7330c3c6226 SHA512 383e8540e2bde9190f48030956ff00eebb86f02781dfeffee9507198e00ee9d7f6cba6e05e5b9c7e8c692b0d5935531c162d7b5efe61a7f1ce2a88458ae2ec04 diff --git a/media-video/x264-encoder/x264-encoder-0.0.20190214.ebuild b/media-video/x264-encoder/x264-encoder-0.0.20190214.ebuild index 207434fe1c32..83503e08e456 100644 --- a/media-video/x264-encoder/x264-encoder-0.0.20190214.ebuild +++ b/media-video/x264-encoder/x264-encoder-0.0.20190214.ebuild @@ -14,7 +14,7 @@ if [[ ${PV} == 9999 ]]; then else MY_P="x264-snapshot-$(ver_cut 3)-2245" SRC_URI="http://download.videolan.org/pub/videolan/x264/snapshots/${MY_P}.tar.bz2" - KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" + KEYWORDS="~alpha amd64 ~ppc ~ppc64 ~sparc x86 ~x86-fbsd" S="${WORKDIR}/${MY_P}" fi |