From dc7cbdfa65fd814b3b9aa3c56257da201109e807 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Fri, 5 Apr 2019 21:17:31 +0100 Subject: gentoo resync : 05.04.2019 --- media-video/Manifest.gz | Bin 27924 -> 27771 bytes media-video/aegisub/Manifest | 2 +- media-video/aegisub/aegisub-9999.ebuild | 13 +- media-video/blinkenthemes/Manifest | 2 +- .../blinkenthemes/blinkenthemes-0.10-r1.ebuild | 2 +- media-video/dcpomatic/Manifest | 8 - media-video/dcpomatic/dcpomatic-2.12.4.ebuild | 116 ----- media-video/dcpomatic/dcpomatic-9999.ebuild | 117 ----- .../files/dcpomatic-2.10.2-respect-cxxflags.patch | 13 - .../dcpomatic/files/dcpomatic-2.8.0-desktop.patch | 32 -- .../files/dcpomatic-2.8.0-no-ldconfig.patch | 12 - .../dcpomatic/files/dcpomatic-2.8.0-wxGTK3.patch | 13 - media-video/dcpomatic/metadata.xml | 15 - media-video/ffmpeg/Manifest | 12 +- media-video/ffmpeg/ffmpeg-3.4.5.ebuild | 2 +- media-video/ffmpeg/ffmpeg-3.4.6.ebuild | 488 +++++++++++++++++++ media-video/ffmpeg/ffmpeg-4.1.2.ebuild | 528 +++++++++++++++++++++ media-video/ffmpeg/ffmpeg-4.1.3.ebuild | 528 +++++++++++++++++++++ media-video/ffmpeg/ffmpeg-9999.ebuild | 7 +- media-video/ffmpeg/metadata.xml | 1 + media-video/gaupol/Manifest | 2 +- media-video/gaupol/gaupol-1.5.ebuild | 2 +- media-video/gnome-mpv/Manifest | 2 +- media-video/gnome-mpv/gnome-mpv-0.16.ebuild | 2 +- media-video/mjpegtools/Manifest | 2 +- media-video/mjpegtools/mjpegtools-2.1.0-r4.ebuild | 4 +- media-video/mkvtoolnix/Manifest | 6 +- media-video/mkvtoolnix/mkvtoolnix-31.0.0.ebuild | 2 +- media-video/mkvtoolnix/mkvtoolnix-32.0.0.ebuild | 130 +++++ media-video/mkvtoolnix/mkvtoolnix-9999.ebuild | 8 +- media-video/mplayer/Manifest | 4 +- media-video/mplayer/mplayer-1.3.0-r5.ebuild | 19 +- media-video/mplayer/mplayer-9999.ebuild | 19 +- media-video/parole/Manifest | 2 + media-video/parole/parole-1.0.2.ebuild | 64 +++ media-video/pitivi/Manifest | 3 + .../pitivi/files/pitivi-0.999-optional-tests.patch | 18 + media-video/pitivi/pitivi-0.999.ebuild | 96 ++++ media-video/projectx/Manifest | 8 +- media-video/projectx/files/build-0.91.0.10.xml | 77 +++ .../projectx/files/projectx-0.91.0.10-bl2.patch | 15 + .../files/projectx-0.91.0.10-idctfast.patch | 37 ++ .../files/projectx-0.91.0.10-stdout-corrupt.patch | 11 + .../projectx/files/projectx-0.91.0.10-xdg.patch | 44 ++ media-video/projectx/projectx-0.91.0.10-r1.ebuild | 4 +- media-video/projectx/projectx-0.91.0.10-r2.ebuild | 134 ++++++ media-video/ttcut/Manifest | 1 + media-video/ttcut/ttcut-0.19.6_p1-r1.ebuild | 48 ++ 48 files changed, 2285 insertions(+), 390 deletions(-) delete mode 100644 media-video/dcpomatic/Manifest delete mode 100644 media-video/dcpomatic/dcpomatic-2.12.4.ebuild delete mode 100644 media-video/dcpomatic/dcpomatic-9999.ebuild delete mode 100644 media-video/dcpomatic/files/dcpomatic-2.10.2-respect-cxxflags.patch delete mode 100644 media-video/dcpomatic/files/dcpomatic-2.8.0-desktop.patch delete mode 100644 media-video/dcpomatic/files/dcpomatic-2.8.0-no-ldconfig.patch delete mode 100644 media-video/dcpomatic/files/dcpomatic-2.8.0-wxGTK3.patch delete mode 100644 media-video/dcpomatic/metadata.xml create mode 100644 media-video/ffmpeg/ffmpeg-3.4.6.ebuild create mode 100644 media-video/ffmpeg/ffmpeg-4.1.2.ebuild create mode 100644 media-video/ffmpeg/ffmpeg-4.1.3.ebuild create mode 100644 media-video/mkvtoolnix/mkvtoolnix-32.0.0.ebuild create mode 100644 media-video/parole/parole-1.0.2.ebuild create mode 100644 media-video/pitivi/files/pitivi-0.999-optional-tests.patch create mode 100644 media-video/pitivi/pitivi-0.999.ebuild create mode 100644 media-video/projectx/files/build-0.91.0.10.xml create mode 100644 media-video/projectx/files/projectx-0.91.0.10-bl2.patch create mode 100644 media-video/projectx/files/projectx-0.91.0.10-idctfast.patch create mode 100644 media-video/projectx/files/projectx-0.91.0.10-stdout-corrupt.patch create mode 100644 media-video/projectx/files/projectx-0.91.0.10-xdg.patch create mode 100644 media-video/projectx/projectx-0.91.0.10-r2.ebuild create mode 100644 media-video/ttcut/ttcut-0.19.6_p1-r1.ebuild (limited to 'media-video') diff --git a/media-video/Manifest.gz b/media-video/Manifest.gz index f649efe720ed..722228ea90d3 100644 Binary files a/media-video/Manifest.gz and b/media-video/Manifest.gz differ diff --git a/media-video/aegisub/Manifest b/media-video/aegisub/Manifest index 904196781387..c8f51c107430 100644 --- a/media-video/aegisub/Manifest +++ b/media-video/aegisub/Manifest @@ -5,5 +5,5 @@ AUX 3.2.2_p20160518/aegisub-3.2.2_p20160518-respect-compiler-flags.patch 2186 BL AUX 3.2.2_p20160518/aegisub-3.2.2_p20160518-support-system-gtest.patch 2483 BLAKE2B 6bff0828e0678e269dc129be03f9bf1135933abefdb9190de5fe6afd214b9caa8b4283f65f30853b3ae118c5ade021a174fa164cee606b635f6587deabf47581 SHA512 802ee218e2c005760a8260271791df0891ef6392bec4fbbb5936df5a84db888b0b6f36055d0760c4929cb442adcc1433a363fa93eae6c163f296166028684daf DIST aegisub-3.2.2_p20160518.tar.gz 7438734 BLAKE2B 3a57e5d6fafac2ca95d64d60e8d68b48177aaa0c5fd1438d0b0a133757ef95443c16324fb7effb41506f2b1eb70aab9d34845a91beef0ef81a3658444e24be07 SHA512 8d8775ba0a12735a9756b9abfd65c89519dae4e21afcaedbd18985d1c1021975b1ae909b3bef1121b707c626e1711d56f1823f3b4746eab49e8386536a5e84e6 EBUILD aegisub-3.2.2_p20160518-r2.ebuild 3526 BLAKE2B a38d02662aa047b7f9d505391a25be856d50267c9d917a9df7342b1afaec5122f22a4649d0ac8adfb2259eb0c01bbab1681c138280db191782711d4bd32436ef SHA512 b657555a4f49c09b9c06570dd9927a136b1341ef8ae5cd209ec73ce45a62e33fcd15fbf90b8a870f6a68f071b3e322e03fcd17f8fdfc04b1579a64b19bfea0cb -EBUILD aegisub-9999.ebuild 3041 BLAKE2B 4c9adee1e3a308b1e7470d6badc8f9af87f68a7ca09d589328a591634f4286123d972c2a8a61859881cdedebcb73dd81a22c74fa5410caac102a2327cf7684b0 SHA512 d2231b788ff67fd79db1c8a353cd87d5e9959f496b80b88cd7ec89f380756b3defe3f0c69a703828b00d63020276fbe749618a555912724c65077914bafe0a9d +EBUILD aegisub-9999.ebuild 2867 BLAKE2B 9eeddc22c8774b94d0365b8f0b628f4cde96847f90d1373e26cedd4ae74662b04407858b71d2de9f44b67f444651513ae95b13743eb5c2157e6f9daa00f4af96 SHA512 afce1fa2d15e8a63bff8551e88338aa5d01093aa61ccd84105f2c0200dcefeeeadd0a4535d9e176ab39043d842e272abecaff2d7113f77f9f36354788e3c021e MISC metadata.xml 489 BLAKE2B b26abe2056ef0465a81ea8f9928c6d05053595b5650aff750251173ddce6f5248a30331104710c1b05cafe9641c072764c45f66935b25857785bc833af31174a SHA512 450c45be100ed72d7f0b69fe596862137ea2f421597e99129325bf2f58940600a62e1502ee4d6c7cbbab17b4cbd99da8c481ceb6fec2709452c17d8cb7aaae48 diff --git a/media-video/aegisub/aegisub-9999.ebuild b/media-video/aegisub/aegisub-9999.ebuild index 3d4464c989fa..fcbfb2a2dc80 100644 --- a/media-video/aegisub/aegisub-9999.ebuild +++ b/media-video/aegisub/aegisub-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2017 Gentoo Foundation +# Copyright 1999-2019 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=6 @@ -17,7 +17,8 @@ EGIT_SUBMODULES=() LICENSE="BSD MIT" SLOT="0" KEYWORDS="" -IUSE="+alsa debug +fftw openal oss portaudio pulseaudio spell test +uchardet" +IUSE="+alsa debug +fftw openal oss portaudio pulseaudio spell +uchardet" +RESTRICT="test" # aegisub bundles luabins (https://github.com/agladysh/luabins). # Unfortunately, luabins upstream is practically dead since 2010. @@ -46,11 +47,6 @@ DEPEND="${RDEPEND} dev-util/intltool sys-devel/gettext virtual/pkgconfig - test? ( - ~dev-cpp/gtest-1.7.0 - dev-lua/busted - dev-lua/luarocks - ) " REQUIRED_USE="|| ( alsa openal oss portaudio pulseaudio )" @@ -58,7 +54,6 @@ REQUIRED_USE="|| ( alsa openal oss portaudio pulseaudio )" PATCHES=( "${FILESDIR}/3.2.2_p20160518/${PN}-3.2.2_p20160518-fix-system-luajit-build.patch" "${FILESDIR}/3.2.2_p20160518/${PN}-3.2.2_p20160518-respect-compiler-flags.patch" - "${FILESDIR}/3.2.2_p20160518/${PN}-3.2.2_p20160518-support-system-gtest.patch" ) src_prepare() { @@ -103,7 +98,7 @@ src_configure() { } src_compile() { - emake WITH_SYSTEM_GTEST=$(usex test) + emake } src_test() { diff --git a/media-video/blinkenthemes/Manifest b/media-video/blinkenthemes/Manifest index a525e4f4f091..1cec205522d3 100644 --- a/media-video/blinkenthemes/Manifest +++ b/media-video/blinkenthemes/Manifest @@ -1,4 +1,4 @@ DIST blinkenthemes-0.10.tar.gz 4059605 BLAKE2B fe56ec9522cbcaa78c45e92461d462739d28bdb96aa9d82ce58b79410e779169ade4d9f8f1c2ca2a333a827edbd2c650301db86a3313bb82fb01597148dc23f4 SHA512 e7bcc2b41046f78750d32ec2f3b37e6f2e16b4bc35a40bc09a8a9ba0a63e54192796cd69491c0517e0ac612d496f0d04ef79a5508da61a2090943bfc94938cf1 -EBUILD blinkenthemes-0.10-r1.ebuild 362 BLAKE2B 9caa4ccecefb0f39b7676cfcdd4336900205259f121e889a6dffdc6c1f2a601fc20b0c28018e7acf683c1a84307c78bc0069dc2fb7e9153f6980a409652499db SHA512 1076aee8a80f9763c1fc84138345c9bb83a70935372c0954c94c1dff60ac21b442cb88c73a8805978d5ce8303ff8730972d2e1ab44f40d0994e2dbc438231c24 +EBUILD blinkenthemes-0.10-r1.ebuild 361 BLAKE2B 2b23d0cd570aac266b1209f29fa4fd9e403c055e4064da730db4b4c6f0bd96ea8cb5a51700e4a1219a9e7abd8c2ff0c4d3cebac9343b6f4817896a58cd972548 SHA512 69b4ddd4ab49b3fe35a995297a57d1a8dc4c59ebd237ec9f14cd3b2e98745501077cde922ac3d6de9fe3b4e06d823acd2ce55dc757c13904ecfa4a9be6a43705 EBUILD blinkenthemes-0.10.ebuild 538 BLAKE2B 4affa1e04bfa0cc909c018052301743122ab4a5fbbaf9c2d9c371f6f206214ef4109c92742b61b5529575130c56174e97dd6332f5ab2591944ac70f815078718 SHA512 0d9dc4d889ffeb2c8143808c2e30a713f7a8d802dd9576e426e021d9610142414febf1ffaab3a8a38206cd0361dc3245a26c5db7b9b2ff6e4cf087acac59fcd4 MISC metadata.xml 667 BLAKE2B 7505bd3a3b7203d57d974f9edb438ed42617233a590044f983161622f4107eb8cb340c350fd750a128145f1374f89f03bff6e10cec2b6056a30297df8f9ca902 SHA512 11c102eb6ccdb806940c82ca69345ac9acfa113002e5b7ce14426a1107d0a678d8bb444c2f7fda9d25f4b78a35fe022d970471b344e19d0b806ec7bfb454a021 diff --git a/media-video/blinkenthemes/blinkenthemes-0.10-r1.ebuild b/media-video/blinkenthemes/blinkenthemes-0.10-r1.ebuild index 2e1eb5ace209..f4672192e6b6 100644 --- a/media-video/blinkenthemes/blinkenthemes-0.10-r1.ebuild +++ b/media-video/blinkenthemes/blinkenthemes-0.10-r1.ebuild @@ -9,7 +9,7 @@ SRC_URI="http://blinkenlights.de/dist/${P}.tar.gz" LICENSE="GPL-2" SLOT="0" -KEYWORDS="amd64 ~x86" +KEYWORDS="amd64 x86" DEPEND="media-libs/blib" BDEPEND="virtual/pkgconfig" diff --git a/media-video/dcpomatic/Manifest b/media-video/dcpomatic/Manifest deleted file mode 100644 index 816cee2d2cb1..000000000000 --- a/media-video/dcpomatic/Manifest +++ /dev/null @@ -1,8 +0,0 @@ -AUX dcpomatic-2.10.2-respect-cxxflags.patch 485 BLAKE2B cc638635801f8a27c6c7e5589d18d4befca9d72d2deff405b3115f850fdf0c02a1f3e348cdc9dbb52f7d588c267857e30544442b2d4b49b5a779886cce881505 SHA512 2766294bb2168af647086e1a905f1114fd41e8be84f1577ef3ca3e3e831def8347e1d7ec22c0e432c5e3697e76f63d55480b72422921f6a4d39d205061274625 -AUX dcpomatic-2.8.0-desktop.patch 1081 BLAKE2B 71e55abdccc9f6b071c1cd01c4dad8275e22fb8d1eb9b660a17d15eb6f68baf6cd5032f190795789efe4176ba6164b1419683ddeb507b41afd345c5c39a30589 SHA512 f7fcd1e038dda2b056a03462d601180e6105a89dee0ff6c143958678622a14fb307e375a6a645c12acbe8041a106234af3dc462bbcbdd74a35ce44159ba0b651 -AUX dcpomatic-2.8.0-no-ldconfig.patch 241 BLAKE2B b6f2c202efbac7f746b9be8b31896fd4766e338557b92b90b1b197e31f5712498aed322fd5c79d3f9e57f12faeb634a5139db74d281a0f90beed1bd8eb3b220c SHA512 6fac6ec3cacbf40a1f86bd9a5d58a847a1b7bac63acd52a10c1c0cb334e40693d945dfd7e2593d8fde27a853006ac5021bda09208d19f71d613091ca4a7ace01 -AUX dcpomatic-2.8.0-wxGTK3.patch 506 BLAKE2B 7ed80077e3e0f493f5f39526eecd61ac754427152d8c9c97e536f5c2f8eb89b490d1f54b571a507a943690b6eb6b7df0b209c212d31328987709fdd5fff2732d SHA512 127694c416d4f0d50e4e793c2b4f5d4f4a19c92bf10f56602247e1aeefe7ce638745a8434723d8973e5c6a6f8bc9af5bca1a1d7113c459c6fd59f20f1b4d94d9 -DIST dcpomatic-2.12.4.tar.bz2 177868575 BLAKE2B 5ace00aad6bfd44790841da380b45aa28577b058e11d2f7b6ef9d8611cf4c370054735ded599da210764fa1eed45d49bc1fb111862167998f2479251dc8cd308 SHA512 e7d16c603c7c1ae8ee489279b28a22ced74794c7974a67fb2f8ff1403f3f6041223b3c89eaf4f1ad1a56fb41dc0090c9176ded36e8fa2a8dbedba49a57d2ba82 -EBUILD dcpomatic-2.12.4.ebuild 2829 BLAKE2B ff8b93cd217e7ee8739b61d7c04f317a66e86099f33e19d78caffceefdf985f6167da35d72d14cd588b3e14c6bb7eb2af93757724e080f43306e194d61ff37ec SHA512 56ddd265247e9b095648aebd9d402424839b210bfb029a2ddea298731e966d67caff626840f4fd00f909fb36374b09bdb07b86dd72de84f756a14ef8d6e0aae3 -EBUILD dcpomatic-9999.ebuild 2829 BLAKE2B 8e7fb2e0d6d6e56525d05ea2658e1b14347d317408488156450b99abf4f7d5d4298eb2a33fe1860d3d54a2e631495bea78ec8c6b95d0dc925fa58a6b37321ea0 SHA512 504339fec5b4c9ea4a17044175f4e1b7a55733a38ed17086cf7a281fe36036cfa14ab49c4318aefbe8dad3d0ad669b8c5ec62d0935c37d102bfbdbb62ca3f391 -MISC metadata.xml 825 BLAKE2B bc4f168f5e2ef9efb6a2918929f3943fbbf1b7924f6515d136d660fec6a0bf4219111015bdb876857fbab7792da92b285f290b1c137562a01c38d00d2ea976cf SHA512 f9412a388e2f3af8be5c501db7105861dd9ec2670b461e99e7c0401846fb9cbe9fd0aeaff343212e8a83631f348182b0371079bf8a29914c68c02bdc4901ee95 diff --git a/media-video/dcpomatic/dcpomatic-2.12.4.ebuild b/media-video/dcpomatic/dcpomatic-2.12.4.ebuild deleted file mode 100644 index 8c107aa068f0..000000000000 --- a/media-video/dcpomatic/dcpomatic-2.12.4.ebuild +++ /dev/null @@ -1,116 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -PYTHON_COMPAT=( python2_7 python3_{3,4,5,6} ) -PYTHON_REQ_USE="threads(+)" -inherit python-any-r1 waf-utils wxwidgets gnome2-utils - -DESCRIPTION="create Digital Cinema Packages (DCPs) from videos, images and sound files" -HOMEPAGE="https://dcpomatic.com/" -SRC_URI="https://dcpomatic.com/dl.php?id=source&version=${PV} -> ${P}.tar.bz2" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~amd64" -IUSE="+alsa +gtk jack pulseaudio" - -REQUIRED_USE="^^ ( alsa jack pulseaudio )" - -RDEPEND="dev-cpp/cairomm - dev-cpp/glibmm:2 - dev-cpp/libxmlpp:2.6 - dev-cpp/pangomm:1.4 - dev-libs/boost - dev-libs/glib:2 - dev-libs/icu - dev-libs/libcxml - dev-libs/libzip - dev-libs/openssl:0 - || ( media-gfx/graphicsmagick media-gfx/imagemagick ) - media-libs/fontconfig:1.0 - >media-libs/libdcp-1.4.4:1.0 - media-libs/libsamplerate - media-libs/libsndfile - >=media-libs/libsub-1.2.1:1.0 - media-libs/rtaudio[alsa?,jack?,pulseaudio?] - >=media-video/ffmpeg-3:= - net-libs/libssh - net-misc/curl - gtk? ( x11-libs/gtk+:2 - x11-libs/wxGTK:3.0 )" -DEPEND="${RDEPEND} - ${PYTHON_DEPS} - dev-util/waf - virtual/pkgconfig" - -PATCHES=( - "${FILESDIR}"/${PN}-2.8.0-wxGTK3.patch - "${FILESDIR}"/${PN}-2.8.0-no-ldconfig.patch - "${FILESDIR}"/${PN}-2.8.0-desktop.patch - "${FILESDIR}"/${PN}-2.10.2-respect-cxxflags.patch - ) - -src_prepare() { - rm -v waf - export WAF_BINARY=${EROOT}usr/bin/waf - if [ -z "${PYTHONPATH}" ] ; then - export PYTHONPATH="${S}" - else - export PYTHONPATH="${S}:${PYTHONPATH}" - fi - - ewarn "Some tests failing due missing files/certs are disabled." - sed \ - -e '/4k_test.cc/d' \ - -e '/audio_analysis_test.cc/d' \ - -e '/audio_decoder_test.cc/d' \ - -e '/audio_processor_test.cc/d' \ - -e '/black_fill_test.cc/d' \ - -e '/client_server_test.cc/d' \ - -e '/dcp_subtitle_test.cc/d' \ - -e '/ffmpeg_decoder_sequential_test.cc/d' \ - -e '/file_naming_test.cc/d' \ - -e '/import_dcp_test.cc/d' \ - -e '/interrupt_encoder_test.cc/d' \ - -e '/j2k_bandwidth_test.cc/d' \ - -e '/recover_test.cc/d' \ - -e '/reels_test.cc/d' \ - -e '/render_subtitles_test.cc/d' \ - -e '/repeat_frame_test.cc/d' \ - -e '/scaling_test.cc/d' \ - -e '/skip_frame_test.cc/d' \ - -e '/srt_subtitle_test.cc/d' \ - -e '/ssa_subtitle_test.cc/d' \ - -e '/vf_test.cc/d' \ - -e '/video_mxf_content_test.cc/d' \ - -e '/film_metadata_test.cc/d' \ - -i test/wscript || die - - if use alsa ; then - sed -e "s|RtAudio::LINUX_PULSE|RtAudio::LINUX_ALSA|"\ - -i src/wx/wx_util.h || die - elif use jack ; then - sed -e "s|RtAudio::LINUX_PULSE|RtAudio::UNIX_JACK|"\ - -i src/wx/wx_util.h || die - fi - - default -} - -src_configure() { - waf-utils_src_configure $(usex gtk "" "--disable-gui") -} - -src_test() { - ./run/tests || die -} - -pkg_postinst() { - gnome2_icon_cache_update -} - -pkg_postrm() { - gnome2_icon_cache_update -} diff --git a/media-video/dcpomatic/dcpomatic-9999.ebuild b/media-video/dcpomatic/dcpomatic-9999.ebuild deleted file mode 100644 index 0ae91e62c082..000000000000 --- a/media-video/dcpomatic/dcpomatic-9999.ebuild +++ /dev/null @@ -1,117 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -PYTHON_COMPAT=( python2_7 python3_{3,4,5,6} ) -PYTHON_REQ_USE="threads(+)" -inherit git-r3 python-any-r1 waf-utils wxwidgets gnome2-utils - -DESCRIPTION="create Digital Cinema Packages (DCPs) from videos, images and sound files" -HOMEPAGE="http://dcpomatic.com/" -EGIT_REPO_URI="https://github.com/cth103/${PN}.git" -EGIT_SUBMODULES=() - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="" -IUSE="+alsa +gtk jack pulseaudio" - -REQUIRED_USE="^^ ( alsa jack pulseaudio )" - -RDEPEND="dev-cpp/cairomm - dev-cpp/glibmm:2 - dev-cpp/libxmlpp:2.6 - dev-cpp/pangomm:1.4 - dev-libs/boost - dev-libs/glib:2 - dev-libs/icu - >dev-libs/libcxml-1.15.4 - dev-libs/libzip - dev-libs/openssl:0 - || ( media-gfx/graphicsmagick media-gfx/imagemagick ) - media-libs/fontconfig:1.0 - >media-libs/libdcp-1.4.4:1.0 - media-libs/libsamplerate - media-libs/libsndfile - >=media-libs/libsub-1.2.1:1.0 - media-libs/rtaudio[alsa?,jack?,pulseaudio?] - >=media-video/ffmpeg-3:= - net-libs/libssh - net-misc/curl - gtk? ( x11-libs/gtk+:2 - x11-libs/wxGTK:3.0 )" -DEPEND="${RDEPEND} - ${PYTHON_DEPS} - dev-util/waf - virtual/pkgconfig" - -PATCHES=( - "${FILESDIR}"/${PN}-2.8.0-wxGTK3.patch - "${FILESDIR}"/${PN}-2.8.0-no-ldconfig.patch - "${FILESDIR}"/${PN}-2.8.0-desktop.patch - "${FILESDIR}"/${PN}-2.10.2-respect-cxxflags.patch - ) - -src_prepare() { - rm -v waf - export WAF_BINARY=${EROOT}usr/bin/waf - if [ -z "${PYTHONPATH}" ] ; then - export PYTHONPATH="${S}" - else - export PYTHONPATH="${S}:${PYTHONPATH}" - fi - - ewarn "Some tests failing due missing files/certs are disabled." - sed \ - -e '/4k_test.cc/d' \ - -e '/audio_analysis_test.cc/d' \ - -e '/audio_decoder_test.cc/d' \ - -e '/audio_processor_test.cc/d' \ - -e '/black_fill_test.cc/d' \ - -e '/client_server_test.cc/d' \ - -e '/dcp_subtitle_test.cc/d' \ - -e '/ffmpeg_decoder_sequential_test.cc/d' \ - -e '/file_naming_test.cc/d' \ - -e '/import_dcp_test.cc/d' \ - -e '/interrupt_encoder_test.cc/d' \ - -e '/j2k_bandwidth_test.cc/d' \ - -e '/recover_test.cc/d' \ - -e '/reels_test.cc/d' \ - -e '/render_subtitles_test.cc/d' \ - -e '/repeat_frame_test.cc/d' \ - -e '/scaling_test.cc/d' \ - -e '/skip_frame_test.cc/d' \ - -e '/srt_subtitle_test.cc/d' \ - -e '/ssa_subtitle_test.cc/d' \ - -e '/vf_test.cc/d' \ - -e '/video_mxf_content_test.cc/d' \ - -e '/film_metadata_test.cc/d' \ - -i test/wscript || die - - if use alsa ; then - sed -e "s|RtAudio::LINUX_PULSE|RtAudio::LINUX_ALSA|"\ - -i src/wx/wx_util.h || die - elif use jack ; then - sed -e "s|RtAudio::LINUX_PULSE|RtAudio::UNIX_JACK|"\ - -i src/wx/wx_util.h || die - fi - - default -} - -src_configure() { - waf-utils_src_configure $(usex gtk "" "--disable-gui") -} - -src_test() { - ./run/tests || die -} - -pkg_postinst() { - gnome2_icon_cache_update -} - -pkg_postrm() { - gnome2_icon_cache_update -} diff --git a/media-video/dcpomatic/files/dcpomatic-2.10.2-respect-cxxflags.patch b/media-video/dcpomatic/files/dcpomatic-2.10.2-respect-cxxflags.patch deleted file mode 100644 index 330dfd0609f3..000000000000 --- a/media-video/dcpomatic/files/dcpomatic-2.10.2-respect-cxxflags.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- dcpomatic-2.10.2/wscript -+++ dcpomatic-2.10.2/wscript -@@ -89,9 +89,7 @@ - have_c11 = int(gcc[0]) >= 4 and int(gcc[1]) >= 8 and int(gcc[2]) >= 1 - - if conf.options.enable_debug: -- conf.env.append_value('CXXFLAGS', ['-g', '-DDCPOMATIC_DEBUG', '-fno-omit-frame-pointer']) -- else: -- conf.env.append_value('CXXFLAGS', '-O2') -+ conf.env.append_value('CXXFLAGS', ['-DDCPOMATIC_DEBUG', '-fno-omit-frame-pointer']) - - # - # Windows/Linux/OS X specific diff --git a/media-video/dcpomatic/files/dcpomatic-2.8.0-desktop.patch b/media-video/dcpomatic/files/dcpomatic-2.8.0-desktop.patch deleted file mode 100644 index 615a998e2a7f..000000000000 --- a/media-video/dcpomatic/files/dcpomatic-2.8.0-desktop.patch +++ /dev/null @@ -1,32 +0,0 @@ ---- dcpomatic-2.8.0/platform/linux/dcpomatic.desktop.in -+++ dcpomatic-2.8.0/platform/linux/dcpomatic.desktop.in -@@ -7,4 +7,4 @@ - Name=DCP-o-matic 2 - Icon=dcpomatic2 - Comment=DCP generator --Categories=AudioVideo;Video -+Categories=AudioVideo;Video; ---- dcpomatic-2.8.0/platform/linux/dcpomatic_server.desktop.in -+++ dcpomatic-2.8.0/platform/linux/dcpomatic_server.desktop.in -@@ -7,4 +7,4 @@ - Name=DCP-o-matic 2 Encode Server - Icon=dcpomatic2_server - Comment=DCP generator --Categories=AudioVideo;Video -+Categories=AudioVideo;Video; ---- dcpomatic-2.8.0/platform/linux/dcpomatic_kdm.desktop.in -+++ dcpomatic-2.8.0/platform/linux/dcpomatic_kdm.desktop.in -@@ -7,4 +7,4 @@ - Name=DCP-o-matic 2 KDM Creator - Icon=dcpomatic2_kdm - Comment=DCP generator --Categories=AudioVideo;Video -+Categories=AudioVideo;Video; ---- dcpomatic-2.8.0/platform/linux/dcpomatic_batch.desktop.in -+++ dcpomatic-2.8.0/platform/linux/dcpomatic_batch.desktop.in -@@ -7,4 +7,4 @@ - Name=DCP-o-matic 2 Batch Converter - Icon=dcpomatic2_batch - Comment=DCP generator --Categories=AudioVideo;Video -+Categories=AudioVideo;Video; diff --git a/media-video/dcpomatic/files/dcpomatic-2.8.0-no-ldconfig.patch b/media-video/dcpomatic/files/dcpomatic-2.8.0-no-ldconfig.patch deleted file mode 100644 index 106e2395e738..000000000000 --- a/media-video/dcpomatic/files/dcpomatic-2.8.0-no-ldconfig.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- dcpomatic-2.8.0/wscript -+++ dcpomatic-2.8.0/wscript -@@ -503,8 +503,7 @@ - sys.exit(-1) - - def post(ctx): -- if ctx.cmd == 'install': -- ctx.exec_command('/sbin/ldconfig') -+ pass - - def pot(bld): - bld.recurse('src') diff --git a/media-video/dcpomatic/files/dcpomatic-2.8.0-wxGTK3.patch b/media-video/dcpomatic/files/dcpomatic-2.8.0-wxGTK3.patch deleted file mode 100644 index 9d85ad583317..000000000000 --- a/media-video/dcpomatic/files/dcpomatic-2.8.0-wxGTK3.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- dcpomatic-2.8.0/src/wx/wscript -+++ dcpomatic-2.8.0/src/wx/wscript -@@ -103,8 +103,8 @@ - - def configure(conf): - try: -- wx_config = 'wx-config-3.0-gtk2' -- conf.check_cfg(msg='Checking for wxWidgets using wx-config-3.0-gtk2', -+ wx_config = 'wx-config-3.0' -+ conf.check_cfg(msg='Checking for wxWidgets using wx-config-3.0', - package='', - path=wx_config, - args='--cppflags --cxxflags --libs std,richtext', diff --git a/media-video/dcpomatic/metadata.xml b/media-video/dcpomatic/metadata.xml deleted file mode 100644 index 192510bcea57..000000000000 --- a/media-video/dcpomatic/metadata.xml +++ /dev/null @@ -1,15 +0,0 @@ - - - - - -DCP-o-matic is a free, open-source program to create Digital Cinema Packages (DCPs) from videos, images, sound and subtitle files. You can use it to make content for playback on DCI-compliant cinema projectors. - -It can take files in many different formats, including MP4, Apple ProRes, MOV, AVI, VOB (from DVDs), M2TS (from Blu-Ray), WMV, MKV, JPEG, PNG, TIFF and lots of others. - - - Utilize alsa output of media-libs/rtaudio. - Utilize jack output of media-libs/rtaudio. - Utilize pulseaudio output of media-libs/rtaudio. - - diff --git a/media-video/ffmpeg/Manifest b/media-video/ffmpeg/Manifest index b48b8a376f51..15fa900241c4 100644 --- a/media-video/ffmpeg/Manifest +++ b/media-video/ffmpeg/Manifest @@ -9,13 +9,19 @@ DIST ffmpeg-3.3.4.tar.bz2 9944256 BLAKE2B 72d42a16396882b30641fb057bb597f8e98ecf DIST ffmpeg-3.3.6.tar.bz2 9943322 BLAKE2B 2526fdf9580045131426e554a9bf44fdc6567c12213ea4d5b78aa27f14513f14e07f38b8380183686fa1a62440fe4108eaecddca96f4dec3c74c410b1f90ee03 SHA512 1305760fa981bcb43c8fcb5dd1bf7dd8d3f405a124975f062062b741d49e12386e4d3eec3de6a032fc93cd7f6086d939275a669a9997ffa400f70c20f7eb3d23 DIST ffmpeg-3.3.8.tar.bz2 9953307 BLAKE2B edd3c2ce9730494455a05ec9d81b6c2ceb0ebf526124f95a530214cdb113ffe91aa13b80a66501aefa4f571c5b8f2eedb97f8086370d08e3b4e2a98d517eb92b SHA512 a793f6d0a06ff5244a580d9e54e1252d3ac88e2513dad4d137081103327ae4440ebe9b0d60a13f93536cb6b35097982ea76acc4056bfa31683063eef5c211ede DIST ffmpeg-3.4.5.tar.bz2 10183082 BLAKE2B f72157baefcd6a0ca8f389309bbe947ad21996e0f2eb3c46c6bfc90f1ebbb14bfd007d001e46ea51efef5db5f9fcee24b1a90b6862136aeebecdc95bb61b23a5 SHA512 e12707d47404a9ce02790b77d2852fc1a1573c8108e980c7355fa48ba891d1649464d4fe4d08394ecd6d871f651ac4388486b7654cb54a7aaeedaf05c55513ec +DIST ffmpeg-3.4.6.tar.bz2 10190001 BLAKE2B 4c7842900171cf871f8524f08f435797b1a168faa11877100fe74c3ecd4a2c2e004a5110dc23bda818f69b0a484f63d8f34c7904c4827c88894d877cdd70c6fe SHA512 0228751b288096e368f9049854936930b7c1fd89aac31a5382f5de78d3282b4e86a6f562c79833d1635222f0ad56b2e5401a150574714e1b7e0ab4f5d8939812 DIST ffmpeg-4.1.1.tar.bz2 10686360 BLAKE2B 47f4716d7e184d7318eb1a99ab1cdc188009464e973162e583f7ca4ae79fa3b103f9d5329c8993b72d20667e42e5a749123709a4640f07762568300b5c3c897f SHA512 0241c44e1dffd0d890a3d30a1b2387ea167d578bb39ba0c804fb417e132d343a9e43da9247b205e18b893d8cf75d8528e9971569be67ac380b88618ef0a75ed4 +DIST ffmpeg-4.1.2.tar.bz2 10687366 BLAKE2B c69cc693078f40610c4414f01ed20f89a85db398b3177d8d79a6f58f2d48b6a8049a2bc622933e0ae0a2889f635c25ccf1c5856cb86a4d98bb0bc2308188ae86 SHA512 6c3bf20d46772a80299c9d385919a745e4022c0a9b3c438c0504d3c94bb8d472f2c9026105330fa7c50c2f23f511eb853f32e4387f73c0b7b0d0761c20cb8b31 +DIST ffmpeg-4.1.3.tar.bz2 10689073 BLAKE2B 8486e21c8df116af802bb7f9208e702ec1feaa4f292f14021e0b6bfb3957b13ddacfa87db361e677ae0583cc2bd1d402a66b0c8507cbed79a001c9b8462100bf SHA512 d0f8b3ee7b55e67b1c7ad9610a7b19a15acfc35dc843683502e536ebcc2e8678b55325532c0039b764cc978e95f83afb48bd24304abaee26f26d3247a8310bfe EBUILD ffmpeg-3.2.6.ebuild 14779 BLAKE2B b79fb9e74ed3eaf3d84bb14823cd305dde3f14d5cd5bcf236bfac6443daa4d6c678ad2aea23559021af33afc0488c3fa845c4da52e1c27988a3f504a10475b3f SHA512 31fbf5b2294c6ba34960298347bb7c9523070bead6215b2f17ea7f7cf0b46878d14e22f1888959a4586550630e2f3b3e81ce7feae1270aad12a5cf5e297e51c1 EBUILD ffmpeg-3.2.7.ebuild 14784 BLAKE2B 709df5de9f58af7d57a01a4a90f5eb3eacc132a6dbed7d7f86a74c984774ad119febd904cede6b77f9ef4b05ae48538b6d18a1b50e5c7406a07dcfe567370a52 SHA512 e9b1439ffbdb2299ddffccf9a6fd43a5ee4a99e39c461a82393ae71226623c042e7a73c093a9c4d70b175aba7fd0eccd3926fb9a9d8de24afd97ac44f189ea9f EBUILD ffmpeg-3.3.4.ebuild 15808 BLAKE2B c64f1cd480d0bf2e8834073571f40eef01093b6384003653d3da534534f4a23fa1e5315de5e05dc808b1743dedc587439b4959ae843feee252f848b826308d9a SHA512 a29e5beb75cdacb1ce07b34910b419013c7dc8b906c5927aff6492338e02ec9d8ec0813e2d2aabce4d0aca70e027001c8aa50be23e9cfabc1f6aa860975e1b4b 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 15585 BLAKE2B 654672fdf106446d113b6ccad72340c969ef3afeb203c5b645d8a29368ccdbfd816488354657ac7bc3b4c1e711c819739e510432af8e6a418270ed51199f576a SHA512 4c000319b3229fbb0e28c6719fe990000800d839a3bca199516f393b97acd1ac0c70f38291b82bfad82d5f5561fed972bb5edd6ec3fa65900a3ceeedad369f85 +EBUILD ffmpeg-3.4.5.ebuild 15584 BLAKE2B 0949d33f57777bb561a2a68ef10d0eb310b694995432f5e3cbce4cb7b9a646546b884de49a496bd65c67ff56f60100a0d103e424362c024114919debf12387a6 SHA512 737b223d3b0c56cf3feece287b61dfa6bec3ed0f88a946b3a95d11e9da9295f49b4fb9eebc094b630e6a72ced03339e64bbfd3eeead8c5fc2e0446585d01eef3 +EBUILD ffmpeg-3.4.6.ebuild 15589 BLAKE2B 2f4b10cbdcd8459aaa5e01e5bed2ee0830b964fd4f027a20047918211f7117a69688d11bd52ffc1b1197172245eb5b549b57bf8a0009bb456f7703fa69b03ca0 SHA512 2a45a83eac4d7f2cd78242f33bc29f33a18f75d8b1fa0c7f405eeb49286764583547f3d3623d34a88a988a799b317d5f5d640b12aa1cdbad1b5aa6dd43782f0c EBUILD ffmpeg-4.1.1.ebuild 17072 BLAKE2B 4e3d25a7b01920c2e89740ef5847b3f99aa283e8926efcb641687ce9064f69aac5a25132f1295fd0c1dd1dff0f532d12acda72acaf09671549adb8d626266229 SHA512 3e2f5362b30dc2dc9a14356887304af89768774efb3025c4af7276da03ee75ae0a0ed85afd43c0a04b59c687aee901eba4db868720d130b0e282d25324e77977 -EBUILD ffmpeg-9999.ebuild 17133 BLAKE2B 665a24c4ebff82ce44d4743a62f7c18e59af4cdccbb964984ed2e1679ae7ae0ac0d606db6cb13e279532a3761965ede242a807026a269c4ad6a82604fcd4cf5d SHA512 d56bb09cf5367ecc7b26d2ae28b89829c1883b696bc6d4b4c933301b121902b926f60cffe7af34868546da66761058352c6efa296be51ff34baab8625113a931 -MISC metadata.xml 5912 BLAKE2B 42331876f9be4dd19b3850c473d2f9b669c33944e482bdb50bf23263b39ad59a68456b4e74514c74f0c88c19d299393d9391e9cde1ec903624c948ff4d03ff38 SHA512 e9309b4c548b829a9827503de6db9b04c1428f157aaadab3b167a46ae4cb26f9715ae852ec41e0e9744365ee9cf4d2c08284c82c1b2cd46ac7baae51fe76e482 +EBUILD ffmpeg-4.1.2.ebuild 17072 BLAKE2B 4e3d25a7b01920c2e89740ef5847b3f99aa283e8926efcb641687ce9064f69aac5a25132f1295fd0c1dd1dff0f532d12acda72acaf09671549adb8d626266229 SHA512 3e2f5362b30dc2dc9a14356887304af89768774efb3025c4af7276da03ee75ae0a0ed85afd43c0a04b59c687aee901eba4db868720d130b0e282d25324e77977 +EBUILD ffmpeg-4.1.3.ebuild 17072 BLAKE2B 4e3d25a7b01920c2e89740ef5847b3f99aa283e8926efcb641687ce9064f69aac5a25132f1295fd0c1dd1dff0f532d12acda72acaf09671549adb8d626266229 SHA512 3e2f5362b30dc2dc9a14356887304af89768774efb3025c4af7276da03ee75ae0a0ed85afd43c0a04b59c687aee901eba4db868720d130b0e282d25324e77977 +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.5.ebuild b/media-video/ffmpeg/ffmpeg-3.4.5.ebuild index 591ccca00aea..a62f2e1e25dc 100644 --- a/media-video/ffmpeg/ffmpeg-3.4.5.ebuild +++ b/media-video/ffmpeg/ffmpeg-3.4.5.ebuild @@ -54,7 +54,7 @@ LICENSE=" 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" + 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. diff --git a/media-video/ffmpeg/ffmpeg-3.4.6.ebuild b/media-video/ffmpeg/ffmpeg-3.4.6.ebuild new file mode 100644 index 000000000000..b24f198a07a3 --- /dev/null +++ b/media-video/ffmpeg/ffmpeg-3.4.6.ebuild @@ -0,0 +1,488 @@ +# 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 +) + +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.2.ebuild b/media-video/ffmpeg/ffmpeg-4.1.2.ebuild new file mode 100644 index 000000000000..12b71fa688bb --- /dev/null +++ b/media-video/ffmpeg/ffmpeg-4.1.2.ebuild @@ -0,0 +1,528 @@ +# 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=56.58.58 + +SCM="" +if [ "${PV#9999}" != "${PV}" ] ; then + SCM="git-r3" + EGIT_MIN_CLONE_TYPE="single" + EGIT_REPO_URI="https://git.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="https://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="https://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="~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. +# 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 libressl:libtls libxml2 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 jack:libjack + # decoders + amr:libopencore-amrwb amr:libopencore-amrnb codec2:libcodec2 fdk:libfdk-aac + jpeg2k:libopenjpeg bluray:libbluray gme:libgme gsm:libgsm + mmal modplug:libmodplug opus:libopus libilbc librtmp ssh:libssh + speex:libspeex srt:libsrt svg:librsvg video_cards_nvidia:ffnvcodec + vorbis:libvorbis vpx:libvpx zvbi:libzvbi + # libavfilter options + appkit + bs2b:libbs2b chromaprint flite:libflite frei0r + fribidi:libfribidi fontconfig ladspa libass lv2 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 libaom + openh264:libopenh264 snappy:libsnappy theora:libtheora twolame:libtwolame + wavpack:libwavpack webp:libwebp x264:libx264 x265:libx265 xvid:libxvid +) + +IUSE=" + alsa chromium doc +encode 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}] ) + codec2? ( media-libs/codec2[${MULTILIB_USEDEP}] ) + encode? ( + amrenc? ( >=media-libs/vo-amrwbenc-0.1.2-r1[${MULTILIB_USEDEP}] ) + kvazaar? ( >=media-libs/kvazaar-1.2.0[${MULTILIB_USEDEP}] ) + mp3? ( >=media-sound/lame-3.99.5-r1[${MULTILIB_USEDEP}] ) + 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}] ) + 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}] ) + libaom? ( >=media-libs/libaom-1.0.0-r1[${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}] ) + libxml2? ( dev-libs/libxml2:=[${MULTILIB_USEDEP}] ) + lv2? ( media-libs/lv2[${MULTILIB_USEDEP}] media-libs/lilv[${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}] ) + 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}] ) + srt? ( >=net-libs/srt-1.3.0[${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}] ) + video_cards_nvidia? ( >=media-libs/nv-codec-headers-8.1.24.2[${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.7.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 ) +" + +# Crypto & co provider magic +# - libressl is a useflag meaning it should always favor libressl over openssl +# - libressl and openssl provide more features to ffmpeg than gnutls +# +# The ordering is thus: libressl > openssl > gnutls +RDEPEND="${RDEPEND} + libressl? ( dev-libs/libressl:0=[${MULTILIB_USEDEP}] ) + !libressl? ( + openssl? ( >=dev-libs/openssl-1.0.1h-r2:0=[${MULTILIB_USEDEP}] ) + !openssl? ( gnutls? ( >=net-libs/gnutls-2.12.23-r6:=[${MULTILIB_USEDEP}] ) ) + ) +" + +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 ) libressl? ( bindist ) ) +" + +S=${WORKDIR}/${P/_/-} + +PATCHES=( + "${FILESDIR}"/chromium-r1.patch +) + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/libavutil/avconfig.h +) + +build_separate_libffmpeg() { + use opencl +} + +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 libressl && 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 ; 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 + + # Incompatible features: openssl or libressl and gnutls + if use libressl ; then + myconf+=( --disable-gnutls --disable-openssl ) + elif use openssl ; then + myconf+=( --disable-gnutls ) + fi + + # (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 + # This is only for hardcoded cflags; those are used in configure checks that may + # interfere with proper detections, bug #671746 and bug #645778 + # We use optflags, so that overrides them anyway. + --disable-optimizations + --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 && build_separate_libffmpeg; then + einfo "Configuring for Chromium" + mkdir -p ../chromium || die + pushd ../chromium >/dev/null || die + set -- "${@}" \ + --disable-shared \ + --enable-static \ + --enable-pic \ + --disable-opencl + 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 + if build_separate_libffmpeg; then + einfo "Compiling for Chromium" + pushd ../chromium >/dev/null || die + emake V=1 libffmpeg + popd >/dev/null || die + else + emake V=1 libffmpeg + fi + 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 + if build_separate_libffmpeg; then + einfo "Installing for Chromium" + pushd ../chromium >/dev/null || die + emake V=1 DESTDIR="${D}" install-libffmpeg + popd >/dev/null || die + else + emake V=1 DESTDIR="${D}" install-libffmpeg + fi + 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 new file mode 100644 index 000000000000..12b71fa688bb --- /dev/null +++ b/media-video/ffmpeg/ffmpeg-4.1.3.ebuild @@ -0,0 +1,528 @@ +# 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=56.58.58 + +SCM="" +if [ "${PV#9999}" != "${PV}" ] ; then + SCM="git-r3" + EGIT_MIN_CLONE_TYPE="single" + EGIT_REPO_URI="https://git.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="https://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="https://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="~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. +# 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 libressl:libtls libxml2 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 jack:libjack + # decoders + amr:libopencore-amrwb amr:libopencore-amrnb codec2:libcodec2 fdk:libfdk-aac + jpeg2k:libopenjpeg bluray:libbluray gme:libgme gsm:libgsm + mmal modplug:libmodplug opus:libopus libilbc librtmp ssh:libssh + speex:libspeex srt:libsrt svg:librsvg video_cards_nvidia:ffnvcodec + vorbis:libvorbis vpx:libvpx zvbi:libzvbi + # libavfilter options + appkit + bs2b:libbs2b chromaprint flite:libflite frei0r + fribidi:libfribidi fontconfig ladspa libass lv2 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 libaom + openh264:libopenh264 snappy:libsnappy theora:libtheora twolame:libtwolame + wavpack:libwavpack webp:libwebp x264:libx264 x265:libx265 xvid:libxvid +) + +IUSE=" + alsa chromium doc +encode 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}] ) + codec2? ( media-libs/codec2[${MULTILIB_USEDEP}] ) + encode? ( + amrenc? ( >=media-libs/vo-amrwbenc-0.1.2-r1[${MULTILIB_USEDEP}] ) + kvazaar? ( >=media-libs/kvazaar-1.2.0[${MULTILIB_USEDEP}] ) + mp3? ( >=media-sound/lame-3.99.5-r1[${MULTILIB_USEDEP}] ) + 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}] ) + 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}] ) + libaom? ( >=media-libs/libaom-1.0.0-r1[${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}] ) + libxml2? ( dev-libs/libxml2:=[${MULTILIB_USEDEP}] ) + lv2? ( media-libs/lv2[${MULTILIB_USEDEP}] media-libs/lilv[${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}] ) + 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}] ) + srt? ( >=net-libs/srt-1.3.0[${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}] ) + video_cards_nvidia? ( >=media-libs/nv-codec-headers-8.1.24.2[${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.7.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 ) +" + +# Crypto & co provider magic +# - libressl is a useflag meaning it should always favor libressl over openssl +# - libressl and openssl provide more features to ffmpeg than gnutls +# +# The ordering is thus: libressl > openssl > gnutls +RDEPEND="${RDEPEND} + libressl? ( dev-libs/libressl:0=[${MULTILIB_USEDEP}] ) + !libressl? ( + openssl? ( >=dev-libs/openssl-1.0.1h-r2:0=[${MULTILIB_USEDEP}] ) + !openssl? ( gnutls? ( >=net-libs/gnutls-2.12.23-r6:=[${MULTILIB_USEDEP}] ) ) + ) +" + +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 ) libressl? ( bindist ) ) +" + +S=${WORKDIR}/${P/_/-} + +PATCHES=( + "${FILESDIR}"/chromium-r1.patch +) + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/libavutil/avconfig.h +) + +build_separate_libffmpeg() { + use opencl +} + +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 libressl && 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 ; 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 + + # Incompatible features: openssl or libressl and gnutls + if use libressl ; then + myconf+=( --disable-gnutls --disable-openssl ) + elif use openssl ; then + myconf+=( --disable-gnutls ) + fi + + # (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 + # This is only for hardcoded cflags; those are used in configure checks that may + # interfere with proper detections, bug #671746 and bug #645778 + # We use optflags, so that overrides them anyway. + --disable-optimizations + --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 && build_separate_libffmpeg; then + einfo "Configuring for Chromium" + mkdir -p ../chromium || die + pushd ../chromium >/dev/null || die + set -- "${@}" \ + --disable-shared \ + --enable-static \ + --enable-pic \ + --disable-opencl + 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 + if build_separate_libffmpeg; then + einfo "Compiling for Chromium" + pushd ../chromium >/dev/null || die + emake V=1 libffmpeg + popd >/dev/null || die + else + emake V=1 libffmpeg + fi + 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 + if build_separate_libffmpeg; then + einfo "Installing for Chromium" + pushd ../chromium >/dev/null || die + emake V=1 DESTDIR="${D}" install-libffmpeg + popd >/dev/null || die + else + emake V=1 DESTDIR="${D}" install-libffmpeg + fi + 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-9999.ebuild b/media-video/ffmpeg/ffmpeg-9999.ebuild index 612d0d3fd708..7c83f6a4c05e 100644 --- a/media-video/ffmpeg/ffmpeg-9999.ebuild +++ b/media-video/ffmpeg/ffmpeg-9999.ebuild @@ -73,7 +73,7 @@ FFMPEG_FLAG_MAP=( # indevs libv4l:libv4l2 pulseaudio:libpulse libdrm jack:libjack # decoders - amr:libopencore-amrwb amr:libopencore-amrnb codec2:libcodec2 fdk:libfdk-aac + amr:libopencore-amrwb amr:libopencore-amrnb codec2:libcodec2 dav1d:libdav1d fdk:libfdk-aac jpeg2k:libopenjpeg bluray:libbluray gme:libgme gsm:libgsm mmal modplug:libmodplug opus:libopus libilbc librtmp ssh:libssh speex:libspeex srt:libsrt svg:librsvg video_cards_nvidia:ffnvcodec @@ -170,6 +170,7 @@ RDEPEND=" cdio? ( >=dev-libs/libcdio-paranoia-0.90_p1-r1[${MULTILIB_USEDEP}] ) chromaprint? ( >=media-libs/chromaprint-1.2-r1[${MULTILIB_USEDEP}] ) codec2? ( media-libs/codec2[${MULTILIB_USEDEP}] ) + dav1d? ( >=media-libs/dav1d-0.2.1:0=[${MULTILIB_USEDEP}] ) encode? ( amrenc? ( >=media-libs/vo-amrwbenc-0.1.2-r1[${MULTILIB_USEDEP}] ) kvazaar? ( >=media-libs/kvazaar-1.2.0[${MULTILIB_USEDEP}] ) @@ -213,6 +214,7 @@ RDEPEND=" libcaca? ( >=media-libs/libcaca-0.99_beta18-r1[${MULTILIB_USEDEP}] ) libdrm? ( x11-libs/libdrm[${MULTILIB_USEDEP}] ) libilbc? ( >=media-libs/libilbc-2[${MULTILIB_USEDEP}] ) + librtmp? ( >=media-video/rtmpdump-2.4_p20131018[${MULTILIB_USEDEP}] ) libsoxr? ( >=media-libs/soxr-0.1.0[${MULTILIB_USEDEP}] ) libv4l? ( >=media-libs/libv4l-0.9.5[${MULTILIB_USEDEP}] ) libxml2? ( dev-libs/libxml2:=[${MULTILIB_USEDEP}] ) @@ -225,7 +227,6 @@ RDEPEND=" opengl? ( >=virtual/opengl-7.0-r1[${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}] ) @@ -235,7 +236,7 @@ RDEPEND=" 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}] ) - video_cards_nvidia? ( >=media-libs/nv-codec-headers-8.1.24.2[${MULTILIB_USEDEP}] ) + video_cards_nvidia? ( >=media-libs/nv-codec-headers-9.0.18.0[${MULTILIB_USEDEP}] ) vdpau? ( >=x11-libs/libvdpau-0.7[${MULTILIB_USEDEP}] ) vidstab? ( >=media-libs/vidstab-1.1.0[${MULTILIB_USEDEP}] ) vorbis? ( diff --git a/media-video/ffmpeg/metadata.xml b/media-video/ffmpeg/metadata.xml index b2b0c975a987..b2f6fd8bc470 100644 --- a/media-video/ffmpeg/metadata.xml +++ b/media-video/ffmpeg/metadata.xml @@ -19,6 +19,7 @@ Builds libffmpeg.so to enable media playback in Chromium-based browsers like Opera and Vivaldi. Enables codec2 low bit rate speech codec support via media-libs/codec2. Enables runtime CPU detection (useful for bindist, compatibility on other CPUs) + Enables AV1 decoding viamedia-libs/dav1d. Enables EBU R128 loudness normalization filter via media-libs/libebur128 Use external fdk-aac library for AAC encoding Adds a text-to-speech filter based on app-accessibility/flite. diff --git a/media-video/gaupol/Manifest b/media-video/gaupol/Manifest index e987452bfc9e..49087320326c 100644 --- a/media-video/gaupol/Manifest +++ b/media-video/gaupol/Manifest @@ -3,5 +3,5 @@ DIST gaupol-1.4.tar.gz 524369 BLAKE2B 6f27ce3328339fc2f6248bb58d80965a5a26fed220 DIST gaupol-1.5.tar.gz 537279 BLAKE2B 1ba8644b49832ee80e61bf304b7978275064acbe2e5e733a991b280f947c4064f0d4f385055e580bd3aa2d9ee2291d64fd1ee4bd8a1ba4f8eaaaaf9a137085ff SHA512 48f3eda460c2fb3e4bdaf52c42645599f0d5ce8eae05f7a2a9c608192a27a8b86b83830584216dc73105968f544aeab30e171b2c176d9a3f5047e93510413b85 EBUILD gaupol-1.4.1.ebuild 1386 BLAKE2B 5ec40c5e0af3db14aa3453d7fe586ea0b346ecde6cc73f8d5f812279b23db7ca72915b386c78c719ca057f2f6a4a445c2673be4711d6d3ccfad6b26fc563b14b SHA512 b34e09c2ca5f21cdf6227d9ec0cc9836d004367686753d33ad4c0d7415a9456cf5325b0c3710e9da142640ca3c0a040037d69772bf878f0577ee7441fcfc2b3f EBUILD gaupol-1.4.ebuild 1424 BLAKE2B 95b4045fa111616491df258bee5542338e04209b7083fae27901b50255eaefe75be5c94cbe7d976e2b57365ed5f6d6a9287da586bd9971155a0d4cb88d73761f SHA512 1a74311606a5dfe5c8b827fa8ac01d258fbbdc2d9b635433c90a088ceb10994cfc3bdc229073fa5e47200ba3bb1726a4c6bcb385ac0366f93d4ab23452b54dcc -EBUILD gaupol-1.5.ebuild 1393 BLAKE2B 376bb109d6226149774fa7225046e6912f0504e0fc2fd27d5b9f5e2fb43dc5eb088d7fb56781ed89e0b750d8538007b4951217fb4a551ad47a83776762a7e3e6 SHA512 853000878c8bf4e8f3eb95f44e3becc716d2f684aff605751f2f921b585ca6d2fcb2e2503173d207bb302d7d8b4fbd6d510bcd26f5152bf7c5558f791f1a9c33 +EBUILD gaupol-1.5.ebuild 1392 BLAKE2B b1939fb0d1c6914d7de488436db8c16831cf2b6e44eaf56d2d7a4ae90f1abe006aa1575e3206317d627382608112ecda5a2d64209df87a35a9e5477a3aca0155 SHA512 b046c111deaf3a4d7e4df0444a0874603f473ceb9ca3672c956921d0fce33e373bea309e1c271229ec66c6660778d8e851e84fd6b10dac3f0195e058f0a143cd MISC metadata.xml 508 BLAKE2B 979a43569103cfe36a47d56ed16c15b7775d0a36d031d488ac064152b8d59115dc656e28a5eced25da13d9a3925be24114a760862bf043b88a89c70b8dc053e8 SHA512 1af2a5a287075a0668850c229a5c9dcbef51bbe64467516e37b870459266021d528435dbd5274e0d5abf7cf0fe2d4b8fb08f6cc470418c3b64e4da6b93dcc147 diff --git a/media-video/gaupol/gaupol-1.5.ebuild b/media-video/gaupol/gaupol-1.5.ebuild index eee42ccc6b2c..06098269cd4d 100644 --- a/media-video/gaupol/gaupol-1.5.ebuild +++ b/media-video/gaupol/gaupol-1.5.ebuild @@ -13,7 +13,7 @@ SRC_URI="https://github.com/otsaloma/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" LICENSE="GPL-2+" SLOT="0" -KEYWORDS="~amd64 ~arm64 ~x86" +KEYWORDS="~amd64 ~arm64 x86" IUSE="spell test" RDEPEND=" diff --git a/media-video/gnome-mpv/Manifest b/media-video/gnome-mpv/Manifest index 24f1947e72bd..7548df22aa34 100644 --- a/media-video/gnome-mpv/Manifest +++ b/media-video/gnome-mpv/Manifest @@ -3,5 +3,5 @@ DIST gnome-mpv-0.15.tar.xz 314960 BLAKE2B 9a12d090ae743fc723f83154bf212a84d7544f DIST gnome-mpv-0.16.tar.xz 320676 BLAKE2B ea92b94096b2bc13dd48ac54acec7aa19f23ffd53f40a90dd52fa7e9221a82bfc6159eb204eec98a1073d9ccd14ab4a4b8b380714098120deafaa4c3183d64f3 SHA512 b730cba7388e9c64014a17b7aa2bdeab344a80bcff46ed2f47566ef02f24e2b5b07ed3fbae65443dc7ae58b70bd03e065a4da6ab8860fb506bdaad8bbccc0fce EBUILD gnome-mpv-0.14.ebuild 712 BLAKE2B a41fd5844f2b88245de1e974286570ce8aadbc45e92bb0af5c94e404dafd544d7e86259e729a55e24fdf3e7a5606481f457611fb196bcb7674a85c6b9fcf9313 SHA512 6859f4194cc12387ffcaa097f8e3e8a2ae11ce4b760f141f8ca42936655f23e35eaa4ec7d5e66e82c592fa01d50802f4484c7a060411a937580a57775d5563b2 EBUILD gnome-mpv-0.15.ebuild 846 BLAKE2B d2c962cade1beded76926eaaf5a4a022eadcd88591d11efbea7109b00324af9bb23e6d8a88e92d97480b6f82ba610fa8a27d10294db51ff5b212407211fa3a77 SHA512 4997e87ba5b4427b83b7f3c136fa5379ebc92730d69756e20718e903a54defc9747253881790dc435b6d13c8d12c9e2476cac2ee741f08cc9a15305407772e20 -EBUILD gnome-mpv-0.16.ebuild 733 BLAKE2B e8fb15f9502d59ac547c1693205cb39cd9301ae096b6c3980b1b211a1733f8d64e49f8010281d7f5c338942bcffdb12051090c4ea2a8f9b2e82c808c4f9d5364 SHA512 54e5fae56c354b918e0ce4d4ddc1451cc80050fdee78cd6e95d3740fc800b8f3432de0dd3f79c79b3a39aa3ea1ba2f844bc2ef0a8ebea2302e18951ec373e37a +EBUILD gnome-mpv-0.16.ebuild 732 BLAKE2B 878351a69845c4f0a1549d105de27159190386cbbefe43089768676d4f4b351174dd1eb573748a5bfcf26f4653fc3cd3c0894ae06304e1e6566ad3bc6a646155 SHA512 cd4fcde6d67624779e1c819e032c017ceb86678be6a0d3cf8100e026114e36b11259eaaa1a9d795310ecd4badc93d399b9456352166ff37e68e1f0ce11d50281 MISC metadata.xml 240 BLAKE2B 9fdc2353993b08138d11aacc71a6026e52430fe7b4b4d0a195dd03a5334b6c18dba7a88279e18c6b97cfbd1e0c818f5310b5d1419e77b3ede373c62321f4c2e6 SHA512 3b569f3b00bb1b30eb7c5f2e3c372f3b87d96cb333d36857973c85d8b5da1f480918ad7f3b1ed9cdbe7db6bcd1db35b454d34559a430c28008b5a1dccc65776b diff --git a/media-video/gnome-mpv/gnome-mpv-0.16.ebuild b/media-video/gnome-mpv/gnome-mpv-0.16.ebuild index 51627b53cbe5..ab9a3c03e455 100644 --- a/media-video/gnome-mpv/gnome-mpv-0.16.ebuild +++ b/media-video/gnome-mpv/gnome-mpv-0.16.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://github.com/gnome-mpv/gnome-mpv/releases/download/v${PV}/${P}.ta LICENSE="GPL-3+" SLOT="0" -KEYWORDS="~amd64" +KEYWORDS="amd64" RDEPEND=">=dev-libs/glib-2.44 >=x11-libs/gtk+-3.22.23:3 diff --git a/media-video/mjpegtools/Manifest b/media-video/mjpegtools/Manifest index 6bdd74c21ed1..8b09d7b962b2 100644 --- a/media-video/mjpegtools/Manifest +++ b/media-video/mjpegtools/Manifest @@ -3,5 +3,5 @@ AUX mjpegtools-2.1.0-pic.patch 2298 BLAKE2B 9babd547b6c631845964e7ab6cb929d0b704 AUX mjpegtools-2.1.0-sdl-cflags.patch 387 BLAKE2B ad8065afdf164335e77adf972b21c6fd7108dba3f21a56006eede02a650f7f0728950c36f9e73dbedd9713eb69f8dab010c547c472c02abd8642dc518cc43621 SHA512 67b43ab22d1358755a6e109b8eaf21b14058c6a4f4dc511e27162c4205274eacbe4fb9016a5c8a3938ca071f6d4f1898801ed3ab0571b011aab170771a1b7602 DIST mjpegtools-2.1.0.tar.gz 1844336 BLAKE2B 90ae51c81e18708132f26c1fb002128193168366542cadc15060ad52f664a5f90770b3039ada2a1777eab5fec9743fb24c65083de913ebd72b23dd55f6b25741 SHA512 10d3288f47d7cc4de87fa63f65e0fd4bd0a9af95db77155eecccecae7a7e60ebab83eaec44cf7a2c3d9e627f0cc086eda208abee1a7a74cbf3f85e87bb979ac5 EBUILD mjpegtools-2.1.0-r3.ebuild 2873 BLAKE2B a40d80911829ee07b60582fb4c964469d522d123d41f16644fc43f3da5e231c60bcf767291663b66a36c6dd600e07e4fd61f17d842673749d9d0c2d4b9471398 SHA512 bc1c60e424c841aaad9538a3bdb038341e560cf98ae2b4f93443c4e2e9cdc8b9325efda3980b34495279f3a0cbb9af1db863422ffdd0d496d9ffafce42d2dd36 -EBUILD mjpegtools-2.1.0-r4.ebuild 2894 BLAKE2B 085bc7df6a9f467219d244ec936098ace0fc87f6d582d54829f55129f552beca18a39ba6ac3d37a4bd24027e570f0df8845faf2293b8cb3fdd5e6fd028efc259 SHA512 9f01a428d20a8489bc79def3bde84494df0687495a0473ca300b9bede8e0d409a4f574c0bc70a24ca5a32ede4947a1f99c50e9bd50910b194bf2f19a302280da +EBUILD mjpegtools-2.1.0-r4.ebuild 2888 BLAKE2B d6af8d9d61375ce5b5b7b726002c7cc8abb2ceca5dade17073808628df7549b39ffb808b3b26019794564558820ed72b22a6de41d121e47ac60ddb5c0ccf9766 SHA512 237eba0f0e42632199a95a46d9dac0c9aad6295b653a96ce1c81ed002074af38776faef3c6d5b68981bd8eb102921db6ab6dabb31788676850debdc6d7f50eba MISC metadata.xml 537 BLAKE2B 9a038894ff7da6df6f8746be16e0a0f9e0586321eba052a95afd038d2625110d7dbcd2961ac8de8c14ab2fd74ccb2eb3881d64c8b96c97936e92173e2b62a67b SHA512 f3360892e77c064d2062bb963b91f031587ebed6a31b8ba2c698d969cf88998daec9ef910689f477e36921df60d2aa8bdfbe569dda701b0e375d75acfd31d79d diff --git a/media-video/mjpegtools/mjpegtools-2.1.0-r4.ebuild b/media-video/mjpegtools/mjpegtools-2.1.0-r4.ebuild index 3ac82456dab3..0b1c14cf658e 100644 --- a/media-video/mjpegtools/mjpegtools-2.1.0-r4.ebuild +++ b/media-video/mjpegtools/mjpegtools-2.1.0-r4.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2018 Gentoo Authors +# Copyright 1999-2019 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -11,7 +11,7 @@ SRC_URI="mirror://sourceforge/mjpeg/${P}.tar.gz" LICENSE="GPL-2" SLOT="1" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd" +KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ia64 ~mips ppc ppc64 sparc x86 ~amd64-fbsd" IUSE="cpu_flags_x86_mmx dv gtk png quicktime sdl sdlgfx static-libs" REQUIRED_USE="sdlgfx? ( sdl )" diff --git a/media-video/mkvtoolnix/Manifest b/media-video/mkvtoolnix/Manifest index bae591258aed..6eca2875afe3 100644 --- a/media-video/mkvtoolnix/Manifest +++ b/media-video/mkvtoolnix/Manifest @@ -1,8 +1,10 @@ DIST mkvtoolnix-29.0.0.tar.xz 7051380 BLAKE2B 8f5694abdbeb95c13e3a97740e3e81c02f1408116f1bdf96e8199bba0408e03278cac0bee0506b4b0aedc0a0417d61e13f31af716942faa9dbe61d16eb1d0761 SHA512 bfb5e31fdd43dbb1c3a54a9b82af414abd43f8edad1cc87e5118f8c1781185470152163fda828303c58db97df27c8037b7fa64e2077c69e3204d5080f0248dae DIST mkvtoolnix-30.1.0.tar.xz 7274296 BLAKE2B 0b0c7a9954269d0c6f071bd808ddf18eaf2d004dc2d8cf209f7021624458a9a29a7f705ad08446bd769b3a4e73732a3b2a269385868041fd887eff1d92c07558 SHA512 0c29a7a246b7e7ddccbb7ec51d7dd45d06530e01d7f1c8fa901b1a94dc6c7d9db0890009f200c3bebee572e24c826f7c05a53c16e8d11cfac2c68a3d13b96a53 DIST mkvtoolnix-31.0.0.tar.xz 7282492 BLAKE2B 1c0d4a6de81ddb1953e3f7997ef62ffeeb9562cacaf5df33320cd8f2263d6303986c3a1a129e9b6ac986efd4a290046aba41e38ae1ed83e7eec00dab099a19fc SHA512 085bc7d5a2b2e692d584bef5f31aab8dc25883cc93d9f2b2c35ea6356d64536763b6e9f7cef2dbaf1b789e73c05cb5f9e76ce76c54f034aa9d46c30983d1a5b7 +DIST mkvtoolnix-32.0.0.tar.xz 7282928 BLAKE2B cf051474c3e4735f5c3fdda44bd9065539ea6333ad4683f61b1a7d8ecc6fab2e45bd0ae37f82acdbc11c01704c319356d2baa9fdfe1e8e48ffcf65b05f484836 SHA512 a209360fcad3164ebf127b7a54542b2b791318cef1ac8acbb24e64458bd9fe693ea6fa2b44b6e85504decab9668296637d9d4ce706effcf6a9f0d7bdea64793a EBUILD mkvtoolnix-29.0.0.ebuild 2917 BLAKE2B 0a6f43f3976acee9843c486ecfc2901a585b56cdc5c1f3edfff86322e356c58cefb7ac41e42df32e2cb9cafb14d8bc5d3868f30363538a6464bab073d08225d3 SHA512 4604578ff5449024a7333a6d1613d1fa558d24009e4c1f73a05ece43413f76e62613f8436536815e0062778a73d5921646a3bf37429ac43fdb0167d6fabc243c EBUILD mkvtoolnix-30.1.0.ebuild 2884 BLAKE2B b5e5337a678e01457f2fc967f077c757e3b73bffdbcfbad49cc4479c71e25e536232d2ad47ad68ca5e15c0cdd311a2ee9400eefdbe7320aa4a5906dcfc3e44a8 SHA512 751ea92e2107310d27ddad995305878da9a465318a6bbf8b3acb4940f008a54a1643661430a20c65b430963481c7097f3e6a5e6b7641222cae0ba19ffe9d30f4 -EBUILD mkvtoolnix-31.0.0.ebuild 2884 BLAKE2B b5e5337a678e01457f2fc967f077c757e3b73bffdbcfbad49cc4479c71e25e536232d2ad47ad68ca5e15c0cdd311a2ee9400eefdbe7320aa4a5906dcfc3e44a8 SHA512 751ea92e2107310d27ddad995305878da9a465318a6bbf8b3acb4940f008a54a1643661430a20c65b430963481c7097f3e6a5e6b7641222cae0ba19ffe9d30f4 -EBUILD mkvtoolnix-9999.ebuild 2918 BLAKE2B 75f39a5be50cfad1ef9c21cd11691aecc53071e2b9167f3f5f8b5b9eba6431ce876a56048abe7bd3818df8f8a25be5035f7c4dac55a7ec6536e43cbd2728d018 SHA512 3d2048d6b89efe936fafa3860e349c5faa0656837715cc0f6ac25d7404d0830445d79dc93ca824b54b6db8bc52cd0ee90f9f3262fe49cbebe5d2302d8f10be35 +EBUILD mkvtoolnix-31.0.0.ebuild 2887 BLAKE2B a5c9ef6509c2f9ddfd3c5ae4626a7354bfcc856df0873d5a4f651c15a00cfb636d996ce294ba114a10ed4b73a25f280bf7038024d91bf64ffbe99630060fdf58 SHA512 8ecd511e9d8754ba0972f6e9a910c842c905583958818e916bd3c2550837847e377013d6cf5732dfb9ccb6b29aff6ad7948d719e656a495bdebdc7ec785fcde9 +EBUILD mkvtoolnix-32.0.0.ebuild 2887 BLAKE2B 9b5de5cda6e7f841f9181db1b49f0a225813de08d3423a292093c32ff8932ab1dfc768560225b41b895acc31c47c743c1d712f9c6f0a83a562c9b296eb4d6376 SHA512 55c5d2ead89d902a1d7fe6e7dcd49448af5ba0dc3616c56ba6cb9fad8f6448d6bdc650edff8737f59ec6581fad38e9731292b8b767349c5c0d8da94a8ca39d3d +EBUILD mkvtoolnix-9999.ebuild 2921 BLAKE2B 94cde7706e5e71c1d6da9a6ac26df789884b0707f90c6963ae98ea0e49fcd58f222ac46be1427104208e9a96530ee846ab183cb089b3735ecf71076cf34c91eb SHA512 a83e0f2ed548f9b021368c98306ee50dfd16174e081b87aa15988a18168522cc731d01e73b9181de3141fcdcae23a0b15d458af2608886cd4778cd8c0f150947 MISC metadata.xml 255 BLAKE2B 84855d12acedab301e8e709820ef74f658689209ce914cad2c71d11f4248a7d3356109d93573ed675698031eca1e0b6e0372a61c2a43a9f09840e295f94b74ef SHA512 92b56f4d9c86ad69341e67e8cc74db0bd068e45afdf2f3d3f9ea410fc5e64f3476143b656f2cb3d26b97ae01a967d71766952eba22e2278aab907c20b00ae0e9 diff --git a/media-video/mkvtoolnix/mkvtoolnix-31.0.0.ebuild b/media-video/mkvtoolnix/mkvtoolnix-31.0.0.ebuild index 01b2b95c89bb..59cbce24aca9 100644 --- a/media-video/mkvtoolnix/mkvtoolnix-31.0.0.ebuild +++ b/media-video/mkvtoolnix/mkvtoolnix-31.0.0.ebuild @@ -40,7 +40,7 @@ RDEPEND=" dev-qt/qtwidgets:5 dev-qt/qtconcurrent:5 dev-qt/qtmultimedia:5 - app-text/cmark + app-text/cmark:0= ) " DEPEND="${RDEPEND} diff --git a/media-video/mkvtoolnix/mkvtoolnix-32.0.0.ebuild b/media-video/mkvtoolnix/mkvtoolnix-32.0.0.ebuild new file mode 100644 index 000000000000..8837542e21d4 --- /dev/null +++ b/media-video/mkvtoolnix/mkvtoolnix-32.0.0.ebuild @@ -0,0 +1,130 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +inherit toolchain-funcs versionator multiprocessing xdg-utils qmake-utils gnome2-utils + +if [[ ${PV} == "9999" ]] ; then + EGIT_REPO_URI="https://gitlab.com/mbunkus/mkvtoolnix.git" + inherit git-r3 +else + SRC_URI="https://mkvtoolnix.download/sources/${P}.tar.xz" + KEYWORDS="~amd64 ~ppc ~ppc64 ~x86" +fi + +DESCRIPTION="Tools to create, alter, and inspect Matroska files" +HOMEPAGE="https://mkvtoolnix.download/ https://gitlab.com/mbunkus/mkvtoolnix" + +LICENSE="GPL-2" +SLOT="0" +IUSE="debug nls pch test qt5" + +# check NEWS.md for build system changes entries for boost/libebml/libmatroska +# version requirement updates and other packaging info +RDEPEND=" + dev-libs/libfmt:= + >=dev-libs/boost-1.49.0:= + >=dev-libs/libebml-1.3.7:= + dev-libs/pugixml + media-libs/flac + >=media-libs/libmatroska-1.5.0:= + media-libs/libogg + media-libs/libvorbis + sys-apps/file + sys-libs/zlib + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtdbus:5 + dev-qt/qtgui:5 + dev-qt/qtnetwork:5 + dev-qt/qtwidgets:5 + dev-qt/qtconcurrent:5 + dev-qt/qtmultimedia:5 + app-text/cmark:0= + ) +" +DEPEND="${RDEPEND} + dev-cpp/nlohmann_json + dev-libs/utfcpp + dev-ruby/rake + virtual/pkgconfig + dev-libs/libxslt + app-text/docbook-xsl-stylesheets + nls? ( + sys-devel/gettext + app-text/po4a + ) + test? ( dev-cpp/gtest ) +" + +DOCS="AUTHORS NEWS.md README.md" + +pkg_pretend() { + # https://bugs.gentoo.org/419257 + local ver=4.6 + local msg="You need at least GCC ${ver}.x for C++11 range-based 'for' and nullptr support." + if ! version_is_at_least ${ver} $(gcc-version); then + eerror ${msg} + die ${msg} + fi +} + +src_prepare() { + default + [[ ${PV} == "9999" ]] && { ./autogen.sh || die; } +} + +src_configure() { + local myeconfargs=( + $(use_enable debug) + $(usex pch "" --disable-precompiled-headers) + $(use_enable qt5 qt) + $(use_with nls gettext) + $(usex nls "" --with-po4a-translate=false) + --disable-update-check + --disable-optimization + --docdir="${EPREFIX}"/usr/share/doc/${PF} + --with-boost="${EPREFIX}"/usr + --with-boost-libdir="${EPREFIX}"/usr/$(get_libdir) + ) + + if use qt5 ; then + # ac/qt5.m4 finds default Qt version set by qtchooser, bug #532600 + myeconfargs+=( + --with-moc=$(qt5_get_bindir)/moc + --with-uic=$(qt5_get_bindir)/uic + --with-rcc=$(qt5_get_bindir)/rcc + --with-qmake=$(qt5_get_bindir)/qmake + ) + fi + + econf "${myeconfargs[@]}" +} + +src_compile() { + rake V=1 -j$(makeopts_jobs) || die +} + +src_test() { + rake V=1 -j$(makeopts_jobs) tests:unit || die + rake V=1 -j$(makeopts_jobs) tests:run_unit || die +} + +src_install() { + DESTDIR="${D}" rake -j$(makeopts_jobs) install || die + + einstalldocs + doman doc/man/*.1 +} + +pkg_postrm() { + xdg_mimeinfo_database_update + xdg_desktop_database_update + gnome2_icon_cache_update +} + +pkg_postinst() { + xdg_mimeinfo_database_update + xdg_desktop_database_update + gnome2_icon_cache_update +} diff --git a/media-video/mkvtoolnix/mkvtoolnix-9999.ebuild b/media-video/mkvtoolnix/mkvtoolnix-9999.ebuild index 3036925897dc..2bc8fa7624cf 100644 --- a/media-video/mkvtoolnix/mkvtoolnix-9999.ebuild +++ b/media-video/mkvtoolnix/mkvtoolnix-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2018 Gentoo Authors +# Copyright 1999-2019 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=6 @@ -24,10 +24,10 @@ IUSE="debug nls pch test qt5" RDEPEND=" dev-libs/libfmt:= >=dev-libs/boost-1.49.0:= - >=dev-libs/libebml-1.3.5:= + >=dev-libs/libebml-1.3.7:= dev-libs/pugixml media-libs/flac - >=media-libs/libmatroska-1.4.8:= + >=media-libs/libmatroska-1.5.0:= media-libs/libogg media-libs/libvorbis sys-apps/file @@ -40,7 +40,7 @@ RDEPEND=" dev-qt/qtwidgets:5 dev-qt/qtconcurrent:5 dev-qt/qtmultimedia:5 - app-text/cmark + app-text/cmark:0= ) " DEPEND="${RDEPEND} diff --git a/media-video/mplayer/Manifest b/media-video/mplayer/Manifest index 157407f78d19..6ef4e4c6ef4a 100644 --- a/media-video/mplayer/Manifest +++ b/media-video/mplayer/Manifest @@ -9,6 +9,6 @@ DIST MPlayer-1.3.0.tar.xz 13278984 BLAKE2B 4e2d67f6fda893f3b200bc92598c23410a2a3 DIST font-arial-cp1250.tar.bz2 249705 BLAKE2B eb4366a110d917dc975b8add168ab43b1e8a0db7342647f69f5421fc1170719015c97ffa770e89892cbb4cee8e5b2fb74a4772c8f6cbef9606ee12c3746d78c9 SHA512 4f77ff5ceb8ec6e5d9f8f34d8950a6a6276d1fd5a947772fcbdb6554988b1ea665c12b82f45164f91fb7bd08000cb4afc26fa35beb4c760464160e22b9b8c340 DIST font-arial-iso-8859-1.tar.bz2 234242 BLAKE2B 0671854e1a257d27b502affb59de681942a93990d3ac2575bbf1a6dd9eef026969f2f9ce4e9c11a68ea3d8aed48063f826a1e153f7468437a39791672c92a5d0 SHA512 a1d03b6f09c48f48b7733f3bc0402ceab239a9abf88b860d852ea9fe69b4da690208a79d6f29d30204f5b37becf10672e8e8c0bfef201846d80ec54df617d029 DIST font-arial-iso-8859-2.tar.bz2 222208 BLAKE2B 94b1a04672bf9b4b20a0e6981591e761f751bd637deddcb801855296c525bf3b5e8feb1cb11cef282c0269f2c963ded22846089076e7e6763f258b8a932af454 SHA512 5671e628303fd816f64a51ad10e2f4dd9c3dc1b34c379a2ecf489b83931db7af668aaa4e00e96a00cacd63ed98daeae6b6a4d5925edfb06fc98d3a923f70257d -EBUILD mplayer-1.3.0-r5.ebuild 17117 BLAKE2B f9107395e9b1f6810b6c885e5a9f27ba6f1ee5a562e66f4f57b49260921ecfc2c7239cbc171b243d86c72583ca3842819ab1dd01288ceedd704f2681fa88cbbf SHA512 6ed47ef75d7a64f12108af9cfde00ff180c05511af5b5920c345a3c6efb5956a57aefef76ac84e24983b0c54eaceb2a09e53d09d2657edc94b3fc4b0dbcf3d7d -EBUILD mplayer-9999.ebuild 16817 BLAKE2B 770e2b8169b87d1688fb5fea4e15a9baadf4668155aa5b3bf0d3720ba5307c1b938f0085a810f66098831b714f6171d69eb0bf7d3a8ace02a47720675c4e9b9a SHA512 155bccb39c5b5c5ccc7a2b2db6b27bd3d8f9e32ccdda3fa73f0e5fe906d4b0cade9610e19f09d2f0ddebb8f7b6a884c51559b584d853e8bf91796fb6b4b17765 +EBUILD mplayer-1.3.0-r5.ebuild 16978 BLAKE2B c5ce5f7355598be4c87cb8a59176ca51654236a68cb851a115eb3d3736b62b7f4c8718fc07d69cb606fcd42cd2beb4e4fe33bbd816115f3e30509121c7b797ee SHA512 076d0291f12002467066068e5722436c8bcbc29dbe88974e7495f819184b1abc0cf7bae538a6c6333f6d31cd74f899135096146d2303f5261efc5c62fd125496 +EBUILD mplayer-9999.ebuild 16678 BLAKE2B 01753aa6746ee12944db1e880b07ed95a96f0331e9d071bb6fa96499d4ae86049cc71cfed21e7155379a0cd834f172917e402731827b5ee15cfe9f280fd0ef79 SHA512 8771cdee24aafe1f65dedc6cfd0dfdba7dbd2b4d7a6087c175a30dbdcf6f52899506dde3dcd498361815acbbfff543f9f8659c5f8a029bad6a4298b60086ff17 MISC metadata.xml 2457 BLAKE2B c0d722886466f46e09a28b2384a6b8ccf15bb080b69b513500633a03a1fc784fe85a167824879c9dde6417bde4852c4ec1f30a444e4d520b7d47315cfa4cc91e SHA512 578de48a26eddf8d8eb522141df02d9c948d97e1334c94897cad5a4a9a386e8207c90e6d931e1d2defe20d34504c0d4f993746f1cc0907cea1ed2740d02b49d5 diff --git a/media-video/mplayer/mplayer-1.3.0-r5.ebuild b/media-video/mplayer/mplayer-1.3.0-r5.ebuild index b7f1b8d3f164..b3c344f98b88 100644 --- a/media-video/mplayer/mplayer-1.3.0-r5.ebuild +++ b/media-video/mplayer/mplayer-1.3.0-r5.ebuild @@ -19,7 +19,7 @@ radio rar rtc rtmp samba selinux +shm sdl speex cpu_flags_x86_sse cpu_flags_x86_ tga theora tremor +truetype toolame twolame +unicode v4l vcd vdpau vidix vorbis +X x264 xinerama +xscreensaver +xv xvid yuv4mpeg zoran" -VIDEO_CARDS="mga tdfx" +VIDEO_CARDS="mga" for x in ${VIDEO_CARDS}; do IUSE+=" video_cards_${x}" done @@ -425,18 +425,11 @@ src_configure() { myconf+=" --disable-mga --disable-xmga" fi - if use video_cards_tdfx; then - myconf+=" - $(use_enable video_cards_tdfx tdfxvid) - $(use_enable fbcon tdfxfb) - " - else - myconf+=" - --disable-3dfx - --disable-tdfxvid - --disable-tdfxfb - " - fi + myconf+=" + --disable-3dfx + --disable-tdfxvid + --disable-tdfxfb + " # sun card, disable by default, see bug #258729 myconf+=" --disable-xvr100" diff --git a/media-video/mplayer/mplayer-9999.ebuild b/media-video/mplayer/mplayer-9999.ebuild index 8d1ad1c2a300..62db816aa75e 100644 --- a/media-video/mplayer/mplayer-9999.ebuild +++ b/media-video/mplayer/mplayer-9999.ebuild @@ -19,7 +19,7 @@ radio rar rtc rtmp samba selinux +shm sdl speex cpu_flags_x86_sse cpu_flags_x86_ tga theora tremor +truetype toolame twolame +unicode v4l vcd vdpau vidix vorbis +X x264 xinerama +xscreensaver +xv xvid yuv4mpeg zoran" -VIDEO_CARDS="mga tdfx" +VIDEO_CARDS="mga" for x in ${VIDEO_CARDS}; do IUSE+=" video_cards_${x}" done @@ -419,18 +419,11 @@ src_configure() { myconf+=" --disable-mga --disable-xmga" fi - if use video_cards_tdfx; then - myconf+=" - $(use_enable video_cards_tdfx tdfxvid) - $(use_enable fbcon tdfxfb) - " - else - myconf+=" - --disable-3dfx - --disable-tdfxvid - --disable-tdfxfb - " - fi + myconf+=" + --disable-3dfx + --disable-tdfxvid + --disable-tdfxfb + " # sun card, disable by default, see bug #258729 myconf+=" --disable-xvr100" diff --git a/media-video/parole/Manifest b/media-video/parole/Manifest index fd09032b73fe..9b8236d34c8d 100644 --- a/media-video/parole/Manifest +++ b/media-video/parole/Manifest @@ -1,5 +1,7 @@ DIST parole-1.0.0.tar.bz2 900499 BLAKE2B d6a1eb21846426781a712f33b7cf8f412b17b9a3e02b1ef15b6ff742687efc70a3e3f0ae8124ed2226a1cf00022c7ef0650c8e1c1b6e3279b111891e8c3e651e SHA512 0581fed93d2a09a3d9ec9cf1bb68a298ccd47676b22d0824495136ee9d785290b8465af8c12b5ecd34a46936f7433bf96dd559e6252a8f1af46c0e2f9256c864 DIST parole-1.0.1.tar.bz2 903754 BLAKE2B 2bd8a8892c04bc145d7ba0bc08c29ad1f9c4507cce533d554952553e46c408e9f293a19820790541d0a494052ac6024d415bfef4864fc09b8d851664688ace3e SHA512 026ece62e6a8175976e7ce218edbd6955a0cdb5074996adad5bed3e536f90108e4d1106f22edcb06d213fb09dd47b04f81bff94f4534710b61f0f53cb0395f72 +DIST parole-1.0.2.tar.bz2 915511 BLAKE2B e6fa116cae5c015a90b4a1d04df70f006ad59dfdb5d849b8ae8c3fdc0665e48790739c82bdb7c35c70f34548b9bee3dcac62f29e28562663d46b10a3a080f13d SHA512 d7e989af7f9dab14080e62bd656a2858d8536a056ba82b5d5ac7d26a7d898f478b74c1ba4371779624691b7f42b695580ad53cfb15da0a4dc209d7570c12a66d EBUILD parole-1.0.0.ebuild 1423 BLAKE2B 2cf11db0e9ceb829b290ccf774f9fb9cf94a0af47f8d896e91cd5660d24f61f321fe4d9b5ee7381138efb739263ae71beae28a07352a700b5f8d781f6e882006 SHA512 f7a862aca1db2e6b234d5276f0fe6ea9febd3b7fef718e758558494dbfa3de1aa5302325431b8601702593ec857a7d8beea3ecb93f29e1716172ecf13f349b38 EBUILD parole-1.0.1.ebuild 1442 BLAKE2B 7c6e7f4209136a9b2215bae72574652e0c54047b7a65aff05708f41466799499a3b82a514b54e0ea929a2c0501c6e4afb6ef01259cc1b6e1856e46868cd1d880 SHA512 eebb71d36da7b352c74a3ab7c18159e13de9aef93775cff90b43ace73ab8d7bdbe2aad5621cb7f8fa935c5de7d00216496e13f619f5f21e2f53e3fdd13c69434 +EBUILD parole-1.0.2.ebuild 1444 BLAKE2B 928756a4fb9ad566657266178425bd2d92f983addea0ff360eba32d307514bba50410bf5471d3e3fa0b9fa6b5c33d9beb1a35638185f6955f9c888cd864992d1 SHA512 db929065e2c46e0a060c4e2647cf7b21674ffd42711f147fcc97db42f9edd0b41abf3737be08dc9fcb330c126241a9ccefa8488717129a3e4c4e7023dba49d4a MISC metadata.xml 241 BLAKE2B 19a1f7371ba9451232b7795e806499d1de2aba44dc9864bf1c8c72f6074af18387f6091c891f84c402c70e52f8502bc7a9a937828d63991402d2f0d17b247782 SHA512 97a8057b496da7d18b75e0cec2f5de16f7f16187776c3d7134ade6b0be2539c5f0e8de7ce43c2a4fc342ca9c3dd83a74c194a506ad28221c260dfa8a4eadb1e8 diff --git a/media-video/parole/parole-1.0.2.ebuild b/media-video/parole/parole-1.0.2.ebuild new file mode 100644 index 000000000000..f14dfea94f96 --- /dev/null +++ b/media-video/parole/parole-1.0.2.ebuild @@ -0,0 +1,64 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit gnome2-utils xdg-utils + +DESCRIPTION="A simple Xfce4 media player using GStreamer" +HOMEPAGE="https://docs.xfce.org/apps/parole/start" +SRC_URI="https://archive.xfce.org/src/apps/${PN}/${PV%.*}/${P}.tar.bz2" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~amd64 ~mips ~x86" +IUSE="libnotify taglib" + +COMMON_DEPEND=">=dev-libs/dbus-glib-0.100:= + >=dev-libs/glib-2.32:2= + media-libs/gstreamer:1.0= + media-libs/gst-plugins-base:1.0= + sys-apps/dbus:0= + >=x11-libs/gtk+-3.20:3= + x11-libs/libX11:0= + >=xfce-base/libxfce4ui-4.11:0=[gtk3(+)] + >=xfce-base/libxfce4util-4.11:0= + >=xfce-base/xfconf-4.10:0= + libnotify? ( >=x11-libs/libnotify-0.7:0= ) + taglib? ( >=media-libs/taglib-1.6:0= )" +RDEPEND="${COMMON_DEPEND} + media-plugins/gst-plugins-meta:1.0" +DEPEND="${COMMON_DEPEND} + dev-util/glib-utils + dev-util/intltool + sys-devel/gettext + virtual/pkgconfig + x11-base/xorg-proto" + +DOCS=( AUTHORS ChangeLog README THANKS TODO ) + +src_configure() { + local myconf=( + # clutter backend does not work with new GTK+3 versions + --disable-clutter + $(use_enable taglib) + $(use_enable libnotify notify-plugin) + ) + + econf "${myconf[@]}" +} + +src_install() { + default + find "${D}" -name '*.la' -delete || die +} + +pkg_postinst() { + xdg_desktop_database_update + gnome2_icon_cache_update +} + +pkg_postrm() { + xdg_desktop_database_update + gnome2_icon_cache_update +} diff --git a/media-video/pitivi/Manifest b/media-video/pitivi/Manifest index f1837fe2a7ae..d1d5d9cc7d1d 100644 --- a/media-video/pitivi/Manifest +++ b/media-video/pitivi/Manifest @@ -1,7 +1,10 @@ AUX pitivi-0.97.1-optional-tests.patch 677 BLAKE2B b0f75f33948cdacb2b73678bc580d3f7ee8ae224e008b7d92629b0a7b7e6991a98cb09696748240c7314719559baf20d2eec4a9eead09571a57dfc06302a2418 SHA512 a56b8e67410301e83a5559481ded4c50fcc81b8ba148c936623d36e59c9a8db3b6215adfb25f48e75edc821b4d8befdb023da0c15dc8b998531bc7551946c5bd AUX pitivi-0.98.1-optional-tests.patch 742 BLAKE2B c85f9002504f9314ae4a251d3ecbb8c2e4e70cb217e9328465015f2c3e06436d50a327c91cd5b686a2a765ceb46ec7fc0dfab998bfa96d985cf4855a4cd14919 SHA512 fce5ae7ac4fdd4c340b233529564e20da1dd965261cc2c79d3368ef83ac23931cdee6b492e59a628beaaa25362b81a604ec5bd7bb6270bdb72c15dabb83feac2 +AUX pitivi-0.999-optional-tests.patch 638 BLAKE2B 7d43b76384250b091908369ed274d93d3dde9365df1a6fb31d30bcb35c824cd9dfae8802346ee3019625a83cf4fcf9a249cecae9f670594b1d7f9b73c42f4efd SHA512 d564ab01b702bf30486c3fa947fa62ef9021b00816f3d2759ace16590e3b4ea3d6423ef4f41acc78bf857c2d54a4402fd8da8a4a14762067b26f25396a216e1f DIST pitivi-0.97.1.tar.xz 5096672 BLAKE2B 010b7ef80e0b57f83fe4e7d201a2839f65e2c8b62019d4271cd0d6d49edb44a5083024abdf13e735f94d7e681a77ef45e1d876cf6e5c20e6cc1b1876da5b3a99 SHA512 be5fcf5148349f685f0ee23a82b36d90fe0b7ff6d1d8cdcaf73272b8e5c29ddfe1d6c21353eb95f2d786fe4922a93c747403e5e27141d815f5b46f846a1d95ba DIST pitivi-0.98.1.tar.xz 5112280 BLAKE2B 9269163a5c964a6a2b3fd094262594a38bfff4dd052ea0f3673f2ac195f197eb9b888de673e62f884137d056fba2b853d11cf7300e2f81d71c6e49402350cc40 SHA512 b6530b1b5429c4379699d7492c31ec60ddc514c94a003fe240f7e390b6349093d2f4f72abb1edb4253bd938620c73dfb361abf21915d36ff3b75332e8612bcb3 +DIST pitivi-0.999.tar.xz 12296928 BLAKE2B 16736fef4f2d16c02b64f8eba56f8c9ddb26f49742ee577da4e4c47077f8d5d71ce653dba366a041ba523153532728c5eb37cb2b76e11e9c51827efb990bd99d SHA512 663db84a00634f0e83f0c1dd80a4f3a6603a50826905adb24fdd567c6e8bb58e20de04c7753fa04a36692cdcf5bbbcc9a87327fd3b56ebb70caffcff13835fc8 EBUILD pitivi-0.97.1.ebuild 2570 BLAKE2B 8602f794ab1d0c6c27142d13404f348a4bbaab4767046ead9c44280c932ca586e060a7ef4c9d5ffad14edc14f1572473cdcc7c5a15e79c945f71e2de2edf36d3 SHA512 736396c684b3f935a90adf744eb33887679a087f43dd95635f02c5e91151b370d9d0af47ae382f865357e10dd395fa994b5cb2caf1d767980cb3563e20107c9f EBUILD pitivi-0.98.1.ebuild 2289 BLAKE2B 7e7dfd225d2e4873e3fab0aed4c92835027f628a883fbc02f4dc0ce076b72ec15c7ec51ccd691297d52ea11dd7089588fc32eb878e81ba432e3823c53c291d00 SHA512 e8b7e9f741c44db639f5f038bfb3a0a53bd01dd3e6ea2d67922660775c472ede74f508052ed19cd4b7fab0b3fcd9b2508255207e2b01837e42f9396f0c8283c5 +EBUILD pitivi-0.999.ebuild 2336 BLAKE2B a0e226f69b451d3438585a8a90343298ed19f88b4f7c5c42f214059cb77e6ad6882206cd82b00921c0aeb7c336a1cbe160c39b5487bdf89cb9345650c09d3c9e SHA512 d3c187147b56ef90b2e2a6d33cb02b0c5e2b54995f364d2bef7a2fb68e15f85c82aa9539ca66bc47f451cb7af28a5c88503a942985c87a3b4dd4efb106be7e26 MISC metadata.xml 379 BLAKE2B a4f21a8cd6e5f4b09d1a89e426610108ab92ba52ef432d1780d100e76e43dda198cee09f105aec83994d4d1fa701be6c33a5981253b6c38b8ec888da08b5975a SHA512 30023299fba3c7c3743e24223d36366e7b59b01540a874ff432b8431ab29b240fdcd4ac4066b228af5421b009cfe4f67fdb69f7d1030c0fa409a4d545ffd43d1 diff --git a/media-video/pitivi/files/pitivi-0.999-optional-tests.patch b/media-video/pitivi/files/pitivi-0.999-optional-tests.patch new file mode 100644 index 000000000000..50a62188f8e3 --- /dev/null +++ b/media-video/pitivi/files/pitivi-0.999-optional-tests.patch @@ -0,0 +1,18 @@ +--- a/meson_options.txt~ 2018-08-29 15:33:20.000000000 +0200 ++++ b/meson_options.txt 2019-03-31 13:14:19.542837289 +0200 +@@ -1,2 +1,3 @@ + option('disable-help', type : 'boolean', value : false) + option('build-gst', type : 'boolean', value : false) ++option('enable-tests', type : 'boolean', value : false) +--- a/meson.build~ 2018-08-29 15:33:20.000000000 +0200 ++++ b/meson.build 2019-03-31 13:14:56.299216758 +0200 +@@ -84,5 +84,7 @@ + if not get_option('disable-help') + subdir('help') + endif +-subdir('tests') +-subdir('tests/validate-tests') ++if get_option('enable-tests') ++ subdir('tests') ++ subdir('tests/validate-tests') ++endif diff --git a/media-video/pitivi/pitivi-0.999.ebuild b/media-video/pitivi/pitivi-0.999.ebuild new file mode 100644 index 000000000000..21cd869ecd39 --- /dev/null +++ b/media-video/pitivi/pitivi-0.999.ebuild @@ -0,0 +1,96 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +PYTHON_COMPAT=( python{3_5,3_6} ) +PYTHON_REQ_USE="sqlite" + +inherit gnome.org meson python-single-r1 virtualx + +DESCRIPTION="A non-linear video editor using the GStreamer multimedia framework" +HOMEPAGE="http://www.pitivi.org" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +IUSE="v4l test" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +# XXX: recommends gst-plugins-libav and frei0r-plugins + +# Do not forget to check pitivi/check.py for dependencies!!! +# pycanberra, libav, libnotify and liwnck are optional +GST_VER="1.14.2" + +COMMON_DEPEND=" + ${PYTHON_DEPS} + >=dev-python/pycairo-1.10[${PYTHON_USEDEP}] + >=x11-libs/cairo-1.10 + + >=media-libs/gstreamer-${GST_VER}:1.0[introspection] + >=media-plugins/gst-transcoder-1.8.2-r1 +" +RDEPEND="${COMMON_DEPEND} + >=dev-libs/glib-2.30.0:2 + + >=dev-libs/gobject-introspection-1.34:= + dev-python/dbus-python[${PYTHON_USEDEP}] + >=dev-python/gst-python-1.4:1.0[${PYTHON_USEDEP}] + dev-python/matplotlib[${PYTHON_USEDEP}] + dev-python/numpy[${PYTHON_USEDEP}] + >=dev-python/pygobject-3.8:3[${PYTHON_USEDEP}] + + gnome-base/librsvg:= + >=media-libs/gsound-1.0 + + >=media-libs/gstreamer-editing-services-${GST_VER}:1.0[introspection] + >=media-libs/gst-plugins-base-${GST_VER}:1.0[introspection] + >=media-libs/gst-plugins-bad-${GST_VER}:1.0[gtk] + >=media-libs/gst-plugins-good-${GST_VER}:1.0 + >=media-plugins/gst-plugins-libav-${GST_VER}:1.0 + >=media-plugins/gst-plugins-gdkpixbuf-${GST_VER}:1.0 + + >=x11-libs/libnotify-0.7[introspection] + x11-libs/libwnck:3[introspection] + >=x11-libs/gtk+-3.20.0:3[introspection] + + v4l? ( >=media-plugins/gst-plugins-v4l2-${GST_VER}:1.0 ) +" +DEPEND="${RDEPEND}" +BDEPEND=" + app-text/yelp-tools + dev-python/setuptools + >=dev-util/intltool-0.35.5 + dev-util/itstool + sys-devel/gettext + virtual/pkgconfig + test? ( dev-python/nose2[${PYTHON_USEDEP}] ) +" + +PATCHES=( + # Make tests optional, bug #594096 + # https://gitlab.gnome.org/GNOME/pitivi/issues/2303 + "${FILESDIR}"/${P}-optional-tests.patch +) + +src_configure() { + local emesonargs=( + -Denable-tests=$(usex test true false) + ) + meson_src_configure +} + +src_compile() { + meson_src_compile +} + +src_test() { + export PITIVI_TOP_LEVEL_DIR="${S}" + virtx meson_src_test +} + +src_install() { + meson_src_install + python_fix_shebang "${D}" +} diff --git a/media-video/projectx/Manifest b/media-video/projectx/Manifest index 50317a97f1c5..1fc1eb605a7c 100644 --- a/media-video/projectx/Manifest +++ b/media-video/projectx/Manifest @@ -1,12 +1,18 @@ AUX build-0.90.4.00_p33.xml 2026 BLAKE2B fd29c13f89695542d16908aae974b17faf52dd0a663954f54a94a8c8cf1c673ae26276a3f94e812461ac0b336db7c0f8a3fa87110b099eed210eca488535e644 SHA512 6fbe6fdb00f814c5fa72dc52542c3d9950ff4229939090161a208c0013ec0e2867ff6fc656249f2de68c58a26ef2bd059ffe767be1498318a8cb9eddadbb72ea +AUX build-0.91.0.10.xml 2026 BLAKE2B fd29c13f89695542d16908aae974b17faf52dd0a663954f54a94a8c8cf1c673ae26276a3f94e812461ac0b336db7c0f8a3fa87110b099eed210eca488535e644 SHA512 6fbe6fdb00f814c5fa72dc52542c3d9950ff4229939090161a208c0013ec0e2867ff6fc656249f2de68c58a26ef2bd059ffe767be1498318a8cb9eddadbb72ea AUX projectx-0.90.4.00_p33-bl2.patch 515 BLAKE2B d90acfe7f28fc6fe0d2c21ee2f5a40a41f37be4826c9d49ea731119e9eb7db4fa64ddcbd77c4093bf75b00b42654d1b7fa30226793bba356fa54a914bccfb797 SHA512 0538f36fed3bb26badea0e38d350717851395274d960b63469198c1ab6ac33e70eb517cbe5281017f8233237c7235eeff58842493476d536beb99727c623fde3 AUX projectx-0.90.4.00_p33-idctfast.patch 1069 BLAKE2B 0522d6934f4e0f44f180211ca1210f79d2dbac4b726ab92199e76aa1172949a48847260d7445071a2ac8441f901350ab96dc03da9109e281a70decd1ac22d30a SHA512 696241ab0589132a8286de50a384aff626275aad971429f6a7bef51d912cde31da03eb47f68a001479001cc31c33d1f1670a883900097f9c569e7f4fa4b395ae AUX projectx-0.90.4.00_p33-stdout-corrupt.patch 358 BLAKE2B 8a7634c660e3d5a3405372af81479d890201ebdcae3fe08375736e4e19a9f7c38f1dccbec6f782f9b97fdfd74ec3a0790d669ebdde46776fba4a35eb56b7bc1e SHA512 b3d6a5c278929c6e6cd60c76a708b5df6cfa0f3772725ddcd6a9334aa5d91c3f2fefc9162381456f4594bd7ffdbf041177968feda82ca513dc9fbd53bc5b23ca AUX projectx-0.90.4.00_p33-xdg.patch 1062 BLAKE2B 21b55ea40b37a975f53bd5b65cc3c95236c966901578254bac7471c3ac2181ead24dc3e369966ae6e10e0b8f93ecc714f3885983d929c079caaf34908f3970b2 SHA512 661c2577d83845464ae1669b401780ddc312857292e97c962f8fe52463d543b920e66b8ce779193b4ffa66a522f771d78861606ad1f7c915f4ce51fdbeefb3a0 +AUX projectx-0.91.0.10-bl2.patch 535 BLAKE2B aeeba4ee7d33c77c64563e48005260c68d5f3da6f126df4d2c0ea3be7276748be944cb80705110dcad0cb5410bfcb084add24ff01d98bc098b690a1012359412 SHA512 88f8602ed85760c5be7ff3db2ce4347cc13c0d440d97c1a878bbef9ba62f7bf5c763c901384615db92cc63755c6534f730b32d253bea18f913d92d6503884427 +AUX projectx-0.91.0.10-idctfast.patch 1089 BLAKE2B 9dbef016e8ce6ac93f8554fe0414191434ac9364ddb51dafb9505c125a887e72dcd38e58f6eecd8595f9b735f099592730debf7948f97927ca3930c30731fa62 SHA512 309beac4a582a3abe25a4f28acf2a69d55f3a7824a18d845a2c46cfb3a05bd1fba1021a01da396eb395a633cc999a96527d53654b2b8cf3c5f87add9ebc2e24d +AUX projectx-0.91.0.10-stdout-corrupt.patch 378 BLAKE2B 7a92d7c16688e75e6d0510a93a02ac52fec7aec83ea768b70011d5dc8016c7f31cb4194bfd44f6696b6067c0c4fd179e03bf922d49358846b62c33914641128c SHA512 22f859c66d723f501002ca507a3a246716adf584d94d84fbb75b870b3418d93f073b6f46495232a9a9215007283e0acbe21871a4af74695dcbd0fc3a3ecbb2f3 +AUX projectx-0.91.0.10-xdg.patch 1082 BLAKE2B 331e818365afb4aa09a4c6cc4498a674100720cdb76248662d8786cbc14ebcc8cd98a828683b56fd4da44333dc6249bfec1ede3ee861d6719f752954d58d58db SHA512 f41700446a6ff32a95a95f1388aaefdeb9cb3e22a77841ef7ae42e85d0d267d8e4c4581dc0923f98d94de9aaacc7283583554693003c81018ee2a876e02beb58 DIST projectx-0.91.0.10.tar.xz 830104 BLAKE2B 511481dd2c391a6a26acfa0603f1c221d013d334593cf8ce6da0cf09505387424e58772705e17f9e90da546c43ce5aad313723aafd36063c5cd4a46d93634f86 SHA512 681dae4fd368a00a7ada37f8e64271c838a9c3737008b6fcd7f74679ca9fdf2cce140b0627a4c77a9a00baea76659bad0d2d710511b66026f9597ad153a2e725 DIST projectx-icon.png 1692 BLAKE2B 6da85b69961b81f64638b04860b467e8cf599287513d85157aa71e4575003b8ef6e96cbe4b0b40b54bb15b6ca74c14f4bf1855c80f1f6db89294567a77f9e151 SHA512 33d9e505140d2dd22d34f87ebff040530130bbb7d1e9958d7345f442bd3d6e17dff8d243e22f374217aed20139871e406e46ca6f03ca48eb338dc3630af2417a DIST projectx-idctfast.tar.xz 12444 BLAKE2B e4b2a6ab235601dbdd1acf8a73a14fecb5da455670bad52598e0dbd8a7300305fad1b22b3d550dd046dcac68975af4b225e042f7c968ce9108f702d01586302f SHA512 85dd6dd0011c166aaefd47a47c4455dda68ba6da65c9eda5a996f7d078ce3900168714c0c72c6250f7b99181fda84c6d81e3afb392ace9c12c3c5690de01c1d8 DIST xdg-20100731.java.xz 648 BLAKE2B 8bd082c445d64051c65c66e8a22b61e582d04f1f650e3b15ee2f3400d47b10f137d245bd8a7633d96299e2c688f7bf836b59a4dd49ea3c181684a78fa55304c3 SHA512 8b5d8e695f3f052f889002dc93742da8ba9eada173cb10ad1db525e1ad89d1c8f44200d79dc02068ccf93fdbf2e8daa5bb359dae77bacbc89cb6d4895732774b -EBUILD projectx-0.91.0.10-r1.ebuild 3251 BLAKE2B c5d61bbf276c7186dde2bf817f68f7fcc83c96218d397a5c4c5f31791f6a4a900fc3f959b6e4abd64df73384dd29abca7094b388def55b956a3a1cb2a2d75ac0 SHA512 fba239114105423fa1a9910121d1231d3e9c20f97d57f6a5ef356ebffdb92c3575768007a7030b75b648c861d8fe61c53cfde8d782a89d63fdfc8a2796fbe2f4 +EBUILD projectx-0.91.0.10-r1.ebuild 3245 BLAKE2B 34d050b55d561562d6d6b3c6fbe4beff8f1e4b657f8ce987144a6dca1df17fb40704e3d4cbfb557a0b60e5a1fd26ed5e8be98d0b874aceb1b0b824c12fe21f85 SHA512 c92fc0fc8983ccf588dea251f381e8f7df8c79905dd96f7f7e7bb3cb801d9d9a4eaf537e4afc66ab84a3a62e9ee17c9de9d8dbe3be3541047ce43f99321d3290 +EBUILD projectx-0.91.0.10-r2.ebuild 3280 BLAKE2B ee6a8b69281992f88cfe43d542c83ba095704ba6f949efa1ab308ebe6c470446332071e1c2a516c5cffc6cc32ef3a891e25bd0b18e2f62d5abd556f7438a73f6 SHA512 fcd8c4926920ae05663cf62f91da13d0390fb578f0ba7fcc6b8f3cf2fe821b5393a4efb0aedc28ecfe90aa2ad9c8683c6763abd01ecfa3d4a76e2dabdf87289d EBUILD projectx-0.91.0.10.ebuild 3222 BLAKE2B 51c2e3239304bdde3556f24a10a3b4e5bedbdfe14950dd792879f8da972fde7dadd005e1b629eb322968b82971a2dec0a59bc19efcb1e3860081146b90e7515b SHA512 8ba93b3cb9bd02b79bb004dcb31741ca9b165650f5e9e3dcb704df4fca9c8f66b95f0bc307b54a0be6f417630579c6fb0ed89d14fb762433d5dd1481ebfc1009 MISC metadata.xml 742 BLAKE2B 5aacc52def6d49258139e9435aa1db4f2295a07e4491a921db142c262c84a3deaaf8b9b22d7bc68dcd00ee142cb4f9912463f4ab2fb79eae74ea461375b1467c SHA512 3a5546c1efbafa335ee5d05ff24c2b22f0f49d8944e242348bef9627ac5e72205d9bd3e697b3d89c7d0ef3e34d98fe19b58c021f41bcaff872c74373a6803341 diff --git a/media-video/projectx/files/build-0.91.0.10.xml b/media-video/projectx/files/build-0.91.0.10.xml new file mode 100644 index 000000000000..f35638733b13 --- /dev/null +++ b/media-video/projectx/files/build-0.91.0.10.xml @@ -0,0 +1,77 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/media-video/projectx/files/projectx-0.91.0.10-bl2.patch b/media-video/projectx/files/projectx-0.91.0.10-bl2.patch new file mode 100644 index 000000000000..3799c15e19cb --- /dev/null +++ b/media-video/projectx/files/projectx-0.91.0.10-bl2.patch @@ -0,0 +1,15 @@ +--- Project-X/src/net/sourceforge/dvb/projectx/gui/Html.java 2006-11-25 22:28:52.000000000 +0100 ++++ Project-X/src/net/sourceforge/dvb/projectx/gui/Html.java 2007-06-10 13:37:59.000000000 +0200 +@@ -159,9 +159,10 @@ + { + try + { +- BrowserLauncher.openURL(u.toString()); ++ BrowserLauncher launcher = new BrowserLauncher(); ++ launcher.openURLinBrowser(u.toString()); + } +- catch (IOException e) ++ catch (Exception e) + { + Common.setMessage(Resource.getString("msg.browser.launcher.error") + " " + e); + } diff --git a/media-video/projectx/files/projectx-0.91.0.10-idctfast.patch b/media-video/projectx/files/projectx-0.91.0.10-idctfast.patch new file mode 100644 index 000000000000..84b7893c835f --- /dev/null +++ b/media-video/projectx/files/projectx-0.91.0.10-idctfast.patch @@ -0,0 +1,37 @@ +--- Project-X/src/net/sourceforge/dvb/projectx/video/MpvDecoder.java 2009-12-31 15:24:13.000000000 +0100 ++++ Project-X/src/net/sourceforge/dvb/projectx/video/MpvDecoder.java 2010-07-31 14:32:19.945223425 +0200 +@@ -72,7 +72,7 @@ + + public class MpvDecoder extends Object { + +- private IDCTRefNative idct; ++ private IDCTFast idct; + private IDCTSseNative idctsse; + + private int preview_horizontal_size = 512; +@@ -134,13 +134,13 @@ + { + Arrays.fill(pixels2, 0xFF505050); + +- idct = new IDCTRefNative(); ++ idct = new IDCTFast(); + idctsse = new IDCTSseNative(); + +- if (IDCTRefNative.isLibraryLoaded()) ++ if (IDCTFast.isLibraryLoaded()) + idct.init(); + +- if (IDCTRefNative.isLibraryLoaded() || IDCTSseNative.isLibraryLoaded()) ++ if (IDCTFast.isLibraryLoaded() || IDCTSseNative.isLibraryLoaded()) + acceleration = true; + } + +@@ -2407,7 +2407,7 @@ + } + } + +- else if (IDCTRefNative.isLibraryLoaded() && isAccelerated()) ++ else if (IDCTFast.isLibraryLoaded() && isAccelerated()) + { + /* copy or add block data into picture */ + for (comp=0; comp