diff --git a/media-libs/avidemux-core/Manifest b/media-libs/avidemux-core/Manifest new file mode 100644 index 0000000..9fc0783 --- /dev/null +++ b/media-libs/avidemux-core/Manifest @@ -0,0 +1,2 @@ +DIST avidemux-2.7.6.tar.gz 21963753 BLAKE2B 6ca343f90c37844ebfd61123badccefb7327cbf500723c031257cf26500a5b6d98955568c2a9c0d182af68f162e878459a51e6049485937f9b01b4439b32e5e0 SHA512 bc60c733168d40d5b39cc7dd1f74b3f1315e9727302478ef1621e18748bad3400bcfd4d5199862c3093ad9df51385b6b2a96f0f8fedf9bf1c00060327545fb0f +DIST avidemux-2.7.8.tar.gz 22080267 BLAKE2B a1e56856f44d56afac6ea4015f206a3f9301c025b3c8da1528165bd4c139ccc971074ac21aa05b9b3dfd6d514eabcbb375e671c8df9c9e5cae74a0a6597577c4 SHA512 6cd5527ab34517a07bf73e46d01f15b7ff023ff34ed70ee54f1d7dbfb6cf57364a323b4ecb89bb9aadeb9bc05473aacb40d8c4eecc522840a3c1c4b3a8756d82 diff --git a/media-libs/avidemux-core/avidemux-core-2.7.6.ebuild b/media-libs/avidemux-core/avidemux-core-2.7.6.ebuild new file mode 100644 index 0000000..6f2b5d5 --- /dev/null +++ b/media-libs/avidemux-core/avidemux-core-2.7.6.ebuild @@ -0,0 +1,102 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +CMAKE_MAKEFILE_GENERATOR="emake" + +inherit cmake flag-o-matic toolchain-funcs + +DESCRIPTION="Core libraries for simple video cutting, filtering and encoding tasks" +HOMEPAGE="http://fixounet.free.fr/avidemux" +SRC_URI="https://github.com/mean00/avidemux2/archive/${PV}.tar.gz -> avidemux-${PV}.tar.gz" + +# Multiple licenses because of all the bundled stuff. +LICENSE="GPL-1 GPL-2 MIT PSF-2 public-domain" +SLOT="2.7" +KEYWORDS="~amd64 ~x86" +IUSE="debug nls nvenc sdl system-ffmpeg vaapi vdpau xv" + +# Trying to use virtual; ffmpeg misses aac,cpudetection USE flags now though, are they needed? +DEPEND="dev-db/sqlite:3 + nvenc? ( media-video/nvidia_video_sdk ) + sdl? ( media-libs/libsdl:0 ) + system-ffmpeg? ( >=media-video/ffmpeg-9:0[mp3,theora] ) + vaapi? ( x11-libs/libva:0= ) + vdpau? ( x11-libs/libvdpau:0 ) + xv? ( x11-libs/libXv:0 ) +" +RDEPEND="${DEPEND} + ! + + + + media-video@gentoo.org + Gentoo Video project + + + Adds support for NVIDIA Encoder (NVENC) API for hardware accelerated encoding on NVIDIA cards. + Use the ffmpeg provided by the system. + + + mean00/avidemux2 + + diff --git a/media-libs/avidemux-plugins/Manifest b/media-libs/avidemux-plugins/Manifest new file mode 100644 index 0000000..9fc0783 --- /dev/null +++ b/media-libs/avidemux-plugins/Manifest @@ -0,0 +1,2 @@ +DIST avidemux-2.7.6.tar.gz 21963753 BLAKE2B 6ca343f90c37844ebfd61123badccefb7327cbf500723c031257cf26500a5b6d98955568c2a9c0d182af68f162e878459a51e6049485937f9b01b4439b32e5e0 SHA512 bc60c733168d40d5b39cc7dd1f74b3f1315e9727302478ef1621e18748bad3400bcfd4d5199862c3093ad9df51385b6b2a96f0f8fedf9bf1c00060327545fb0f +DIST avidemux-2.7.8.tar.gz 22080267 BLAKE2B a1e56856f44d56afac6ea4015f206a3f9301c025b3c8da1528165bd4c139ccc971074ac21aa05b9b3dfd6d514eabcbb375e671c8df9c9e5cae74a0a6597577c4 SHA512 6cd5527ab34517a07bf73e46d01f15b7ff023ff34ed70ee54f1d7dbfb6cf57364a323b4ecb89bb9aadeb9bc05473aacb40d8c4eecc522840a3c1c4b3a8756d82 diff --git a/media-libs/avidemux-plugins/avidemux-plugins-2.7.6.ebuild b/media-libs/avidemux-plugins/avidemux-plugins-2.7.6.ebuild new file mode 100644 index 0000000..05c23cd --- /dev/null +++ b/media-libs/avidemux-plugins/avidemux-plugins-2.7.6.ebuild @@ -0,0 +1,161 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +CMAKE_MAKEFILE_GENERATOR="emake" +PYTHON_COMPAT=( python3_{7,8,9} ) + +inherit cmake flag-o-matic python-single-r1 + +DESCRIPTION="Plugins for the video editor media-video/avidemux" +HOMEPAGE="http://fixounet.free.fr/avidemux" +SRC_URI="https://github.com/mean00/avidemux2/archive/${PV}.tar.gz -> avidemux-${PV}.tar.gz" + +# Multiple licenses because of all the bundled stuff. +LICENSE="GPL-1 GPL-2 MIT PSF-2 public-domain" +SLOT="2.7" +IUSE="a52 aac aften alsa amr dcaenc debug dts fdk fontconfig fribidi jack lame libsamplerate cpu_flags_x86_mmx nvenc opengl opus oss pulseaudio qt5 truetype twolame vdpau vorbis vpx x264 x265 xv xvid" +KEYWORDS="~amd64 ~x86" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +COMMON_DEPEND="${PYTHON_DEPS} + ~media-libs/avidemux-core-${PV}:${SLOT}[vdpau?] + ~media-video/avidemux-${PV}:${SLOT}[opengl?,qt5?] + dev-lang/spidermonkey:0= + dev-libs/libxml2:2 + media-libs/a52dec + media-libs/libass:0= + media-libs/libmad + media-libs/libmp4v2 + media-libs/libpng:0= + virtual/libiconv + aac? ( + media-libs/faac + media-libs/faad2 + ) + aften? ( media-libs/aften ) + alsa? ( media-libs/alsa-lib ) + amr? ( media-libs/opencore-amr ) + dcaenc? ( media-sound/dcaenc ) + dts? ( media-libs/libdca ) + fdk? ( media-libs/fdk-aac:0= ) + fontconfig? ( media-libs/fontconfig:1.0 ) + fribidi? ( dev-libs/fribidi ) + jack? ( + virtual/jack + libsamplerate? ( media-libs/libsamplerate ) + ) + lame? ( media-sound/lame ) + nvenc? ( amd64? ( media-video/nvidia_video_sdk ) ) + opus? ( media-libs/opus ) + pulseaudio? ( media-sound/pulseaudio ) + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtwidgets:5 + ) + truetype? ( media-libs/freetype:2 ) + twolame? ( media-sound/twolame ) + vorbis? ( media-libs/libvorbis ) + vpx? ( media-libs/libvpx:0= ) + x264? ( media-libs/x264:0= ) + x265? ( media-libs/x265:0= ) + xv? ( + x11-libs/libX11 + x11-libs/libXext + x11-libs/libXv + ) + xvid? ( media-libs/xvid ) +" +DEPEND="${COMMON_DEPEND} + oss? ( virtual/os-headers ) +" +RDEPEND="${COMMON_DEPEND} + ! + + + + media-video@gentoo.org + Gentoo Video project + + + Enable A/52 (AC-3) audio encoder support. + Enable Adaptive Multi-Rate format support via media-libs/opencore-amr. + Enable DTS Coherent Acoustics audio encoder support via media-sound/dcaenc. + Adds support for encoding AAC using media-libs/fdk-aac. + Enable unicode bidirectional algorithm support via dev-libs/fribidi. + Adds support for NVIDIA Encoder (NVENC) API for hardware accelerated encoding on NVIDIA cards. + Enable TwoLAME support via media-sound/twolame, an optimised MPEG Audio Layer 2 (MP2) encoder. + Enable WebM VP8 Codec SDK support via media-libs/libvpx. + Enables HEVC support with media-libs/x265. + + + avidemux + + diff --git a/media-video/avidemux/Manifest b/media-video/avidemux/Manifest new file mode 100644 index 0000000..4894536 --- /dev/null +++ b/media-video/avidemux/Manifest @@ -0,0 +1,4 @@ +DIST avidemux-2.7.6.tar.gz 21963753 BLAKE2B 6ca343f90c37844ebfd61123badccefb7327cbf500723c031257cf26500a5b6d98955568c2a9c0d182af68f162e878459a51e6049485937f9b01b4439b32e5e0 SHA512 bc60c733168d40d5b39cc7dd1f74b3f1315e9727302478ef1621e18748bad3400bcfd4d5199862c3093ad9df51385b6b2a96f0f8fedf9bf1c00060327545fb0f +DIST avidemux-2.7.8.tar.gz 22080267 BLAKE2B a1e56856f44d56afac6ea4015f206a3f9301c025b3c8da1528165bd4c139ccc971074ac21aa05b9b3dfd6d514eabcbb375e671c8df9c9e5cae74a0a6597577c4 SHA512 6cd5527ab34517a07bf73e46d01f15b7ff023ff34ed70ee54f1d7dbfb6cf57364a323b4ecb89bb9aadeb9bc05473aacb40d8c4eecc522840a3c1c4b3a8756d82 +DIST avidemux-i18n-2.7.6.tar.gz 2268693 BLAKE2B dedf6d015e6bbd58f432e05e72c4d8d175ce4f5567331b5e51e7a14d2a8180e92211efc172a4d7001a2947f46c2e910a485d42970b99df05c1ba12002974cfbf SHA512 26ada29c4b7c23739ddcc4ca1dc9819bbc64fa2b6472fd7ff5706905dbd9b382e7a7d69ba78f72afa6f3db55cf3c5373a5e2d244f1cf189aeb187984dd1f4187 +DIST avidemux-i18n-2.7.8.tar.gz 2488165 BLAKE2B 9e6bfb10e938c880d372570cfe35ba9422a8c0081b116230d831bd421b205a555415350be96b0e3149beb164a0151e04205bded403354d7052aa24884a068407 SHA512 a62b06a3d95577cf805be36f991ccb63d044b7c3633ada65bd5810f0e7d8eb41aa874ef5dd63de4fcacc0be073935bed827b2f0bceba77ab735ac8673c1ad39f diff --git a/media-video/avidemux/avidemux-2.7.6-r1.ebuild b/media-video/avidemux/avidemux-2.7.6-r1.ebuild new file mode 100644 index 0000000..b1fce24 --- /dev/null +++ b/media-video/avidemux/avidemux-2.7.6-r1.ebuild @@ -0,0 +1,136 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +CMAKE_MAKEFILE_GENERATOR="emake" +inherit cmake desktop flag-o-matic qmake-utils xdg + +DESCRIPTION="Video editor designed for simple cutting, filtering and encoding tasks" +HOMEPAGE="http://fixounet.free.fr/avidemux" +SRC_URI="https://github.com/mean00/avidemux2/archive/${PV}.tar.gz -> ${P}.tar.gz + https://github.com/mean00/avidemux2_i18n/archive/${PV}.tar.gz -> ${PN}-i18n-${PV}.tar.gz" + +# Multiple licenses because of all the bundled stuff. +LICENSE="GPL-1 GPL-2 MIT PSF-2 public-domain" +SLOT="2.7" +KEYWORDS="~amd64 ~x86" +IUSE="debug nls nvenc opengl qt5 sdl vaapi vdpau xv" + +BDEPEND="dev-lang/yasm + qt5? ( dev-qt/linguist-tools:5 )" +DEPEND=" + ~media-libs/avidemux-core-${PV}:${SLOT}[nls?,sdl?,vaapi?,vdpau?,xv?,nvenc?] + nvenc? ( amd64? ( media-video/nvidia_video_sdk:0 ) ) + opengl? ( virtual/opengl:0 ) + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtnetwork:5 + dev-qt/qtopengl:5 + dev-qt/qtwidgets:5 + ) + vaapi? ( x11-libs/libva:0= ) +" +RDEPEND="${DEPEND} + nls? ( virtual/libintl:0 ) + !/dev/null || die +} + +src_prepare() { + eapply "${FILESDIR}"/${PN}-2.7.4-qt-5.15.patch + + processes="buildCli:avidemux/cli" + use qt5 && processes+=" buildQt4:avidemux/qt4" + + for process in ${processes} ; do + CMAKE_USE_DIR="${S}"/${process#*:} cmake_src_prepare + done + + if use qt5; then + # Fix icon name -> avidemux-2.7 + sed -i -e "/^Icon/ s:${PN}\.png:${PN}-${SLOT}:" appImage/${PN}.desktop || \ + die "Icon name fix failed." + + # The desktop file is broken. It uses avidemux3_portable instead of avidemux3_qt5 + sed -i -re '/^Exec/ s:(avidemux3_)portable:\1qt5:' appImage/${PN}.desktop || \ + die "Desktop file fix failed." + + # QA warnings: missing trailing ';' and 'Application' is deprecated. + sed -i -e 's/Application;AudioVideo/AudioVideo;/g' appImage/${PN}.desktop || \ + die "Desktop file fix failed." + + # Now rename the desktop file to not collide with 2.6. + mv appImage/${PN}.desktop ${PN}-${SLOT}.desktop || die "Collision rename failed." + fi + + # Remove "Build Option" dialog because it doesn't reflect + # what the GUI can or has been built with. (Bug #463628) + sed -i -e '/Build Option/d' avidemux/common/ADM_commonUI/myOwnMenu.h || \ + die "Couldn't remove \"Build Option\" dialog." +} + +src_configure() { + # See bug 432322. + use x86 && replace-flags -O0 -O1 + + # The build relies on an avidemux-core header that uses 'nullptr' + # which is from >=C++11. Let's use the GCC-6 default C++ dialect. + append-cxxflags -std=c++14 + + local mycmakeargs=( + -DGETTEXT="$(usex nls)" + -DSDL="$(usex sdl)" + -DLibVA="$(usex vaapi)" + -DOPENGL="$(usex opengl)" + -DVDPAU="$(usex vdpau)" + -DXVIDEO="$(usex xv)" + ) + + use qt5 && mycmakeargs+=( + -DENABLE_QT5="$(usex qt5)" + -DLRELEASE_EXECUTABLE="$(qt5_get_bindir)/lrelease" + ) + + use debug && mycmakeargs+=( -DVERBOSE=1 -DADM_DEBUG=1 ) + + for process in ${processes} ; do + local build="${WORKDIR}/${P}_build/${process%%:*}" + CMAKE_USE_DIR="${S}"/${process#*:} BUILD_DIR="${build}" cmake_src_configure + done +} + +src_compile() { + for process in ${processes} ; do + local build="${WORKDIR}/${P}_build/${process%%:*}" + BUILD_DIR="${build}" cmake_src_compile + done +} + +src_test() { + for process in ${processes} ; do + local build="${WORKDIR}/${P}_build/${process%%:*}" + BUILD_DIR="${build}" cmake_src_test + done +} + +src_install() { + for process in ${processes} ; do + local build="${WORKDIR}/${P}_build/${process%%:*}" + BUILD_DIR="${build}" cmake_src_install + done + + if use qt5; then + cd "${S}" || die "Can't enter source folder" + newicon ${PN}_icon.png ${PN}-${SLOT}.png + domenu ${PN}-${SLOT}.desktop + fi +} diff --git a/media-video/avidemux/files/avidemux-2.7.4-qt-5.15.patch b/media-video/avidemux/files/avidemux-2.7.4-qt-5.15.patch new file mode 100644 index 0000000..5c92a56 --- /dev/null +++ b/media-video/avidemux/files/avidemux-2.7.4-qt-5.15.patch @@ -0,0 +1,11 @@ +diff -ur avidemux2-2.7.4.orig/avidemux/qt4/ADM_UIs/src/T_RubberControl.cpp avidemux2-2.7.4/avidemux/qt4/ADM_UIs/src/T_RubberControl.cpp +--- a/avidemux/qt4/ADM_UIs/src/T_RubberControl.cpp 2019-08-14 19:11:18.000000000 +0200 ++++ b/avidemux/qt4/ADM_UIs/src/T_RubberControl.cpp 2020-05-30 20:45:53.304702855 +0200 +@@ -8,6 +8,7 @@ + ***************************************************************************/// + + #include ++#include + #include + #include + #include diff --git a/media-video/avidemux/metadata.xml b/media-video/avidemux/metadata.xml new file mode 100644 index 0000000..10fd323 --- /dev/null +++ b/media-video/avidemux/metadata.xml @@ -0,0 +1,14 @@ + + + + + media-video@gentoo.org + Gentoo Video project + + + Adds support for NVIDIA Encoder (NVENC) API for hardware accelerated encoding on NVIDIA cards. + + + avidemux + +