* [gentoo-commits] repo/gentoo:master commit in: media-libs/mlt/, media-libs/mlt/files/
@ 2015-08-21 12:53 Alexis Ballier
0 siblings, 0 replies; 23+ messages in thread
From: Alexis Ballier @ 2015-08-21 12:53 UTC (permalink / raw
To: gentoo-commits
commit: e5d449792f9b4c68bfef57d552872764f624527e
Author: Alexis Ballier <aballier <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 21 12:52:57 2015 +0000
Commit: Alexis Ballier <aballier <AT> gentoo <DOT> org>
CommitDate: Fri Aug 21 12:52:57 2015 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e5d44979
media-libs/mlt: remove old.
Package-Manager: portage-2.2.20.1
media-libs/mlt/Manifest | 2 -
media-libs/mlt/files/mlt-0.7.2-ruby-link.patch | 18 --
.../mlt/files/mlt-0.8.2-av_codec_is_encoder.patch | 32 ----
media-libs/mlt/mlt-0.8.2.ebuild | 176 --------------------
media-libs/mlt/mlt-0.8.8.ebuild | 181 ---------------------
5 files changed, 409 deletions(-)
diff --git a/media-libs/mlt/Manifest b/media-libs/mlt/Manifest
index 405dcd6..066e75d 100644
--- a/media-libs/mlt/Manifest
+++ b/media-libs/mlt/Manifest
@@ -1,4 +1,2 @@
-DIST mlt-0.8.2.tar.gz 1161293 SHA256 36c743d2abc68ce737ac526507fc2caf71b3d6a53a2bf31d22e8193a8b899577 SHA512 ab71018e5a188b95d91b4aceeb4ca0dfc59d0dd981ec3e4fa220b91ce812e2c98ebad1d51998005c6bc98999c7478444c8bfd398d61bd2084ff732a1638ca6aa WHIRLPOOL 4d72efbffd2f7c77041065c948c18ccbb4a65eb7f4ec7209ccde15e142fee84c70324390bc921c0302c30ad7673336c8cf00be8c710154fe31c8a3063987622b
-DIST mlt-0.8.8.tar.gz 1108652 SHA256 cc0e1cdb97a1cd59811a74553b5d3fbff590eb859c475253e188de1069ff9654 SHA512 d29d982632dec14e4397db602688816e06f095b1831514a816bc7640d574a04d3d56cc16240ea0a01229887e95c80891b87c5df981063cb2d6a14b50ff67589f WHIRLPOOL 6e5665e5b4c9471d252faea7073cfd21580e31b55941ba51a415783d79bec3d857fcd01f111da25e24551a3f03a728390e17ab9b127e1bd0977bac94c83162a5
DIST mlt-0.9.0.tar.gz 1167943 SHA256 f20c6a9c9acaed3da84c601bf9293b2d148168386e5be2bc55651a75f95c1cc9 SHA512 631ab41ee6e3673c712f784b9c02b567a5e3b982d49eabe032ef20e89be9424cf9ce6d97fe6906f03b0ac082544316ba8524ae041d017aeac009ab9b98d457d9 WHIRLPOOL b39e78837f2f2785721315ac174d106e33bafd2dd55b8883b254a39dc98f664be29ce3e84413d2ba55f881bb42ca10c36a9117de00b1a5efc3dff8577a6a29af
DIST mlt-0.9.8.tar.gz 1263364 SHA256 1214d6ad7fd1c3d36f0b1e64fd1c8d8a7ab6290e8452396003e79d58c0d21074 SHA512 2f3db19cbff8bdd11c53fe835fcc1c32d775ead061b2e225466376be98c622cdd18e67f66becda503a57725ac9a296bc48aae4c3ae1111ed09ba878f61fd1e10 WHIRLPOOL 615323613eeee9ea80f8d6727a05129a9dc32097a8c2bf41cb818843fa8d47885744c1534fd7d26817262f60404e4caa12ea67ae9b3f59984874981865ee9148
diff --git a/media-libs/mlt/files/mlt-0.7.2-ruby-link.patch b/media-libs/mlt/files/mlt-0.7.2-ruby-link.patch
deleted file mode 100644
index c0427c1..0000000
--- a/media-libs/mlt/files/mlt-0.7.2-ruby-link.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-The build system tries to link to installed system libraries first, which
-fails because the ABI has changed...
-
-diff -ruN mlt-0.7.2.orig/src/swig/ruby/build mlt-0.7.2/src/swig/ruby/build
---- mlt-0.7.2.orig/src/swig/ruby/build 2011-05-02 07:59:12.000000000 +0200
-+++ mlt-0.7.2/src/swig/ruby/build 2011-10-30 16:21:01.000000000 +0100
-@@ -5,8 +5,10 @@
- exit 0
- end
- system( "ln -sf ../mlt.i" )
-+system( "ln -sf ../../framework/libmlt.so" )
-+system( "ln -sf ../../mlt++/libmlt++.so" )
- system( "swig -c++ -ruby -I../../mlt++ -I../.. mlt.i" )
- $CFLAGS += " -I../.."
--$LDFLAGS += " -L../../mlt++ -lmlt++"
-+$LIBS += " -lmlt++ -lmlt -lstdc++"
- create_makefile('mlt')
- system( "make" )
diff --git a/media-libs/mlt/files/mlt-0.8.2-av_codec_is_encoder.patch b/media-libs/mlt/files/mlt-0.8.2-av_codec_is_encoder.patch
deleted file mode 100644
index 3d0ba1c..0000000
--- a/media-libs/mlt/files/mlt-0.8.2-av_codec_is_encoder.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-AVCodec.encode has been renamed recently is ffmpeg, causing mlt to fail to build.
-Starting from libavcodec 54.7 we have av_codec_is_encoder available publicly so
-use this instead.
-
-Index: mlt-0.8.2/src/modules/avformat/consumer_avformat.c
-===================================================================
---- mlt-0.8.2.orig/src/modules/avformat/consumer_avformat.c
-+++ mlt-0.8.2/src/modules/avformat/consumer_avformat.c
-@@ -238,7 +238,11 @@ static int consumer_start( mlt_consumer
- mlt_properties_set_data( doc, "audio_codecs", codecs, 0, NULL, NULL );
- while ( ( codec = av_codec_next( codec ) ) )
- #if LIBAVCODEC_VERSION_INT >= ((54<<16)+(0<<8)+0)
-+#if LIBAVCODEC_VERSION_INT >= ((54<<16)+(7<<8)+0)
-+ if ( av_codec_is_encoder(codec) && codec->type == CODEC_TYPE_AUDIO )
-+#else
- if ( ( codec->encode || codec->encode2 ) && codec->type == CODEC_TYPE_AUDIO )
-+#endif
- #else
- if ( codec->encode && codec->type == CODEC_TYPE_AUDIO )
- #endif
-@@ -262,7 +266,11 @@ static int consumer_start( mlt_consumer
- mlt_properties_set_data( doc, "video_codecs", codecs, 0, NULL, NULL );
- while ( ( codec = av_codec_next( codec ) ) )
- #if LIBAVCODEC_VERSION_INT >= ((54<<16)+(0<<8)+0)
-+#if LIBAVCODEC_VERSION_INT >= ((54<<16)+(7<<8)+0)
-+ if ( av_codec_is_encoder(codec) && codec->type == CODEC_TYPE_VIDEO )
-+#else
- if ( (codec->encode || codec->encode2) && codec->type == CODEC_TYPE_VIDEO )
-+#endif
- #else
- if ( codec->encode && codec->type == CODEC_TYPE_VIDEO )
- #endif
diff --git a/media-libs/mlt/mlt-0.8.2.ebuild b/media-libs/mlt/mlt-0.8.2.ebuild
deleted file mode 100644
index 75572e0..0000000
--- a/media-libs/mlt/mlt-0.8.2.ebuild
+++ /dev/null
@@ -1,176 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=4
-PYTHON_DEPEND="python? 2:2.6"
-inherit eutils toolchain-funcs multilib python
-
-DESCRIPTION="An open source multimedia framework, designed and developed for television broadcasting"
-HOMEPAGE="http://www.mltframework.org/"
-SRC_URI="mirror://sourceforge/mlt/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 ~ppc ~ppc64 x86 ~x86-fbsd ~amd64-linux ~x86-linux"
-IUSE="compressed-lumas dv debug ffmpeg frei0r gtk jack kde libsamplerate melt
-cpu_flags_x86_mmx qt4 quicktime rtaudio sdl cpu_flags_x86_sse cpu_flags_x86_sse2 vorbis xine xml lua python ruby vdpau" # java perl php tcl
-IUSE="${IUSE} kernel_linux"
-
-#rtaudio will use OSS on non linux OSes
-RDEPEND="ffmpeg? ( virtual/ffmpeg[vdpau?] )
- dv? ( >=media-libs/libdv-0.104 )
- xml? ( >=dev-libs/libxml2-2.5 )
- vorbis? ( >=media-libs/libvorbis-1.1.2 )
- sdl? ( >=media-libs/libsdl-1.2.10[X,opengl]
- >=media-libs/sdl-image-1.2.4 )
- libsamplerate? ( >=media-libs/libsamplerate-0.1.2 )
- jack? ( >=media-sound/jack-audio-connection-kit-0.121.3
- media-libs/ladspa-sdk
- >=dev-libs/libxml2-2.5 )
- frei0r? ( media-plugins/frei0r-plugins )
- gtk? ( x11-libs/gtk+:2
- media-libs/libexif
- x11-libs/pango )
- quicktime? ( media-libs/libquicktime )
- rtaudio? ( kernel_linux? ( media-libs/alsa-lib ) )
- xine? ( >=media-libs/xine-lib-1.1.2_pre20060328-r7 )
- qt4? ( dev-qt/qtgui:4 dev-qt/qtsvg:4 media-libs/libexif )
- !media-libs/mlt++
- lua? ( >=dev-lang/lua-5.1.4-r4 )
- ruby? ( dev-lang/ruby )"
-# sox? ( media-sound/sox )
-# java? ( >=virtual/jre-1.5 )
-# perl? ( dev-lang/perl )
-# php? ( dev-lang/php )
-# tcl? ( dev-lang/tcl:0 )
-
-SWIG_DEPEND=">=dev-lang/swig-2.0"
-DEPEND="${RDEPEND}
- virtual/pkgconfig
- compressed-lumas? ( || ( media-gfx/imagemagick[png]
- media-gfx/graphicsmagick[imagemagick,png] ) )
- lua? ( ${SWIG_DEPEND} virtual/pkgconfig )
- python? ( ${SWIG_DEPEND} )
- ruby? ( ${SWIG_DEPEND} )"
-# java? ( ${SWIG_DEPEND} >=virtual/jdk-1.5 )
-# perl? ( ${SWIG_DEPEND} )
-# php? ( ${SWIG_DEPEND} )
-# tcl? ( ${SWIG_DEPEND} )
-
-pkg_setup() {
- python_set_active_version 2
- python_pkg_setup
-}
-
-src_prepare() {
- epatch "${FILESDIR}"/${PN}-0.7.2-ruby-link.patch
- epatch "${FILESDIR}"/${PN}-0.8.2-av_codec_is_encoder.patch
-
- # respect CFLAGS LDFLAGS when building shared libraries. Bug #308873
- for x in python lua; do
- sed -i "/mlt.so/s: -lmlt++ :& ${CFLAGS} ${LDFLAGS} :" src/swig/$x/build || die
- done
- sed -i "/^LDFLAGS/s: += :& ${LDFLAGS} :" src/swig/ruby/build || die
-}
-
-src_configure() {
- tc-export CC CXX
-
- local myconf="--enable-gpl
- --enable-motion-est
- --disable-swfdec
- $(use_enable debug)
- $(use_enable dv)
- $(use_enable cpu_flags_x86_sse sse)
- $(use_enable cpu_flags_x86_sse2 sse2)
- $(use_enable gtk gtk2)
- $(use_enable vorbis)
- $(use_enable sdl)
- $(use_enable jack jackrack)
- $(use_enable ffmpeg avformat)
- $(use_enable frei0r)
- $(use_enable melt)
- $(use_enable libsamplerate resample)
- $(use_enable rtaudio)
- $(use vdpau && echo ' --avformat-vdpau')
- $(use_enable xml)
- $(use_enable xine)
- $(use_enable kde kdenlive)
- $(use_enable qt4 qimage)
- --disable-sox"
- #$(use_enable sox) FIXME
-
- use ffmpeg && myconf="${myconf} --avformat-swscale"
-
- (use quicktime && use dv) || myconf="${myconf} --disable-kino"
-
- use compressed-lumas && myconf="${myconf} --luma-compress"
-
- ( use x86 || use amd64 ) && \
- myconf="${myconf} $(use_enable cpu_flags_x86_mmx mmx)" ||
- myconf="${myconf} --disable-mmx"
-
- use melt || sed -i -e "s;src/melt;;" Makefile
-
- # TODO: add swig language bindings
- # see also http://www.mltframework.org/twiki/bin/view/MLT/ExtremeMakeover
-
- local swig_lang
- # TODO: java perl php tcl
- for i in lua python ruby ; do
- use $i && swig_lang="${swig_lang} $i"
- done
- [ -z "${swig_lang}" ] && swig_lang="none"
-
- econf ${myconf} --swig-languages="${swig_lang}"
- sed -i -e s/^OPT/#OPT/ "${S}/config.mak"
-}
-
-src_install() {
- emake DESTDIR="${D}" install || die
- dodoc AUTHORS ChangeLog NEWS README docs/*.txt
-
- dodir /usr/share/${PN}
- insinto /usr/share/${PN}
- doins -r demo
-
- docinto swig
-
- # Install SWIG bindings
- if use lua; then
- cd "${S}"/src/swig/lua
- exeinto $(pkg-config --variable INSTALL_CMOD lua)
- doexe mlt.so || die
- dodoc play.lua
- fi
-
- if use python; then
- cd "${S}"/src/swig/python
- insinto $(python_get_sitedir)
- doins mlt.py || die
- exeinto $(python_get_sitedir)
- doexe _mlt.so || die
- dodoc play.py
- fi
-
- if use ruby; then
- cd "${S}"/src/swig/ruby
- exeinto $("${EPREFIX}"/usr/bin/ruby -r rbconfig -e 'print Config::CONFIG["sitearchdir"]')
- doexe mlt.so || die
- dodoc play.rb thumbs.rb
- fi
- # TODO: java perl php tcl
-}
-
-pkg_postinst() {
- if use python; then
- python_mod_optimize mlt.py
- fi
-}
-
-pkg_postrm() {
- if use python; then
- python_mod_cleanup mlt.py
- fi
-}
diff --git a/media-libs/mlt/mlt-0.8.8.ebuild b/media-libs/mlt/mlt-0.8.8.ebuild
deleted file mode 100644
index e57aa3c..0000000
--- a/media-libs/mlt/mlt-0.8.8.ebuild
+++ /dev/null
@@ -1,181 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=4
-PYTHON_DEPEND="python? 2:2.6"
-inherit eutils toolchain-funcs multilib python
-
-DESCRIPTION="An open source multimedia framework, designed and developed for television broadcasting"
-HOMEPAGE="http://www.mltframework.org/"
-SRC_URI="mirror://sourceforge/mlt/${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux"
-IUSE="compressed-lumas dv debug ffmpeg frei0r gtk jack kde kdenlive libsamplerate melt
-cpu_flags_x86_mmx qt4 quicktime rtaudio sdl cpu_flags_x86_sse cpu_flags_x86_sse2 vorbis xine xml lua python ruby vdpau" # java perl php tcl
-IUSE="${IUSE} kernel_linux"
-
-#rtaudio will use OSS on non linux OSes
-RDEPEND="ffmpeg? ( virtual/ffmpeg[vdpau?] )
- dv? ( >=media-libs/libdv-0.104 )
- xml? ( >=dev-libs/libxml2-2.5 )
- vorbis? ( >=media-libs/libvorbis-1.1.2 )
- sdl? ( >=media-libs/libsdl-1.2.10[X,opengl]
- >=media-libs/sdl-image-1.2.4 )
- libsamplerate? ( >=media-libs/libsamplerate-0.1.2 )
- jack? ( >=media-sound/jack-audio-connection-kit-0.121.3
- media-libs/ladspa-sdk
- >=dev-libs/libxml2-2.5 )
- frei0r? ( media-plugins/frei0r-plugins )
- gtk? ( x11-libs/gtk+:2
- media-libs/libexif
- x11-libs/pango )
- quicktime? ( media-libs/libquicktime )
- rtaudio? ( kernel_linux? ( media-libs/alsa-lib ) )
- xine? ( >=media-libs/xine-lib-1.1.2_pre20060328-r7 )
- qt4? ( dev-qt/qtgui:4
- dev-qt/qtsvg:4
- media-libs/libexif )
- kde? ( kde-base/kdelibs:4
- media-libs/libexif )
- !media-libs/mlt++
- lua? ( >=dev-lang/lua-5.1.4-r4 )
- ruby? ( dev-lang/ruby )"
-# sox? ( media-sound/sox )
-# java? ( >=virtual/jre-1.5 )
-# perl? ( dev-lang/perl )
-# php? ( dev-lang/php )
-# tcl? ( dev-lang/tcl:0 )
-
-SWIG_DEPEND=">=dev-lang/swig-2.0"
-DEPEND="${RDEPEND}
- virtual/pkgconfig
- compressed-lumas? ( || ( media-gfx/imagemagick[png]
- media-gfx/graphicsmagick[imagemagick,png] ) )
- lua? ( ${SWIG_DEPEND} virtual/pkgconfig )
- python? ( ${SWIG_DEPEND} )
- ruby? ( ${SWIG_DEPEND} )"
-# java? ( ${SWIG_DEPEND} >=virtual/jdk-1.5 )
-# perl? ( ${SWIG_DEPEND} )
-# php? ( ${SWIG_DEPEND} )
-# tcl? ( ${SWIG_DEPEND} )
-
-pkg_setup() {
- python_set_active_version 2
- python_pkg_setup
-}
-
-src_prepare() {
- epatch "${FILESDIR}"/${PN}-0.8.6-ruby-link.patch
-
- # respect CFLAGS LDFLAGS when building shared libraries. Bug #308873
- for x in python lua; do
- sed -i "/mlt.so/s: -lmlt++ :& ${CFLAGS} ${LDFLAGS} :" src/swig/$x/build || die
- done
- sed -i "/^LDFLAGS/s: += :& ${LDFLAGS} :" src/swig/ruby/build || die
-
- epatch_user
-}
-
-src_configure() {
- tc-export CC CXX
-
- local myconf="--enable-gpl
- --enable-gpl3
- --enable-motion-est
- --disable-swfdec
- $(use_enable debug)
- $(use_enable dv)
- $(use_enable cpu_flags_x86_sse sse)
- $(use_enable cpu_flags_x86_sse2 sse2)
- $(use_enable gtk gtk2)
- $(use_enable vorbis)
- $(use_enable sdl)
- $(use_enable jack jackrack)
- $(use_enable ffmpeg avformat)
- $(use_enable frei0r)
- $(use_enable melt)
- $(use_enable libsamplerate resample)
- $(use_enable rtaudio)
- $(use vdpau && echo ' --avformat-vdpau')
- $(use_enable xml)
- $(use_enable xine)
- $(use_enable kdenlive)
- $(use_enable qt4 qimage)
- --disable-sox"
- #$(use_enable sox) FIXME
-
- use ffmpeg && myconf="${myconf} --avformat-swscale"
- use kde || myconf="${myconf} --without-kde"
- (use quicktime && use dv) || myconf="${myconf} --disable-kino"
- use compressed-lumas && myconf="${myconf} --luma-compress"
-
- ( use x86 || use amd64 ) && \
- myconf="${myconf} $(use_enable cpu_flags_x86_mmx mmx)" ||
- myconf="${myconf} --disable-mmx"
-
- use melt || sed -i -e "s;src/melt;;" Makefile
-
- # TODO: add swig language bindings
- # see also http://www.mltframework.org/twiki/bin/view/MLT/ExtremeMakeover
-
- local swig_lang
- # TODO: java perl php tcl
- for i in lua python ruby ; do
- use $i && swig_lang="${swig_lang} $i"
- done
- [ -z "${swig_lang}" ] && swig_lang="none"
-
- econf ${myconf} --swig-languages="${swig_lang}"
- sed -i -e s/^OPT/#OPT/ "${S}/config.mak"
-}
-
-src_install() {
- emake DESTDIR="${D}" install || die
- dodoc AUTHORS ChangeLog NEWS README docs/*.txt
-
- dodir /usr/share/${PN}
- insinto /usr/share/${PN}
- doins -r demo
-
- docinto swig
-
- # Install SWIG bindings
- if use lua; then
- cd "${S}"/src/swig/lua
- exeinto $(pkg-config --variable INSTALL_CMOD lua)
- doexe mlt.so || die
- dodoc play.lua
- fi
-
- if use python; then
- cd "${S}"/src/swig/python
- insinto $(python_get_sitedir)
- doins mlt.py || die
- exeinto $(python_get_sitedir)
- doexe _mlt.so || die
- dodoc play.py
- fi
-
- if use ruby; then
- cd "${S}"/src/swig/ruby
- exeinto $("${EPREFIX}"/usr/bin/ruby -r rbconfig -e 'print Config::CONFIG["sitearchdir"]')
- doexe mlt.so || die
- dodoc play.rb thumbs.rb
- fi
- # TODO: java perl php tcl
-}
-
-pkg_postinst() {
- if use python; then
- python_mod_optimize mlt.py
- fi
-}
-
-pkg_postrm() {
- if use python; then
- python_mod_cleanup mlt.py
- fi
-}
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-libs/mlt/, media-libs/mlt/files/
@ 2016-02-15 15:42 Alexis Ballier
0 siblings, 0 replies; 23+ messages in thread
From: Alexis Ballier @ 2016-02-15 15:42 UTC (permalink / raw
To: gentoo-commits
commit: 6db4ebee4b21954964b55da918a0b59d2d96ccee
Author: Alexis Ballier <aballier <AT> gentoo <DOT> org>
AuthorDate: Mon Feb 15 15:42:19 2016 +0000
Commit: Alexis Ballier <aballier <AT> gentoo <DOT> org>
CommitDate: Mon Feb 15 15:42:31 2016 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6db4ebee
media-libs/mlt: backport upstream fix to build with ffmpeg 3, bug #574796
Package-Manager: portage-2.2.27
Signed-off-by: Alexis Ballier <aballier <AT> gentoo.org>
media-libs/mlt/files/mlt-0.9.8-ffmpeg3.patch | 500 +++++++++++++++++++++++++++
media-libs/mlt/mlt-0.9.8-r2.ebuild | 3 +-
2 files changed, 502 insertions(+), 1 deletion(-)
diff --git a/media-libs/mlt/files/mlt-0.9.8-ffmpeg3.patch b/media-libs/mlt/files/mlt-0.9.8-ffmpeg3.patch
new file mode 100644
index 0000000..ef89fbb
--- /dev/null
+++ b/media-libs/mlt/files/mlt-0.9.8-ffmpeg3.patch
@@ -0,0 +1,500 @@
+commit 97c2dd0de4f578ad40d547eddf78fcb1e4a008a4
+Author: Dan Dennedy <dan@dennedy.org>
+Date: Sat Sep 5 13:06:21 2015 -0700
+
+ Fix avformat build against FFmpeg and Libav master.
+
+ This drops support for FFmpeg v1.0; requires at least v1.1. Still works
+ with Libav v9.
+ CPU flags are no longer required/used by libswscale. They are detected
+ at runtime automatically.
+
+diff --git a/src/modules/avformat/consumer_avformat.c b/src/modules/avformat/consumer_avformat.c
+index ef8b153..7947c47 100644
+--- a/src/modules/avformat/consumer_avformat.c
++++ b/src/modules/avformat/consumer_avformat.c
+@@ -439,18 +439,18 @@ static void apply_properties( void *obj, mlt_properties properties, int flags )
+ }
+ }
+
+-static enum PixelFormat pick_pix_fmt( mlt_image_format img_fmt )
++static enum AVPixelFormat pick_pix_fmt( mlt_image_format img_fmt )
+ {
+ switch ( img_fmt )
+ {
+ case mlt_image_rgb24:
+- return PIX_FMT_RGB24;
++ return AV_PIX_FMT_RGB24;
+ case mlt_image_rgb24a:
+- return PIX_FMT_RGBA;
++ return AV_PIX_FMT_RGBA;
+ case mlt_image_yuv420p:
+- return PIX_FMT_YUV420P;
++ return AV_PIX_FMT_YUV420P;
+ default:
+- return PIX_FMT_YUYV422;
++ return AV_PIX_FMT_YUYV422;
+ }
+ }
+
+@@ -798,7 +798,7 @@ static AVStream *add_video_stream( mlt_consumer consumer, AVFormatContext *oc, A
+ st->time_base = c->time_base;
+
+ // Default to the codec's first pix_fmt if possible.
+- c->pix_fmt = pix_fmt? av_get_pix_fmt( pix_fmt ) : codec? codec->pix_fmts[0] : PIX_FMT_YUV420P;
++ c->pix_fmt = pix_fmt? av_get_pix_fmt( pix_fmt ) : codec? codec->pix_fmts[0] : AV_PIX_FMT_YUV420P;
+
+ switch ( colorspace )
+ {
+@@ -1032,7 +1032,7 @@ static int open_video( mlt_properties properties, AVFormatContext *oc, AVStream
+
+ if( codec && codec->pix_fmts )
+ {
+- const enum PixelFormat *p = codec->pix_fmts;
++ const enum AVPixelFormat *p = codec->pix_fmts;
+ for( ; *p!=-1; p++ )
+ {
+ if( *p == video_enc->pix_fmt )
+@@ -1791,12 +1791,6 @@ static void *consumer_thread( void *arg )
+
+ // Do the colour space conversion
+ int flags = SWS_BICUBIC;
+-#ifdef USE_MMX
+- flags |= SWS_CPU_CAPS_MMX;
+-#endif
+-#ifdef USE_SSE
+- flags |= SWS_CPU_CAPS_MMX2;
+-#endif
+ struct SwsContext *context = sws_getContext( width, height, pick_pix_fmt( img_fmt ),
+ width, height, c->pix_fmt, flags, NULL, NULL, NULL);
+ sws_scale( context, (const uint8_t* const*) video_avframe->data, video_avframe->linesize, 0, height,
+@@ -1808,9 +1802,9 @@ static void *consumer_thread( void *arg )
+ // Apply the alpha if applicable
+ if ( !mlt_properties_get( properties, "mlt_image_format" ) ||
+ strcmp( mlt_properties_get( properties, "mlt_image_format" ), "rgb24a" ) )
+- if ( c->pix_fmt == PIX_FMT_RGBA ||
+- c->pix_fmt == PIX_FMT_ARGB ||
+- c->pix_fmt == PIX_FMT_BGRA )
++ if ( c->pix_fmt == AV_PIX_FMT_RGBA ||
++ c->pix_fmt == AV_PIX_FMT_ARGB ||
++ c->pix_fmt == AV_PIX_FMT_BGRA )
+ {
+ uint8_t *alpha = mlt_frame_get_alpha_mask( frame );
+ register int n;
+@@ -1844,8 +1838,6 @@ static void *consumer_thread( void *arg )
+ av_init_packet(&pkt);
+
+ // Set frame interlace hints
+- c->coded_frame->interlaced_frame = !mlt_properties_get_int( frame_properties, "progressive" );
+- c->coded_frame->top_field_first = mlt_properties_get_int( frame_properties, "top_field_first" );
+ if ( mlt_properties_get_int( frame_properties, "progressive" ) )
+ c->field_order = AV_FIELD_PROGRESSIVE;
+ else
+diff --git a/src/modules/avformat/filter_avcolour_space.c b/src/modules/avformat/filter_avcolour_space.c
+index f70fd08..910de0c 100644
+--- a/src/modules/avformat/filter_avcolour_space.c
++++ b/src/modules/avformat/filter_avcolour_space.c
+@@ -47,17 +47,17 @@ static int convert_mlt_to_av_cs( mlt_image_format format )
+ switch( format )
+ {
+ case mlt_image_rgb24:
+- value = PIX_FMT_RGB24;
++ value = AV_PIX_FMT_RGB24;
+ break;
+ case mlt_image_rgb24a:
+ case mlt_image_opengl:
+- value = PIX_FMT_RGBA;
++ value = AV_PIX_FMT_RGBA;
+ break;
+ case mlt_image_yuv422:
+- value = PIX_FMT_YUYV422;
++ value = AV_PIX_FMT_YUYV422;
+ break;
+ case mlt_image_yuv420p:
+- value = PIX_FMT_YUV420P;
++ value = AV_PIX_FMT_YUV420P;
+ break;
+ default:
+ mlt_log_error( NULL, "[filter avcolor_space] Invalid format %s\n",
+@@ -123,16 +123,10 @@ static int av_convert_image( uint8_t *out, uint8_t *in, int out_fmt, int in_fmt,
+ int flags = SWS_BICUBIC | SWS_ACCURATE_RND;
+ int error = -1;
+
+- if ( out_fmt == PIX_FMT_YUYV422 )
++ if ( out_fmt == AV_PIX_FMT_YUYV422 )
+ flags |= SWS_FULL_CHR_H_INP;
+ else
+ flags |= SWS_FULL_CHR_H_INT;
+-#ifdef USE_MMX
+- flags |= SWS_CPU_CAPS_MMX;
+-#endif
+-#ifdef USE_SSE
+- flags |= SWS_CPU_CAPS_MMX2;
+-#endif
+
+ avpicture_fill( &input, in, in_fmt, width, height );
+ avpicture_fill( &output, out, out_fmt, width, height );
+@@ -141,7 +135,7 @@ static int av_convert_image( uint8_t *out, uint8_t *in, int out_fmt, int in_fmt,
+ if ( context )
+ {
+ // libswscale wants the RGB colorspace to be SWS_CS_DEFAULT, which is = SWS_CS_ITU601.
+- if ( out_fmt == PIX_FMT_RGB24 || out_fmt == PIX_FMT_RGBA )
++ if ( out_fmt == AV_PIX_FMT_RGB24 || out_fmt == AV_PIX_FMT_RGBA )
+ dst_colorspace = 601;
+ error = set_luma_transfer( context, src_colorspace, dst_colorspace, use_full_range );
+ sws_scale( context, (const uint8_t* const*) input.data, input.linesize, 0, height,
+@@ -326,7 +320,7 @@ mlt_filter filter_avcolour_space_init( void *arg )
+ int *width = (int*) arg;
+ if ( *width > 0 )
+ {
+- struct SwsContext *context = sws_getContext( *width, *width, PIX_FMT_RGB32, 64, 64, PIX_FMT_RGB32, SWS_BILINEAR, NULL, NULL, NULL);
++ struct SwsContext *context = sws_getContext( *width, *width, AV_PIX_FMT_RGB32, 64, 64, AV_PIX_FMT_RGB32, SWS_BILINEAR, NULL, NULL, NULL);
+ if ( context )
+ sws_freeContext( context );
+ else
+diff --git a/src/modules/avformat/filter_avdeinterlace.c b/src/modules/avformat/filter_avdeinterlace.c
+index 9c0189e..91c435c 100644
+--- a/src/modules/avformat/filter_avdeinterlace.c
++++ b/src/modules/avformat/filter_avdeinterlace.c
+@@ -234,28 +234,28 @@ static int mlt_avpicture_deinterlace(AVPicture *dst, const AVPicture *src,
+ {
+ int i;
+
+- if (pix_fmt != PIX_FMT_YUV420P &&
+- pix_fmt != PIX_FMT_YUV422P &&
+- pix_fmt != PIX_FMT_YUYV422 &&
+- pix_fmt != PIX_FMT_YUV444P &&
+- pix_fmt != PIX_FMT_YUV411P)
++ if (pix_fmt != AV_PIX_FMT_YUV420P &&
++ pix_fmt != AV_PIX_FMT_YUV422P &&
++ pix_fmt != AV_PIX_FMT_YUYV422 &&
++ pix_fmt != AV_PIX_FMT_YUV444P &&
++ pix_fmt != AV_PIX_FMT_YUV411P)
+ return -1;
+ if ((width & 3) != 0 || (height & 3) != 0)
+ return -1;
+
+- if ( pix_fmt != PIX_FMT_YUYV422 )
++ if ( pix_fmt != AV_PIX_FMT_YUYV422 )
+ {
+ for(i=0;i<3;i++) {
+ if (i == 1) {
+ switch(pix_fmt) {
+- case PIX_FMT_YUV420P:
++ case AV_PIX_FMT_YUV420P:
+ width >>= 1;
+ height >>= 1;
+ break;
+- case PIX_FMT_YUV422P:
++ case AV_PIX_FMT_YUV422P:
+ width >>= 1;
+ break;
+- case PIX_FMT_YUV411P:
++ case AV_PIX_FMT_YUV411P:
+ width >>= 2;
+ break;
+ default:
+@@ -312,8 +312,8 @@ static int filter_get_image( mlt_frame frame, uint8_t **image, mlt_image_format
+ AVPicture *output = mlt_pool_alloc( sizeof( AVPicture ) );
+
+ // Fill the picture
+- avpicture_fill( output, *image, PIX_FMT_YUYV422, *width, *height );
+- mlt_avpicture_deinterlace( output, output, PIX_FMT_YUYV422, *width, *height );
++ avpicture_fill( output, *image, AV_PIX_FMT_YUYV422, *width, *height );
++ mlt_avpicture_deinterlace( output, output, AV_PIX_FMT_YUYV422, *width, *height );
+
+ // Free the picture
+ mlt_pool_release( output );
+diff --git a/src/modules/avformat/filter_swscale.c b/src/modules/avformat/filter_swscale.c
+index b8213a3..37c156d 100644
+--- a/src/modules/avformat/filter_swscale.c
++++ b/src/modules/avformat/filter_swscale.c
+@@ -37,17 +37,17 @@ static inline int convert_mlt_to_av_cs( mlt_image_format format )
+ switch( format )
+ {
+ case mlt_image_rgb24:
+- value = PIX_FMT_RGB24;
++ value = AV_PIX_FMT_RGB24;
+ break;
+ case mlt_image_rgb24a:
+ case mlt_image_opengl:
+- value = PIX_FMT_RGBA;
++ value = AV_PIX_FMT_RGBA;
+ break;
+ case mlt_image_yuv422:
+- value = PIX_FMT_YUYV422;
++ value = AV_PIX_FMT_YUYV422;
+ break;
+ case mlt_image_yuv420p:
+- value = PIX_FMT_YUV420P;
++ value = AV_PIX_FMT_YUV420P;
+ break;
+ default:
+ fprintf( stderr, "Invalid format...\n" );
+@@ -108,12 +108,6 @@ static int filter_scale( mlt_frame frame, uint8_t **image, mlt_image_format *for
+ // XXX: we only know how to rescale packed formats
+ return 1;
+ }
+-#ifdef USE_MMX
+- interp |= SWS_CPU_CAPS_MMX;
+-#endif
+-#ifdef USE_SSE
+- interp |= SWS_CPU_CAPS_MMX2;
+-#endif
+
+ // Convert the pixel formats
+ int avformat = convert_mlt_to_av_cs( *format );
+@@ -148,7 +142,7 @@ static int filter_scale( mlt_frame frame, uint8_t **image, mlt_image_format *for
+ uint8_t *alpha = mlt_frame_get_alpha( frame );
+ if ( alpha )
+ {
+- avformat = PIX_FMT_GRAY8;
++ avformat = AV_PIX_FMT_GRAY8;
+ struct SwsContext *context = sws_getContext( iwidth, iheight, avformat, owidth, oheight, avformat, interp, NULL, NULL, NULL);
+ avpicture_fill( &input, alpha, avformat, iwidth, iheight );
+ outbuf = mlt_pool_alloc( owidth * oheight );
+@@ -182,7 +176,7 @@ mlt_filter filter_swscale_init( mlt_profile profile, void *arg )
+ int *width = (int*) arg;
+ if ( *width > 0 )
+ {
+- struct SwsContext *context = sws_getContext( *width, *width, PIX_FMT_RGB32, 64, 64, PIX_FMT_RGB32, SWS_BILINEAR, NULL, NULL, NULL);
++ struct SwsContext *context = sws_getContext( *width, *width, AV_PIX_FMT_RGB32, 64, 64, AV_PIX_FMT_RGB32, SWS_BILINEAR, NULL, NULL, NULL);
+ if ( context )
+ sws_freeContext( context );
+ else
+diff --git a/src/modules/avformat/producer_avformat.c b/src/modules/avformat/producer_avformat.c
+index 3495e2a..55e326d 100644
+--- a/src/modules/avformat/producer_avformat.c
++++ b/src/modules/avformat/producer_avformat.c
+@@ -33,6 +33,7 @@
+ #include <libavutil/pixdesc.h>
+ #include <libavutil/dict.h>
+ #include <libavutil/opt.h>
++#include <libavutil/channel_layout.h>
+
+ #ifdef VDPAU
+ # include <libavcodec/vdpau.h>
+@@ -504,21 +505,21 @@ static char* parse_url( mlt_profile profile, const char* URL, AVInputFormat **fo
+ return result;
+ }
+
+-static enum PixelFormat pick_pix_fmt( enum PixelFormat pix_fmt )
++static enum AVPixelFormat pick_pix_fmt( enum AVPixelFormat pix_fmt )
+ {
+ switch ( pix_fmt )
+ {
+- case PIX_FMT_ARGB:
+- case PIX_FMT_RGBA:
+- case PIX_FMT_ABGR:
+- case PIX_FMT_BGRA:
+- return PIX_FMT_RGBA;
++ case AV_PIX_FMT_ARGB:
++ case AV_PIX_FMT_RGBA:
++ case AV_PIX_FMT_ABGR:
++ case AV_PIX_FMT_BGRA:
++ return AV_PIX_FMT_RGBA;
+ #if defined(FFUDIV) && (LIBSWSCALE_VERSION_INT >= ((2<<16)+(5<<8)+102))
+ case AV_PIX_FMT_BAYER_RGGB16LE:
+- return PIX_FMT_RGB24;
++ return AV_PIX_FMT_RGB24;
+ #endif
+ default:
+- return PIX_FMT_YUV422P;
++ return AV_PIX_FMT_YUV422P;
+ }
+ }
+
+@@ -976,26 +977,26 @@ static int set_luma_transfer( struct SwsContext *context, int src_colorspace,
+ brightness, contrast, saturation );
+ }
+
+-static mlt_image_format pick_image_format( enum PixelFormat pix_fmt )
++static mlt_image_format pick_image_format( enum AVPixelFormat pix_fmt )
+ {
+ switch ( pix_fmt )
+ {
+- case PIX_FMT_ARGB:
+- case PIX_FMT_RGBA:
+- case PIX_FMT_ABGR:
+- case PIX_FMT_BGRA:
++ case AV_PIX_FMT_ARGB:
++ case AV_PIX_FMT_RGBA:
++ case AV_PIX_FMT_ABGR:
++ case AV_PIX_FMT_BGRA:
+ return mlt_image_rgb24a;
+- case PIX_FMT_YUV420P:
+- case PIX_FMT_YUVJ420P:
+- case PIX_FMT_YUVA420P:
++ case AV_PIX_FMT_YUV420P:
++ case AV_PIX_FMT_YUVJ420P:
++ case AV_PIX_FMT_YUVA420P:
+ return mlt_image_yuv420p;
+- case PIX_FMT_RGB24:
+- case PIX_FMT_BGR24:
+- case PIX_FMT_GRAY8:
+- case PIX_FMT_MONOWHITE:
+- case PIX_FMT_MONOBLACK:
+- case PIX_FMT_RGB8:
+- case PIX_FMT_BGR8:
++ case AV_PIX_FMT_RGB24:
++ case AV_PIX_FMT_BGR24:
++ case AV_PIX_FMT_GRAY8:
++ case AV_PIX_FMT_MONOWHITE:
++ case AV_PIX_FMT_MONOBLACK:
++ case AV_PIX_FMT_RGB8:
++ case AV_PIX_FMT_BGR8:
+ #if defined(FFUDIV) && (LIBSWSCALE_VERSION_INT >= ((2<<16)+(5<<8)+102))
+ case AV_PIX_FMT_BAYER_RGGB16LE:
+ return mlt_image_rgb24;
+@@ -1071,21 +1072,14 @@ static int convert_image( producer_avformat self, AVFrame *frame, uint8_t *buffe
+ mlt_profile profile = mlt_service_profile( MLT_PRODUCER_SERVICE( self->parent ) );
+ int result = self->yuv_colorspace;
+
+-#ifdef USE_MMX
+- flags |= SWS_CPU_CAPS_MMX;
+-#endif
+-#ifdef USE_SSE
+- flags |= SWS_CPU_CAPS_MMX2;
+-#endif
+-
+ mlt_log_debug( MLT_PRODUCER_SERVICE(self->parent), "%s @ %dx%d space %d->%d\n",
+ mlt_image_format_name( *format ),
+ width, height, self->yuv_colorspace, profile->colorspace );
+
+ // extract alpha from planar formats
+- if ( ( pix_fmt == PIX_FMT_YUVA420P
++ if ( ( pix_fmt == AV_PIX_FMT_YUVA420P
+ #if defined(FFUDIV)
+- || pix_fmt == PIX_FMT_YUVA444P
++ || pix_fmt == AV_PIX_FMT_YUVA444P
+ #endif
+ ) &&
+ *format != mlt_image_rgb24a && *format != mlt_image_opengl &&
+@@ -1110,10 +1104,10 @@ static int convert_image( producer_avformat self, AVFrame *frame, uint8_t *buffe
+ // avformat with no filters and explicitly requested.
+ #if defined(FFUDIV) && (LIBAVFORMAT_VERSION_INT >= ((55<<16)+(48<<8)+100))
+ struct SwsContext *context = sws_getContext(width, height, src_pix_fmt,
+- width, height, PIX_FMT_YUV420P, flags, NULL, NULL, NULL);
++ width, height, AV_PIX_FMT_YUV420P, flags, NULL, NULL, NULL);
+ #else
+ struct SwsContext *context = sws_getContext( width, height, pix_fmt,
+- width, height, self->full_luma ? PIX_FMT_YUVJ420P : PIX_FMT_YUV420P,
++ width, height, self->full_luma ? AV_PIX_FMT_YUVJ420P : AV_PIX_FMT_YUV420P,
+ flags, NULL, NULL, NULL);
+ #endif
+
+@@ -1133,9 +1127,9 @@ static int convert_image( producer_avformat self, AVFrame *frame, uint8_t *buffe
+ else if ( *format == mlt_image_rgb24 )
+ {
+ struct SwsContext *context = sws_getContext( width, height, src_pix_fmt,
+- width, height, PIX_FMT_RGB24, flags | SWS_FULL_CHR_H_INT, NULL, NULL, NULL);
++ width, height, AV_PIX_FMT_RGB24, flags | SWS_FULL_CHR_H_INT, NULL, NULL, NULL);
+ AVPicture output;
+- avpicture_fill( &output, buffer, PIX_FMT_RGB24, width, height );
++ avpicture_fill( &output, buffer, AV_PIX_FMT_RGB24, width, height );
+ // libswscale wants the RGB colorspace to be SWS_CS_DEFAULT, which is = SWS_CS_ITU601.
+ set_luma_transfer( context, self->yuv_colorspace, 601, self->full_luma, 0 );
+ sws_scale( context, (const uint8_t* const*) frame->data, frame->linesize, 0, height,
+@@ -1145,9 +1139,9 @@ static int convert_image( producer_avformat self, AVFrame *frame, uint8_t *buffe
+ else if ( *format == mlt_image_rgb24a || *format == mlt_image_opengl )
+ {
+ struct SwsContext *context = sws_getContext( width, height, src_pix_fmt,
+- width, height, PIX_FMT_RGBA, flags | SWS_FULL_CHR_H_INT, NULL, NULL, NULL);
++ width, height, AV_PIX_FMT_RGBA, flags | SWS_FULL_CHR_H_INT, NULL, NULL, NULL);
+ AVPicture output;
+- avpicture_fill( &output, buffer, PIX_FMT_RGBA, width, height );
++ avpicture_fill( &output, buffer, AV_PIX_FMT_RGBA, width, height );
+ // libswscale wants the RGB colorspace to be SWS_CS_DEFAULT, which is = SWS_CS_ITU601.
+ set_luma_transfer( context, self->yuv_colorspace, 601, self->full_luma, 0 );
+ sws_scale( context, (const uint8_t* const*) frame->data, frame->linesize, 0, height,
+@@ -1158,13 +1152,13 @@ static int convert_image( producer_avformat self, AVFrame *frame, uint8_t *buffe
+ {
+ #if defined(FFUDIV) && (LIBAVFORMAT_VERSION_INT >= ((55<<16)+(48<<8)+100))
+ struct SwsContext *context = sws_getContext( width, height, src_pix_fmt,
+- width, height, PIX_FMT_YUYV422, flags | SWS_FULL_CHR_H_INP, NULL, NULL, NULL);
++ width, height, AV_PIX_FMT_YUYV422, flags | SWS_FULL_CHR_H_INP, NULL, NULL, NULL);
+ #else
+ struct SwsContext *context = sws_getContext( width, height, pix_fmt,
+- width, height, PIX_FMT_YUYV422, flags | SWS_FULL_CHR_H_INP, NULL, NULL, NULL);
++ width, height, AV_PIX_FMT_YUYV422, flags | SWS_FULL_CHR_H_INP, NULL, NULL, NULL);
+ #endif
+ AVPicture output;
+- avpicture_fill( &output, buffer, PIX_FMT_YUYV422, width, height );
++ avpicture_fill( &output, buffer, AV_PIX_FMT_YUYV422, width, height );
+ if ( !set_luma_transfer( context, self->yuv_colorspace, profile->colorspace, self->full_luma, 0 ) )
+ result = profile->colorspace;
+ sws_scale( context, (const uint8_t* const*) frame->data, frame->linesize, 0, height,
+@@ -1297,12 +1291,11 @@ static int producer_get_image( mlt_frame frame, uint8_t **buffer, mlt_image_form
+ double delay = mlt_properties_get_double( properties, "video_delay" );
+
+ // Seek if necessary
+- const char *interp = mlt_properties_get( frame_properties, "rescale.interp" );
+- int preseek = must_decode
++ int preseek = must_decode && codec_context->has_b_frames;
+ #if defined(FFUDIV)
+- && ( interp && strcmp( interp, "nearest" ) )
++ const char *interp = mlt_properties_get( frame_properties, "rescale.interp" );
++ preseek = preseek && interp && strcmp( interp, "nearest" );
+ #endif
+- && codec_context->has_b_frames;
+ int paused = seek_video( self, position, req_position, preseek );
+
+ // Seek might have reopened the file
+@@ -1310,10 +1303,10 @@ static int producer_get_image( mlt_frame frame, uint8_t **buffer, mlt_image_form
+ stream = context->streams[ self->video_index ];
+ codec_context = stream->codec;
+ if ( *format == mlt_image_none || *format == mlt_image_glsl ||
+- codec_context->pix_fmt == PIX_FMT_ARGB ||
+- codec_context->pix_fmt == PIX_FMT_RGBA ||
+- codec_context->pix_fmt == PIX_FMT_ABGR ||
+- codec_context->pix_fmt == PIX_FMT_BGRA )
++ codec_context->pix_fmt == AV_PIX_FMT_ARGB ||
++ codec_context->pix_fmt == AV_PIX_FMT_RGBA ||
++ codec_context->pix_fmt == AV_PIX_FMT_ABGR ||
++ codec_context->pix_fmt == AV_PIX_FMT_BGRA )
+ *format = pick_image_format( codec_context->pix_fmt );
+ #if defined(FFUDIV) && (LIBSWSCALE_VERSION_INT >= ((2<<16)+(5<<8)+102))
+ else if ( codec_context->pix_fmt == AV_PIX_FMT_BAYER_RGGB16LE ) {
+@@ -1346,7 +1339,7 @@ static int producer_get_image( mlt_frame frame, uint8_t **buffer, mlt_image_form
+ picture.linesize[1] = codec_context->width / 2;
+ picture.linesize[2] = codec_context->width / 2;
+ yuv_colorspace = convert_image( self, (AVFrame*) &picture, *buffer,
+- PIX_FMT_YUV420P, format, *width, *height, &alpha );
++ AV_PIX_FMT_YUV420P, format, *width, *height, &alpha );
+ }
+ else
+ #endif
+@@ -1539,7 +1532,7 @@ static int producer_get_image( mlt_frame frame, uint8_t **buffer, mlt_image_form
+ VdpStatus status = vdp_surface_get_bits( render->surface, dest_format, planes, pitches );
+ if ( status == VDP_STATUS_OK )
+ {
+- yuv_colorspace = convert_image( self, self->video_frame, *buffer, PIX_FMT_YUV420P,
++ yuv_colorspace = convert_image( self, self->video_frame, *buffer, AV_PIX_FMT_YUV420P,
+ format, *width, *height, &alpha );
+ mlt_properties_set_int( frame_properties, "colorspace", yuv_colorspace );
+ }
+diff --git a/src/modules/avformat/vdpau.c b/src/modules/avformat/vdpau.c
+index 719db1c..4f2e6b9 100644
+--- a/src/modules/avformat/vdpau.c
++++ b/src/modules/avformat/vdpau.c
+@@ -136,9 +136,9 @@ static int vdpau_init( producer_avformat self )
+ return success;
+ }
+
+-static enum PixelFormat vdpau_get_format( struct AVCodecContext *s, const enum PixelFormat *fmt )
++static enum AVPixelFormat vdpau_get_format( struct AVCodecContext *s, const enum AVPixelFormat *fmt )
+ {
+- return PIX_FMT_VDPAU_H264;
++ return AV_PIX_FMT_VDPAU_H264;
+ }
+
+ static int vdpau_get_buffer( AVCodecContext *codec_context, AVFrame *frame )
+@@ -240,7 +240,7 @@ static int vdpau_decoder_init( producer_avformat self )
+ self->video_codec->release_buffer = vdpau_release_buffer;
+ self->video_codec->draw_horiz_band = vdpau_draw_horiz;
+ self->video_codec->slice_flags = SLICE_FLAG_CODED_ORDER | SLICE_FLAG_ALLOW_FIELD;
+- self->video_codec->pix_fmt = PIX_FMT_VDPAU_H264;
++ self->video_codec->pix_fmt = AV_PIX_FMT_VDPAU_H264;
+
+ VdpDecoderProfile profile = VDP_DECODER_PROFILE_H264_HIGH;
+ uint32_t max_references = self->video_codec->refs;
diff --git a/media-libs/mlt/mlt-0.9.8-r2.ebuild b/media-libs/mlt/mlt-0.9.8-r2.ebuild
index 248d021..8251f54 100644
--- a/media-libs/mlt/mlt-0.9.8-r2.ebuild
+++ b/media-libs/mlt/mlt-0.9.8-r2.ebuild
@@ -92,7 +92,8 @@ pkg_setup() {
}
src_prepare() {
- epatch "${FILESDIR}"/${PN}-0.9.8-ruby-link.patch
+ epatch "${FILESDIR}"/${PN}-0.9.8-ruby-link.patch \
+ "${FILESDIR}/${P}-ffmpeg3.patch"
# respect CFLAGS LDFLAGS when building shared libraries. Bug #308873
for x in python lua; do
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-libs/mlt/, media-libs/mlt/files/
@ 2016-05-11 18:06 Michael Palimaka
0 siblings, 0 replies; 23+ messages in thread
From: Michael Palimaka @ 2016-05-11 18:06 UTC (permalink / raw
To: gentoo-commits
commit: a467a6fb1a263c339781200f0708a76935fbeede
Author: Michael Palimaka <kensington <AT> gentoo <DOT> org>
AuthorDate: Wed May 11 18:05:44 2016 +0000
Commit: Michael Palimaka <kensington <AT> gentoo <DOT> org>
CommitDate: Wed May 11 18:06:38 2016 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a467a6fb
media-libs/mlt: version bump
Package-Manager: portage-2.2.28
media-libs/mlt/Manifest | 1 +
media-libs/mlt/files/mlt-6.2.0-ruby-link.patch | 18 ++
media-libs/mlt/mlt-6.2.0.ebuild | 218 +++++++++++++++++++++++++
3 files changed, 237 insertions(+)
diff --git a/media-libs/mlt/Manifest b/media-libs/mlt/Manifest
index 066e75d..dc39b38 100644
--- a/media-libs/mlt/Manifest
+++ b/media-libs/mlt/Manifest
@@ -1,2 +1,3 @@
DIST mlt-0.9.0.tar.gz 1167943 SHA256 f20c6a9c9acaed3da84c601bf9293b2d148168386e5be2bc55651a75f95c1cc9 SHA512 631ab41ee6e3673c712f784b9c02b567a5e3b982d49eabe032ef20e89be9424cf9ce6d97fe6906f03b0ac082544316ba8524ae041d017aeac009ab9b98d457d9 WHIRLPOOL b39e78837f2f2785721315ac174d106e33bafd2dd55b8883b254a39dc98f664be29ce3e84413d2ba55f881bb42ca10c36a9117de00b1a5efc3dff8577a6a29af
DIST mlt-0.9.8.tar.gz 1263364 SHA256 1214d6ad7fd1c3d36f0b1e64fd1c8d8a7ab6290e8452396003e79d58c0d21074 SHA512 2f3db19cbff8bdd11c53fe835fcc1c32d775ead061b2e225466376be98c622cdd18e67f66becda503a57725ac9a296bc48aae4c3ae1111ed09ba878f61fd1e10 WHIRLPOOL 615323613eeee9ea80f8d6727a05129a9dc32097a8c2bf41cb818843fa8d47885744c1534fd7d26817262f60404e4caa12ea67ae9b3f59984874981865ee9148
+DIST mlt-6.2.0.tar.gz 1314506 SHA256 dd2ee742e89620de78a259790f92a7cadad67f0e0a6c1ea7ed932f96fb739fff SHA512 a36ee9c0684511dfa83e08027671d7c6f2c19741cc0504a12d19b4f859c596ca3457108785fa8d7321f5ba83f9498b9be26abb0d857b86743d0ec61e6fb2745b WHIRLPOOL a1554d58d7373711b8e99a185e0e57807ba438f1647480971feec26f6b7123af1c811a6219311d69444277e6ac1da95a1d7c8d351271dd0e3a80913028dba3fc
diff --git a/media-libs/mlt/files/mlt-6.2.0-ruby-link.patch b/media-libs/mlt/files/mlt-6.2.0-ruby-link.patch
new file mode 100644
index 0000000..35341b4
--- /dev/null
+++ b/media-libs/mlt/files/mlt-6.2.0-ruby-link.patch
@@ -0,0 +1,18 @@
+The build system tries to link to installed system libraries first, which
+fails because the ABI has changed...
+
+--- a/src/swig/ruby/build
++++ b/src/swig/ruby/build
+@@ -5,9 +5,11 @@
+ exit 0
+ end
+ system( "ln -sf ../mlt.i" )
++system( "ln -sf ../../framework/libmlt.so" )
++system( "ln -sf ../../mlt++/libmlt++.so" )
+ system( "swig -c++ -ruby -I../../mlt++ -I../.. mlt.i" )
+ $CFLAGS = $CFLAGS.to_s + " -I../.. " + (ENV.has_key?('CXXFLAGS')? ENV['CXXFLAGS'] : '')
+ $CXXFLAGS = $CXXFLAGS.to_s + " -I../.. " + (ENV.has_key?('CXXFLAGS')? ENV['CXXFLAGS'] : '')
+-$LDFLAGS = $LDFLAGS.to_s + " -L../../mlt++ -lmlt++"
++$LIBS += " -lmlt++ -lmlt -lstdc++"
+ create_makefile('mlt')
+ system( "make V=1" )
diff --git a/media-libs/mlt/mlt-6.2.0.ebuild b/media-libs/mlt/mlt-6.2.0.ebuild
new file mode 100644
index 0000000..663b866
--- /dev/null
+++ b/media-libs/mlt/mlt-6.2.0.ebuild
@@ -0,0 +1,218 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 )
+USE_RUBY="ruby20"
+inherit eutils toolchain-funcs multilib python-single-r1 ruby-single
+
+DESCRIPTION="Open source multimedia framework for television broadcasting"
+HOMEPAGE="http://www.mltframework.org/"
+SRC_URI="https://github.com/mltframework/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux"
+IUSE="compressed-lumas debug ffmpeg fftw frei0r gtk jack kde kdenlive libav libsamplerate melt opengl
+cpu_flags_x86_mmx qt4 qt5 rtaudio sdl cpu_flags_x86_sse cpu_flags_x86_sse2 xine xml lua python ruby vdpau"
+# java perl php tcl vidstab
+IUSE="${IUSE} kernel_linux"
+
+#rtaudio will use OSS on non linux OSes
+COMMON_DEPEND="
+ ffmpeg? (
+ libav? ( media-video/libav:0=[vdpau?] )
+ !libav? ( media-video/ffmpeg:0=[vdpau?] )
+ )
+ xml? ( >=dev-libs/libxml2-2.5 )
+ sdl? ( >=media-libs/libsdl-1.2.10[X,opengl,video]
+ >=media-libs/sdl-image-1.2.4 )
+ libsamplerate? ( >=media-libs/libsamplerate-0.1.2 )
+ jack? ( >=media-sound/jack-audio-connection-kit-0.121.3
+ media-libs/ladspa-sdk
+ >=dev-libs/libxml2-2.5 )
+ fftw? ( sci-libs/fftw:3.0= )
+ frei0r? ( media-plugins/frei0r-plugins )
+ gtk? ( x11-libs/gtk+:2
+ media-libs/libexif
+ x11-libs/pango )
+ opengl? ( media-video/movit )
+ rtaudio? ( kernel_linux? ( media-libs/alsa-lib ) )
+ xine? ( >=media-libs/xine-lib-1.1.2_pre20060328-r7 )
+ qt5? (
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtsvg:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtxml:5
+ media-libs/libexif
+ x11-libs/libX11
+ opengl? ( dev-qt/qtopengl:5 )
+ )
+ qt4? (
+ dev-qt/qtcore:4
+ dev-qt/qtgui:4
+ dev-qt/qtsvg:4
+ media-libs/libexif
+ x11-libs/libX11
+ opengl? ( dev-qt/qtopengl:4 )
+ )
+ kde? ( kde-base/kdelibs:4 )
+ lua? ( >=dev-lang/lua-5.1.4-r4:= )
+ ruby? ( ${RUBY_DEPS} )"
+# sox? ( media-sound/sox )
+# java? ( >=virtual/jre-1.5 )
+# perl? ( dev-lang/perl )
+# php? ( dev-lang/php )
+# tcl? ( dev-lang/tcl:0= )
+# vidstab? ( media-libs/libvidstab )
+SWIG_DEPEND=">=dev-lang/swig-2.0"
+DEPEND="${COMMON_DEPEND}
+ virtual/pkgconfig
+ compressed-lumas? ( || ( media-gfx/imagemagick[png]
+ media-gfx/graphicsmagick[imagemagick,png] ) )
+ lua? ( ${SWIG_DEPEND} virtual/pkgconfig )
+ python? ( ${SWIG_DEPEND} ${PYTHON_DEPS} )
+ ruby? ( ${SWIG_DEPEND} )"
+# java? ( ${SWIG_DEPEND} >=virtual/jdk-1.5 )
+# perl? ( ${SWIG_DEPEND} )
+# php? ( ${SWIG_DEPEND} )
+# tcl? ( ${SWIG_DEPEND} )
+RDEPEND="${COMMON_DEPEND}
+ !media-libs/mlt++
+"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )
+ qt5? ( !qt4 ) kde? ( qt4 )
+"
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+
+ epatch "${FILESDIR}"/${PN}-6.2.0-ruby-link.patch
+
+ # respect CFLAGS LDFLAGS when building shared libraries. Bug #308873
+ for x in python lua; do
+ sed -i "/mlt.so/s: -lmlt++ :& ${CFLAGS} ${LDFLAGS} :" src/swig/$x/build || die
+ done
+ sed -i "/^LDFLAGS/s: += :& ${LDFLAGS} :" src/swig/ruby/build || die
+
+ default
+}
+
+src_configure() {
+ tc-export CC CXX
+
+ local myconf="--enable-gpl
+ --enable-gpl3
+ --enable-motion-est
+e --target-arch=$(tc-arch)
+ --disable-swfdec
+ $(use_enable debug)
+ $(use compressed-lumas && echo ' --luma-compress')
+ $(use_enable cpu_flags_x86_sse sse)
+ $(use_enable cpu_flags_x86_sse2 sse2)
+ $(use_enable gtk gtk2)
+ $(use_enable sdl)
+ $(use_enable jack jackrack)
+ $(use_enable ffmpeg avformat)
+ $(use ffmpeg && echo ' --avformat-swscale')
+ $(use_enable fftw plus)
+ $(use_enable frei0r)
+ $(use_enable melt)
+ $(use_enable opengl)
+ $(use_enable libsamplerate resample)
+ $(use_enable rtaudio)
+ $(use vdpau && echo ' --avformat-vdpau')
+ $(use_enable xml)
+ $(use_enable xine)
+ $(use_enable kdenlive)
+ --disable-sox"
+ #$(use_enable sox) FIXME
+
+ # kde means kde4 at this point
+ if use qt5 ; then
+ myconf+=" --enable-qt
+ --qt-includedir=$(pkg-config Qt5Core --variable=includedir)
+ --qt-libdir=$(pkg-config Qt5Core --variable=libdir)"
+ elif use qt4 ; then
+ # pkg-config QtCore does not give us qt4 parent include dir
+ local qtinclude=$(pkg-config QtCore --variable=includedir)
+ [[ ${qtinclude} == *QtCore ]] && qtinclude=$(dirname ${qtinclude})
+ myconf+=" --enable-qt $(use_with kde)
+ --qt-includedir=${qtinclude}
+ --qt-libdir=$(pkg-config QtCore --variable=libdir)"
+ else
+ myconf+=" --disable-qt"
+ fi
+
+ if use x86 || use amd64 ; then
+ myconf+=" $(use_enable cpu_flags_x86_mmx mmx)"
+ else
+ myconf+=" --disable-mmx"
+ fi
+
+ if ! use melt; then
+ sed -i -e "s;src/melt;;" Makefile || die
+ fi
+
+ # TODO: add swig language bindings
+ # see also http://www.mltframework.org/twiki/bin/view/MLT/ExtremeMakeover
+
+ local swig_lang
+ # TODO: java perl php tcl
+ for i in lua python ruby ; do
+ use $i && swig_lang="${swig_lang} $i"
+ done
+ [ -z "${swig_lang}" ] && swig_lang="none"
+
+ econf ${myconf} --swig-languages="${swig_lang}"
+
+ sed -i -e s/^OPT/#OPT/ "${S}/config.mak" || die
+ if use qt5 || use qt4 ; then
+ if ! use opengl ; then
+ sed -i -e "/^USE_QT_OPENGL/ s/^/#/" "${S}/src/modules/qt/config.mak" || die
+ fi
+ fi
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ dodoc AUTHORS ChangeLog NEWS README docs/*.txt
+
+ dodir /usr/share/${PN}
+ insinto /usr/share/${PN}
+ doins -r demo
+
+ docinto swig
+
+ # Install SWIG bindings
+ if use lua; then
+ cd "${S}"/src/swig/lua || die
+ exeinto $(pkg-config --variable INSTALL_CMOD lua)
+ doexe mlt.so
+ dodoc play.lua
+ fi
+
+ if use python; then
+ cd "${S}"/src/swig/python || die
+ insinto $(python_get_sitedir)
+ doins mlt.py
+ exeinto $(python_get_sitedir)
+ doexe _mlt.so
+ dodoc play.py
+ python_optimize
+ fi
+
+ if use ruby; then
+ cd "${S}"/src/swig/ruby || die
+ exeinto $("${EPREFIX}"/usr/bin/ruby -r rbconfig -e 'print Config::CONFIG["sitearchdir"]')
+ doexe mlt.so
+ dodoc play.rb thumbs.rb
+ fi
+ # TODO: java perl php tcl
+}
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-libs/mlt/, media-libs/mlt/files/
@ 2017-10-28 12:17 Andreas Sturmlechner
0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2017-10-28 12:17 UTC (permalink / raw
To: gentoo-commits
commit: f24748fc142e1a02eea3423e22c239133f909deb
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sat Oct 28 11:56:32 2017 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Oct 28 12:17:15 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f24748fc
media-libs/mlt: Fix build w/ opencv-3.3
Thanks-to: Serge Gavrilov <serge <AT> pdmi.ras.ru>
Gentoo-bug: https://bugs.gentoo.org/631714
Package-Manager: Portage-2.3.13, Repoman-2.3.4
media-libs/mlt/files/mlt-6.4.1-opencv-3.3.patch | 33 +++++++++++++++++++++++++
media-libs/mlt/mlt-6.4.1-r3.ebuild | 1 +
2 files changed, 34 insertions(+)
diff --git a/media-libs/mlt/files/mlt-6.4.1-opencv-3.3.patch b/media-libs/mlt/files/mlt-6.4.1-opencv-3.3.patch
new file mode 100644
index 00000000000..0a3732da2e3
--- /dev/null
+++ b/media-libs/mlt/files/mlt-6.4.1-opencv-3.3.patch
@@ -0,0 +1,33 @@
+From 622ff3acf6256739bd547ade1ceca0e6df5022e6 Mon Sep 17 00:00:00 2001
+From: BoboopTeam <BoboopTeam@users.noreply.github.com>
+Date: Thu, 7 Sep 2017 22:14:48 +0200
+Subject: [PATCH] module: opencv: Remove deleted cv::Tracker::create()
+
+This static method is no longer present in OpenCV API, this workaround should fix compilation against OpenCV 3.3.0 and newer
+---
+ src/modules/opencv/filter_opencv_tracker.cpp | 10 +++++++---
+ 1 file changed, 7 insertions(+), 3 deletions(-)
+
+diff --git a/src/modules/opencv/filter_opencv_tracker.cpp b/src/modules/opencv/filter_opencv_tracker.cpp
+index 48ffb56b..3cfc07d2 100644
+--- a/src/modules/opencv/filter_opencv_tracker.cpp
++++ b/src/modules/opencv/filter_opencv_tracker.cpp
+@@ -111,11 +111,15 @@ static void analyze( mlt_filter filter, cv::Mat cvFrame, private_data* data, int
+ data->algo = mlt_properties_get( filter_properties, "algo" );
+ if ( data->algo == NULL || !strcmp(data->algo, "" ) )
+ {
+- data->tracker = cv::Tracker::create( "KCF" );
++ data->tracker = cv::TrackerKCF::create();
++ }
++ else if (!strcmp(data->algo, "MIL" ))
++ {
++ data->tracker = cv::TrackerMIL::create();
+ }
+ else
+- {
+- data->tracker = cv::Tracker::create( data->algo );
++ {
++ data->tracker = cv::TrackerBoosting::create();
+ }
+
+ // Discard previous results
diff --git a/media-libs/mlt/mlt-6.4.1-r3.ebuild b/media-libs/mlt/mlt-6.4.1-r3.ebuild
index 0e847602b09..68c20792d6f 100644
--- a/media-libs/mlt/mlt-6.4.1-r3.ebuild
+++ b/media-libs/mlt/mlt-6.4.1-r3.ebuild
@@ -86,6 +86,7 @@ RDEPEND="${COMMON_DEPEND}
PATCHES=(
"${FILESDIR}"/${PN}-6.2.0-ruby-link.patch
"${FILESDIR}"/${P}-libebur128-unbundle.patch
+ "${FILESDIR}"/${P}-opencv-3.3.patch
)
pkg_setup() {
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-libs/mlt/, media-libs/mlt/files/
@ 2017-11-15 23:45 Andreas Sturmlechner
0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2017-11-15 23:45 UTC (permalink / raw
To: gentoo-commits
commit: 3a9f7bedd4083a1808be16cadc82aa961ec983bf
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Tue Oct 31 18:58:14 2017 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Wed Nov 15 23:35:29 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3a9f7bed
media-libs/mlt: Add patches to drop bogus Qt5OpenGL DEPEND
Package-Manager: Portage-2.3.13, Repoman-2.3.4
media-libs/mlt/files/mlt-6.4.1-qtopengl-1.patch | 33 ++++
media-libs/mlt/files/mlt-6.4.1-qtopengl-2.patch | 61 +++++++
media-libs/mlt/mlt-6.4.1-r5.ebuild | 218 ++++++++++++++++++++++++
3 files changed, 312 insertions(+)
diff --git a/media-libs/mlt/files/mlt-6.4.1-qtopengl-1.patch b/media-libs/mlt/files/mlt-6.4.1-qtopengl-1.patch
new file mode 100644
index 00000000000..c00e8d05615
--- /dev/null
+++ b/media-libs/mlt/files/mlt-6.4.1-qtopengl-1.patch
@@ -0,0 +1,33 @@
+From d2a04ae77a6b2c82a2e12b9fb631beb8f825946d Mon Sep 17 00:00:00 2001
+From: Alberto Villa <avilla@FreeBSD.org>
+Date: Sat, 24 Dec 2016 05:07:54 +0100
+Subject: [PATCH] Move Qt OpenGL include(s) to Qt 4 specific code
+
+Only Qt 4 code references those files (QMutex and QWaitCondition are
+not OpenGL files, but still they're only useful in Qt 4 code).
+---
+ src/modules/qt/consumer_qglsl.cpp | 7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
+
+diff --git a/src/modules/qt/consumer_qglsl.cpp b/src/modules/qt/consumer_qglsl.cpp
+index 74840602..ca0cf383 100644
+--- a/src/modules/qt/consumer_qglsl.cpp
++++ b/src/modules/qt/consumer_qglsl.cpp
+@@ -20,13 +20,14 @@
+ #include "common.h"
+ #include <framework/mlt.h>
+ #include <QApplication>
+-#include <QGLWidget>
+-#include <QMutex>
+-#include <QWaitCondition>
+ #include <QtGlobal>
+
+ #if QT_VERSION < QT_VERSION_CHECK(5, 0, 0)
+
++#include <QGLWidget>
++#include <QMutex>
++#include <QWaitCondition>
++
+ class GLWidget : public QGLWidget
+ {
+ private:
diff --git a/media-libs/mlt/files/mlt-6.4.1-qtopengl-2.patch b/media-libs/mlt/files/mlt-6.4.1-qtopengl-2.patch
new file mode 100644
index 00000000000..5f98f12bbb1
--- /dev/null
+++ b/media-libs/mlt/files/mlt-6.4.1-qtopengl-2.patch
@@ -0,0 +1,61 @@
+From 6ba6cab570d824641f63c66b355ba28f0721811f Mon Sep 17 00:00:00 2001
+From: Alberto Villa <avilla@FreeBSD.org>
+Date: Sat, 24 Dec 2016 05:10:20 +0100
+Subject: [PATCH] Avoid looking for Qt5OpenGL module
+
+The OpenGL-related code needed by qimage was moved to Qt5Gui, which
+allows to safely remove the dependency on Qt 5 builds.
+
+Build tested on FreeBSD.
+---
+ src/modules/qt/configure | 20 +-------------------
+ 1 file changed, 1 insertion(+), 19 deletions(-)
+
+diff --git a/src/modules/qt/configure b/src/modules/qt/configure
+index 24803baf..7475dc09 100755
+--- a/src/modules/qt/configure
++++ b/src/modules/qt/configure
+@@ -107,14 +107,6 @@ else
+ then
+ echo QTCXXFLAGS=-I$qt_includedir -I$qt_includedir/QtCore -I$qt_includedir/QtGui -I$qt_includedir/QtXml -I$qt_includedir/QtSvg -I$qt_includedir/QtWidgets >> config.mak
+ echo QTLIBS=-Wl,-rpath-link,"$qt_libdir" -L"$qt_libdir" -lQt5Core -lQt5Gui -lQt5Xml -lQt5Svg -lQt5Widgets >> config.mak
+- if [ -f "$qt_libdir/libQt5OpenGL.so" ] || [ -f "$qt_libdir/libQt5OpenGL.a" ]
+- then
+- echo QTCXXFLAGS+=-I$qt_includedir/QtOpenGL >> config.mak
+- echo QTLIBS+=-lQt5OpenGL >> config.mak
+- else
+- echo "- Qt5OpenGL not found: disabling"
+- without_opengl=true
+- fi
+ # Qt5 on OS X
+ elif [ -d "$qt_libdir/QtWidgets.framework" ]
+ then
+@@ -123,11 +115,10 @@ else
+ -I$qt_includedir/QtGui -I$qt_libdir/QtGui.framework/Headers \
+ -I$qt_includedir/QtXml -I$qt_libdir/QtXml.framework/Headers \
+ -I$qt_includedir/QtSvg -I$qt_libdir/QtSvg.framework/Headers \
+- -I$qt_includedir/QtOpenGL -I$qt_libdir/QtOpenGL.framework/Headers \
+ -I$qt_includedir/QtWidgets -I$qt_libdir/QtWidgets.framework/Headers \
+ >> config.mak
+ echo QTLIBS=-F"$qt_libdir" -framework QtCore -framework QtGui -framework \
+- QtXml -framework QtSvg -framework QtOpenGL -framework QtWidgets >> config.mak
++ QtXml -framework QtSvg -framework QtWidgets >> config.mak
+ # Qt4 on OS X
+ elif [ -d "$qt_libdir/QtGui.framework" ]
+ then
+@@ -151,15 +142,6 @@ else
+ without_kde=true
+ echo QTCXXFLAGS=$(pkg-config --cflags Qt5Core Qt5Gui Qt5Xml Qt5Svg Qt5Widgets) >> config.mak
+ echo QTLIBS=$(pkg-config --libs Qt5Core Qt5Gui Qt5Xml Qt5Svg Qt5Widgets) >> config.mak
+- pkg-config --exists 'Qt5OpenGL'
+- if [ $? -eq 0 ]
+- then
+- echo QTCXXFLAGS+=$(pkg-config --cflags Qt5OpenGL) >> config.mak
+- echo QTLIBS+=$(pkg-config --libs Qt5OpenGL) >> config.mak
+- else
+- echo "- Qt5OpenGL not found: disabling"
+- without_opengl=true
+- fi
+ else
+ pkg-config --exists 'QtGui >= 4'
+ if [ $? -eq 0 ]
diff --git a/media-libs/mlt/mlt-6.4.1-r5.ebuild b/media-libs/mlt/mlt-6.4.1-r5.ebuild
new file mode 100644
index 00000000000..05105d0264d
--- /dev/null
+++ b/media-libs/mlt/mlt-6.4.1-r5.ebuild
@@ -0,0 +1,218 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 )
+# this ebuild currently only supports installing ruby bindings for a single ruby version
+# so USE_RUBY must contain only a single value (the latest stable) as the ebuild calls
+# /usr/bin/${USE_RUBY} directly
+USE_RUBY="ruby22"
+inherit eutils flag-o-matic multilib python-single-r1 ruby-single toolchain-funcs
+
+DESCRIPTION="Open source multimedia framework for television broadcasting"
+HOMEPAGE="https://www.mltframework.org/"
+SRC_URI="https://github.com/mltframework/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux"
+IUSE="compressed-lumas cpu_flags_x86_mmx cpu_flags_x86_sse cpu_flags_x86_sse2 debug ffmpeg fftw frei0r
+gtk jack kdenlive libav libsamplerate lua melt opencv opengl python qt5 rtaudio ruby sdl vdpau xine xml"
+# java perl php tcl vidstab
+IUSE="${IUSE} kernel_linux"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+#rtaudio will use OSS on non linux OSes
+COMMON_DEPEND="
+ >=media-libs/libebur128-1.2.2
+ ffmpeg? (
+ libav? ( media-video/libav:0=[vdpau?] )
+ !libav? ( media-video/ffmpeg:0=[vdpau?] )
+ )
+ fftw? ( sci-libs/fftw:3.0= )
+ frei0r? ( media-plugins/frei0r-plugins )
+ gtk? (
+ media-libs/libexif
+ x11-libs/gtk+:2
+ x11-libs/pango
+ )
+ jack? (
+ >=dev-libs/libxml2-2.5
+ media-libs/ladspa-sdk
+ >=media-sound/jack-audio-connection-kit-0.121.3
+ )
+ libsamplerate? ( >=media-libs/libsamplerate-0.1.2 )
+ lua? ( >=dev-lang/lua-5.1.4-r4:= )
+ opencv? ( >=media-libs/opencv-3.2.0:= )
+ opengl? ( media-video/movit )
+ python? ( ${PYTHON_DEPS} )
+ qt5? (
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtsvg:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtxml:5
+ media-libs/libexif
+ x11-libs/libX11
+ )
+ rtaudio? (
+ media-libs/rtaudio
+ kernel_linux? ( media-libs/alsa-lib )
+ )
+ ruby? ( ${RUBY_DEPS} )
+ sdl? (
+ >=media-libs/libsdl-1.2.10[X,opengl,video]
+ >=media-libs/sdl-image-1.2.4
+ )
+ xine? ( >=media-libs/xine-lib-1.1.2_pre20060328-r7 )
+ xml? ( >=dev-libs/libxml2-2.5 )"
+# java? ( >=virtual/jre-1.5 )
+# perl? ( dev-lang/perl )
+# php? ( dev-lang/php )
+# sox? ( media-sound/sox )
+# tcl? ( dev-lang/tcl:0= )
+# vidstab? ( media-libs/libvidstab )
+SWIG_DEPEND=">=dev-lang/swig-2.0"
+DEPEND="${COMMON_DEPEND}
+ virtual/pkgconfig
+ compressed-lumas? ( virtual/imagemagick-tools[png] )
+ lua? ( ${SWIG_DEPEND} virtual/pkgconfig )
+ python? ( ${SWIG_DEPEND} )
+ ruby? ( ${SWIG_DEPEND} )"
+# java? ( ${SWIG_DEPEND} >=virtual/jdk-1.5 )
+# perl? ( ${SWIG_DEPEND} )
+# php? ( ${SWIG_DEPEND} )
+# tcl? ( ${SWIG_DEPEND} )
+RDEPEND="${COMMON_DEPEND}
+ !media-libs/mlt++
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.2.0-ruby-link.patch
+ "${FILESDIR}"/${P}-libebur128-unbundle.patch
+ "${FILESDIR}"/${P}-opencv-3.3.patch
+ "${FILESDIR}"/${P}-glibc226-{1,2}.patch
+ "${FILESDIR}"/${P}-qtopengl-{1,2}.patch
+)
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ default
+
+ # respect CFLAGS LDFLAGS when building shared libraries. Bug #308873
+ for x in python lua; do
+ sed -i "/mlt.so/s: -lmlt++ :& ${CFLAGS} ${LDFLAGS} :" src/swig/$x/build || die
+ done
+ sed -i "/^LDFLAGS/s: += :& ${LDFLAGS} :" src/swig/ruby/build || die
+
+ sed -i -e "s/env ruby/${USE_RUBY}/" src/swig/ruby/* || die
+}
+
+src_configure() {
+ tc-export CC CXX
+
+ # bug 589848
+ append-cxxflags -std=c++11
+
+ local myconf="--enable-gpl
+ --enable-gpl3
+ --enable-motion-est
+ --target-arch=$(tc-arch)
+ --disable-kde
+ --disable-swfdec
+ $(use_enable debug)
+ $(use compressed-lumas && echo ' --luma-compress')
+ $(use_enable cpu_flags_x86_sse sse)
+ $(use_enable cpu_flags_x86_sse2 sse2)
+ $(use_enable gtk gtk2)
+ $(use_enable sdl)
+ $(use_enable jack jackrack)
+ $(use_enable ffmpeg avformat)
+ $(use ffmpeg && echo ' --avformat-swscale')
+ $(use_enable fftw plus)
+ $(use_enable frei0r)
+ $(use_enable melt)
+ $(use_enable opencv)
+ $(use_enable opengl)
+ $(use_enable libsamplerate resample)
+ $(use_enable rtaudio)
+ $(use vdpau && echo ' --avformat-vdpau')
+ $(use_enable xml)
+ $(use_enable xine)
+ $(use_enable kdenlive)
+ --disable-sox"
+ #$(use_enable sox) FIXME
+
+ if use qt5 ; then
+ myconf+=" --enable-qt
+ --qt-includedir=$(pkg-config Qt5Core --variable=includedir)
+ --qt-libdir=$(pkg-config Qt5Core --variable=libdir)"
+ else
+ myconf+=" --disable-qt"
+ fi
+
+ if use x86 || use amd64 ; then
+ myconf+=" $(use_enable cpu_flags_x86_mmx mmx)"
+ else
+ myconf+=" --disable-mmx"
+ fi
+
+ if ! use melt; then
+ sed -i -e "s;src/melt;;" Makefile || die
+ fi
+
+ # TODO: add swig language bindings
+ # see also https://www.mltframework.org/twiki/bin/view/MLT/ExtremeMakeover
+
+ local swig_lang
+ # TODO: java perl php tcl
+ for i in lua python ruby ; do
+ use $i && swig_lang="${swig_lang} $i"
+ done
+ [ -z "${swig_lang}" ] && swig_lang="none"
+
+ econf ${myconf} --swig-languages="${swig_lang}"
+
+ sed -i -e s/^OPT/#OPT/ "${S}/config.mak" || die
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ dodoc AUTHORS ChangeLog NEWS README docs/*.txt
+
+ dodir /usr/share/${PN}
+ insinto /usr/share/${PN}
+ doins -r demo
+
+ docinto swig
+
+ # Install SWIG bindings
+ if use lua; then
+ cd "${S}"/src/swig/lua || die
+ exeinto $(pkg-config --variable INSTALL_CMOD lua)
+ doexe mlt.so
+ dodoc play.lua
+ fi
+
+ if use python; then
+ cd "${S}"/src/swig/python || die
+ insinto $(python_get_sitedir)
+ doins mlt.py
+ exeinto $(python_get_sitedir)
+ doexe _mlt.so
+ dodoc play.py
+ python_optimize
+ fi
+
+ if use ruby; then
+ cd "${S}"/src/swig/ruby || die
+ exeinto $("${EPREFIX}"/usr/bin/${USE_RUBY} -r rbconfig -e 'print RbConfig::CONFIG["sitearchdir"]')
+ doexe mlt.so
+ dodoc play.rb thumbs.rb
+ fi
+ # TODO: java perl php tcl
+}
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-libs/mlt/, media-libs/mlt/files/
@ 2018-07-22 21:50 Andreas Sturmlechner
0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2018-07-22 21:50 UTC (permalink / raw
To: gentoo-commits
commit: 271efb8ca6181d5a68dd4744ff11d77ab96aa451
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 22 20:23:31 2018 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sun Jul 22 21:49:16 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=271efb8c
media-libs/mlt: Fix crash with kdenlivetitle
Package-Manager: Portage-2.3.43, Repoman-2.3.10
.../mlt/files/mlt-6.6.0-kdenlivetitle-crash.patch | 22 ++++++++++++++++++++++
media-libs/mlt/mlt-6.6.0-r1.ebuild | 1 +
2 files changed, 23 insertions(+)
diff --git a/media-libs/mlt/files/mlt-6.6.0-kdenlivetitle-crash.patch b/media-libs/mlt/files/mlt-6.6.0-kdenlivetitle-crash.patch
new file mode 100644
index 00000000000..b65a63d8766
--- /dev/null
+++ b/media-libs/mlt/files/mlt-6.6.0-kdenlivetitle-crash.patch
@@ -0,0 +1,22 @@
+From 95f7f7bc104ec35ed3c909e52d928313fd35a48c Mon Sep 17 00:00:00 2001
+From: Jean-Baptiste Mardelle <jb@kdenlive.org>
+Date: Mon, 19 Mar 2018 09:20:49 +0100
+Subject: [PATCH] Fix crash with kdenlivetile caused by wrong malloc size
+
+---
+ src/modules/qt/producer_kdenlivetitle.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/modules/qt/producer_kdenlivetitle.c b/src/modules/qt/producer_kdenlivetitle.c
+index 67508aa33..4dc5d9c6b 100644
+--- a/src/modules/qt/producer_kdenlivetitle.c
++++ b/src/modules/qt/producer_kdenlivetitle.c
+@@ -41,7 +41,7 @@ void read_xml(mlt_properties properties)
+ goto error;
+ rewind (f);
+
+- char *infile = (char*) mlt_pool_alloc(lSize);
++ char *infile = (char*) mlt_pool_alloc(lSize + 1);
+ if ( infile )
+ {
+ size = fread(infile,1,lSize,f);
diff --git a/media-libs/mlt/mlt-6.6.0-r1.ebuild b/media-libs/mlt/mlt-6.6.0-r1.ebuild
index c5eed698d08..b1d9cfe31b2 100644
--- a/media-libs/mlt/mlt-6.6.0-r1.ebuild
+++ b/media-libs/mlt/mlt-6.6.0-r1.ebuild
@@ -100,6 +100,7 @@ PATCHES=(
"${FILESDIR}"/${P}-libav-{1,2,3}.patch
"${FILESDIR}"/${P}-png-segfault.patch
"${FILESDIR}"/${P}-gif-encoding.patch
+ "${FILESDIR}"/${P}-kdenlivetitle-crash.patch
)
pkg_setup() {
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-libs/mlt/, media-libs/mlt/files/
@ 2018-07-22 21:50 Andreas Sturmlechner
0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2018-07-22 21:50 UTC (permalink / raw
To: gentoo-commits
commit: 8bfd2dd303ef226be7ccd0081832afb92b4a41eb
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 22 19:48:33 2018 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sun Jul 22 21:49:15 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8bfd2dd3
media-libs/mlt: Fix libav build errors
Package-Manager: Portage-2.3.43, Repoman-2.3.10
media-libs/mlt/files/mlt-6.6.0-libav-1.patch | 39 ++++++++++++++++++++++++++++
media-libs/mlt/files/mlt-6.6.0-libav-2.patch | 31 ++++++++++++++++++++++
media-libs/mlt/files/mlt-6.6.0-libav-3.patch | 23 ++++++++++++++++
media-libs/mlt/mlt-6.6.0-r1.ebuild | 5 +++-
4 files changed, 97 insertions(+), 1 deletion(-)
diff --git a/media-libs/mlt/files/mlt-6.6.0-libav-1.patch b/media-libs/mlt/files/mlt-6.6.0-libav-1.patch
new file mode 100644
index 00000000000..6dc5a73c7fe
--- /dev/null
+++ b/media-libs/mlt/files/mlt-6.6.0-libav-1.patch
@@ -0,0 +1,39 @@
+From bd59735b4f97ae9dff864debdecc2318b0cb8f94 Mon Sep 17 00:00:00 2001
+From: Dan Dennedy <dan@dennedy.org>
+Date: Mon, 12 Feb 2018 12:21:19 -0800
+Subject: [PATCH] Fix compile error with libav.
+
+---
+ src/modules/avformat/producer_avformat.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/src/modules/avformat/producer_avformat.c b/src/modules/avformat/producer_avformat.c
+index 214c8b325..7de997cc2 100644
+--- a/src/modules/avformat/producer_avformat.c
++++ b/src/modules/avformat/producer_avformat.c
+@@ -1,6 +1,6 @@
+ /*
+ * producer_avformat.c -- avformat producer
+- * Copyright (C) 2003-2017 Meltytech, LLC
++ * Copyright (C) 2003-2018 Meltytech, LLC
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+@@ -1266,7 +1266,7 @@ static int pick_av_pixel_format( int *pix_fmt )
+ return 0;
+ }
+
+-#if LIBSWSCALE_VERSION_INT >= AV_VERSION_INT( 3, 1, 101 )
++#if defined(FFUDIV) && LIBSWSCALE_VERSION_INT >= AV_VERSION_INT( 3, 1, 101 )
+ struct sliced_pix_fmt_conv_t
+ {
+ int width, height, slice_w;
+@@ -1461,7 +1461,7 @@ static int convert_image( producer_avformat self, AVFrame *frame, uint8_t *buffe
+ sws_freeContext( context );
+ }
+ else
+-#if LIBSWSCALE_VERSION_INT >= AV_VERSION_INT( 3, 1, 101 )
++#if defined(FFUDIV) && LIBSWSCALE_VERSION_INT >= AV_VERSION_INT( 3, 1, 101 )
+ {
+ int i, c;
+ struct sliced_pix_fmt_conv_t ctx =
diff --git a/media-libs/mlt/files/mlt-6.6.0-libav-2.patch b/media-libs/mlt/files/mlt-6.6.0-libav-2.patch
new file mode 100644
index 00000000000..d29cabec704
--- /dev/null
+++ b/media-libs/mlt/files/mlt-6.6.0-libav-2.patch
@@ -0,0 +1,31 @@
+From 56e3affe1ff425d979ea9f2a5e086d769852c3fc Mon Sep 17 00:00:00 2001
+From: Dan Dennedy <dan@dennedy.org>
+Date: Fri, 16 Feb 2018 09:55:29 -0800
+Subject: [PATCH] Fix compile error with libav.
+
+---
+ src/modules/avformat/producer_avformat.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/modules/avformat/producer_avformat.c b/src/modules/avformat/producer_avformat.c
+index 7de997cc2..2fafd00e8 100644
+--- a/src/modules/avformat/producer_avformat.c
++++ b/src/modules/avformat/producer_avformat.c
+@@ -1266,7 +1266,7 @@ static int pick_av_pixel_format( int *pix_fmt )
+ return 0;
+ }
+
+-#if defined(FFUDIV) && LIBSWSCALE_VERSION_INT >= AV_VERSION_INT( 3, 1, 101 )
++#if defined(FFUDIV) && (LIBSWSCALE_VERSION_INT >= ((3<<16)+(1<<8)+101))
+ struct sliced_pix_fmt_conv_t
+ {
+ int width, height, slice_w;
+@@ -1461,7 +1461,7 @@ static int convert_image( producer_avformat self, AVFrame *frame, uint8_t *buffe
+ sws_freeContext( context );
+ }
+ else
+-#if defined(FFUDIV) && LIBSWSCALE_VERSION_INT >= AV_VERSION_INT( 3, 1, 101 )
++#if defined(FFUDIV) && (LIBSWSCALE_VERSION_INT >= ((3<<16)+(1<<8)+101))
+ {
+ int i, c;
+ struct sliced_pix_fmt_conv_t ctx =
diff --git a/media-libs/mlt/files/mlt-6.6.0-libav-3.patch b/media-libs/mlt/files/mlt-6.6.0-libav-3.patch
new file mode 100644
index 00000000000..fdbd5ef271f
--- /dev/null
+++ b/media-libs/mlt/files/mlt-6.6.0-libav-3.patch
@@ -0,0 +1,23 @@
+From 53181a4e4629e2cd22c6f5d16a459aa843f4bd65 Mon Sep 17 00:00:00 2001
+From: Dan Dennedy <dan@dennedy.org>
+Date: Fri, 23 Feb 2018 10:04:47 -0800
+Subject: [PATCH] Fix compile error with libav.
+
+---
+ src/modules/avformat/consumer_avformat.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/modules/avformat/consumer_avformat.c b/src/modules/avformat/consumer_avformat.c
+index 6deb76df5..ba5c900c7 100644
+--- a/src/modules/avformat/consumer_avformat.c
++++ b/src/modules/avformat/consumer_avformat.c
+@@ -1647,7 +1647,9 @@ static void *consumer_thread( void *arg )
+ enc_ctx->audio_avframe->format = c->sample_fmt;
+ enc_ctx->audio_avframe->nb_samples = enc_ctx->audio_input_frame_size;
+ enc_ctx->audio_avframe->channel_layout = c->channel_layout;
++#if LIBAVCODEC_VERSION_INT >= ((57<<16)+(96<<8)) && LIBAVCODEC_VERSION_MICRO >= 100
+ enc_ctx->audio_avframe->channels = c->channels;
++#endif
+ } else {
+ mlt_log_error( MLT_CONSUMER_SERVICE(consumer), "failed to allocate audio AVFrame\n" );
+ mlt_events_fire( properties, "consumer-fatal-error", NULL );
diff --git a/media-libs/mlt/mlt-6.6.0-r1.ebuild b/media-libs/mlt/mlt-6.6.0-r1.ebuild
index 6fcd43e0423..3e57dbb3e1e 100644
--- a/media-libs/mlt/mlt-6.6.0-r1.ebuild
+++ b/media-libs/mlt/mlt-6.6.0-r1.ebuild
@@ -95,7 +95,10 @@ RDEPEND="${COMMON_DEPEND}
DOCS=( AUTHORS ChangeLog NEWS README docs/{framework,melt,mlt{++,-xml}}.txt )
-PATCHES=( "${FILESDIR}"/${P}-vorbis-ffmpeg-3.4.patch )
+PATCHES=(
+ "${FILESDIR}"/${P}-vorbis-ffmpeg-3.4.patch
+ "${FILESDIR}"/${P}-libav-{1,2,3}.patch
+)
pkg_setup() {
use python && python-single-r1_pkg_setup
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-libs/mlt/, media-libs/mlt/files/
@ 2018-07-22 21:50 Andreas Sturmlechner
0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2018-07-22 21:50 UTC (permalink / raw
To: gentoo-commits
commit: 9d08e036fc964ca46457d1784c244fb6b34b6284
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 22 20:11:37 2018 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sun Jul 22 21:49:15 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9d08e036
media-libs/mlt: Fix png 8-bit segfault
Package-Manager: Portage-2.3.43, Repoman-2.3.10
media-libs/mlt/files/mlt-6.6.0-png-segfault.patch | 36 +++++++++++++++++++++++
media-libs/mlt/mlt-6.6.0-r1.ebuild | 1 +
2 files changed, 37 insertions(+)
diff --git a/media-libs/mlt/files/mlt-6.6.0-png-segfault.patch b/media-libs/mlt/files/mlt-6.6.0-png-segfault.patch
new file mode 100644
index 00000000000..c93458a8273
--- /dev/null
+++ b/media-libs/mlt/files/mlt-6.6.0-png-segfault.patch
@@ -0,0 +1,36 @@
+From e013fd7c2f49b40a1b482d712d531329d538da88 Mon Sep 17 00:00:00 2001
+From: Brian Matherly <code@brianmatherly.com>
+Date: Wed, 31 Jan 2018 20:57:42 -0600
+Subject: [PATCH] Fix segmentation fault when using qimage png producer #296
+
+---
+ src/modules/qt/qimage_wrapper.cpp | 7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
+
+diff --git a/src/modules/qt/qimage_wrapper.cpp b/src/modules/qt/qimage_wrapper.cpp
+index 436f65d15..99b4ebf8e 100644
+--- a/src/modules/qt/qimage_wrapper.cpp
++++ b/src/modules/qt/qimage_wrapper.cpp
+@@ -229,18 +229,19 @@ void refresh_image( producer_qimage self, mlt_frame frame, mlt_image_format form
+ QString interps = mlt_properties_get( properties, "rescale.interp" );
+ bool interp = ( interps != "nearest" ) && ( interps != "none" );
+ QImage *qimage = static_cast<QImage*>( self->qimage );
++ int has_alpha = qimage->hasAlphaChannel();
++ QImage::Format qimageFormat = has_alpha ? QImage::Format_ARGB32 : QImage::Format_RGB32;
+
+ // Note - the original qimage is already safe and ready for destruction
+- if ( qimage->depth() == 1 )
++ if ( qimage->format() != qimageFormat )
+ {
+- QImage temp = qimage->convertToFormat( QImage::Format_RGB32 );
++ QImage temp = qimage->convertToFormat( qimageFormat );
+ delete qimage;
+ qimage = new QImage( temp );
+ self->qimage = qimage;
+ }
+ QImage scaled = interp? qimage->scaled( QSize( width, height ) ) :
+ qimage->scaled( QSize(width, height), Qt::IgnoreAspectRatio, Qt::SmoothTransformation );
+- int has_alpha = scaled.hasAlphaChannel();
+
+ // Store width and height
+ self->current_width = width;
diff --git a/media-libs/mlt/mlt-6.6.0-r1.ebuild b/media-libs/mlt/mlt-6.6.0-r1.ebuild
index 3e57dbb3e1e..b0b811b945d 100644
--- a/media-libs/mlt/mlt-6.6.0-r1.ebuild
+++ b/media-libs/mlt/mlt-6.6.0-r1.ebuild
@@ -98,6 +98,7 @@ DOCS=( AUTHORS ChangeLog NEWS README docs/{framework,melt,mlt{++,-xml}}.txt )
PATCHES=(
"${FILESDIR}"/${P}-vorbis-ffmpeg-3.4.patch
"${FILESDIR}"/${P}-libav-{1,2,3}.patch
+ "${FILESDIR}"/${P}-png-segfault.patch
)
pkg_setup() {
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-libs/mlt/, media-libs/mlt/files/
@ 2018-08-09 22:20 Andreas Sturmlechner
0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2018-08-09 22:20 UTC (permalink / raw
To: gentoo-commits
commit: 27f16b16970c8fd338fda948ed5c13e6bcdc6f0b
Author: Jouni Kosonen <jouni.kosonen <AT> tukesoft <DOT> com>
AuthorDate: Sat Jul 28 19:02:56 2018 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Thu Aug 9 22:19:35 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=27f16b16
media-libs/mlt: version bump 6.10.0
Bug: https://bugs.gentoo.org/661842
Bug: https://bugs.gentoo.org/650258
Closes: https://github.com/gentoo/gentoo/pull/9371
media-libs/mlt/Manifest | 1 +
.../mlt/files/mlt-6.10.0-swig-underlinking.patch | 12 ++
media-libs/mlt/mlt-6.10.0.ebuild | 220 +++++++++++++++++++++
3 files changed, 233 insertions(+)
diff --git a/media-libs/mlt/Manifest b/media-libs/mlt/Manifest
index 58d6d4bec16..acea3b43f21 100644
--- a/media-libs/mlt/Manifest
+++ b/media-libs/mlt/Manifest
@@ -1,2 +1,3 @@
DIST mlt-6.4.1.tar.gz 1344030 BLAKE2B 835561eac31a44d292c5915567338eb43110b3474778327af282403b43e3e89eaec407e5920f81a774c03968b4c08a496b0ef6c3e6d0970c17353613e7f4d051 SHA512 b082274e2184a0496f496517ddbcae33bab44cd1f50c1708942b7a24e5861ba97cae9fa21ec41ea21d662cbf56e2e2e66caa707a100077ef6e13aa7140f7a9fb
DIST mlt-6.6.0.tar.gz 1365768 BLAKE2B e2e6919d603560dac3d809740a3be2989a3b52a4e933fa67927c5c26796a5c9b35da1aedb54caa4c87133dc682d5f41455900594ebdfd6ec1516ff02d477d58f SHA512 06e553d2deb36deddd9e0f2269ee0529bf768e73d2160ee16a4cd36ed3fba5be145165f0b21278623afece046351264269509ff05f24fbbb2f163be1f4d48845
+DIST mlt-6.10.0.tar.gz 1384632 BLAKE2B 4bbcf95409df1ea1828d2b34e6d6663cf83f5672641034f775d029037505051c5490c46c69e104811aaf776794be2df95913d094319f4a2dbba0c42117abe15e SHA512 6f374f20f1dc851792c1075537cf7e977038fb557b2bd5d5816c1fc69d471947c8469c914cf662766f3b503ae819881bf2b4e1673e0f7a84309e0fb671a9de1b
diff --git a/media-libs/mlt/files/mlt-6.10.0-swig-underlinking.patch b/media-libs/mlt/files/mlt-6.10.0-swig-underlinking.patch
new file mode 100644
index 00000000000..e84e98c1576
--- /dev/null
+++ b/media-libs/mlt/files/mlt-6.10.0-swig-underlinking.patch
@@ -0,0 +1,12 @@
+diff --git a/src/swig/ruby/build b/src/swig/ruby/build
+index 2d0cc0d..1a8aee7 100755
+--- a/src/swig/ruby/build
++++ b/src/swig/ruby/build
+@@ -8,6 +8,6 @@ system( "ln -sf ../mlt.i" )
+ system( "swig -c++ -ruby -I../../mlt++ -I../.. mlt.i" )
+ $CFLAGS = $CFLAGS.to_s + " -I../.. " + (ENV.has_key?('CXXFLAGS')? ENV['CXXFLAGS'] : '')
+ $CXXFLAGS = $CXXFLAGS.to_s + " -I../.. " + (ENV.has_key?('CXXFLAGS')? ENV['CXXFLAGS'] : '')
+-$LDFLAGS = $LDFLAGS.to_s + " -L../../mlt++ -lmlt++"
++$LDFLAGS = $LDFLAGS.to_s + " -L../../mlt++ -lmlt++ -L../../framework -lmlt"
+ create_makefile('mlt')
+ system( "make V=1" )
diff --git a/media-libs/mlt/mlt-6.10.0.ebuild b/media-libs/mlt/mlt-6.10.0.ebuild
new file mode 100644
index 00000000000..0e420e80014
--- /dev/null
+++ b/media-libs/mlt/mlt-6.10.0.ebuild
@@ -0,0 +1,220 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 )
+# this ebuild currently only supports installing ruby bindings for a single ruby version
+# so USE_RUBY must contain only a single value (the latest stable) as the ebuild calls
+# /usr/bin/${USE_RUBY} directly
+USE_RUBY="ruby23"
+inherit flag-o-matic python-single-r1 ruby-single toolchain-funcs
+
+DESCRIPTION="Open source multimedia framework for television broadcasting"
+HOMEPAGE="https://www.mltframework.org/"
+SRC_URI="https://github.com/mltframework/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux"
+IUSE="compressed-lumas cpu_flags_x86_mmx cpu_flags_x86_sse cpu_flags_x86_sse2 debug ffmpeg fftw frei0r
+gtk jack kdenlive libav libsamplerate lua melt opencv opengl python qt5 rtaudio ruby sdl vdpau xine xml"
+# java perl php tcl vidstab
+IUSE="${IUSE} kernel_linux"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+#rtaudio will use OSS on non linux OSes
+COMMON_DEPEND="
+ >=media-libs/libebur128-1.2.2
+ ffmpeg? (
+ libav? ( >=media-video/libav-12:0=[vdpau?] )
+ !libav? ( media-video/ffmpeg:0=[vdpau?] )
+ )
+ fftw? ( sci-libs/fftw:3.0= )
+ frei0r? ( media-plugins/frei0r-plugins )
+ gtk? (
+ media-libs/libexif
+ x11-libs/gtk+:2
+ x11-libs/pango
+ )
+ jack? (
+ >=dev-libs/libxml2-2.5
+ media-libs/ladspa-sdk
+ virtual/jack
+ )
+ libsamplerate? ( >=media-libs/libsamplerate-0.1.2 )
+ lua? ( >=dev-lang/lua-5.1.4-r4:= )
+ opencv? ( >=media-libs/opencv-3.2.0:= )
+ opengl? ( media-video/movit )
+ python? ( ${PYTHON_DEPS} )
+ qt5? (
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtsvg:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtxml:5
+ media-libs/libexif
+ x11-libs/libX11
+ )
+ rtaudio? (
+ >=media-libs/rtaudio-4.1.2
+ kernel_linux? ( media-libs/alsa-lib )
+ )
+ ruby? ( ${RUBY_DEPS} )
+ sdl? (
+ media-libs/libsdl2[X,opengl,video]
+ media-libs/sdl2-image
+ )
+ xine? ( >=media-libs/xine-lib-1.1.2_pre20060328-r7 )
+ xml? ( >=dev-libs/libxml2-2.5 )"
+# java? ( >=virtual/jre-1.5 )
+# perl? ( dev-lang/perl )
+# php? ( dev-lang/php )
+# sox? ( media-sound/sox )
+# tcl? ( dev-lang/tcl:0= )
+# vidstab? ( media-libs/libvidstab )
+SWIG_DEPEND=">=dev-lang/swig-2.0"
+DEPEND="${COMMON_DEPEND}
+ virtual/pkgconfig
+ compressed-lumas? ( virtual/imagemagick-tools[png] )
+ lua? ( ${SWIG_DEPEND} virtual/pkgconfig )
+ python? ( ${SWIG_DEPEND} )
+ ruby? ( ${SWIG_DEPEND} )"
+# java? ( ${SWIG_DEPEND} >=virtual/jdk-1.5 )
+# perl? ( ${SWIG_DEPEND} )
+# php? ( ${SWIG_DEPEND} )
+# tcl? ( ${SWIG_DEPEND} )
+RDEPEND="${COMMON_DEPEND}
+ !media-libs/mlt++
+"
+
+DOCS=( AUTHORS ChangeLog NEWS README docs/{framework,melt,mlt{++,-xml}}.txt )
+
+PATCHES=( "${FILESDIR}"/${P}-swig-underlinking.patch )
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ default
+
+ # respect CFLAGS LDFLAGS when building shared libraries. Bug #308873
+ for x in python lua; do
+ sed -i "/mlt.so/s: -lmlt++ :& ${CFLAGS} ${LDFLAGS} :" src/swig/$x/build || die
+ done
+ sed -i "/^LDFLAGS/s: += :& ${LDFLAGS} :" src/swig/ruby/build || die
+
+ sed -i -e "s/env ruby/${USE_RUBY}/" src/swig/ruby/* || die
+}
+
+src_configure() {
+ tc-export CC CXX
+
+ # bug 589848
+ append-cxxflags -std=c++11
+
+ local myconf=(
+ --enable-gpl
+ --enable-gpl3
+ --enable-motion-est
+ --target-arch=$(tc-arch)
+ --disable-kde
+ --disable-sdl
+ --disable-swfdec
+ $(use_enable debug)
+ $(use compressed-lumas && echo ' --luma-compress')
+ $(use_enable cpu_flags_x86_sse sse)
+ $(use_enable cpu_flags_x86_sse2 sse2)
+ $(use_enable gtk gtk2)
+ $(use_enable jack jackrack)
+ $(use_enable ffmpeg avformat)
+ $(use ffmpeg && echo ' --avformat-swscale')
+ $(use_enable fftw plus)
+ $(use_enable frei0r)
+ $(use_enable melt)
+ $(use_enable opencv)
+ $(use_enable opengl)
+ $(use_enable libsamplerate resample)
+ $(use_enable rtaudio)
+ $(use vdpau && echo ' --avformat-vdpau')
+ $(use_enable sdl sdl2)
+ $(use_enable xml)
+ $(use_enable xine)
+ $(use_enable kdenlive)
+ --disable-sox
+ )
+ #$(use_enable sox) FIXME
+
+ if use qt5 ; then
+ myconf+=(
+ --enable-qt
+ --qt-includedir=$(pkg-config Qt5Core --variable=includedir)
+ --qt-libdir=$(pkg-config Qt5Core --variable=libdir)
+ )
+ else
+ myconf+=( --disable-qt )
+ fi
+
+ if use x86 || use amd64 ; then
+ myconf+=( $(use_enable cpu_flags_x86_mmx mmx) )
+ else
+ myconf+=( --disable-mmx )
+ fi
+
+ if ! use melt; then
+ sed -i -e "s;src/melt;;" Makefile || die
+ fi
+
+ # TODO: add swig language bindings
+ # see also https://www.mltframework.org/twiki/bin/view/MLT/ExtremeMakeover
+
+ local swig_lang
+ # TODO: java perl php tcl
+ for i in lua python ruby ; do
+ use $i && swig_lang="${swig_lang} $i"
+ done
+ [[ -z "${swig_lang}" ]] && swig_lang="none"
+
+ econf ${myconf[@]} --swig-languages="${swig_lang}"
+
+ sed -i -e s/^OPT/#OPT/ "${S}/config.mak" || die
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ einstalldocs
+
+ dodir /usr/share/${PN}
+ insinto /usr/share/${PN}
+ doins -r demo
+
+ docinto swig
+
+ # Install SWIG bindings
+ if use lua; then
+ cd "${S}"/src/swig/lua || die
+ exeinto $(pkg-config --variable INSTALL_CMOD lua)
+ doexe mlt.so
+ dodoc play.lua
+ fi
+
+ if use python; then
+ cd "${S}"/src/swig/python || die
+ insinto $(python_get_sitedir)
+ doins mlt.py
+ exeinto $(python_get_sitedir)
+ doexe _mlt.so
+ dodoc play.py
+ python_optimize
+ fi
+
+ if use ruby; then
+ cd "${S}"/src/swig/ruby || die
+ exeinto $("${EPREFIX}"/usr/bin/${USE_RUBY} -r rbconfig -e 'print RbConfig::CONFIG["sitearchdir"]')
+ doexe mlt.so
+ dodoc play.rb thumbs.rb
+ fi
+ # TODO: java perl php tcl
+}
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-libs/mlt/, media-libs/mlt/files/
@ 2018-12-12 11:56 Andreas Sturmlechner
0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2018-12-12 11:56 UTC (permalink / raw
To: gentoo-commits
commit: 10c29d339cd28361f4c79daa80b3e8c2d094f62d
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Wed Dec 12 11:39:10 2018 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Wed Dec 12 11:55:47 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=10c29d33
media-libs/mlt: 6.12.0 version bump, switch to ruby25
Bug: https://bugs.gentoo.org/672984
Package-Manager: Portage-2.3.52, Repoman-2.3.12
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
media-libs/mlt/Manifest | 1 +
.../mlt/files/mlt-6.12.0-frei0r-w-tractor.patch | 37 ++++
.../mlt/files/mlt-6.12.0-rgb-to-yuv-accuracy.patch | 169 ++++++++++++++++
.../mlt/files/mlt-6.12.0-seconds-digits.patch | 22 +++
media-libs/mlt/mlt-6.12.0.ebuild | 219 +++++++++++++++++++++
5 files changed, 448 insertions(+)
diff --git a/media-libs/mlt/Manifest b/media-libs/mlt/Manifest
index b884ece8480..22521d2f15e 100644
--- a/media-libs/mlt/Manifest
+++ b/media-libs/mlt/Manifest
@@ -1 +1,2 @@
DIST mlt-6.10.0.tar.gz 1384632 BLAKE2B 4bbcf95409df1ea1828d2b34e6d6663cf83f5672641034f775d029037505051c5490c46c69e104811aaf776794be2df95913d094319f4a2dbba0c42117abe15e SHA512 6f374f20f1dc851792c1075537cf7e977038fb557b2bd5d5816c1fc69d471947c8469c914cf662766f3b503ae819881bf2b4e1673e0f7a84309e0fb671a9de1b
+DIST mlt-6.12.0.tar.gz 1395646 BLAKE2B 18dc06c4075d8d51bc7f62d027adda92c359275b9ad2131cc015b4402b1b7a9438fe87b617075017b9fd5e9696b82c4c840fa6dd83188bd0cedb7f01d2158283 SHA512 ed2cc0eeda45558ae6f1ec8780dfd413641953dc12dc32dccf655649f68f8e6088d39fefb7bef7bae042a41096976004446019d82ea162785bc487009cb97680
diff --git a/media-libs/mlt/files/mlt-6.12.0-frei0r-w-tractor.patch b/media-libs/mlt/files/mlt-6.12.0-frei0r-w-tractor.patch
new file mode 100644
index 00000000000..e655f805f53
--- /dev/null
+++ b/media-libs/mlt/files/mlt-6.12.0-frei0r-w-tractor.patch
@@ -0,0 +1,37 @@
+From 30621f28fd3a21a4162de17a12d943e811566b5e Mon Sep 17 00:00:00 2001
+From: Dan Dennedy <dan@dennedy.org>
+Date: Wed, 5 Dec 2018 11:14:54 -0800
+Subject: [PATCH] Fix frei0r producer not working with tractor.
+
+Reported in https://forum.shotcut.org/t/color-bars-working-not-
+correctly/8308
+---
+ src/modules/frei0r/producer_frei0r.c | 8 ++------
+ 1 file changed, 2 insertions(+), 6 deletions(-)
+
+diff --git a/src/modules/frei0r/producer_frei0r.c b/src/modules/frei0r/producer_frei0r.c
+index 9a90f6b6b..d1547f6c5 100644
+--- a/src/modules/frei0r/producer_frei0r.c
++++ b/src/modules/frei0r/producer_frei0r.c
+@@ -26,12 +26,7 @@
+
+ static int producer_get_image( mlt_frame frame, uint8_t **buffer, mlt_image_format *format, int *width, int *height, int writable )
+ {
+-
+- // Obtain properties of frame
+- mlt_properties properties = MLT_FRAME_PROPERTIES( frame );
+-
+- // Obtain the producer for this frame
+- mlt_producer producer = mlt_properties_get_data( properties, "producer_frei0r", NULL );
++ mlt_producer producer = mlt_frame_pop_service( frame );
+
+ // Choose suitable out values if nothing specific requested
+ if ( *width <= 0 )
+@@ -83,6 +78,7 @@ int producer_get_frame( mlt_producer producer, mlt_frame_ptr frame, int index )
+ mlt_properties_set_double( properties, "aspect_ratio", mlt_profile_sar( profile ) );
+
+ // Push the get_image method
++ mlt_frame_push_service( *frame, producer );
+ mlt_frame_push_get_image( *frame, producer_get_image );
+ }
+
\ No newline at end of file
diff --git a/media-libs/mlt/files/mlt-6.12.0-rgb-to-yuv-accuracy.patch b/media-libs/mlt/files/mlt-6.12.0-rgb-to-yuv-accuracy.patch
new file mode 100644
index 00000000000..d0930c5ac63
--- /dev/null
+++ b/media-libs/mlt/files/mlt-6.12.0-rgb-to-yuv-accuracy.patch
@@ -0,0 +1,169 @@
+From adc5a2284b3a1073cb364c5f07d1d7c97e94c937 Mon Sep 17 00:00:00 2001
+From: Dan Dennedy <dan@dennedy.org>
+Date: Fri, 30 Nov 2018 15:26:15 -0800
+Subject: [PATCH] Fix color accuracy of RGB->YUV conversion.
+
+Fixes https://github.com/mltframework/shotcut/issues/674
+---
+ src/modules/avformat/common.c | 2 ++
+ src/modules/avformat/common.h | 1 +
+ src/modules/avformat/consumer_avformat.c | 7 +------
+ src/modules/avformat/filter_avcolour_space.c | 7 +------
+ src/modules/avformat/filter_swscale.c | 12 ++++--------
+ src/modules/avformat/producer_avformat.c | 12 ++++++------
+ 6 files changed, 15 insertions(+), 26 deletions(-)
+
+diff --git a/src/modules/avformat/common.c b/src/modules/avformat/common.c
+index 2b1f1fd5d..dca9dbaee 100644
+--- a/src/modules/avformat/common.c
++++ b/src/modules/avformat/common.c
+@@ -22,6 +22,8 @@
+ #include <libavutil/channel_layout.h>
+ #include <libavutil/samplefmt.h>
+
++int mlt_default_sws_flags = SWS_BICUBIC | SWS_FULL_CHR_H_INP | SWS_FULL_CHR_H_INT | SWS_ACCURATE_RND;
++
+ int mlt_to_av_sample_format( mlt_audio_format format )
+ {
+ switch( format )
+diff --git a/src/modules/avformat/common.h b/src/modules/avformat/common.h
+index 54df63e93..ce0f0f079 100644
+--- a/src/modules/avformat/common.h
++++ b/src/modules/avformat/common.h
+@@ -29,5 +29,6 @@ mlt_channel_layout av_channel_layout_to_mlt( int64_t layout );
+ mlt_channel_layout get_channel_layout_or_default( const char* name, int channels );
+ int set_luma_transfer( struct SwsContext *context, int src_colorspace,
+ int dst_colorspace, int src_full_range, int dst_full_range );
++extern int mlt_default_sws_flags;
+
+ #endif // COMMON_H
+diff --git a/src/modules/avformat/consumer_avformat.c b/src/modules/avformat/consumer_avformat.c
+index eab96271f..1e445ef76 100644
+--- a/src/modules/avformat/consumer_avformat.c
++++ b/src/modules/avformat/consumer_avformat.c
+@@ -1956,12 +1956,7 @@ static void *consumer_thread( void *arg )
+ mlt_image_format_planes( img_fmt, width, height, image, video_avframe.data, video_avframe.linesize );
+
+ // Do the colour space conversion
+- int flags = SWS_BICUBIC | SWS_ACCURATE_RND;
+- if ( pix_fmt == AV_PIX_FMT_YUYV422 || pix_fmt == AV_PIX_FMT_YUV422P16LE )
+- flags |= SWS_FULL_CHR_H_INP;
+- else
+- flags |= SWS_FULL_CHR_H_INT;
+-
++ int flags = mlt_default_sws_flags;
+ struct SwsContext *context = sws_getContext( width, height, pick_pix_fmt( img_fmt ),
+ width, height, pix_fmt, flags, NULL, NULL, NULL);
+ int src_colorspace = mlt_properties_get_int( frame_properties, "colorspace" );
+diff --git a/src/modules/avformat/filter_avcolour_space.c b/src/modules/avformat/filter_avcolour_space.c
+index f25cf092b..89ee6b522 100644
+--- a/src/modules/avformat/filter_avcolour_space.c
++++ b/src/modules/avformat/filter_avcolour_space.c
+@@ -84,14 +84,9 @@ static int av_convert_image( uint8_t *out, uint8_t *in, int out_fmt, int in_fmt,
+ int in_stride[4];
+ uint8_t *out_data[4];
+ int out_stride[4];
+- int flags = SWS_BICUBIC | SWS_ACCURATE_RND;
++ int flags = mlt_default_sws_flags;
+ int error = -1;
+
+- if ( out_fmt == AV_PIX_FMT_YUYV422 || out_fmt == AV_PIX_FMT_YUV422P16LE )
+- flags |= SWS_FULL_CHR_H_INP;
+- else
+- flags |= SWS_FULL_CHR_H_INT;
+-
+ if ( in_fmt == AV_PIX_FMT_YUV422P16LE )
+ mlt_image_format_planes(mlt_image_yuv422p16, width, height, in, in_data, in_stride);
+ else
+diff --git a/src/modules/avformat/filter_swscale.c b/src/modules/avformat/filter_swscale.c
+index 475036a6f..52c165f9f 100644
+--- a/src/modules/avformat/filter_swscale.c
++++ b/src/modules/avformat/filter_swscale.c
+@@ -1,6 +1,6 @@
+ /*
+ * filter_swscale.c -- image scaling filter
+- * Copyright (C) 2008-2017 Meltytech, LLC
++ * Copyright (C) 2008-2018 Meltytech, LLC
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+@@ -88,23 +88,19 @@ static int filter_scale( mlt_frame frame, uint8_t **image, mlt_image_format *for
+ interp = SWS_LANCZOS;
+ else if ( strcmp( interps, "spline" ) == 0 )
+ interp = SWS_SPLINE;
+- interp |= SWS_ACCURATE_RND;
++
++ // Set swscale flags to get good quality
++ interp |= SWS_FULL_CHR_H_INP | SWS_FULL_CHR_H_INT | SWS_ACCURATE_RND;
+
+ // Determine the output image size.
+ int out_size = mlt_image_format_size( *format, owidth, oheight, NULL );
+
+- // Set swscale flags to get good quality
+ switch ( *format )
+ {
+ case mlt_image_yuv422:
+- interp |= SWS_FULL_CHR_H_INP;
+- break;
+ case mlt_image_rgb24:
+- interp |= SWS_FULL_CHR_H_INT;
+- break;
+ case mlt_image_rgb24a:
+ case mlt_image_opengl:
+- interp |= SWS_FULL_CHR_H_INT;
+ break;
+ default:
+ // XXX: we only know how to rescale packed formats
+diff --git a/src/modules/avformat/producer_avformat.c b/src/modules/avformat/producer_avformat.c
+index 9b96b4e5c..d24ca41e7 100644
+--- a/src/modules/avformat/producer_avformat.c
++++ b/src/modules/avformat/producer_avformat.c
+@@ -1281,7 +1281,7 @@ static int sliced_h_pix_fmt_conv_proc( int id, int idx, int jobs, void* cookie )
+ av_opt_set_int( sws, "dstw", slice_w, 0 );
+ av_opt_set_int( sws, "dsth", h, 0 );
+ av_opt_set_int( sws, "dst_format", ctx->dst_format, 0 );
+- av_opt_set_int( sws, "sws_flags", ctx->flags | SWS_FULL_CHR_H_INP, 0 );
++ av_opt_set_int( sws, "sws_flags", ctx->flags, 0 );
+
+ av_opt_set_int( sws, "src_h_chr_pos", -513, 0 );
+ av_opt_set_int( sws, "src_v_chr_pos", src_v_chr_pos, 0 );
+@@ -1338,7 +1338,7 @@ static int sliced_h_pix_fmt_conv_proc( int id, int idx, int jobs, void* cookie )
+ static int convert_image( producer_avformat self, AVFrame *frame, uint8_t *buffer, int pix_fmt,
+ mlt_image_format *format, int width, int height, uint8_t **alpha )
+ {
+- int flags = SWS_BICUBIC | SWS_ACCURATE_RND;
++ int flags = mlt_default_sws_flags;
+ mlt_profile profile = mlt_service_profile( MLT_PRODUCER_SERVICE( self->parent ) );
+ int result = self->yuv_colorspace;
+
+@@ -1400,7 +1400,7 @@ static int convert_image( producer_avformat self, AVFrame *frame, uint8_t *buffe
+ else if ( *format == mlt_image_rgb24 )
+ {
+ struct SwsContext *context = sws_getContext( width, height, src_pix_fmt,
+- width, height, AV_PIX_FMT_RGB24, flags | SWS_FULL_CHR_H_INT, NULL, NULL, NULL);
++ width, height, AV_PIX_FMT_RGB24, flags, NULL, NULL, NULL);
+ uint8_t *out_data[4];
+ int out_stride[4];
+ av_image_fill_arrays(out_data, out_stride, buffer, AV_PIX_FMT_RGB24, width, height, IMAGE_ALIGN);
+@@ -1413,7 +1413,7 @@ static int convert_image( producer_avformat self, AVFrame *frame, uint8_t *buffe
+ else if ( *format == mlt_image_rgb24a || *format == mlt_image_opengl )
+ {
+ struct SwsContext *context = sws_getContext( width, height, src_pix_fmt,
+- width, height, AV_PIX_FMT_RGBA, flags | SWS_FULL_CHR_H_INT, NULL, NULL, NULL);
++ width, height, AV_PIX_FMT_RGBA, flags, NULL, NULL, NULL);
+ uint8_t *out_data[4];
+ int out_stride[4];
+ av_image_fill_arrays(out_data, out_stride, buffer, AV_PIX_FMT_RGBA, width, height, IMAGE_ALIGN);
+@@ -1475,10 +1475,10 @@ static int convert_image( producer_avformat self, AVFrame *frame, uint8_t *buffe
+ {
+ #if defined(FFUDIV) && (LIBAVFORMAT_VERSION_INT >= ((55<<16)+(48<<8)+100))
+ struct SwsContext *context = sws_getContext( width, height, src_pix_fmt,
+- width, height, AV_PIX_FMT_YUYV422, flags | SWS_FULL_CHR_H_INP, NULL, NULL, NULL);
++ width, height, AV_PIX_FMT_YUYV422, flags, NULL, NULL, NULL);
+ #else
+ struct SwsContext *context = sws_getContext( width, height, pix_fmt,
+- width, height, AV_PIX_FMT_YUYV422, flags | SWS_FULL_CHR_H_INP, NULL, NULL, NULL);
++ width, height, AV_PIX_FMT_YUYV422, flags, NULL, NULL, NULL);
+ #endif
+ AVPicture output;
+ avpicture_fill( &output, buffer, AV_PIX_FMT_YUYV422, width, height );
\ No newline at end of file
diff --git a/media-libs/mlt/files/mlt-6.12.0-seconds-digits.patch b/media-libs/mlt/files/mlt-6.12.0-seconds-digits.patch
new file mode 100644
index 00000000000..c00accefd1e
--- /dev/null
+++ b/media-libs/mlt/files/mlt-6.12.0-seconds-digits.patch
@@ -0,0 +1,22 @@
+From 64a71150650616ab0309da1a76e37e762572f641 Mon Sep 17 00:00:00 2001
+From: Brian Matherly <code@brianmatherly.com>
+Date: Mon, 19 Nov 2018 22:44:07 -0600
+Subject: [PATCH] Fix number of digits for seconds.
+
+---
+ src/modules/plus/filter_timer.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/modules/plus/filter_timer.c b/src/modules/plus/filter_timer.c
+index 519f1f72a..32da3281d 100644
+--- a/src/modules/plus/filter_timer.c
++++ b/src/modules/plus/filter_timer.c
+@@ -90,7 +90,7 @@ static void get_timer_str( mlt_filter filter, mlt_frame frame, char* text )
+ }
+ else if ( !strcmp( format, "MM:SS.SS" ) )
+ {
+- snprintf( text, MAX_TEXT_LEN, "%02d:%02.2f", hours * 60 + mins, secs );
++ snprintf( text, MAX_TEXT_LEN, "%02d:%05.2f", hours * 60 + mins, secs );
+ }
+ else if ( !strcmp( format, "SS" ) )
+ {
\ No newline at end of file
diff --git a/media-libs/mlt/mlt-6.12.0.ebuild b/media-libs/mlt/mlt-6.12.0.ebuild
new file mode 100644
index 00000000000..cb1ff2b9908
--- /dev/null
+++ b/media-libs/mlt/mlt-6.12.0.ebuild
@@ -0,0 +1,219 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 )
+# this ebuild currently only supports installing ruby bindings for a single ruby version
+# so USE_RUBY must contain only a single value (the latest stable) as the ebuild calls
+# /usr/bin/${USE_RUBY} directly
+USE_RUBY="ruby25"
+inherit python-single-r1 ruby-single toolchain-funcs
+
+DESCRIPTION="Open source multimedia framework for television broadcasting"
+HOMEPAGE="https://www.mltframework.org/"
+SRC_URI="https://github.com/mltframework/${PN}/releases/download/v${PV}/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux"
+IUSE="compressed-lumas cpu_flags_x86_mmx cpu_flags_x86_sse cpu_flags_x86_sse2 debug ffmpeg fftw frei0r
+gtk jack kdenlive libav libsamplerate lua melt opencv opengl python qt5 rtaudio ruby sdl vdpau xine xml"
+# java perl php tcl vidstab
+IUSE="${IUSE} kernel_linux"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+#rtaudio will use OSS on non linux OSes
+RDEPEND="
+ >=media-libs/libebur128-1.2.2
+ ffmpeg? (
+ libav? ( >=media-video/libav-12:0=[vdpau?] )
+ !libav? ( media-video/ffmpeg:0=[vdpau?] )
+ )
+ fftw? ( sci-libs/fftw:3.0= )
+ frei0r? ( media-plugins/frei0r-plugins )
+ gtk? (
+ media-libs/libexif
+ x11-libs/gtk+:2
+ x11-libs/pango
+ )
+ jack? (
+ >=dev-libs/libxml2-2.5
+ media-libs/ladspa-sdk
+ virtual/jack
+ )
+ libsamplerate? ( >=media-libs/libsamplerate-0.1.2 )
+ lua? ( >=dev-lang/lua-5.1.4-r4:= )
+ opencv? ( >=media-libs/opencv-3.2.0:= )
+ opengl? ( media-video/movit )
+ python? ( ${PYTHON_DEPS} )
+ qt5? (
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtsvg:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtxml:5
+ media-libs/libexif
+ x11-libs/libX11
+ )
+ rtaudio? (
+ >=media-libs/rtaudio-4.1.2
+ kernel_linux? ( media-libs/alsa-lib )
+ )
+ ruby? ( ${RUBY_DEPS} )
+ sdl? (
+ media-libs/libsdl2[X,opengl,video]
+ media-libs/sdl2-image
+ )
+ xine? ( >=media-libs/xine-lib-1.1.2_pre20060328-r7 )
+ xml? ( >=dev-libs/libxml2-2.5 )"
+# java? ( >=virtual/jre-1.5 )
+# perl? ( dev-lang/perl )
+# php? ( dev-lang/php )
+# sox? ( media-sound/sox )
+# tcl? ( dev-lang/tcl:0= )
+# vidstab? ( media-libs/libvidstab )
+SWIG_DEPEND=">=dev-lang/swig-2.0"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ compressed-lumas? ( virtual/imagemagick-tools[png] )
+ lua? ( ${SWIG_DEPEND} virtual/pkgconfig )
+ python? ( ${SWIG_DEPEND} )
+ ruby? ( ${SWIG_DEPEND} )"
+# java? ( ${SWIG_DEPEND} >=virtual/jdk-1.5 )
+# perl? ( ${SWIG_DEPEND} )
+# php? ( ${SWIG_DEPEND} )
+# tcl? ( ${SWIG_DEPEND} )
+
+DOCS=( AUTHORS ChangeLog NEWS README docs/{framework,melt,mlt{++,-xml}}.txt )
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.10.0-swig-underlinking.patch
+ "${FILESDIR}"/${P}-seconds-digits.patch
+ "${FILESDIR}"/${P}-rgb-to-yuv-accuracy.patch
+ "${FILESDIR}"/${P}-frei0r-w-tractor.patch
+)
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ default
+
+ # respect CFLAGS LDFLAGS when building shared libraries. Bug #308873
+ for x in python lua; do
+ sed -i "/mlt.so/s: -lmlt++ :& ${CFLAGS} ${LDFLAGS} :" src/swig/$x/build || die
+ done
+ sed -i "/^LDFLAGS/s: += :& ${LDFLAGS} :" src/swig/ruby/build || die
+
+ sed -i -e "s/env ruby/${USE_RUBY}/" src/swig/ruby/* || die
+}
+
+src_configure() {
+ tc-export CC CXX
+
+ local myconf=(
+ --enable-gpl
+ --enable-gpl3
+ --enable-motion-est
+ --target-arch=$(tc-arch)
+ --disable-kde
+ --disable-sdl
+ --disable-swfdec
+ $(use_enable debug)
+ $(use compressed-lumas && echo ' --luma-compress')
+ $(use_enable cpu_flags_x86_sse sse)
+ $(use_enable cpu_flags_x86_sse2 sse2)
+ $(use_enable gtk gtk2)
+ $(use_enable jack jackrack)
+ $(use_enable ffmpeg avformat)
+ $(use ffmpeg && echo ' --avformat-swscale')
+ $(use_enable fftw plus)
+ $(use_enable frei0r)
+ $(use_enable melt)
+ $(use_enable opencv)
+ $(use_enable opengl)
+ $(use_enable libsamplerate resample)
+ $(use_enable rtaudio)
+ $(use vdpau && echo ' --avformat-vdpau')
+ $(use_enable sdl sdl2)
+ $(use_enable xml)
+ $(use_enable xine)
+ $(use_enable kdenlive)
+ --disable-sox
+ )
+ #$(use_enable sox) FIXME
+
+ if use qt5 ; then
+ myconf+=(
+ --enable-qt
+ --qt-includedir=$(pkg-config Qt5Core --variable=includedir)
+ --qt-libdir=$(pkg-config Qt5Core --variable=libdir)
+ )
+ else
+ myconf+=( --disable-qt )
+ fi
+
+ if use x86 || use amd64 ; then
+ myconf+=( $(use_enable cpu_flags_x86_mmx mmx) )
+ else
+ myconf+=( --disable-mmx )
+ fi
+
+ if ! use melt; then
+ sed -i -e "s;src/melt;;" Makefile || die
+ fi
+
+ # TODO: add swig language bindings
+ # see also https://www.mltframework.org/twiki/bin/view/MLT/ExtremeMakeover
+
+ local swig_lang
+ # TODO: java perl php tcl
+ for i in lua python ruby ; do
+ use $i && swig_lang="${swig_lang} $i"
+ done
+ [[ -z "${swig_lang}" ]] && swig_lang="none"
+
+ econf ${myconf[@]} --swig-languages="${swig_lang}"
+
+ sed -i -e s/^OPT/#OPT/ "${S}/config.mak" || die
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ einstalldocs
+
+ dodir /usr/share/${PN}
+ insinto /usr/share/${PN}
+ doins -r demo
+
+ docinto swig
+
+ # Install SWIG bindings
+ if use lua; then
+ cd "${S}"/src/swig/lua || die
+ exeinto $(pkg-config --variable INSTALL_CMOD lua)
+ doexe mlt.so
+ dodoc play.lua
+ fi
+
+ if use python; then
+ cd "${S}"/src/swig/python || die
+ insinto $(python_get_sitedir)
+ doins mlt.py
+ exeinto $(python_get_sitedir)
+ doexe _mlt.so
+ dodoc play.py
+ python_optimize
+ fi
+
+ if use ruby; then
+ cd "${S}"/src/swig/ruby || die
+ exeinto $("${EPREFIX}"/usr/bin/${USE_RUBY} -r rbconfig -e 'print RbConfig::CONFIG["sitearchdir"]')
+ doexe mlt.so
+ dodoc play.rb thumbs.rb
+ fi
+ # TODO: java perl php tcl
+}
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-libs/mlt/, media-libs/mlt/files/
@ 2020-03-19 11:46 Andreas Sturmlechner
0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2020-03-19 11:46 UTC (permalink / raw
To: gentoo-commits
commit: 77dec8e91cc23174be7905921ba0c67fc9970d4a
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Thu Mar 19 11:40:33 2020 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Thu Mar 19 11:40:59 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=77dec8e9
media-libs/mlt: Drop 6.16.0-r1 and 6.16.0-r2
Package-Manager: Portage-2.3.94, Repoman-2.3.21
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
media-libs/mlt/Manifest | 1 -
....16.0-bad-aspect-ratio-resulting-in-black.patch | 56 -----
..._multi-does-not-correctly-handle-in-point.patch | 22 --
media-libs/mlt/files/mlt-6.16.0-crop-filter.patch | 31 ---
.../mlt-6.16.0-mlt_consumer-race-condition.patch | 30 ---
.../mlt-6.16.0-rotoscoping-interpolation.patch | 22 --
media-libs/mlt/mlt-6.16.0-r1.ebuild | 226 ---------------------
media-libs/mlt/mlt-6.16.0-r2.ebuild | 226 ---------------------
8 files changed, 614 deletions(-)
diff --git a/media-libs/mlt/Manifest b/media-libs/mlt/Manifest
index 81168bf498e..7daf1f26178 100644
--- a/media-libs/mlt/Manifest
+++ b/media-libs/mlt/Manifest
@@ -1,2 +1 @@
-DIST mlt-6.16.0.tar.gz 1414374 BLAKE2B 6c031360721d535e95cbaf890c1f42f5f5dd914e0c6c20992bd3aec4ecbcc0b53370fe6b82b5d11c8242bb0a1f2d94f28bc61b4e5a920e5afb41ca8bb5229433 SHA512 554e8b9baa7a8578cc52315fe0583c61762bf6fbbcdd4a1e4f25753846d92f013e7d74745498625fcc781de993aa0526fd761920450b4314e67105783b9bde26
DIST mlt-6.20.0.tar.gz 1446137 BLAKE2B 50599c827be82ea5f5145297b41001e94b44519ec4c6344b8cfdc6fc92e6106de60ecd985296ab77d24e6a5b74ea8e859187935bd88f9394f3c108308afc68ac SHA512 939e837fb07ff0eace308987d83913e979f82c6eb156b40fde784f3f2b031b5f6896ac96dcde1627925cbb6fc76725f3fc4e5b2d0616fae11263648bcdbe82e3
diff --git a/media-libs/mlt/files/mlt-6.16.0-bad-aspect-ratio-resulting-in-black.patch b/media-libs/mlt/files/mlt-6.16.0-bad-aspect-ratio-resulting-in-black.patch
deleted file mode 100644
index c2bc1946a81..00000000000
--- a/media-libs/mlt/files/mlt-6.16.0-bad-aspect-ratio-resulting-in-black.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-From f0628d1fe7f61a267f1adad8824b9a2083e3376a Mon Sep 17 00:00:00 2001
-From: Dan Dennedy <dan@dennedy.org>
-Date: Fri, 31 May 2019 19:03:32 -0700
-Subject: [PATCH] Fix #453 bad aspect ratio computed resulting in black.
-
-This occured when the s, width, or height properties are supplied with
-no "aspect."
----
- src/modules/avformat/consumer_avformat.c | 34 +++++++++++++-----------
- 1 file changed, 18 insertions(+), 16 deletions(-)
-
-diff --git a/src/modules/avformat/consumer_avformat.c b/src/modules/avformat/consumer_avformat.c
-index 738f5a972..dd2719997 100644
---- a/src/modules/avformat/consumer_avformat.c
-+++ b/src/modules/avformat/consumer_avformat.c
-@@ -271,22 +271,24 @@ mlt_consumer consumer_avformat_init( mlt_profile profile, char *arg )
- static void recompute_aspect_ratio( mlt_properties properties )
- {
- double ar = mlt_properties_get_double( properties, "aspect" );
-- AVRational rational = av_d2q( ar, 255 );
-- int width = mlt_properties_get_int( properties, "width" );
-- int height = mlt_properties_get_int( properties, "height" );
--
-- // Update the profile and properties as well since this is an alias
-- // for mlt properties that correspond to profile settings
-- mlt_properties_set_int( properties, "display_aspect_num", rational.num );
-- mlt_properties_set_int( properties, "display_aspect_den", rational.den );
--
-- // Now compute the sample aspect ratio
-- rational = av_d2q( ar * height / FFMAX(width, 1), 255 );
--
-- // Update the profile and properties as well since this is an alias
-- // for mlt properties that correspond to profile settings
-- mlt_properties_set_int( properties, "sample_aspect_num", rational.num );
-- mlt_properties_set_int( properties, "sample_aspect_den", rational.den );
-+ if (ar > 0.0) {
-+ AVRational rational = av_d2q( ar, 255 );
-+ int width = mlt_properties_get_int( properties, "width" );
-+ int height = mlt_properties_get_int( properties, "height" );
-+
-+ // Update the profile and properties as well since this is an alias
-+ // for mlt properties that correspond to profile settings
-+ mlt_properties_set_int( properties, "display_aspect_num", rational.num );
-+ mlt_properties_set_int( properties, "display_aspect_den", rational.den );
-+
-+ // Now compute the sample aspect ratio
-+ rational = av_d2q( ar * height / FFMAX(width, 1), 255 );
-+
-+ // Update the profile and properties as well since this is an alias
-+ // for mlt properties that correspond to profile settings
-+ mlt_properties_set_int( properties, "sample_aspect_num", rational.num );
-+ mlt_properties_set_int( properties, "sample_aspect_den", rational.den );
-+ }
- }
-
- static void color_trc_from_colorspace( mlt_properties properties )
diff --git a/media-libs/mlt/files/mlt-6.16.0-consumer_multi-does-not-correctly-handle-in-point.patch b/media-libs/mlt/files/mlt-6.16.0-consumer_multi-does-not-correctly-handle-in-point.patch
deleted file mode 100644
index 946d06ae357..00000000000
--- a/media-libs/mlt/files/mlt-6.16.0-consumer_multi-does-not-correctly-handle-in-point.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-From 434dbcf62048cc1220c425c2adc77697b4d40ffb Mon Sep 17 00:00:00 2001
-From: Jean-Baptiste Mardelle <jb@kdenlive.org>
-Date: Mon, 10 Jun 2019 18:18:44 +0200
-Subject: [PATCH] Fix multi consumer doesn't correctly handle in point
-
----
- src/modules/core/consumer_multi.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/modules/core/consumer_multi.c b/src/modules/core/consumer_multi.c
-index 4bb16ddf5..d9b5fbc0f 100644
---- a/src/modules/core/consumer_multi.c
-+++ b/src/modules/core/consumer_multi.c
-@@ -304,7 +304,7 @@ static void foreach_consumer_start( mlt_consumer consumer )
- if ( nested )
- {
- mlt_properties nested_props = MLT_CONSUMER_PROPERTIES(nested);
-- mlt_properties_set_position( nested_props, "_multi_position", 0 );
-+ mlt_properties_set_position( nested_props, "_multi_position", mlt_properties_get_position( properties, "in" ) );
- mlt_properties_set_data( nested_props, "_multi_audio", NULL, 0, NULL, NULL );
- mlt_properties_set_int( nested_props, "_multi_samples", 0 );
- mlt_consumer_start( nested );
diff --git a/media-libs/mlt/files/mlt-6.16.0-crop-filter.patch b/media-libs/mlt/files/mlt-6.16.0-crop-filter.patch
deleted file mode 100644
index d42da685bdb..00000000000
--- a/media-libs/mlt/files/mlt-6.16.0-crop-filter.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From f6225b7f4cd5e9b6011ca79c3849dc9e286a7acb Mon Sep 17 00:00:00 2001
-From: Dan Dennedy <dan@dennedy.org>
-Date: Mon, 13 May 2019 11:44:13 -0700
-Subject: [PATCH] Fix crop filter not working with color producer.
-
-Fixes https://github.com/mltframework/shotcut/issues/737
----
- src/modules/core/producer_colour.c | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/src/modules/core/producer_colour.c b/src/modules/core/producer_colour.c
-index e1cfe5284..67d36dfb2 100644
---- a/src/modules/core/producer_colour.c
-+++ b/src/modules/core/producer_colour.c
-@@ -1,6 +1,6 @@
- /*
- * producer_colour.c
-- * Copyright (C) 2003-2018 Meltytech, LLC
-+ * Copyright (C) 2003-2019 Meltytech, LLC
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
-@@ -248,6 +248,8 @@ static int producer_get_frame( mlt_producer producer, mlt_frame_ptr frame, int i
- mlt_properties_set_int( properties, "progressive", 1 );
- mlt_profile profile = mlt_service_profile( MLT_PRODUCER_SERVICE( producer ) );
- mlt_properties_set_double( properties, "aspect_ratio", mlt_profile_sar( profile ) );
-+ mlt_properties_set_int( properties, "meta.media.width", profile->width );
-+ mlt_properties_set_int( properties, "meta.media.height", profile->height );
-
- // colour is an alias for resource
- if ( mlt_properties_get( producer_props, "colour" ) != NULL )
diff --git a/media-libs/mlt/files/mlt-6.16.0-mlt_consumer-race-condition.patch b/media-libs/mlt/files/mlt-6.16.0-mlt_consumer-race-condition.patch
deleted file mode 100644
index 7fd1c577541..00000000000
--- a/media-libs/mlt/files/mlt-6.16.0-mlt_consumer-race-condition.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 9b89b781b9d06181c8d486605ed4c2b3089d64d6 Mon Sep 17 00:00:00 2001
-From: alcinos <nicolas.carion@ens-lyon.fr>
-Date: Wed, 1 May 2019 23:50:41 +0200
-Subject: [PATCH] Fix race in mlt_consumer
-
----
- src/framework/mlt_consumer.c | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/src/framework/mlt_consumer.c b/src/framework/mlt_consumer.c
-index 491bc5e99..0e36bde3c 100644
---- a/src/framework/mlt_consumer.c
-+++ b/src/framework/mlt_consumer.c
-@@ -31,6 +31,7 @@
- #include <string.h>
- #include <stdlib.h>
- #include <sys/time.h>
-+#include <stdatomic.h>
-
- /** Define this if you want an automatic deinterlace (if necessary) when the
- * consumer's producer is not running at normal speed.
-@@ -65,7 +66,7 @@ typedef struct
- double fps;
- int channels;
- int frequency;
-- int speed;
-+ atomic_int speed;
- /* additional fields added for the parallel work queue */
- mlt_deque worker_threads;
- pthread_mutex_t done_mutex;
diff --git a/media-libs/mlt/files/mlt-6.16.0-rotoscoping-interpolation.patch b/media-libs/mlt/files/mlt-6.16.0-rotoscoping-interpolation.patch
deleted file mode 100644
index 935a2d13f61..00000000000
--- a/media-libs/mlt/files/mlt-6.16.0-rotoscoping-interpolation.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-From ddf6983b4aaaf662944b84103dd4412aff45a428 Mon Sep 17 00:00:00 2001
-From: alcinos <nicolas.carion@ens-lyon.fr>
-Date: Fri, 10 May 2019 23:20:22 +0200
-Subject: [PATCH] Fix interpolation in rotoscoping filter
-
----
- src/modules/plusgpl/filter_rotoscoping.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/modules/plusgpl/filter_rotoscoping.c b/src/modules/plusgpl/filter_rotoscoping.c
-index 0667929cd..70e3a093b 100644
---- a/src/modules/plusgpl/filter_rotoscoping.c
-+++ b/src/modules/plusgpl/filter_rotoscoping.c
-@@ -572,7 +572,7 @@ static mlt_frame filter_process( mlt_filter filter, mlt_frame frame )
- int c2 = json2BCurves( keyframe, &p2 );
-
- // range 0-1
-- double position = ( time - pos1 ) / (double)( pos2 - pos1 + 1 );
-+ double position = ( time - pos1 ) / (double)( pos2 - pos1 );
-
- count = MIN( c1, c2 ); // additional points are ignored
- points = mlt_pool_alloc( count * sizeof( BPointF ) );
diff --git a/media-libs/mlt/mlt-6.16.0-r1.ebuild b/media-libs/mlt/mlt-6.16.0-r1.ebuild
deleted file mode 100644
index 6b79b5c3fea..00000000000
--- a/media-libs/mlt/mlt-6.16.0-r1.ebuild
+++ /dev/null
@@ -1,226 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7} )
-# this ebuild currently only supports installing ruby bindings for a single ruby version
-# so USE_RUBY must contain only a single value (the latest stable) as the ebuild calls
-# /usr/bin/${USE_RUBY} directly
-USE_RUBY="ruby24"
-inherit python-single-r1 qmake-utils ruby-single toolchain-funcs
-
-DESCRIPTION="Open source multimedia framework for television broadcasting"
-HOMEPAGE="https://www.mltframework.org/"
-SRC_URI="https://github.com/mltframework/${PN}/releases/download/v${PV}/${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="amd64 arm64 x86 ~amd64-linux ~x86-linux"
-IUSE="compressed-lumas cpu_flags_x86_mmx cpu_flags_x86_sse cpu_flags_x86_sse2 debug ffmpeg
-fftw frei0r gtk jack kdenlive kernel_linux libav libsamplerate lua melt opencv opengl python
-qt5 rtaudio ruby sdl vdpau vidstab xine xml"
-# java perl php tcl
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-SWIG_DEPEND=">=dev-lang/swig-2.0"
-# java? ( ${SWIG_DEPEND} >=virtual/jdk-1.5 )
-# perl? ( ${SWIG_DEPEND} )
-# php? ( ${SWIG_DEPEND} )
-# tcl? ( ${SWIG_DEPEND} )
-BDEPEND="
- virtual/pkgconfig
- compressed-lumas? ( virtual/imagemagick-tools[png] )
- lua? ( ${SWIG_DEPEND} virtual/pkgconfig )
- python? ( ${SWIG_DEPEND} )
- ruby? ( ${SWIG_DEPEND} )"
-#rtaudio will use OSS on non linux OSes
-DEPEND="
- >=media-libs/libebur128-1.2.2:=
- ffmpeg? (
- libav? ( >=media-video/libav-12:0=[vdpau?] )
- !libav? ( media-video/ffmpeg:0=[vdpau?,-flite] )
- )
- fftw? ( sci-libs/fftw:3.0= )
- frei0r? ( media-plugins/frei0r-plugins )
- gtk? (
- media-libs/libexif
- x11-libs/gtk+:2
- x11-libs/pango
- )
- jack? (
- >=dev-libs/libxml2-2.5
- media-libs/ladspa-sdk
- virtual/jack
- )
- libsamplerate? ( >=media-libs/libsamplerate-0.1.2 )
- lua? ( >=dev-lang/lua-5.1.4-r4:= )
- opencv? ( >=media-libs/opencv-3.2.0:= )
- opengl? ( media-video/movit )
- python? ( ${PYTHON_DEPS} )
- qt5? (
- dev-qt/qtcore:5
- dev-qt/qtgui:5
- dev-qt/qtsvg:5
- dev-qt/qtwidgets:5
- dev-qt/qtxml:5
- media-libs/libexif
- x11-libs/libX11
- )
- rtaudio? (
- >=media-libs/rtaudio-4.1.2
- kernel_linux? ( media-libs/alsa-lib )
- )
- ruby? ( ${RUBY_DEPS} )
- sdl? (
- media-libs/libsdl2[X,opengl,video]
- media-libs/sdl2-image
- )
- vidstab? ( media-libs/vidstab )
- xine? ( >=media-libs/xine-lib-1.1.2_pre20060328-r7 )
- xml? ( >=dev-libs/libxml2-2.5 )"
-# java? ( >=virtual/jre-1.5 )
-# perl? ( dev-lang/perl )
-# php? ( dev-lang/php )
-# sox? ( media-sound/sox )
-# tcl? ( dev-lang/tcl:0= )
-RDEPEND="${DEPEND}"
-
-DOCS=( AUTHORS ChangeLog NEWS README docs/{framework,melt,mlt{++,-xml}}.txt )
-
-PATCHES=(
- "${FILESDIR}"/${PN}-6.10.0-swig-underlinking.patch
- "${FILESDIR}"/${P}-mlt_consumer-race-condition.patch
- "${FILESDIR}"/${P}-rotoscoping-interpolation.patch
- "${FILESDIR}"/${P}-crop-filter.patch
- "${FILESDIR}"/${P}-consumer_multi-does-not-correctly-handle-in-point.patch
- "${FILESDIR}"/${P}-bad-aspect-ratio-resulting-in-black.patch
-)
-
-pkg_setup() {
- use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
- default
-
- # respect CFLAGS LDFLAGS when building shared libraries. Bug #308873
- for x in python lua; do
- sed -i "/mlt.so/s: -lmlt++ :& ${CFLAGS} ${LDFLAGS} :" src/swig/$x/build || die
- done
-
- sed -i -e "s/env ruby/${USE_RUBY}/" src/swig/ruby/* || die
-
- # fix python include dir
- if use python; then
- python_export PYTHON_INCLUDEDIR
- sed -e "/PYTHON_INCLUDE=/s:=.*:=${PYTHON_INCLUDEDIR}:" \
- -i src/swig/python/build || die
- fi
-}
-
-src_configure() {
- tc-export CC CXX
-
- local myconf=(
- --enable-gpl
- --enable-gpl3
- --enable-motion-est
- --target-arch=$(tc-arch)
- --disable-kde
- --disable-sdl
- --disable-swfdec
- $(use_enable debug)
- $(use_enable cpu_flags_x86_sse sse)
- $(use_enable cpu_flags_x86_sse2 sse2)
- $(use_enable ffmpeg avformat)
- $(use_enable fftw plus)
- $(use_enable frei0r)
- $(use_enable gtk gtk2)
- $(use_enable jack jackrack)
- $(use_enable kdenlive)
- $(use_enable libsamplerate resample)
- $(use_enable melt)
- $(use_enable opencv)
- $(use_enable opengl)
- $(use_enable qt5 qt)
- $(use_enable rtaudio)
- $(use_enable sdl sdl2)
- $(use_enable vidstab vid.stab )
- $(use_enable xine)
- $(use_enable xml)
- --disable-sox
- )
- #$(use_enable sox) FIXME
-
- use compressed-lumas && myconf+=( --luma-compress )
- use ffmpeg && myconf+=( --avformat-swscale )
- use vdpau && myconf+=( --avformat-vdpau )
-
- if use qt5 ; then
- myconf+=(
- --qt-includedir=$(qt5_get_headerdir)
- --qt-libdir=$(qt5_get_libdir)
- )
- fi
-
- if use amd64 || use x86 ; then
- myconf+=( $(use_enable cpu_flags_x86_mmx mmx) )
- else
- myconf+=( --disable-mmx )
- fi
-
- if ! use melt ; then
- sed -i -e "s;src/melt;;" Makefile || die
- fi
-
- # TODO: add swig language bindings
- # see also https://www.mltframework.org/twiki/bin/view/MLT/ExtremeMakeover
-
- local swig_lang=()
- # TODO: java perl php tcl
- for i in lua python ruby ; do
- use $i && swig_lang+=( $i )
- done
- [[ -z "${swig_lang}" ]] && swig_lang=( none )
-
- econf "${myconf[@]}" --swig-languages="${swig_lang[*]}"
-
- sed -i -e s/^OPT/#OPT/ config.mak || die
-}
-
-src_install() {
- default
-
- dodir /usr/share/${PN}
- insinto /usr/share/${PN}
- doins -r demo
-
- docinto swig
-
- # Install SWIG bindings
- if use lua; then
- cd "${S}"/src/swig/lua || die
- exeinto $(pkg-config --variable INSTALL_CMOD lua)
- doexe mlt.so
- dodoc play.lua
- fi
-
- if use python; then
- cd "${S}"/src/swig/python || die
- python_domodule mlt.py _mlt.so
- chmod +x "${D}$(python_get_sitedir)/_mlt.so" || die
- dodoc play.py
- python_optimize
- fi
-
- if use ruby; then
- cd "${S}"/src/swig/ruby || die
- local rubydir=$("${EPREFIX}"/usr/bin/${USE_RUBY} -r rbconfig -e 'print RbConfig::CONFIG["sitearchdir"]')
- exeinto "${rubydir#${EPREFIX}}"
- doexe mlt.so
- dodoc play.rb thumbs.rb
- fi
- # TODO: java perl php tcl
-}
diff --git a/media-libs/mlt/mlt-6.16.0-r2.ebuild b/media-libs/mlt/mlt-6.16.0-r2.ebuild
deleted file mode 100644
index 3113c3933d9..00000000000
--- a/media-libs/mlt/mlt-6.16.0-r2.ebuild
+++ /dev/null
@@ -1,226 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7} )
-# this ebuild currently only supports installing ruby bindings for a single ruby version
-# so USE_RUBY must contain only a single value (the latest stable) as the ebuild calls
-# /usr/bin/${USE_RUBY} directly
-USE_RUBY="ruby25"
-inherit python-single-r1 qmake-utils ruby-single toolchain-funcs
-
-DESCRIPTION="Open source multimedia framework for television broadcasting"
-HOMEPAGE="https://www.mltframework.org/"
-SRC_URI="https://github.com/mltframework/${PN}/releases/download/v${PV}/${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="amd64 arm64 x86 ~amd64-linux ~x86-linux"
-IUSE="compressed-lumas cpu_flags_x86_mmx cpu_flags_x86_sse cpu_flags_x86_sse2 debug ffmpeg
-fftw frei0r gtk jack kdenlive kernel_linux libav libsamplerate lua melt opencv opengl python
-qt5 rtaudio ruby sdl vdpau vidstab xine xml"
-# java perl php tcl
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-SWIG_DEPEND=">=dev-lang/swig-2.0"
-# java? ( ${SWIG_DEPEND} >=virtual/jdk-1.5 )
-# perl? ( ${SWIG_DEPEND} )
-# php? ( ${SWIG_DEPEND} )
-# tcl? ( ${SWIG_DEPEND} )
-BDEPEND="
- virtual/pkgconfig
- compressed-lumas? ( virtual/imagemagick-tools[png] )
- lua? ( ${SWIG_DEPEND} virtual/pkgconfig )
- python? ( ${SWIG_DEPEND} )
- ruby? ( ${SWIG_DEPEND} )"
-#rtaudio will use OSS on non linux OSes
-DEPEND="
- >=media-libs/libebur128-1.2.2:=
- ffmpeg? (
- libav? ( >=media-video/libav-12:0=[vdpau?] )
- !libav? ( media-video/ffmpeg:0=[vdpau?,-flite] )
- )
- fftw? ( sci-libs/fftw:3.0= )
- frei0r? ( media-plugins/frei0r-plugins )
- gtk? (
- media-libs/libexif
- x11-libs/gtk+:2
- x11-libs/pango
- )
- jack? (
- >=dev-libs/libxml2-2.5
- media-libs/ladspa-sdk
- virtual/jack
- )
- libsamplerate? ( >=media-libs/libsamplerate-0.1.2 )
- lua? ( >=dev-lang/lua-5.1.4-r4:= )
- opencv? ( >=media-libs/opencv-3.2.0:= )
- opengl? ( media-video/movit )
- python? ( ${PYTHON_DEPS} )
- qt5? (
- dev-qt/qtcore:5
- dev-qt/qtgui:5
- dev-qt/qtsvg:5
- dev-qt/qtwidgets:5
- dev-qt/qtxml:5
- media-libs/libexif
- x11-libs/libX11
- )
- rtaudio? (
- >=media-libs/rtaudio-4.1.2
- kernel_linux? ( media-libs/alsa-lib )
- )
- ruby? ( ${RUBY_DEPS} )
- sdl? (
- media-libs/libsdl2[X,opengl,video]
- media-libs/sdl2-image
- )
- vidstab? ( media-libs/vidstab )
- xine? ( >=media-libs/xine-lib-1.1.2_pre20060328-r7 )
- xml? ( >=dev-libs/libxml2-2.5 )"
-# java? ( >=virtual/jre-1.5 )
-# perl? ( dev-lang/perl )
-# php? ( dev-lang/php )
-# sox? ( media-sound/sox )
-# tcl? ( dev-lang/tcl:0= )
-RDEPEND="${DEPEND}"
-
-DOCS=( AUTHORS ChangeLog NEWS README docs/{framework,melt,mlt{++,-xml}}.txt )
-
-PATCHES=(
- "${FILESDIR}"/${PN}-6.10.0-swig-underlinking.patch
- "${FILESDIR}"/${P}-mlt_consumer-race-condition.patch
- "${FILESDIR}"/${P}-rotoscoping-interpolation.patch
- "${FILESDIR}"/${P}-crop-filter.patch
- "${FILESDIR}"/${P}-consumer_multi-does-not-correctly-handle-in-point.patch
- "${FILESDIR}"/${P}-bad-aspect-ratio-resulting-in-black.patch
-)
-
-pkg_setup() {
- use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
- default
-
- # respect CFLAGS LDFLAGS when building shared libraries. Bug #308873
- for x in python lua; do
- sed -i "/mlt.so/s: -lmlt++ :& ${CFLAGS} ${LDFLAGS} :" src/swig/$x/build || die
- done
-
- sed -i -e "s/env ruby/${USE_RUBY}/" src/swig/ruby/* || die
-
- # fix python include dir
- if use python; then
- python_export PYTHON_INCLUDEDIR
- sed -e "/PYTHON_INCLUDE=/s:=.*:=${PYTHON_INCLUDEDIR}:" \
- -i src/swig/python/build || die
- fi
-}
-
-src_configure() {
- tc-export CC CXX
-
- local myconf=(
- --enable-gpl
- --enable-gpl3
- --enable-motion-est
- --target-arch=$(tc-arch)
- --disable-kde
- --disable-sdl
- --disable-swfdec
- $(use_enable debug)
- $(use_enable cpu_flags_x86_sse sse)
- $(use_enable cpu_flags_x86_sse2 sse2)
- $(use_enable ffmpeg avformat)
- $(use_enable fftw plus)
- $(use_enable frei0r)
- $(use_enable gtk gtk2)
- $(use_enable jack jackrack)
- $(use_enable kdenlive)
- $(use_enable libsamplerate resample)
- $(use_enable melt)
- $(use_enable opencv)
- $(use_enable opengl)
- $(use_enable qt5 qt)
- $(use_enable rtaudio)
- $(use_enable sdl sdl2)
- $(use_enable vidstab vid.stab )
- $(use_enable xine)
- $(use_enable xml)
- --disable-sox
- )
- #$(use_enable sox) FIXME
-
- use compressed-lumas && myconf+=( --luma-compress )
- use ffmpeg && myconf+=( --avformat-swscale )
- use vdpau && myconf+=( --avformat-vdpau )
-
- if use qt5 ; then
- myconf+=(
- --qt-includedir=$(qt5_get_headerdir)
- --qt-libdir=$(qt5_get_libdir)
- )
- fi
-
- if use amd64 || use x86 ; then
- myconf+=( $(use_enable cpu_flags_x86_mmx mmx) )
- else
- myconf+=( --disable-mmx )
- fi
-
- if ! use melt ; then
- sed -i -e "s;src/melt;;" Makefile || die
- fi
-
- # TODO: add swig language bindings
- # see also https://www.mltframework.org/twiki/bin/view/MLT/ExtremeMakeover
-
- local swig_lang=()
- # TODO: java perl php tcl
- for i in lua python ruby ; do
- use $i && swig_lang+=( $i )
- done
- [[ -z "${swig_lang}" ]] && swig_lang=( none )
-
- econf "${myconf[@]}" --swig-languages="${swig_lang[*]}"
-
- sed -i -e s/^OPT/#OPT/ config.mak || die
-}
-
-src_install() {
- default
-
- dodir /usr/share/${PN}
- insinto /usr/share/${PN}
- doins -r demo
-
- docinto swig
-
- # Install SWIG bindings
- if use lua; then
- cd "${S}"/src/swig/lua || die
- exeinto $(pkg-config --variable INSTALL_CMOD lua)
- doexe mlt.so
- dodoc play.lua
- fi
-
- if use python; then
- cd "${S}"/src/swig/python || die
- python_domodule mlt.py _mlt.so
- chmod +x "${D}$(python_get_sitedir)/_mlt.so" || die
- dodoc play.py
- python_optimize
- fi
-
- if use ruby; then
- cd "${S}"/src/swig/ruby || die
- local rubydir=$("${EPREFIX}"/usr/bin/${USE_RUBY} -r rbconfig -e 'print RbConfig::CONFIG["sitearchdir"]')
- exeinto "${rubydir#${EPREFIX}}"
- doexe mlt.so
- dodoc play.rb thumbs.rb
- fi
- # TODO: java perl php tcl
-}
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-libs/mlt/, media-libs/mlt/files/
@ 2020-06-30 21:44 Andreas Sturmlechner
0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2020-06-30 21:44 UTC (permalink / raw
To: gentoo-commits
commit: 66f50e0d7924934d83919eeeeb6f226277e07f30
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Tue Jun 30 20:52:43 2020 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Tue Jun 30 21:44:02 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=66f50e0d
media-libs/mlt: fix null pointer crash in mix transition
Upstream commit dc585bfa5765db418923e7b4802c03bc57733111
Package-Manager: Portage-2.3.103, Repoman-2.3.23
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
.../mlt/files/mlt-6.20.0-nullpointer-crash.patch | 22 ++++++++++++++++++++++
media-libs/mlt/mlt-6.20.0-r2.ebuild | 1 +
2 files changed, 23 insertions(+)
diff --git a/media-libs/mlt/files/mlt-6.20.0-nullpointer-crash.patch b/media-libs/mlt/files/mlt-6.20.0-nullpointer-crash.patch
new file mode 100644
index 00000000000..6bff797c0a9
--- /dev/null
+++ b/media-libs/mlt/files/mlt-6.20.0-nullpointer-crash.patch
@@ -0,0 +1,22 @@
+From b32be6e56e328bb2e580aa13cd757aa211310bae Mon Sep 17 00:00:00 2001
+From: Dan Dennedy <dan@dennedy.org>
+Date: Thu, 27 Feb 2020 23:49:07 -0800
+Subject: [PATCH] fix null pointer crash in mix transition
+
+---
+ src/modules/core/transition_mix.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/modules/core/transition_mix.c b/src/modules/core/transition_mix.c
+index ab7a166d0..89c07a285 100644
+--- a/src/modules/core/transition_mix.c
++++ b/src/modules/core/transition_mix.c
+@@ -139,7 +139,7 @@ static int transition_get_audio( mlt_frame frame_a, void **buffer, mlt_audio_for
+ mlt_frame_get_audio( frame_a, (void**) &buffer_a, format, &frequency_a, &channels_a, &samples_a );
+
+ // Prevent dividing by zero.
+- if ( !channels_a || !channels_b )
++ if ( !channels_a || !channels_b || !buffer_a || !buffer_b )
+ return 1;
+
+ if ( buffer_b == buffer_a )
diff --git a/media-libs/mlt/mlt-6.20.0-r2.ebuild b/media-libs/mlt/mlt-6.20.0-r2.ebuild
index 6edc6c8f9cb..4f93b42419b 100644
--- a/media-libs/mlt/mlt-6.20.0-r2.ebuild
+++ b/media-libs/mlt/mlt-6.20.0-r2.ebuild
@@ -87,6 +87,7 @@ PATCHES=(
"${FILESDIR}"/${P}-qt-5.15.patch
"${FILESDIR}"/${P}-no-gtk2.patch
"${FILESDIR}"/${P}-opencv4.patch
+ "${FILESDIR}"/${P}-nullpointer-crash.patch
)
pkg_setup() {
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-libs/mlt/, media-libs/mlt/files/
@ 2020-06-30 21:44 Andreas Sturmlechner
0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2020-06-30 21:44 UTC (permalink / raw
To: gentoo-commits
commit: 62a081d800ec28836843c9a2db67ed80cbb52b12
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Tue Jun 30 21:00:29 2020 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Tue Jun 30 21:44:02 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=62a081d8
media-libs/mlt: fix crash with filters not supporting preview scale
Upstream commit dc585bfa5765db418923e7b4802c03bc57733111
Package-Manager: Portage-2.3.103, Repoman-2.3.23
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
...-6.20.0-crash-w-unsupported-preview-scale.patch | 48 ++++++++++++++++++++++
media-libs/mlt/mlt-6.20.0-r2.ebuild | 1 +
2 files changed, 49 insertions(+)
diff --git a/media-libs/mlt/files/mlt-6.20.0-crash-w-unsupported-preview-scale.patch b/media-libs/mlt/files/mlt-6.20.0-crash-w-unsupported-preview-scale.patch
new file mode 100644
index 00000000000..25057b3c1ae
--- /dev/null
+++ b/media-libs/mlt/files/mlt-6.20.0-crash-w-unsupported-preview-scale.patch
@@ -0,0 +1,48 @@
+From dc585bfa5765db418923e7b4802c03bc57733111 Mon Sep 17 00:00:00 2001
+From: Dan Dennedy <dan@dennedy.org>
+Date: Mon, 2 Mar 2020 14:02:26 -0800
+Subject: [PATCH] fix crash with filters not supporting preview scale
+
+---
+ src/modules/frei0r/transition_frei0r.c | 18 +++++++++++++++++-
+ 1 file changed, 17 insertions(+), 1 deletion(-)
+
+diff --git a/src/modules/frei0r/transition_frei0r.c b/src/modules/frei0r/transition_frei0r.c
+index b69011719..f11266b75 100644
+--- a/src/modules/frei0r/transition_frei0r.c
++++ b/src/modules/frei0r/transition_frei0r.c
+@@ -1,7 +1,7 @@
+ /*
+ * transition_frei0r.c -- frei0r transition
+ * Copyright (c) 2008 Marco Gittler <g.marco@freenet.de>
+- * Copyright (C) 2009-2019 Meltytech, LLC
++ * Copyright (C) 2009-2020 Meltytech, LLC
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+@@ -67,9 +67,25 @@ static int transition_get_image( mlt_frame a_frame, uint8_t **image, mlt_image_f
+ }
+ else
+ {
++ mlt_image_format b_format = *format;
++ int b_width = *width;
++ int b_height = *height;
++
+ error = mlt_frame_get_image( a_frame, &images[0], format, width, height, 0 );
+ if ( error ) return error;
+
++ if (*width != b_width || *height != b_height) {
++ if (invert) {
++ *image = images[0];
++ } else {
++ *image = images[1];
++ *format = b_format;
++ *width = b_width;
++ *height = b_height;
++ }
++ return error;
++ }
++
+ mlt_position position = mlt_transition_get_position( transition, a_frame );
+ mlt_profile profile = mlt_service_profile( MLT_TRANSITION_SERVICE( transition ) );
+ double time = (double) position / mlt_profile_fps( profile );
diff --git a/media-libs/mlt/mlt-6.20.0-r2.ebuild b/media-libs/mlt/mlt-6.20.0-r2.ebuild
index 4f93b42419b..d261114c200 100644
--- a/media-libs/mlt/mlt-6.20.0-r2.ebuild
+++ b/media-libs/mlt/mlt-6.20.0-r2.ebuild
@@ -88,6 +88,7 @@ PATCHES=(
"${FILESDIR}"/${P}-no-gtk2.patch
"${FILESDIR}"/${P}-opencv4.patch
"${FILESDIR}"/${P}-nullpointer-crash.patch
+ "${FILESDIR}"/${P}-crash-w-unsupported-preview-scale.patch
)
pkg_setup() {
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-libs/mlt/, media-libs/mlt/files/
@ 2020-06-30 21:44 Andreas Sturmlechner
0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2020-06-30 21:44 UTC (permalink / raw
To: gentoo-commits
commit: 46ea7eb2c62715bacc9d1eed7bbcd6abd2cc17ee
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Tue Jun 30 20:27:41 2020 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Tue Jun 30 21:44:01 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=46ea7eb2
media-libs/mlt: Drop x11-libs/gtk+:2 dependency
Upstream commit 1c45ceae1d06cd3df7063e2644140b647b6d0acd
Package-Manager: Portage-2.3.103, Repoman-2.3.23
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
media-libs/mlt/files/mlt-6.20.0-no-gtk2.patch | 421 ++++++++++++++++++++++++++
media-libs/mlt/mlt-6.20.0-r2.ebuild | 5 +-
2 files changed, 424 insertions(+), 2 deletions(-)
diff --git a/media-libs/mlt/files/mlt-6.20.0-no-gtk2.patch b/media-libs/mlt/files/mlt-6.20.0-no-gtk2.patch
new file mode 100644
index 00000000000..5031ab374f6
--- /dev/null
+++ b/media-libs/mlt/files/mlt-6.20.0-no-gtk2.patch
@@ -0,0 +1,421 @@
+From 1c45ceae1d06cd3df7063e2644140b647b6d0acd Mon Sep 17 00:00:00 2001
+From: martin <martin.sandsmark@kde.org>
+Date: Mon, 13 Apr 2020 19:15:32 +0000
+Subject: [PATCH] split out gdk code from gtk2 code, disable gtk2 by default
+ (#544)
+
+* split gtk2 code out from gdk code
+
+* remove gtk2 module from default build
+---
+ CMakeLists.txt | 2 +-
+ src/modules/gdk/CMakeLists.txt | 39 ++++++++
+ src/modules/gdk/Makefile | 74 +++++++++++++++
+ src/modules/gdk/configure | 82 +++++++++++++++++
+ src/modules/gdk/factory.c | 92 +++++++++++++++++++
+ src/modules/{gtk2 => gdk}/filter_rescale.c | 0
+ src/modules/{gtk2 => gdk}/filter_rescale.yml | 0
+ src/modules/{gtk2 => gdk}/have_mmx.S | 0
+ src/modules/{gtk2 => gdk}/pixops.c | 0
+ src/modules/{gtk2 => gdk}/pixops.h | 0
+ src/modules/{gtk2 => gdk}/producer_pango.c | 1 -
+ src/modules/{gtk2 => gdk}/producer_pango.yml | 0
+ src/modules/{gtk2 => gdk}/producer_pixbuf.c | 0
+ src/modules/{gtk2 => gdk}/producer_pixbuf.yml | 0
+ .../{gtk2 => gdk}/scale_line_22_yuv_mmx.S | 0
+ src/modules/gtk2/deprecated | 0
+ 20 files changed, 291 insertions(+), 151 deletions(-)
+ create mode 100644 src/modules/gdk/CMakeLists.txt
+ create mode 100644 src/modules/gdk/Makefile
+ create mode 100755 src/modules/gdk/configure
+ create mode 100644 src/modules/gdk/factory.c
+ rename src/modules/{gtk2 => gdk}/filter_rescale.c (100%)
+ rename src/modules/{gtk2 => gdk}/filter_rescale.yml (100%)
+ rename src/modules/{gtk2 => gdk}/have_mmx.S (100%)
+ rename src/modules/{gtk2 => gdk}/pixops.c (100%)
+ rename src/modules/{gtk2 => gdk}/pixops.h (100%)
+ rename src/modules/{gtk2 => gdk}/producer_pango.c (99%)
+ rename src/modules/{gtk2 => gdk}/producer_pango.yml (100%)
+ rename src/modules/{gtk2 => gdk}/producer_pixbuf.c (100%)
+ rename src/modules/{gtk2 => gdk}/producer_pixbuf.yml (100%)
+ rename src/modules/{gtk2 => gdk}/scale_line_22_yuv_mmx.S (100%)
+ create mode 100644 src/modules/gtk2/deprecated
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 54afeceda..e25ca68b0 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -31,7 +31,7 @@ set(modules
+ src/modules/decklink
+ src/modules/frei0r
+ src/modules/feeds
+- src/modules/gtk2
++ src/modules/gdk
+ src/modules/kdenlive
+ src/modules/motion_est
+ src/modules/normalize
+diff --git a/src/modules/gdk/CMakeLists.txt b/src/modules/gdk/CMakeLists.txt
+new file mode 100644
+index 000000000..b7bdb2c24
+--- /dev/null
++++ b/src/modules/gdk/CMakeLists.txt
+@@ -0,0 +1,39 @@
++set(mltgdk_src factory.c)
++set(mltgdk_lib mlt m Threads::Threads)
++set(mltgdk_def "")
++
++
++pkg_check_modules(GdkPixbuf IMPORTED_TARGET gdk-pixbuf-2.0 REQUIRED)
++if(TARGET PkgConfig::GdkPixbuf)
++ list(APPEND mltgdk_src producer_pixbuf.c pixops.c filter_rescale.c)
++ list(APPEND mltgdk_lib PkgConfig::GdkPixbuf)
++ list(APPEND mltgdk_def USE_PIXBUF)
++ message(STATUS "${mltgdk_lib}")
++else()
++ message(FATAL_ERROR "Failed to find gdk pixbuf")
++endif()
++
++pkg_check_modules(pango IMPORTED_TARGET pango)
++if(TARGET PkgConfig::pango)
++ pkg_check_modules(fontconfig IMPORTED_TARGET fontconfig)
++ if(TARGET PkgConfig::fontconfig)
++ list(APPEND mltgdk_src producer_pango.c)
++ list(APPEND mltgdk_lib PkgConfig::pango PkgConfig::fontconfig)
++ list(APPEND mltgdk_def USE_PANGO)
++ endif()
++endif()
++
++pkg_check_modules(libexif IMPORTED_TARGET libexif)
++if(TARGET PkgConfig::libexif)
++ list(APPEND mltgdk_lib PkgConfig::libexif)
++ list(APPEND mltgdk_def USE_EXIF)
++endif()
++# Only for MMX but not x86_64: deprecated
++# list(APPEND mltgdk_src have_mmx.S scale_line_22_yuv_mmx.S)
++add_library(mltgdk MODULE ${mltgdk_src})
++target_link_libraries(mltgdk ${mltgdk_lib})
++target_compile_definitions(mltgdk PRIVATE ${mltgdk_def})
++install(TARGETS mltgdk LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/mlt)
++file(GLOB yml *.yml)
++install(FILES ${yml}
++ DESTINATION ${CMAKE_INSTALL_DATADIR}/mlt/gdk)
+diff --git a/src/modules/gdk/Makefile b/src/modules/gdk/Makefile
+new file mode 100644
+index 000000000..2e3018976
+--- /dev/null
++++ b/src/modules/gdk/Makefile
+@@ -0,0 +1,74 @@
++include ../../../config.mak
++include config.mak
++
++CFLAGS := -I../.. $(CFLAGS)
++
++LDFLAGS := -L../../framework -lmlt -lpthread -lm $(LDFLAGS)
++
++TARGET = ../libmltgdk$(LIBSUF)
++
++OBJS = factory.o
++
++ifdef USE_PIXBUF
++OBJS += producer_pixbuf.o pixops.o filter_rescale.o
++CFLAGS += $(shell pkg-config $(PKGCONFIG_PREFIX) --cflags gdk-pixbuf-2.0)
++LDFLAGS += $(shell pkg-config $(PKGCONFIG_PREFIX) --libs gdk-pixbuf-2.0)
++endif
++
++ifdef USE_EXIF
++CFLAGS += $(EXIFCXXFLAGS)
++LDFLAGS += $(EXIFLIBS)
++endif
++
++ifdef MMX_FLAGS
++ifndef ARCH_X86_64
++ASM_OBJS = have_mmx.o scale_line_22_yuv_mmx.o
++endif
++endif
++
++ifdef USE_PANGO
++OBJS += producer_pango.o
++CFLAGS += $(shell pkg-config $(PKGCONFIG_PREFIX) --cflags pangoft2)
++CFLAGS += $(shell pkg-config $(PKGCONFIG_PREFIX) --cflags-only-I freetype2 | awk '{for (i=1; i<=NF; i++) $$i=sprintf("%s/freetype", $$i); print}')
++LDFLAGS += $(shell pkg-config $(PKGCONFIG_PREFIX) --libs pangoft2)
++ifeq ($(targetos),Darwin)
++LDFLAGS += -liconv
++endif
++ifeq ($(targetos),FreeBSD)
++LDFLAGS += -liconv
++endif
++ifeq ($(targetos), MinGW)
++LDFLAGS += -liconv
++endif
++endif
++
++SRCS := $(OBJS:.o=.c)
++
++all: $(TARGET)
++
++$(TARGET): $(OBJS) $(ASM_OBJS)
++ $(CC) $(SHFLAGS) -o $@ $(OBJS) $(ASM_OBJS) $(LDFLAGS)
++
++have_mmx.o:
++ $(CC) -o $@ -c have_mmx.S
++
++scale_line_22_yuv_mmx.o: scale_line_22_yuv_mmx.S
++ $(CC) -o $@ -c scale_line_22_yuv_mmx.S
++
++depend: $(SRCS)
++ $(CC) -MM $(CFLAGS) $^ 1>.depend
++
++distclean: clean
++ rm -f .depend
++
++clean:
++ rm -f $(OBJS) $(ASM_OBJS) $(TARGET)
++
++install: all
++ install -m 755 $(TARGET) "$(DESTDIR)$(moduledir)"
++ install -d "$(DESTDIR)$(mltdatadir)/gdk"
++ install -m 644 *.yml "$(DESTDIR)$(mltdatadir)/gdk"
++
++ifneq ($(wildcard .depend),)
++include .depend
++endif
+diff --git a/src/modules/gdk/configure b/src/modules/gdk/configure
+new file mode 100755
+index 000000000..07003b049
+--- /dev/null
++++ b/src/modules/gdk/configure
+@@ -0,0 +1,82 @@
++#!/bin/sh
++
++if [ "$help" = "1" ]
++then
++ cat << EOF
++GDK options:
++
++ --gdk-prefix=path - Override the gdk prefix for pkg-config
++
++EOF
++
++else
++ pkgconfig_prefix=
++ for i in "$@"
++ do
++ case $i in
++ --gdk-prefix=* ) pkgconfig_prefix="${i#--gdk-prefix=}" ;;
++ esac
++ done
++ [ "$pkgconfig_prefix" != "" ] && pkgconfig_prefix="--define-variable=prefix=\"$pkgconfig_prefix\""
++
++ pkg-config $pkgconfig_prefix gdk-pixbuf-2.0 2> /dev/null
++ disable_pixbuf=$?
++
++ pkg-config $pkgconfig_prefix gdk-pixbuf-2.0 pangoft2 2> /dev/null
++ disable_pango=$?
++
++ if [ "$disable_pixbuf" != 0 -a "$disable_pango" != "0" ]
++ then
++ echo "- GDK components not found: disabling"
++ touch ../disable-gdk
++ exit 0
++ fi
++
++ echo > config.mak
++
++ if [ "$disable_pixbuf" = "0" ]
++ then
++ echo "CFLAGS += -DUSE_PIXBUF" >> config.mak
++ echo "USE_PIXBUF=1" >> config.mak
++ else
++ echo "- pixbuf not found: pixbuf loader and rescaler disabled"
++ fi
++
++ if [ "$disable_pango" = "0" ]
++ then
++ echo "CFLAGS += -DUSE_PANGO" >> config.mak
++ echo "USE_PANGO=1" >> config.mak
++ else
++ echo "- pango not found: pango titler disabled"
++ fi
++
++ [ "$pkgconfig_prefix" != "" ] && echo "PKGCONFIG_PREFIX=$pkgconfig_prefix" >> config.mak
++
++ pkg-config --exists 'libexif'
++ if [ $? -eq 0 ]
++ then
++ echo "- Libexif found, enabling auto rotate"
++ echo "USE_EXIF=1" >> config.mak
++ echo EXIFCXXFLAGS=$(pkg-config --cflags libexif ) >> config.mak
++ echo EXIFCXXFLAGS += -DUSE_EXIF >> config.mak
++ echo EXIFLIBS=$(pkg-config --libs libexif) >> config.mak
++ elif [ -d "$exif_libdir" -a -d "$exif_includedir" ]
++ then
++ # test if we have a libexif
++ if [ -f "$exif_libdir/exif-data.h" ]
++ then
++ echo "- Libexif found, enabling auto rotate"
++ echo "USE_EXIF=1" >> config.mak
++ echo EXIFCXXFLAGS=-I$exif_includedir >> config.mak
++ echo EXIFCXXFLAGS += -DUSE_EXIF >> config.mak
++ echo EXIFLIBS=-L$exif_libdir lexif >> config.mak
++ else
++ echo "- Libexif not found, disabling exif features (auto rotate)"
++ fi
++ else
++ echo "- Libexif not found, disabling exif features (auto rotate)"
++ fi
++
++ exit 0
++fi
++
+diff --git a/src/modules/gdk/factory.c b/src/modules/gdk/factory.c
+new file mode 100644
+index 000000000..94b89466e
+--- /dev/null
++++ b/src/modules/gdk/factory.c
+@@ -0,0 +1,92 @@
++/*
++ * factory.c -- the factory method interfaces
++ * Copyright (C) 2003-2014 Meltytech, LLC
++ *
++ * This library is free software; you can redistribute it and/or
++ * modify it under the terms of the GNU Lesser General Public
++ * License as published by the Free Software Foundation; either
++ * version 2.1 of the License, or (at your option) any later version.
++ *
++ * This library is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ * Lesser General Public License for more details.
++ *
++ * You should have received a copy of the GNU Lesser General Public
++ * License along with this library; if not, write to the Free Software
++ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
++ */
++
++#include <string.h>
++#include <framework/mlt.h>
++#include <stdlib.h>
++
++#ifdef USE_PIXBUF
++extern mlt_producer producer_pixbuf_init( char *filename );
++extern mlt_filter filter_rescale_init( mlt_profile profile, char *arg );
++#endif
++
++#ifdef USE_PANGO
++extern mlt_producer producer_pango_init( const char *filename );
++#endif
++
++static void initialise( )
++{
++ static int init = 0;
++ if ( init == 0 )
++ {
++ init = 1;
++ if ( getenv("MLT_PIXBUF_PRODUCER_CACHE") )
++ {
++ int n = atoi( getenv("MLT_PIXBUF_PRODUCER_CACHE" ) );
++ mlt_service_cache_set_size( NULL, "pixbuf.image", n );
++ mlt_service_cache_set_size( NULL, "pixbuf.alpha", n );
++ mlt_service_cache_set_size( NULL, "pixbuf.pixbuf", n );
++ }
++ if ( getenv("MLT_PANGO_PRODUCER_CACHE") )
++ {
++ int n = atoi( getenv("MLT_PANGO_PRODUCER_CACHE" ) );
++ mlt_service_cache_set_size( NULL, "pango.image", n );
++ }
++ }
++}
++
++void *create_service( mlt_profile profile, mlt_service_type type, const char *id, char *arg )
++{
++ initialise( );
++
++#ifdef USE_PIXBUF
++ if ( !strcmp( id, "pixbuf" ) )
++ return producer_pixbuf_init( arg );
++#endif
++
++#ifdef USE_PANGO
++ if ( !strcmp( id, "pango" ) )
++ return producer_pango_init( arg );
++#endif
++
++#ifdef USE_PIXBUF
++ if ( !strcmp( id, "gtkrescale" ) )
++ return filter_rescale_init( profile, arg );
++#endif
++
++ return NULL;
++}
++
++static mlt_properties metadata( mlt_service_type type, const char *id, void *data )
++{
++ char file[ PATH_MAX ];
++ snprintf( file, PATH_MAX, "%s/gtk2/%s", mlt_environment( "MLT_DATA" ), (char*) data );
++ return mlt_properties_parse_yaml( file );
++}
++
++MLT_REPOSITORY
++{
++ MLT_REGISTER( filter_type, "gtkrescale", create_service );
++ MLT_REGISTER( producer_type, "pango", create_service );
++ MLT_REGISTER( producer_type, "pixbuf", create_service );
++
++ MLT_REGISTER_METADATA( filter_type, "gtkrescale", metadata, "filter_rescale.yml" );
++ MLT_REGISTER_METADATA( producer_type, "pango", metadata, "producer_pango.yml" );
++ MLT_REGISTER_METADATA( producer_type, "pixbuf", metadata, "producer_pixbuf.yml" );
++}
+diff --git a/src/modules/gtk2/filter_rescale.c b/src/modules/gdk/filter_rescale.c
+similarity index 100%
+rename from src/modules/gtk2/filter_rescale.c
+rename to src/modules/gdk/filter_rescale.c
+diff --git a/src/modules/gtk2/filter_rescale.yml b/src/modules/gdk/filter_rescale.yml
+similarity index 100%
+rename from src/modules/gtk2/filter_rescale.yml
+rename to src/modules/gdk/filter_rescale.yml
+diff --git a/src/modules/gtk2/have_mmx.S b/src/modules/gdk/have_mmx.S
+similarity index 100%
+rename from src/modules/gtk2/have_mmx.S
+rename to src/modules/gdk/have_mmx.S
+diff --git a/src/modules/gtk2/pixops.c b/src/modules/gdk/pixops.c
+similarity index 100%
+rename from src/modules/gtk2/pixops.c
+rename to src/modules/gdk/pixops.c
+diff --git a/src/modules/gtk2/pixops.h b/src/modules/gdk/pixops.h
+similarity index 100%
+rename from src/modules/gtk2/pixops.h
+rename to src/modules/gdk/pixops.h
+diff --git a/src/modules/gtk2/producer_pango.c b/src/modules/gdk/producer_pango.c
+similarity index 99%
+rename from src/modules/gtk2/producer_pango.c
+rename to src/modules/gdk/producer_pango.c
+index b3e11b942..ead6e9123 100644
+--- a/src/modules/gtk2/producer_pango.c
++++ b/src/modules/gdk/producer_pango.c
+@@ -172,7 +172,6 @@ mlt_producer producer_pango_init( const char *filename )
+ pthread_mutex_lock( &pango_mutex );
+ if ( fontmap == NULL )
+ fontmap = (PangoFT2FontMap*) pango_ft2_font_map_new();
+- g_type_init();
+ pthread_mutex_unlock( &pango_mutex );
+
+ producer->get_frame = producer_get_frame;
+diff --git a/src/modules/gtk2/producer_pango.yml b/src/modules/gdk/producer_pango.yml
+similarity index 100%
+rename from src/modules/gtk2/producer_pango.yml
+rename to src/modules/gdk/producer_pango.yml
+diff --git a/src/modules/gtk2/producer_pixbuf.c b/src/modules/gdk/producer_pixbuf.c
+similarity index 100%
+rename from src/modules/gtk2/producer_pixbuf.c
+rename to src/modules/gdk/producer_pixbuf.c
+diff --git a/src/modules/gtk2/producer_pixbuf.yml b/src/modules/gdk/producer_pixbuf.yml
+similarity index 100%
+rename from src/modules/gtk2/producer_pixbuf.yml
+rename to src/modules/gdk/producer_pixbuf.yml
+diff --git a/src/modules/gtk2/scale_line_22_yuv_mmx.S b/src/modules/gdk/scale_line_22_yuv_mmx.S
+similarity index 100%
+rename from src/modules/gtk2/scale_line_22_yuv_mmx.S
+rename to src/modules/gdk/scale_line_22_yuv_mmx.S
+diff --git a/src/modules/gtk2/deprecated b/src/modules/gtk2/deprecated
+new file mode 100644
+index 000000000..e69de29bb
diff --git a/media-libs/mlt/mlt-6.20.0-r2.ebuild b/media-libs/mlt/mlt-6.20.0-r2.ebuild
index f6a1c848d4c..d12698082a8 100644
--- a/media-libs/mlt/mlt-6.20.0-r2.ebuild
+++ b/media-libs/mlt/mlt-6.20.0-r2.ebuild
@@ -40,7 +40,6 @@ DEPEND="
frei0r? ( media-plugins/frei0r-plugins )
gtk? (
media-libs/libexif
- x11-libs/gtk+:2
x11-libs/pango
)
jack? (
@@ -86,6 +85,7 @@ DOCS=( AUTHORS ChangeLog NEWS README docs/{framework,melt,mlt{++,-xml}}.txt )
PATCHES=(
"${FILESDIR}"/${PN}-6.10.0-swig-underlinking.patch
"${FILESDIR}"/${P}-qt-5.15.patch
+ "${FILESDIR}"/${P}-no-gtk2.patch
)
pkg_setup() {
@@ -111,6 +111,7 @@ src_configure() {
--enable-gpl3
--enable-motion-est
--target-arch=$(tc-arch)
+ --disable-gtk2
--disable-kde
--disable-sdl
--disable-swfdec
@@ -120,7 +121,7 @@ src_configure() {
$(use_enable ffmpeg avformat)
$(use_enable fftw plus)
$(use_enable frei0r)
- $(use_enable gtk gtk2)
+ $(use_enable gtk gdk)
$(use_enable jack jackrack)
$(use_enable kdenlive)
$(use_enable libsamplerate resample)
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-libs/mlt/, media-libs/mlt/files/
@ 2020-10-05 11:22 Andreas Sturmlechner
0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2020-10-05 11:22 UTC (permalink / raw
To: gentoo-commits
commit: 9ee1bd73f11a8835af749dd130ce362f77fc6d75
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Mon Oct 5 11:01:52 2020 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Mon Oct 5 11:05:17 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9ee1bd73
media-libs/mlt: Fix regression in 6.22 with multiple affine filters
Package-Manager: Portage-3.0.8, Repoman-3.0.1
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
...-fix-regression-w-multiple-affine-filters.patch | 23 +++
media-libs/mlt/mlt-6.22.1-r1.ebuild | 201 +++++++++++++++++++++
2 files changed, 224 insertions(+)
diff --git a/media-libs/mlt/files/mlt-6.22.1-fix-regression-w-multiple-affine-filters.patch b/media-libs/mlt/files/mlt-6.22.1-fix-regression-w-multiple-affine-filters.patch
new file mode 100644
index 00000000000..d60976c1185
--- /dev/null
+++ b/media-libs/mlt/files/mlt-6.22.1-fix-regression-w-multiple-affine-filters.patch
@@ -0,0 +1,23 @@
+From 8b778aaee121c6b381bd570c2b6f526989866f8e Mon Sep 17 00:00:00 2001
+From: Dan Dennedy <dan@dennedy.org>
+Date: Fri, 11 Sep 2020 21:24:24 -0700
+Subject: [PATCH] fix regression in 2c354d6e with multiple affine filters
+
+See #9 in https://forum.shotcut.org/t/v20-09-beta-is-now-available-to-
+test/20766/31
+---
+ src/modules/plus/transition_affine.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/modules/plus/transition_affine.c b/src/modules/plus/transition_affine.c
+index 63bbaa1df..b1147c8c6 100644
+--- a/src/modules/plus/transition_affine.c
++++ b/src/modules/plus/transition_affine.c
+@@ -564,6 +564,7 @@ static int transition_get_image( mlt_frame a_frame, uint8_t **image, mlt_image_f
+ b_height = result.h;
+ // Set the rescale interpolation to match the frame
+ mlt_properties_set( b_props, "rescale.interp", mlt_properties_get( a_props, "rescale.interp" ) );
++ mlt_properties_set_int( b_props, "distort", 1 );
+ } else if (scale_width != 1.0 || scale_height != 1.0) {
+ // Scale request of b frame image to consumer scale maintaining its aspect ratio.
+ b_height = *height;
diff --git a/media-libs/mlt/mlt-6.22.1-r1.ebuild b/media-libs/mlt/mlt-6.22.1-r1.ebuild
new file mode 100644
index 00000000000..a4919469eaa
--- /dev/null
+++ b/media-libs/mlt/mlt-6.22.1-r1.ebuild
@@ -0,0 +1,201 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7,8,9} )
+inherit python-single-r1 qmake-utils toolchain-funcs
+
+DESCRIPTION="Open source multimedia framework for television broadcasting"
+HOMEPAGE="https://www.mltframework.org/"
+SRC_URI="https://github.com/mltframework/${PN}/releases/download/v${PV}/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="compressed-lumas cpu_flags_x86_mmx cpu_flags_x86_sse cpu_flags_x86_sse2 debug ffmpeg
+fftw frei0r gtk jack kdenlive kernel_linux libsamplerate lua melt opencv opengl python
+qt5 rtaudio sdl vdpau vidstab xine xml"
+# java perl php tcl
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+SWIG_DEPEND=">=dev-lang/swig-2.0"
+# java? ( ${SWIG_DEPEND} >=virtual/jdk-1.5 )
+# perl? ( ${SWIG_DEPEND} )
+# php? ( ${SWIG_DEPEND} )
+# tcl? ( ${SWIG_DEPEND} )
+# ruby? ( ${SWIG_DEPEND} )
+BDEPEND="
+ virtual/pkgconfig
+ compressed-lumas? ( virtual/imagemagick-tools[png] )
+ lua? ( ${SWIG_DEPEND} virtual/pkgconfig )
+ python? ( ${SWIG_DEPEND} )
+"
+#rtaudio will use OSS on non linux OSes
+DEPEND="
+ >=media-libs/libebur128-1.2.2:=
+ ffmpeg? ( media-video/ffmpeg:0=[vdpau?,-flite] )
+ fftw? ( sci-libs/fftw:3.0= )
+ frei0r? ( media-plugins/frei0r-plugins )
+ gtk? (
+ media-libs/libexif
+ x11-libs/pango
+ )
+ jack? (
+ >=dev-libs/libxml2-2.5
+ media-libs/ladspa-sdk
+ virtual/jack
+ )
+ libsamplerate? ( >=media-libs/libsamplerate-0.1.2 )
+ lua? ( >=dev-lang/lua-5.1.4-r4:= )
+ opencv? ( >=media-libs/opencv-3.2.0:= )
+ opengl? ( media-video/movit )
+ python? ( ${PYTHON_DEPS} )
+ qt5? (
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtsvg:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtxml:5
+ media-libs/libexif
+ x11-libs/libX11
+ )
+ rtaudio? (
+ >=media-libs/rtaudio-4.1.2
+ kernel_linux? ( media-libs/alsa-lib )
+ )
+ sdl? (
+ media-libs/libsdl2[X,opengl,video]
+ media-libs/sdl2-image
+ )
+ vidstab? ( media-libs/vidstab )
+ xine? ( >=media-libs/xine-lib-1.1.2_pre20060328-r7 )
+ xml? ( >=dev-libs/libxml2-2.5 )"
+# java? ( >=virtual/jre-1.5 )
+# perl? ( dev-lang/perl )
+# php? ( dev-lang/php )
+# ruby? ( ${RUBY_DEPS} )
+# sox? ( media-sound/sox )
+# tcl? ( dev-lang/tcl:0= )
+RDEPEND="${DEPEND}"
+
+DOCS=( AUTHORS NEWS README docs/{framework,melt,mlt{++,-xml}}.txt )
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.10.0-swig-underlinking.patch
+ "${FILESDIR}"/${P}-fix-regression-w-multiple-affine-filters.patch
+)
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ default
+
+ # respect CFLAGS LDFLAGS when building shared libraries. Bug #308873
+ for x in python lua; do
+ sed -i "/mlt.so/s/ -lmlt++ /& ${CFLAGS} ${LDFLAGS} /" src/swig/$x/build || die
+ done
+
+ use python && python_fix_shebang src/swig/python
+}
+
+src_configure() {
+ tc-export CC CXX
+
+ local myconf=(
+ --enable-gpl
+ --enable-gpl3
+ --enable-motion-est
+ --target-arch=$(tc-arch)
+ --disable-gtk2
+ --disable-kde
+ --disable-sdl
+ --disable-swfdec
+ $(use_enable debug)
+ $(use_enable cpu_flags_x86_sse sse)
+ $(use_enable cpu_flags_x86_sse2 sse2)
+ $(use_enable ffmpeg avformat)
+ $(use_enable fftw plus)
+ $(use_enable frei0r)
+ $(use_enable gtk gdk)
+ $(use_enable jack jackrack)
+ $(use_enable kdenlive)
+ $(use_enable libsamplerate resample)
+ $(use_enable melt)
+ $(use_enable opencv)
+ $(use_enable opengl)
+ $(use_enable qt5 qt)
+ $(use_enable rtaudio)
+ $(use_enable sdl sdl2)
+ $(use_enable vidstab vid.stab )
+ $(use_enable xine)
+ $(use_enable xml)
+ --disable-sox
+ )
+ #$(use_enable sox) FIXME
+
+ use compressed-lumas && myconf+=( --luma-compress )
+ use ffmpeg && myconf+=( --avformat-swscale )
+ use vdpau && myconf+=( --avformat-vdpau )
+
+ if use qt5 ; then
+ myconf+=(
+ --qt-includedir=$(qt5_get_headerdir)
+ --qt-libdir=$(qt5_get_libdir)
+ )
+ fi
+
+ if use amd64 || use x86 ; then
+ myconf+=( $(use_enable cpu_flags_x86_mmx mmx) )
+ else
+ myconf+=( --disable-mmx )
+ fi
+
+ if ! use melt ; then
+ sed -i -e "s;src/melt;;" Makefile || die
+ fi
+
+ # TODO: add swig language bindings
+ # see also https://www.mltframework.org/twiki/bin/view/MLT/ExtremeMakeover
+
+ local swig_lang=()
+ # not done: java perl php ruby tcl
+ for i in lua python ; do
+ use $i && swig_lang+=( $i )
+ done
+ [[ -z "${swig_lang}" ]] && swig_lang=( none )
+
+ econf "${myconf[@]}" --swig-languages="${swig_lang[*]}"
+
+ sed -i -e s/^OPT/#OPT/ config.mak || die
+}
+
+src_install() {
+ default
+
+ insinto /usr/share/${PN}
+ doins -r demo
+
+ docinto swig
+
+ # Install SWIG bindings
+ if use lua; then
+ cd "${S}"/src/swig/lua || die
+ exeinto $(pkg-config --variable INSTALL_CMOD lua)
+ doexe mlt.so
+ dodoc play.lua
+ fi
+
+ if use python; then
+ cd "${S}"/src/swig/python || die
+ python_domodule mlt.py _mlt.so
+ chmod +x "${D}$(python_get_sitedir)/_mlt.so" || die
+ dodoc play.py
+ python_optimize
+ fi
+
+ # not done: java perl php ruby tcl
+}
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-libs/mlt/, media-libs/mlt/files/
@ 2021-04-24 21:40 Andreas Sturmlechner
0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2021-04-24 21:40 UTC (permalink / raw
To: gentoo-commits
commit: b71ef8102b95d349d8f57c8cf392483deac449c5
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sat Apr 24 21:39:33 2021 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Apr 24 21:40:12 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b71ef810
media-libs/mlt: Fix ogg crash, set min media-libs/opencv to 4.5.1
Closes: https://bugs.gentoo.org/783030
Package-Manager: Portage-3.0.18, Repoman-3.0.3
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
.../mlt-6.26.1-fix-crash-w-ogg-album-art.patch | 50 +++++
media-libs/mlt/mlt-6.26.1-r1.ebuild | 232 +++++++++++++++++++++
2 files changed, 282 insertions(+)
diff --git a/media-libs/mlt/files/mlt-6.26.1-fix-crash-w-ogg-album-art.patch b/media-libs/mlt/files/mlt-6.26.1-fix-crash-w-ogg-album-art.patch
new file mode 100644
index 00000000000..4ad7ff5de41
--- /dev/null
+++ b/media-libs/mlt/files/mlt-6.26.1-fix-crash-w-ogg-album-art.patch
@@ -0,0 +1,50 @@
+From 7063e88e09977282470c4f2f93e56e05f21b7c2b Mon Sep 17 00:00:00 2001
+From: Dan Dennedy <dan@dennedy.org>
+Date: Fri, 16 Apr 2021 11:15:37 -0700
+Subject: [PATCH] fix #704 by properly identifying cover art
+
+(cherry picked from commit 6b0829df726aa9a840b8b34e923e9faf17a3a5ca)
+---
+ src/modules/avformat/producer_avformat.c | 15 ++++-----------
+ 1 file changed, 4 insertions(+), 11 deletions(-)
+
+diff --git a/src/modules/avformat/producer_avformat.c b/src/modules/avformat/producer_avformat.c
+index 049452f9d..e079e6f70 100644
+--- a/src/modules/avformat/producer_avformat.c
++++ b/src/modules/avformat/producer_avformat.c
+@@ -398,10 +398,7 @@ static mlt_properties find_default_streams( producer_avformat self )
+ if ( first_video_index < 0 )
+ first_video_index = i;
+ // Only set the video stream if not album art
+- if (self->video_index < 0 &&
+- (codec_params->codec_id != AV_CODEC_ID_MJPEG ||
+- codec_context->time_base.num != 1 ||
+- codec_context->time_base.den != 90000)) {
++ if (self->video_index < 0 && !(context->streams[i]->disposition & AV_DISPOSITION_ATTACHED_PIC)) {
+ self->video_index = i;
+ }
+ mlt_properties_set( meta_media, key, "video" );
+@@ -1682,11 +1679,7 @@ static int producer_get_image( mlt_frame frame, uint8_t **buffer, mlt_image_form
+ codec_params = stream->codecpar;
+
+ // Always use the image cache for album art.
+- int is_album_art = ((codec_context->codec_id == AV_CODEC_ID_MJPEG
+- || codec_context->codec_id == AV_CODEC_ID_GIF
+- || codec_context->codec_id == AV_CODEC_ID_PNG)
+- && mlt_properties_get_int(properties, "meta.media.frame_rate_num") == 90000
+- && mlt_properties_get_int(properties, "meta.media.frame_rate_den") == 1);
++ int is_album_art = stream->disposition & AV_DISPOSITION_ATTACHED_PIC;
+ if (is_album_art)
+ position = 0;
+
+@@ -2296,8 +2289,8 @@ static int video_codec_init( producer_avformat self, int index, mlt_properties p
+ mlt_properties_set_int( properties, "meta.media.frame_rate_num", frame_rate.num );
+ mlt_properties_set_int( properties, "meta.media.frame_rate_den", frame_rate.den );
+
+- // MP3 album art is a single JPEG at 90000 fps, which is not seekable.
+- if ( codec->id == AV_CODEC_ID_MJPEG && frame_rate.num == 90000 && frame_rate.den == 1 )
++ // Cover art is a single image at 90000 fps, which is not seekable.
++ if (stream->disposition & AV_DISPOSITION_ATTACHED_PIC)
+ self->video_seekable = 0;
+
+ // Set the YUV colorspace from override or detect
diff --git a/media-libs/mlt/mlt-6.26.1-r1.ebuild b/media-libs/mlt/mlt-6.26.1-r1.ebuild
new file mode 100644
index 00000000000..b04aa302aa9
--- /dev/null
+++ b/media-libs/mlt/mlt-6.26.1-r1.ebuild
@@ -0,0 +1,232 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+LUA_COMPAT=( lua5-{1..4} luajit )
+PYTHON_COMPAT=( python3_{7,8,9} )
+inherit lua python-single-r1 qmake-utils toolchain-funcs
+
+DESCRIPTION="Open source multimedia framework for television broadcasting"
+HOMEPAGE="https://www.mltframework.org/"
+SRC_URI="https://github.com/mltframework/${PN}/releases/download/v${PV}/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="compressed-lumas cpu_flags_x86_mmx cpu_flags_x86_sse cpu_flags_x86_sse2 debug
+ffmpeg fftw frei0r gtk jack kernel_linux libsamplerate lua opencv opengl python
+qt5 rtaudio rubberband sdl vdpau vidstab xine xml"
+# java perl php tcl
+
+REQUIRED_USE="lua? ( ${LUA_REQUIRED_USE} )
+ python? ( ${PYTHON_REQUIRED_USE} )"
+
+SWIG_DEPEND=">=dev-lang/swig-2.0"
+# java? ( ${SWIG_DEPEND} >=virtual/jdk-1.5 )
+# perl? ( ${SWIG_DEPEND} )
+# php? ( ${SWIG_DEPEND} )
+# tcl? ( ${SWIG_DEPEND} )
+# ruby? ( ${SWIG_DEPEND} )
+BDEPEND="
+ virtual/pkgconfig
+ compressed-lumas? ( virtual/imagemagick-tools[png] )
+ lua? ( ${SWIG_DEPEND} virtual/pkgconfig )
+ python? ( ${SWIG_DEPEND} )
+"
+#rtaudio will use OSS on non linux OSes
+DEPEND="
+ >=media-libs/libebur128-1.2.2:=
+ ffmpeg? ( media-video/ffmpeg:0=[vdpau?,-flite] )
+ fftw? ( sci-libs/fftw:3.0= )
+ frei0r? ( media-plugins/frei0r-plugins )
+ gtk? (
+ media-libs/libexif
+ x11-libs/pango
+ )
+ jack? (
+ >=dev-libs/libxml2-2.5
+ media-libs/ladspa-sdk
+ virtual/jack
+ )
+ libsamplerate? ( >=media-libs/libsamplerate-0.1.2 )
+ lua? ( ${LUA_DEPS} )
+ opencv? ( >=media-libs/opencv-4.5.1:= )
+ opengl? ( media-video/movit )
+ python? ( ${PYTHON_DEPS} )
+ qt5? (
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtsvg:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtxml:5
+ media-libs/libexif
+ x11-libs/libX11
+ )
+ rtaudio? (
+ >=media-libs/rtaudio-4.1.2
+ kernel_linux? ( media-libs/alsa-lib )
+ )
+ rubberband? ( media-libs/rubberband )
+ sdl? (
+ media-libs/libsdl2[X,opengl,video]
+ media-libs/sdl2-image
+ )
+ vidstab? ( media-libs/vidstab )
+ xine? ( >=media-libs/xine-lib-1.1.2_pre20060328-r7 )
+ xml? ( >=dev-libs/libxml2-2.5 )"
+# java? ( >=virtual/jre-1.5 )
+# perl? ( dev-lang/perl )
+# php? ( dev-lang/php )
+# ruby? ( ${RUBY_DEPS} )
+# sox? ( media-sound/sox )
+# tcl? ( dev-lang/tcl:0= )
+RDEPEND="${DEPEND}"
+
+DOCS=( AUTHORS NEWS README docs/{framework,melt,mlt{++,-xml}}.txt )
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.10.0-swig-underlinking.patch
+ "${FILESDIR}"/${PN}-6.22.1-no_lua_bdepend.patch
+ "${FILESDIR}"/${P}-fix-crash-w-ogg-album-art.patch # git master
+)
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ default
+
+ # respect CFLAGS LDFLAGS when building shared libraries. Bug #308873
+ for x in python lua; do
+ sed -i "/mlt.so/s/ -lmlt++ /& ${CFLAGS} ${LDFLAGS} /" src/swig/$x/build || die
+ done
+
+ use python && python_fix_shebang src/swig/python
+}
+
+src_configure() {
+ tc-export CC CXX
+
+ local myconf=(
+ --enable-gpl
+ --enable-gpl3
+ --enable-kdenlive
+ --enable-melt
+ --enable-motion-est
+ --target-arch=$(tc-arch)
+ --disable-gtk2
+ --disable-kde
+ --disable-sdl
+ --disable-swfdec
+ $(use_enable debug)
+ $(use_enable cpu_flags_x86_sse sse)
+ $(use_enable cpu_flags_x86_sse2 sse2)
+ $(use_enable ffmpeg avformat)
+ $(use_enable fftw plus)
+ $(use_enable frei0r)
+ $(use_enable gtk gdk)
+ $(use_enable jack jackrack)
+ $(use_enable libsamplerate resample)
+ $(use_enable opencv)
+ $(use_enable opengl)
+ $(use_enable qt5 qt)
+ $(use_enable rtaudio)
+ $(use_enable rubberband)
+ $(use_enable sdl sdl2)
+ $(use_enable vidstab vid.stab)
+ $(use_enable xine)
+ $(use_enable xml)
+ --disable-sox
+ )
+ #$(use_enable sox) FIXME
+
+ use compressed-lumas && myconf+=( --luma-compress )
+ use ffmpeg && myconf+=( --avformat-swscale )
+ use vdpau && myconf+=( --avformat-vdpau )
+
+ if use qt5 ; then
+ myconf+=(
+ --qt-includedir=$(qt5_get_headerdir)
+ --qt-libdir=$(qt5_get_libdir)
+ )
+ fi
+
+ if use amd64 || use x86 ; then
+ myconf+=( $(use_enable cpu_flags_x86_mmx mmx) )
+ else
+ myconf+=( --disable-mmx )
+ fi
+
+ # TODO: add swig language bindings
+ # see also https://www.mltframework.org/twiki/bin/view/MLT/ExtremeMakeover
+
+ local swig_lang=()
+ # not done: java perl php ruby tcl
+ # handled separately: lua
+ for i in python; do
+ use $i && swig_lang+=( $i )
+ done
+ [[ -z "${swig_lang}" ]] && swig_lang=( none )
+
+ econf "${myconf[@]}" --swig-languages="${swig_lang[*]}"
+
+ sed -i -e s/^OPT/#OPT/ config.mak || die
+}
+
+src_compile() {
+ default
+
+ if use lua; then
+ # Only copy sources now to avoid unnecessary rebuilds
+ lua_copy_sources
+
+ lua_compile() {
+ pushd "${BUILD_DIR}"/src/swig/lua > /dev/null || die
+
+ sed -i -e "s| mlt_wrap.cxx| $(lua_get_CFLAGS) mlt_wrap.cxx|" build || die
+ ./build
+
+ popd > /dev/null || die
+ }
+ lua_foreach_impl lua_compile
+ fi
+}
+
+src_install() {
+ default
+
+ insinto /usr/share/${PN}
+ doins -r demo
+
+ #
+ # Install SWIG bindings
+ #
+
+ docinto swig
+
+ if use lua; then
+ lua_install() {
+ pushd "${BUILD_DIR}"/src/swig/lua > /dev/null || die
+
+ exeinto "$(lua_get_cmod_dir)"
+ doexe mlt.so
+
+ popd > /dev/null || die
+ }
+ lua_foreach_impl lua_install
+
+ dodoc "${S}"/src/swig/lua/play.lua
+ fi
+
+ if use python; then
+ cd "${S}"/src/swig/python || die
+ python_domodule mlt.py _mlt.so
+ chmod +x "${D}$(python_get_sitedir)/_mlt.so" || die
+ dodoc play.py
+ python_optimize
+ fi
+
+ # not done: java perl php ruby tcl
+}
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-libs/mlt/, media-libs/mlt/files/
@ 2021-08-05 1:48 Sam James
0 siblings, 0 replies; 23+ messages in thread
From: Sam James @ 2021-08-05 1:48 UTC (permalink / raw
To: gentoo-commits
commit: b87e752f3025f4010a3b52f74297cbc063316479
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Jul 22 05:14:32 2021 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Aug 5 01:47:44 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b87e752f
media-libs/mlt: add 7.0.1
Closes: https://bugs.gentoo.org/796557
Signed-off-by: Sam James <sam <AT> gentoo.org>
media-libs/mlt/Manifest | 1 +
media-libs/mlt/files/mlt-7.0.1-cmake-symlink.patch | 14 ++
media-libs/mlt/mlt-7.0.1.ebuild | 209 +++++++++++++++++++++
3 files changed, 224 insertions(+)
diff --git a/media-libs/mlt/Manifest b/media-libs/mlt/Manifest
index bf479f47427..25022518c89 100644
--- a/media-libs/mlt/Manifest
+++ b/media-libs/mlt/Manifest
@@ -1 +1,2 @@
DIST mlt-6.26.1.tar.gz 1366022 BLAKE2B f5b7e733090ae60cb55556893775ab4a68847705e215b85c90d901d72022f5b57c08122cd8c08c1ba51b71eedc5341adaaad2ad002af76724a2d2cf6a7379974 SHA512 6a3ef572cddee48c3089b19b2920de84936aa913a3f35b6f06e4bece2dc7a5a168daecfbaa8111c799b5316f967c37b09d485c000a4eba69af4f7ee3dc8db9e4
+DIST mlt-7.0.1.tar.gz 1181298 BLAKE2B 90547ebeeb90b5ab20ec39e3fa97454e9c502af08981f20e433deafc5bbbb45caeea485c18b4229821fcdcef2ed7767e8936af273200a233f18251fa8bc73dd0 SHA512 9268889f0fbe69180651a592ac0b328d18f8b60c7d83f9d6c506dc21254afcb2281662f4d19faf3520976ae100600d00cd6eb2aa42c83880fa4c4c36e760c68a
diff --git a/media-libs/mlt/files/mlt-7.0.1-cmake-symlink.patch b/media-libs/mlt/files/mlt-7.0.1-cmake-symlink.patch
new file mode 100644
index 00000000000..c36e0c20ab5
--- /dev/null
+++ b/media-libs/mlt/files/mlt-7.0.1-cmake-symlink.patch
@@ -0,0 +1,14 @@
+Fully respect DESTDIR.
+
+https://bugs.gentoo.org/796557#c1
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -436,7 +436,7 @@
+ if(UNIX AND NOT APPLE)
+ install(FILES docs/melt.1 DESTINATION ${CMAKE_INSTALL_MANDIR}/man1 RENAME melt-${MLT_VERSION_MAJOR}.1)
+ install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink melt-${MLT_VERSION_MAJOR}.1 melt.1 \
+- WORKING_DIRECTORY ${CMAKE_INSTALL_FULL_MANDIR}/man1)"
++ WORKING_DIRECTORY \$ENV\{DESTDIR\}${CMAKE_INSTALL_FULL_MANDIR}/man1)"
+ )
+ endif()
+
diff --git a/media-libs/mlt/mlt-7.0.1.ebuild b/media-libs/mlt/mlt-7.0.1.ebuild
new file mode 100644
index 00000000000..eade05410aa
--- /dev/null
+++ b/media-libs/mlt/mlt-7.0.1.ebuild
@@ -0,0 +1,209 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+LUA_COMPAT=( lua5-{1..4} luajit )
+PYTHON_COMPAT=( python3_{8,9,10} )
+inherit lua python-single-r1 cmake toolchain-funcs
+
+DESCRIPTION="Open source multimedia framework for television broadcasting"
+HOMEPAGE="https://www.mltframework.org/"
+SRC_URI="https://github.com/mltframework/${PN}/releases/download/v${PV}/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0/7"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="debug ffmpeg frei0r gtk jack kernel_linux libsamplerate lua opencv opengl python qt5 rtaudio rubberband sdl test vdpau vidstab xine xml"
+# TODO: swig bindings for java perl php tcl
+
+# Needs unpackaged 'kwalify'
+RESTRICT="test"
+
+REQUIRED_USE="lua? ( ${LUA_REQUIRED_USE} )
+ python? ( ${PYTHON_REQUIRED_USE} )"
+
+SWIG_DEPEND=">=dev-lang/swig-2.0"
+# java? ( ${SWIG_DEPEND} >=virtual/jdk-1.5 )
+# perl? ( ${SWIG_DEPEND} )
+# php? ( ${SWIG_DEPEND} )
+# tcl? ( ${SWIG_DEPEND} )
+# ruby? ( ${SWIG_DEPEND} )
+BDEPEND="
+ virtual/pkgconfig
+ lua? ( ${SWIG_DEPEND} virtual/pkgconfig )
+ python? ( ${SWIG_DEPEND} )
+"
+# rtaudio will use OSS on non linux OSes
+DEPEND="
+ >=media-libs/libebur128-1.2.2:=
+ ffmpeg? ( media-video/ffmpeg:0=[vdpau?,-flite] )
+ frei0r? ( media-plugins/frei0r-plugins )
+ gtk? (
+ media-libs/libexif
+ x11-libs/pango
+ )
+ jack? (
+ >=dev-libs/libxml2-2.5
+ media-libs/ladspa-sdk
+ virtual/jack
+ )
+ libsamplerate? ( >=media-libs/libsamplerate-0.1.2 )
+ lua? ( ${LUA_DEPS} )
+ opencv? ( >=media-libs/opencv-4.5.1:= )
+ opengl? ( media-video/movit )
+ python? ( ${PYTHON_DEPS} )
+ qt5? (
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtsvg:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtxml:5
+ media-libs/libexif
+ sci-libs/fftw:3.0=
+ x11-libs/libX11
+ )
+ rtaudio? (
+ >=media-libs/rtaudio-4.1.2
+ kernel_linux? ( media-libs/alsa-lib )
+ )
+ rubberband? ( media-libs/rubberband )
+ sdl? (
+ media-libs/libsdl2[X,opengl,video]
+ media-libs/sdl2-image
+ )
+ vidstab? ( media-libs/vidstab )
+ xine? ( >=media-libs/xine-lib-1.1.2_pre20060328-r7 )
+ xml? ( >=dev-libs/libxml2-2.5 )"
+# java? ( >=virtual/jre-1.5 )
+# perl? ( dev-lang/perl )
+# php? ( dev-lang/php )
+# ruby? ( ${RUBY_DEPS} )
+# sox? ( media-sound/sox )
+# tcl? ( dev-lang/tcl:0= )
+RDEPEND="${DEPEND}"
+
+DOCS=( AUTHORS NEWS README.md )
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.10.0-swig-underlinking.patch
+ "${FILESDIR}"/${PN}-6.22.1-no_lua_bdepend.patch
+ "${FILESDIR}"/${PN}-7.0.1-cmake-symlink.patch
+)
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ # respect CFLAGS LDFLAGS when building shared libraries. Bug #308873
+ local x
+ for x in python lua; do
+ sed -i "/mlt.so/s/ -lmlt++ /& ${CFLAGS} ${LDFLAGS} /" src/swig/${x}/build || die
+ done
+
+ use python && python_fix_shebang src/swig/python
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DCMAKE_SKIP_RPATH=ON
+ -DGPL=ON
+ -DGPL3=ON
+ -DBUILD_TESTING=$(usex test)
+ -DMOD_KDENLIVE=ON
+ -DMOD_SDL1=OFF
+ -DMOD_SDL2=$(usex sdl)
+ -DMOD_AVFORMAT=$(usex ffmpeg)
+ # TODO: does anything need plus?
+ # plus or qt
+ #$(use_enable fftw plus)
+ -DMOD_FREI0R=$(usex frei0r)
+ -DMOD_GDK=$(usex gtk)
+ -DMOD_JACKRACK=$(usex jack)
+ -DMOD_RESAMPLE=$(usex libsamplerate)
+ -DMOD_OPENCV=$(usex opencv)
+ -DMOD_MOVIT=$(usex opengl)
+ -DMOD_QT=$(usex qt5)
+ -DMOD_RTAUDIO=$(usex rtaudio)
+ -DMOD_RUBBERBAND=$(usex rubberband)
+ -DMOD_VIDSTAB=$(usex vidstab)
+ -DMOD_XINE=$(usex xine)
+ -DMOD_XML=$(usex xml)
+ -DMOD_SOX=OFF
+ )
+
+ # TODO: We currently have USE=fftw but both Qt and plus require it, removing flag for now.
+ # TODO: rework upstream CMake to allow controlling MMX/SSE/SSE2
+ # TODO: add swig language bindings
+ # see also https://www.mltframework.org/twiki/bin/view/MLT/ExtremeMakeover
+
+ local swig_lang=()
+ # Not done: java perl php ruby tcl
+ # Handled separately: lua
+ for i in python; do
+ use ${i} && mycmakeargs+=( -DSWIG_${i}=ON )
+ done
+
+ cmake_src_configure
+}
+
+src_compile() {
+ cmake_src_compile
+
+ if use lua; then
+ # Only copy sources now to avoid unnecessary rebuilds
+ lua_copy_sources
+
+ lua_compile() {
+ pushd "${BUILD_DIR}"/src/swig/lua > /dev/null || die
+
+ sed -i -e "s| mlt_wrap.cxx| $(lua_get_CFLAGS) mlt_wrap.cxx|" build || die
+ ./build || die
+
+ popd > /dev/null || die
+ }
+ lua_foreach_impl lua_compile
+ fi
+}
+
+src_install() {
+ cmake_src_install
+
+ insinto /usr/share/${PN}
+ doins -r demo
+
+ #
+ # Install SWIG bindings
+ #
+
+ docinto swig
+
+ if use lua; then
+ lua_install() {
+ pushd "${BUILD_DIR}"/src/swig/lua > /dev/null || die
+
+ exeinto "$(lua_get_cmod_dir)"
+ doexe mlt.so
+
+ popd > /dev/null || die
+ }
+ lua_foreach_impl lua_install
+
+ dodoc "${S}"/src/swig/lua/play.lua
+ fi
+
+ if use python; then
+ cd "${S}"/src/swig/python || die
+
+ python_domodule mlt.py _mlt.so
+ chmod +x "${D}$(python_get_sitedir)/_mlt.so" || die
+ dodoc play.py
+
+ python_optimize
+ fi
+
+ # Not done: java perl php ruby tcl
+}
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-libs/mlt/, media-libs/mlt/files/
@ 2022-04-29 4:25 Sam James
0 siblings, 0 replies; 23+ messages in thread
From: Sam James @ 2022-04-29 4:25 UTC (permalink / raw
To: gentoo-commits
commit: b56f29edd76741c1243d830c82b9dca14c112eca
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Apr 29 04:25:26 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Apr 29 04:25:26 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b56f29ed
media-libs/mlt: add 7.6.0
Closes: https://bugs.gentoo.org/841512
Signed-off-by: Sam James <sam <AT> gentoo.org>
media-libs/mlt/Manifest | 1 +
.../mlt-7.6.0-impl-func-decl-gps_parser.patch | 19 +++
media-libs/mlt/mlt-7.6.0.ebuild | 157 +++++++++++++++++++++
3 files changed, 177 insertions(+)
diff --git a/media-libs/mlt/Manifest b/media-libs/mlt/Manifest
index 5f41e52d98ea..6fa703820934 100644
--- a/media-libs/mlt/Manifest
+++ b/media-libs/mlt/Manifest
@@ -1 +1,2 @@
DIST mlt-7.4.0.tar.gz 1206316 BLAKE2B 56e6ea7a5545b80de45cffd206e555a577ada8e59f9b63c6487491e130ba7e4fdca5dc1b3836fcff22d49b6dcb048779dc8db1e9888b1137653c80196bdb81e2 SHA512 e9a65e76ca0a2464fb923d19d6f21bd49f13d637b0a974eeeb1e123ab753914d742e373f9fdcfe07cdeb9f39ebd2f0dde75a7299c0b6cd4807ee48ec710b3fd4
+DIST mlt-7.6.0.tar.gz 1217853 BLAKE2B 5faa8ad518871d8d690cd0c018bebfa258daef03cf0d95cda1aeb21848ee008ec5e5e2a76ab52085cdd11b7f60f9c3248eedc05779a84d0cb33118ef98154374 SHA512 203ea7184e03246a8fcf7d284c7c7b26f57ab27867e97c43d9cf26c3906f6358f361d95593aa47abe79654106b934ffe997335304df967a40742ba060d2e4f38
diff --git a/media-libs/mlt/files/mlt-7.6.0-impl-func-decl-gps_parser.patch b/media-libs/mlt/files/mlt-7.6.0-impl-func-decl-gps_parser.patch
new file mode 100644
index 000000000000..7961d3118b79
--- /dev/null
+++ b/media-libs/mlt/files/mlt-7.6.0-impl-func-decl-gps_parser.patch
@@ -0,0 +1,19 @@
+https://github.com/mltframework/mlt/commit/ec02baf63fd062c1b2492de6aef17ff600f08571
+https://github.com/mltframework/mlt/issues/788
+
+From: Dan Dennedy <dan@dennedy.org>
+Date: Thu, 28 Apr 2022 21:20:44 -0700
+Subject: [PATCH] fix #788 compile warning
+
+--- a/src/modules/xml/gps_parser.c
++++ b/src/modules/xml/gps_parser.c
+@@ -17,6 +17,9 @@
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
++#define __USE_XOPEN
++#define _GNU_SOURCE
++
+ #include "gps_parser.h"
+ #include <inttypes.h>
+
diff --git a/media-libs/mlt/mlt-7.6.0.ebuild b/media-libs/mlt/mlt-7.6.0.ebuild
new file mode 100644
index 000000000000..d55bd87549e8
--- /dev/null
+++ b/media-libs/mlt/mlt-7.6.0.ebuild
@@ -0,0 +1,157 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8,9,10} )
+inherit python-single-r1 cmake
+
+DESCRIPTION="Open source multimedia framework for television broadcasting"
+HOMEPAGE="https://www.mltframework.org/"
+SRC_URI="https://github.com/mltframework/${PN}/releases/download/v${PV}/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0/7"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux"
+IUSE="debug ffmpeg frei0r gtk jack libsamplerate opencv opengl python qt5 rtaudio rubberband sdl test vdpau vidstab xine xml"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+# Needs unpackaged 'kwalify'
+RESTRICT="test"
+
+# rtaudio will use OSS on non linux OSes
+# Qt already needs FFTW/PLUS so let's just always have it on to ensure
+# MLT is useful: bug #603168.
+DEPEND="
+ >=media-libs/libebur128-1.2.2:=
+ sci-libs/fftw:3.0=
+ ffmpeg? ( media-video/ffmpeg:0=[vdpau?,-flite] )
+ frei0r? ( media-plugins/frei0r-plugins )
+ gtk? (
+ media-libs/libexif
+ x11-libs/pango
+ )
+ jack? (
+ >=dev-libs/libxml2-2.5
+ media-libs/ladspa-sdk
+ virtual/jack
+ )
+ libsamplerate? ( >=media-libs/libsamplerate-0.1.2 )
+ opencv? ( >=media-libs/opencv-4.5.1:=[contrib] )
+ opengl? (
+ media-libs/libglvnd
+ media-video/movit
+ )
+ python? ( ${PYTHON_DEPS} )
+ qt5? (
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtsvg:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtxml:5
+ media-libs/libexif
+ x11-libs/libX11
+ )
+ rtaudio? (
+ >=media-libs/rtaudio-4.1.2
+ kernel_linux? ( media-libs/alsa-lib )
+ )
+ rubberband? ( media-libs/rubberband )
+ sdl? (
+ media-libs/libsdl2[X,opengl,video]
+ media-libs/sdl2-image
+ )
+ vidstab? ( media-libs/vidstab )
+ xine? ( >=media-libs/xine-lib-1.1.2_pre20060328-r7 )
+ xml? ( >=dev-libs/libxml2-2.5 )
+"
+# java? ( >=virtual/jre-1.8:* )
+# perl? ( dev-lang/perl )
+# php? ( dev-lang/php )
+# ruby? ( ${RUBY_DEPS} )
+# sox? ( media-sound/sox )
+# tcl? ( dev-lang/tcl:0= )
+RDEPEND="${DEPEND}"
+BDEPEND="
+ virtual/pkgconfig
+ python? ( >=dev-lang/swig-2.0 )
+"
+
+DOCS=( AUTHORS NEWS README.md )
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.10.0-swig-underlinking.patch
+ "${FILESDIR}"/${PN}-6.22.1-no_lua_bdepend.patch
+ "${FILESDIR}"/${PN}-7.0.1-cmake-symlink.patch
+ "${FILESDIR}"/${P}-impl-func-decl-gps_parser.patch
+)
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ # respect CFLAGS LDFLAGS when building shared libraries. Bug #308873
+ if use python; then
+ sed -i "/mlt.so/s/ -lmlt++ /& ${CFLAGS} ${LDFLAGS} /" src/swig/python/build || die
+ python_fix_shebang src/swig/python
+ fi
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DCMAKE_SKIP_RPATH=ON
+ -DGPL=ON
+ -DGPL3=ON
+ -DBUILD_TESTING=$(usex test)
+ -DMOD_KDENLIVE=ON
+ -DMOD_SDL1=OFF
+ -DMOD_SDL2=$(usex sdl)
+ -DMOD_AVFORMAT=$(usex ffmpeg)
+ -DMOD_PLUS=ON
+ -DMOD_FREI0R=$(usex frei0r)
+ -DMOD_GDK=$(usex gtk)
+ -DMOD_JACKRACK=$(usex jack)
+ -DMOD_RESAMPLE=$(usex libsamplerate)
+ -DMOD_OPENCV=$(usex opencv)
+ -DMOD_MOVIT=$(usex opengl)
+ -DMOD_QT=$(usex qt5)
+ -DMOD_RTAUDIO=$(usex rtaudio)
+ -DMOD_RUBBERBAND=$(usex rubberband)
+ -DMOD_VIDSTAB=$(usex vidstab)
+ -DMOD_XINE=$(usex xine)
+ -DMOD_XML=$(usex xml)
+ -DMOD_SOX=OFF
+ )
+
+ # TODO: rework upstream CMake to allow controlling MMX/SSE/SSE2
+ # TODO: add swig language bindings?
+ # see also https://www.mltframework.org/twiki/bin/view/MLT/ExtremeMakeover
+
+ if use python; then
+ mycmakeargs+=( -DSWIG_PYTHON=ON )
+ fi
+
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+
+ insinto /usr/share/${PN}
+ doins -r demo
+
+ #
+ # Install SWIG bindings
+ #
+
+ docinto swig
+
+ if use python; then
+ dodoc "${S}"/src/swig/python/play.py
+ python_optimize
+ fi
+}
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-libs/mlt/, media-libs/mlt/files/
@ 2022-12-15 19:26 Andreas Sturmlechner
0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2022-12-15 19:26 UTC (permalink / raw
To: gentoo-commits
commit: 4de568226692354d200fb2d1434099d79dd27b24
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Thu Dec 15 19:26:25 2022 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Thu Dec 15 19:26:41 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4de56822
media-libs/mlt: drop 7.8.0
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
media-libs/mlt/Manifest | 1 -
.../mlt/files/mlt-7.8.0-linux_locale_h.patch | 37 -----
media-libs/mlt/mlt-7.8.0.ebuild | 159 ---------------------
3 files changed, 197 deletions(-)
diff --git a/media-libs/mlt/Manifest b/media-libs/mlt/Manifest
index b884549306c3..274cef59d069 100644
--- a/media-libs/mlt/Manifest
+++ b/media-libs/mlt/Manifest
@@ -1,2 +1 @@
DIST mlt-7.12.0.tar.gz 1481720 BLAKE2B c0df14cfdbba1eec412e71a1184dfd0e595c89a24b956bc90390679307fec1c8a5f2264e9769123fa2f7d95a67ba35cf9316b32173f7248239431ae47743f6cc SHA512 7111ca31f5ed8479dc899596bec4b9dd9440ab8563844abd9d789f7ce342b61c54d1a5058d6f5288fdd510db7e05db12f7e807bf0cd33dbee11a72185fb0b746
-DIST mlt-7.8.0a.tar.gz 1458730 BLAKE2B 0f544923c7f1667d2a2379bcb84a68dca2c701ce7b9cebe4e9b5f81efcb494674111fea09e9025108b8714e792a0179d465d226bb0a0231a197a67c99d82f976 SHA512 aa44d604f2246db11e5c572e2c3f9121ef0ace1fdead95a6a4a20f7555a3139b067fd2d464f27d23cc90cfcf8907ae9cf8f33b26f76c110a6ba2329867f88bd1
diff --git a/media-libs/mlt/files/mlt-7.8.0-linux_locale_h.patch b/media-libs/mlt/files/mlt-7.8.0-linux_locale_h.patch
deleted file mode 100644
index 43822c446654..000000000000
--- a/media-libs/mlt/files/mlt-7.8.0-linux_locale_h.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From 7d82553a00e74af77e69cc74645e0a3ec6bb3aa1 Mon Sep 17 00:00:00 2001
-From: alfredfo <98554039+alfredfo@users.noreply.github.com>
-Date: Sat, 25 Jun 2022 01:00:11 +0000
-Subject: [PATCH] Fix building for musl (#803)
-
-reverts: https://github.com/mltframework/mlt/pull/298.
-There is no gurantee that either HAVE_STRTOD_L or HAVE_LOCALE_H will be
-defined at compile-time. Try for example building this project :)
-
-The locale usage is now defined in POSIX and therefore we can now
-assume it will be available on Linux, except for ancient systems.
-https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/locale.h.html
-
-Another way of dealing with this would be to have a global mlt_config.h
-where HAVE_LOCALE_H and HAVE_STRTOD_L are defined to values determined
-when mlt is installed.
-
-https://git.alpinelinux.org/aports/tree/community/mlt/musl-locale.patch
-https://bugs.gentoo.org/829608
-https://github.com/mltframework/mlt/pull/803
----
- src/framework/mlt_property.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/framework/mlt_property.h b/src/framework/mlt_property.h
-index 85d550ac0..be61c23c2 100644
---- a/src/framework/mlt_property.h
-+++ b/src/framework/mlt_property.h
-@@ -30,7 +30,7 @@
- #include <sys/param.h>
- #endif
-
--#if (defined(__GLIBC__) && !defined(__APPLE__)) || defined(HAVE_LOCALE_H)
-+#if (defined(__linux__) && !defined(__APPLE__))
- # include <locale.h>
- #elif defined(__APPLE__) || (defined(__FreeBSD_version) && __FreeBSD_version >= 900506)
- # include <xlocale.h>
diff --git a/media-libs/mlt/mlt-7.8.0.ebuild b/media-libs/mlt/mlt-7.8.0.ebuild
deleted file mode 100644
index 53b16ea2df51..000000000000
--- a/media-libs/mlt/mlt-7.8.0.ebuild
+++ /dev/null
@@ -1,159 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..11} )
-inherit python-single-r1 cmake
-
-DESCRIPTION="Open source multimedia framework for television broadcasting"
-HOMEPAGE="https://www.mltframework.org/"
-SRC_URI="https://github.com/mltframework/${PN}/releases/download/v${PV}/${P}.tar.gz -> ${P}a.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0/7"
-KEYWORDS="amd64 arm64 ~ppc64 ~riscv x86 ~amd64-linux ~x86-linux"
-IUSE="debug ffmpeg frei0r gtk jack libsamplerate opencv opengl python qt5 rtaudio rubberband sdl test vdpau vidstab xine xml"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-# Needs unpackaged 'kwalify'
-RESTRICT="test"
-
-# rtaudio will use OSS on non linux OSes
-# Qt already needs FFTW/PLUS so let's just always have it on to ensure
-# MLT is useful: bug #603168.
-DEPEND="
- >=media-libs/libebur128-1.2.2:=
- sci-libs/fftw:3.0=
- ffmpeg? ( media-video/ffmpeg:0=[vdpau?,-flite] )
- frei0r? ( media-plugins/frei0r-plugins )
- gtk? (
- media-libs/libexif
- x11-libs/pango
- )
- jack? (
- >=dev-libs/libxml2-2.5
- media-libs/ladspa-sdk
- virtual/jack
- )
- libsamplerate? ( >=media-libs/libsamplerate-0.1.2 )
- opencv? ( >=media-libs/opencv-4.5.1:=[contrib] )
- opengl? (
- media-libs/libglvnd
- media-video/movit
- )
- python? ( ${PYTHON_DEPS} )
- qt5? (
- dev-qt/qtcore:5
- dev-qt/qtgui:5
- dev-qt/qtsvg:5
- dev-qt/qtwidgets:5
- dev-qt/qtxml:5
- media-libs/libexif
- x11-libs/libX11
- )
- rtaudio? (
- >=media-libs/rtaudio-4.1.2
- kernel_linux? ( media-libs/alsa-lib )
- )
- rubberband? ( media-libs/rubberband )
- sdl? (
- media-libs/libsdl2[X,opengl,video]
- media-libs/sdl2-image
- )
- vidstab? ( media-libs/vidstab )
- xine? ( >=media-libs/xine-lib-1.1.2_pre20060328-r7 )
- xml? ( >=dev-libs/libxml2-2.5 )
-"
-# java? ( >=virtual/jre-1.8:* )
-# perl? ( dev-lang/perl )
-# php? ( dev-lang/php )
-# ruby? ( ${RUBY_DEPS} )
-# sox? ( media-sound/sox )
-# tcl? ( dev-lang/tcl:0= )
-RDEPEND="${DEPEND}"
-BDEPEND="
- virtual/pkgconfig
- python? ( >=dev-lang/swig-2.0 )
-"
-
-DOCS=( AUTHORS NEWS README.md )
-
-PATCHES=(
- "${FILESDIR}"/${PN}-6.10.0-swig-underlinking.patch
- "${FILESDIR}"/${PN}-6.22.1-no_lua_bdepend.patch
- "${FILESDIR}"/${PN}-7.0.1-cmake-symlink.patch
- "${FILESDIR}"/${PN}-7.8.0-linux_locale_h.patch
-)
-
-pkg_setup() {
- use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
- # Respect CFLAGS LDFLAGS when building shared libraries. Bug #308873
- if use python; then
- sed -i "/mlt.so/s/ -lmlt++ /& ${CFLAGS} ${LDFLAGS} /" src/swig/python/build || die
- python_fix_shebang src/swig/python
- fi
-
- cmake_src_prepare
-}
-
-src_configure() {
- local mycmakeargs=(
- -DCMAKE_SKIP_RPATH=ON
- -DBUILD_WITH_QT6=OFF
- -DGPL=ON
- -DGPL3=ON
- -DBUILD_TESTING=$(usex test)
- -DMOD_KDENLIVE=ON
- -DMOD_SDL1=OFF
- -DMOD_SDL2=$(usex sdl)
- -DMOD_AVFORMAT=$(usex ffmpeg)
- -DMOD_PLUS=ON
- -DMOD_FREI0R=$(usex frei0r)
- -DMOD_GDK=$(usex gtk)
- -DMOD_JACKRACK=$(usex jack)
- -DMOD_GLAXNIMATE=OFF
- -DMOD_RESAMPLE=$(usex libsamplerate)
- -DMOD_OPENCV=$(usex opencv)
- -DMOD_MOVIT=$(usex opengl)
- -DMOD_QT=$(usex qt5)
- -DMOD_RTAUDIO=$(usex rtaudio)
- -DMOD_RUBBERBAND=$(usex rubberband)
- -DMOD_VIDSTAB=$(usex vidstab)
- -DMOD_XINE=$(usex xine)
- -DMOD_XML=$(usex xml)
- -DMOD_SOX=OFF
- )
-
- # TODO: rework upstream CMake to allow controlling MMX/SSE/SSE2
- # TODO: add swig language bindings?
- # see also https://www.mltframework.org/twiki/bin/view/MLT/ExtremeMakeover
-
- if use python; then
- mycmakeargs+=( -DSWIG_PYTHON=ON )
- fi
-
- cmake_src_configure
-}
-
-src_install() {
- cmake_src_install
-
- insinto /usr/share/${PN}
- doins -r demo
-
- #
- # Install SWIG bindings
- #
-
- docinto swig
-
- if use python; then
- dodoc "${S}"/src/swig/python/play.py
- python_optimize
- fi
-}
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-libs/mlt/, media-libs/mlt/files/
@ 2023-06-12 18:04 Sam James
0 siblings, 0 replies; 23+ messages in thread
From: Sam James @ 2023-06-12 18:04 UTC (permalink / raw
To: gentoo-commits
commit: 54270ba63127af2de00546cbdd15c560fd820146
Author: Violet Purcell <vimproved <AT> inventati <DOT> org>
AuthorDate: Mon Jun 12 18:01:51 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Jun 12 18:03:09 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=54270ba6
media-libs/mlt: Backport -Wint-conversion fix
Signed-off-by: Violet Purcell <vimproved <AT> inventati.org>
Signed-off-by: Sam James <sam <AT> gentoo.org>
.../mlt/files/mlt-7.14.0-int-conversion.patch | 53 ++++++++++++++++++++++
.../{mlt-7.14.0.ebuild => mlt-7.14.0-r1.ebuild} | 1 +
2 files changed, 54 insertions(+)
diff --git a/media-libs/mlt/files/mlt-7.14.0-int-conversion.patch b/media-libs/mlt/files/mlt-7.14.0-int-conversion.patch
new file mode 100644
index 000000000000..8a3acdcc7048
--- /dev/null
+++ b/media-libs/mlt/files/mlt-7.14.0-int-conversion.patch
@@ -0,0 +1,53 @@
+Upstream: https://github.com/mltframework/mlt/commit/db1f3ceff723912c2ff4b6207a3f446f6677e8f8
+
+From db1f3ceff723912c2ff4b6207a3f446f6677e8f8 Mon Sep 17 00:00:00 2001
+From: j-b-m <jb@kdenlive.org>
+Date: Sun, 2 Apr 2023 18:14:20 +0200
+Subject: [PATCH] Fix compilation: parameter type mismatch
+
+* Fix compilation: parameter type mismatch
+
+* Fix incompatible arg
+--- a/src/modules/avformat/factory.c
++++ b/src/modules/avformat/factory.c
+@@ -31,7 +31,7 @@ extern mlt_filter filter_swresample_init( mlt_profile profile, char *arg );
+ extern mlt_filter filter_swscale_init( mlt_profile profile, char *arg );
+ extern mlt_producer producer_avformat_init( mlt_profile profile, const char *service, char *file );
+ extern mlt_filter filter_avfilter_init( mlt_profile, mlt_service_type, const char*, char* );
+-extern mlt_link link_swresample_init( mlt_profile profile, char *arg );
++extern mlt_link link_swresample_init( mlt_profile profile, mlt_service_type, const char *, char * );
+
+ // ffmpeg Header files
+ #include <libavformat/avformat.h>
+@@ -94,7 +94,7 @@ static void *create_service( mlt_profile profile, mlt_service_type type, const c
+ if ( type == mlt_service_filter_type )
+ return filter_swresample_init( profile, arg );
+ else if ( type == mlt_service_link_type )
+- return link_swresample_init( profile, arg );
++ return link_swresample_init( profile, type, id, arg );
+ #endif
+ return NULL;
+ }
+--- a/src/win32/win32.c
++++ b/src/win32/win32.c
+@@ -70,7 +70,7 @@ int setenv(const char *name, const char *value, int overwrite)
+
+ static int iconv_from_utf8( mlt_properties properties, const char *prop_name, const char *prop_name_out, const char* encoding )
+ {
+- char *text = mlt_properties_get( properties, prop_name );
++ const char *text = mlt_properties_get( properties, prop_name );
+ int result = 0;
+
+ if ( text ) {
+@@ -99,7 +99,7 @@ static int iconv_from_utf8( mlt_properties properties, const char *prop_name, co
+
+ static int iconv_to_utf8( mlt_properties properties, const char *prop_name, const char *prop_name_out, const char* encoding )
+ {
+- char *text = mlt_properties_get( properties, prop_name );
++ const char *text = mlt_properties_get( properties, prop_name );
+ int result = 0;
+
+ if ( text ) {
+--
+2.41.0
+
diff --git a/media-libs/mlt/mlt-7.14.0.ebuild b/media-libs/mlt/mlt-7.14.0-r1.ebuild
similarity index 98%
rename from media-libs/mlt/mlt-7.14.0.ebuild
rename to media-libs/mlt/mlt-7.14.0-r1.ebuild
index 3f53d04db981..2e4aa2447770 100644
--- a/media-libs/mlt/mlt-7.14.0.ebuild
+++ b/media-libs/mlt/mlt-7.14.0-r1.ebuild
@@ -84,6 +84,7 @@ PATCHES=(
"${FILESDIR}"/${PN}-6.10.0-swig-underlinking.patch
"${FILESDIR}"/${PN}-6.22.1-no_lua_bdepend.patch
"${FILESDIR}"/${PN}-7.0.1-cmake-symlink.patch
+ "${FILESDIR}"/${PN}-7.14.0-int-conversion.patch
)
pkg_setup() {
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-libs/mlt/, media-libs/mlt/files/
@ 2023-10-08 14:37 Andreas Sturmlechner
0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2023-10-08 14:37 UTC (permalink / raw
To: gentoo-commits
commit: 7175b838fce852b050cc031dcb5141d8499cb539
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sun Oct 8 12:21:15 2023 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sun Oct 8 14:37:30 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7175b838
media-libs/mlt: Backport crash fixes post-7.20 release
Upstream commits:
482f1fb0179587575b3071f622df51a95895068a
09f55bf3d1fdcac06c5d297bb27cb4f3e7f85021
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
.../mlt/files/mlt-7.20.0-qtblend-crash.patch | 43 ++++++++++++++++++++++
.../mlt/files/mlt-7.20.0-rotoscoping-crash.patch | 22 +++++++++++
media-libs/mlt/mlt-7.20.0.ebuild | 3 ++
3 files changed, 68 insertions(+)
diff --git a/media-libs/mlt/files/mlt-7.20.0-qtblend-crash.patch b/media-libs/mlt/files/mlt-7.20.0-qtblend-crash.patch
new file mode 100644
index 000000000000..aad8f0e9e45c
--- /dev/null
+++ b/media-libs/mlt/files/mlt-7.20.0-qtblend-crash.patch
@@ -0,0 +1,43 @@
+From 09f55bf3d1fdcac06c5d297bb27cb4f3e7f85021 Mon Sep 17 00:00:00 2001
+From: Jean-Baptiste Mardelle <jb@kdenlive.org>
+Date: Thu, 5 Oct 2023 08:45:16 +0200
+Subject: [PATCH] Ensure qtblend doesn't request an image of 0 width or height
+ (crashes many filters)
+
+---
+ src/modules/qt/filter_qtblend.cpp | 6 +++---
+ src/modules/qt/transition_qtblend.cpp | 3 +++
+ 2 files changed, 6 insertions(+), 3 deletions(-)
+
+diff --git a/src/modules/qt/filter_qtblend.cpp b/src/modules/qt/filter_qtblend.cpp
+index d54f7ccad..32d752d60 100644
+--- a/src/modules/qt/filter_qtblend.cpp
++++ b/src/modules/qt/filter_qtblend.cpp
+@@ -103,10 +103,10 @@ static int filter_get_image(mlt_frame frame,
+ || rect.h != *height;
+
+ if (mlt_properties_get_int(properties, "distort") == 0) {
+- b_height = qMin((int) rect.h, b_height);
+- b_width = b_height * b_dar / b_ar / consumer_ar;
++ b_height = qMax(1, qMin((int) rect.h, b_height));
++ b_width = qMax(1, int(b_height * b_dar / b_ar / consumer_ar));
+ } else {
+- b_width *= b_ar / consumer_ar;
++ b_width = qMax(1, int(b_width * b_ar / consumer_ar));
+ }
+ if (!hasAlpha && (b_width < *width || b_height < *height)) {
+ hasAlpha = true;
+diff --git a/src/modules/qt/transition_qtblend.cpp b/src/modules/qt/transition_qtblend.cpp
+index 9dbc795aa..0b41b3ff8 100644
+--- a/src/modules/qt/transition_qtblend.cpp
++++ b/src/modules/qt/transition_qtblend.cpp
+@@ -121,6 +121,9 @@ static int get_image(mlt_frame a_frame,
+ // we will process operations on top frame, so also process b_frame
+ forceAlpha = true;
+ }
++ // Ensure we don't request an image with a 0 width or height
++ b_width = qMax(1, b_width);
++ b_height = qMax(1, b_height);
+ } else {
+ b_height = *height;
+ b_width = *width;
diff --git a/media-libs/mlt/files/mlt-7.20.0-rotoscoping-crash.patch b/media-libs/mlt/files/mlt-7.20.0-rotoscoping-crash.patch
new file mode 100644
index 000000000000..124e1102b6d2
--- /dev/null
+++ b/media-libs/mlt/files/mlt-7.20.0-rotoscoping-crash.patch
@@ -0,0 +1,22 @@
+From 482f1fb0179587575b3071f622df51a95895068a Mon Sep 17 00:00:00 2001
+From: Jean-Baptiste Mardelle <jb@kdenlive.org>
+Date: Wed, 4 Oct 2023 22:26:13 +0200
+Subject: [PATCH] Fix rotoscoping filter crash on image with height = 0
+
+---
+ src/modules/plusgpl/filter_rotoscoping.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/modules/plusgpl/filter_rotoscoping.c b/src/modules/plusgpl/filter_rotoscoping.c
+index 35e3931f0..782c39422 100644
+--- a/src/modules/plusgpl/filter_rotoscoping.c
++++ b/src/modules/plusgpl/filter_rotoscoping.c
+@@ -337,7 +337,7 @@ static int filter_get_image(mlt_frame frame,
+ int offsetx = 0;
+ int offsety = 0;
+ // Compare aspect ratio
+- if (100 * *width / *height != 100 * normalized_width / normalized_height) {
++ if (*height > 0 && 100 * *width / *height != 100 * normalized_width / normalized_height) {
+ // Source has a different aspect ratio, apply scaling
+ double xfactor = normalized_width / *width;
+ double yfactor = normalized_height / *height;
diff --git a/media-libs/mlt/mlt-7.20.0.ebuild b/media-libs/mlt/mlt-7.20.0.ebuild
index db7be1c8207b..b84f4931436a 100644
--- a/media-libs/mlt/mlt-7.20.0.ebuild
+++ b/media-libs/mlt/mlt-7.20.0.ebuild
@@ -82,9 +82,12 @@ BDEPEND="
DOCS=( AUTHORS NEWS README.md )
PATCHES=(
+ # downstream
"${FILESDIR}"/${PN}-6.10.0-swig-underlinking.patch
"${FILESDIR}"/${PN}-6.22.1-no_lua_bdepend.patch
"${FILESDIR}"/${PN}-7.0.1-cmake-symlink.patch
+ # upstream (>=7.21.0)
+ "${FILESDIR}"/${P}-{rotoscoping,qtblend}-crash.patch
)
pkg_setup() {
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-libs/mlt/, media-libs/mlt/files/
@ 2024-01-07 14:33 Andreas Sturmlechner
0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2024-01-07 14:33 UTC (permalink / raw
To: gentoo-commits
commit: d32d62587aff47036611dd30872b7526bcad9638
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 6 14:56:48 2024 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sun Jan 7 14:32:33 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d32d6258
media-libs/mlt: drop 7.20.0-r1
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
media-libs/mlt/Manifest | 1 -
.../mlt/files/mlt-7.20.0-qtblend-crash.patch | 43 ------
.../mlt/files/mlt-7.20.0-rotoscoping-crash.patch | 22 ---
media-libs/mlt/mlt-7.20.0-r1.ebuild | 165 ---------------------
4 files changed, 231 deletions(-)
diff --git a/media-libs/mlt/Manifest b/media-libs/mlt/Manifest
index 01200d508f40..8bbc295acb8c 100644
--- a/media-libs/mlt/Manifest
+++ b/media-libs/mlt/Manifest
@@ -1,2 +1 @@
-DIST mlt-7.20.0.tar.gz 1636493 BLAKE2B e056676825b50f0f575954e63cdfa409bb6cecc0b6b1358e99a1575469434f0a817f7ae934cbfa9bad681a6e004c238d2bb0c49d1e2b8a75724fe5040fc6771c SHA512 66bd108257aae8bd2bd76166eff09296f91fb89bc3deda164278c2a19688eb47cc78095563ef140433cb2ccb0d35d7ffc142fe157fe28e0fbdd92d9c0119be3d
DIST mlt-7.22.0.tar.gz 1659954 BLAKE2B ab3dff26446a048e79d5f11942b05fa557ec91a813b14bd46492fe66c46a2e6685f3835ff647b69e6b6ebe137a345fc7eb17c8e88bdfd3bdb81e41eeca910aaa SHA512 84763e1cb8495be9476637d2474aa492906b904990905f9283faffff75829553cf87b097166fe6d382acc043422e6da45014ca4ba281c7fc68f10ebe3cec4fee
diff --git a/media-libs/mlt/files/mlt-7.20.0-qtblend-crash.patch b/media-libs/mlt/files/mlt-7.20.0-qtblend-crash.patch
deleted file mode 100644
index aad8f0e9e45c..000000000000
--- a/media-libs/mlt/files/mlt-7.20.0-qtblend-crash.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 09f55bf3d1fdcac06c5d297bb27cb4f3e7f85021 Mon Sep 17 00:00:00 2001
-From: Jean-Baptiste Mardelle <jb@kdenlive.org>
-Date: Thu, 5 Oct 2023 08:45:16 +0200
-Subject: [PATCH] Ensure qtblend doesn't request an image of 0 width or height
- (crashes many filters)
-
----
- src/modules/qt/filter_qtblend.cpp | 6 +++---
- src/modules/qt/transition_qtblend.cpp | 3 +++
- 2 files changed, 6 insertions(+), 3 deletions(-)
-
-diff --git a/src/modules/qt/filter_qtblend.cpp b/src/modules/qt/filter_qtblend.cpp
-index d54f7ccad..32d752d60 100644
---- a/src/modules/qt/filter_qtblend.cpp
-+++ b/src/modules/qt/filter_qtblend.cpp
-@@ -103,10 +103,10 @@ static int filter_get_image(mlt_frame frame,
- || rect.h != *height;
-
- if (mlt_properties_get_int(properties, "distort") == 0) {
-- b_height = qMin((int) rect.h, b_height);
-- b_width = b_height * b_dar / b_ar / consumer_ar;
-+ b_height = qMax(1, qMin((int) rect.h, b_height));
-+ b_width = qMax(1, int(b_height * b_dar / b_ar / consumer_ar));
- } else {
-- b_width *= b_ar / consumer_ar;
-+ b_width = qMax(1, int(b_width * b_ar / consumer_ar));
- }
- if (!hasAlpha && (b_width < *width || b_height < *height)) {
- hasAlpha = true;
-diff --git a/src/modules/qt/transition_qtblend.cpp b/src/modules/qt/transition_qtblend.cpp
-index 9dbc795aa..0b41b3ff8 100644
---- a/src/modules/qt/transition_qtblend.cpp
-+++ b/src/modules/qt/transition_qtblend.cpp
-@@ -121,6 +121,9 @@ static int get_image(mlt_frame a_frame,
- // we will process operations on top frame, so also process b_frame
- forceAlpha = true;
- }
-+ // Ensure we don't request an image with a 0 width or height
-+ b_width = qMax(1, b_width);
-+ b_height = qMax(1, b_height);
- } else {
- b_height = *height;
- b_width = *width;
diff --git a/media-libs/mlt/files/mlt-7.20.0-rotoscoping-crash.patch b/media-libs/mlt/files/mlt-7.20.0-rotoscoping-crash.patch
deleted file mode 100644
index 124e1102b6d2..000000000000
--- a/media-libs/mlt/files/mlt-7.20.0-rotoscoping-crash.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-From 482f1fb0179587575b3071f622df51a95895068a Mon Sep 17 00:00:00 2001
-From: Jean-Baptiste Mardelle <jb@kdenlive.org>
-Date: Wed, 4 Oct 2023 22:26:13 +0200
-Subject: [PATCH] Fix rotoscoping filter crash on image with height = 0
-
----
- src/modules/plusgpl/filter_rotoscoping.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/modules/plusgpl/filter_rotoscoping.c b/src/modules/plusgpl/filter_rotoscoping.c
-index 35e3931f0..782c39422 100644
---- a/src/modules/plusgpl/filter_rotoscoping.c
-+++ b/src/modules/plusgpl/filter_rotoscoping.c
-@@ -337,7 +337,7 @@ static int filter_get_image(mlt_frame frame,
- int offsetx = 0;
- int offsety = 0;
- // Compare aspect ratio
-- if (100 * *width / *height != 100 * normalized_width / normalized_height) {
-+ if (*height > 0 && 100 * *width / *height != 100 * normalized_width / normalized_height) {
- // Source has a different aspect ratio, apply scaling
- double xfactor = normalized_width / *width;
- double yfactor = normalized_height / *height;
diff --git a/media-libs/mlt/mlt-7.20.0-r1.ebuild b/media-libs/mlt/mlt-7.20.0-r1.ebuild
deleted file mode 100644
index e2c50d4bb0c0..000000000000
--- a/media-libs/mlt/mlt-7.20.0-r1.ebuild
+++ /dev/null
@@ -1,165 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{9..12} )
-inherit python-single-r1 cmake
-
-DESCRIPTION="Open source multimedia framework for television broadcasting"
-HOMEPAGE="https://www.mltframework.org/"
-SRC_URI="https://github.com/mltframework/${PN}/releases/download/v${PV}/${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0/7"
-KEYWORDS="amd64 arm64 ~ppc64 ~riscv x86 ~amd64-linux ~x86-linux"
-IUSE="debug ffmpeg frei0r gtk jack libsamplerate opencv opengl python qt5 rtaudio rubberband sdl test vdpau vidstab xine xml"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-# Needs unpackaged 'kwalify'
-RESTRICT="test"
-
-# rtaudio will use OSS on non linux OSes
-# Qt already needs FFTW/PLUS so let's just always have it on to ensure
-# MLT is useful: bug #603168.
-DEPEND="
- >=media-libs/libebur128-1.2.2:=
- sci-libs/fftw:3.0=
- ffmpeg? ( media-video/ffmpeg:0=[vdpau?] )
- frei0r? ( media-plugins/frei0r-plugins )
- gtk? (
- media-libs/libexif
- x11-libs/pango
- )
- jack? (
- >=dev-libs/libxml2-2.5
- media-libs/ladspa-sdk
- virtual/jack
- )
- libsamplerate? ( >=media-libs/libsamplerate-0.1.2 )
- opencv? ( >=media-libs/opencv-4.5.1:=[contrib] )
- opengl? (
- media-libs/libglvnd
- media-video/movit
- )
- python? ( ${PYTHON_DEPS} )
- qt5? (
- dev-qt/qtcore:5
- dev-qt/qtgui:5
- dev-qt/qtnetwork:5
- dev-qt/qtsvg:5
- dev-qt/qtwidgets:5
- dev-qt/qtxml:5
- media-libs/libexif
- x11-libs/libX11
- )
- rtaudio? (
- >=media-libs/rtaudio-4.1.2
- kernel_linux? ( media-libs/alsa-lib )
- )
- rubberband? ( media-libs/rubberband )
- sdl? (
- media-libs/libsdl2[X,opengl,video]
- media-libs/sdl2-image
- )
- vidstab? ( media-libs/vidstab )
- xine? ( >=media-libs/xine-lib-1.1.2_pre20060328-r7 )
- xml? ( >=dev-libs/libxml2-2.5 )
-"
-# java? ( >=virtual/jre-1.8:* )
-# perl? ( dev-lang/perl )
-# php? ( dev-lang/php )
-# ruby? ( ${RUBY_DEPS} )
-# sox? ( media-sound/sox )
-# tcl? ( dev-lang/tcl:0= )
-RDEPEND="${DEPEND}"
-BDEPEND="
- virtual/pkgconfig
- python? ( >=dev-lang/swig-2.0 )
-"
-
-DOCS=( AUTHORS NEWS README.md )
-
-PATCHES=(
- # downstream
- "${FILESDIR}"/${PN}-6.10.0-swig-underlinking.patch
- "${FILESDIR}"/${PN}-6.22.1-no_lua_bdepend.patch
- "${FILESDIR}"/${PN}-7.0.1-cmake-symlink.patch
- # upstream (>=7.21.0)
- "${FILESDIR}"/${P}-{rotoscoping,qtblend}-crash.patch
-)
-
-pkg_setup() {
- use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
- # Respect CFLAGS LDFLAGS when building shared libraries. Bug #308873
- if use python; then
- sed -i "/mlt.so/s/ -lmlt++ /& ${CFLAGS} ${LDFLAGS} /" src/swig/python/build || die
- python_fix_shebang src/swig/python
- fi
-
- cmake_src_prepare
-}
-
-src_configure() {
- local mycmakeargs=(
- -DCMAKE_SKIP_RPATH=ON
- -DCLANG_FORMAT=OFF
- -DGPL=ON
- -DGPL3=ON
- -DBUILD_TESTING=$(usex test)
- -DMOD_KDENLIVE=ON
- -DMOD_SDL1=OFF
- -DMOD_SDL2=$(usex sdl)
- -DMOD_AVFORMAT=$(usex ffmpeg)
- -DMOD_PLUS=ON
- -DMOD_FREI0R=$(usex frei0r)
- -DMOD_GDK=$(usex gtk)
- -DMOD_JACKRACK=$(usex jack)
- -DMOD_RESAMPLE=$(usex libsamplerate)
- -DMOD_OPENCV=$(usex opencv)
- -DMOD_MOVIT=$(usex opengl)
- -DMOD_QT=$(usex qt5)
- -DMOD_GLAXNIMATE=$(usex qt5)
- -DMOD_RTAUDIO=$(usex rtaudio)
- -DMOD_RUBBERBAND=$(usex rubberband)
- -DMOD_VIDSTAB=$(usex vidstab)
- -DMOD_XINE=$(usex xine)
- -DMOD_XML=$(usex xml)
- -DMOD_SOX=OFF
- )
-
- # TODO: rework upstream CMake to allow controlling MMX/SSE/SSE2
- # TODO: add swig language bindings?
- # see also https://www.mltframework.org/twiki/bin/view/MLT/ExtremeMakeover
-
- if use python; then
- mycmakeargs+=(
- -DSWIG_PYTHON=ON
- -DPython3_EXECUTABLE="${PYTHON}"
- )
- fi
-
- cmake_src_configure
-}
-
-src_install() {
- cmake_src_install
-
- insinto /usr/share/${PN}
- doins -r demo
-
- #
- # Install SWIG bindings
- #
-
- docinto swig
-
- if use python; then
- dodoc "${S}"/src/swig/python/play.py
- python_optimize
- fi
-}
^ permalink raw reply related [flat|nested] 23+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-libs/mlt/, media-libs/mlt/files/
@ 2024-10-21 17:35 Andreas Sturmlechner
0 siblings, 0 replies; 23+ messages in thread
From: Andreas Sturmlechner @ 2024-10-21 17:35 UTC (permalink / raw
To: gentoo-commits
commit: 2e5e84ee9e284774538b6c4c284b6e6fb802eca2
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Mon Oct 21 17:22:56 2024 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Mon Oct 21 17:34:56 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2e5e84ee
media-libs/mlt: Fix build on 32-bit arches
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
media-libs/mlt/files/mlt-7.28.0-fix-32bit.patch | 101 ++++++++++++++++++++++++
media-libs/mlt/mlt-7.28.0.ebuild | 2 +
2 files changed, 103 insertions(+)
diff --git a/media-libs/mlt/files/mlt-7.28.0-fix-32bit.patch b/media-libs/mlt/files/mlt-7.28.0-fix-32bit.patch
new file mode 100644
index 000000000000..a56dffe2c75d
--- /dev/null
+++ b/media-libs/mlt/files/mlt-7.28.0-fix-32bit.patch
@@ -0,0 +1,101 @@
+From 6f533e7b8999bc4017c1a6685bf2baea6570d44c Mon Sep 17 00:00:00 2001
+From: Dan Dennedy <dan@dennedy.org>
+Date: Tue, 24 Sep 2024 09:47:46 -0700
+Subject: [PATCH 1/3] fix #1020 Mlt::Producer::set_creation_time() not exported
+ on i686
+
+---
+ src/mlt++/mlt++.vers | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/src/mlt++/mlt++.vers b/src/mlt++/mlt++.vers
+index 1934decd..c47f017a 100644
+--- a/src/mlt++/mlt++.vers
++++ b/src/mlt++/mlt++.vers
+@@ -540,7 +540,8 @@ MLTPP_6.14.0 {
+ "Mlt::Service::set_profile(mlt_profile_s*)";
+ "Mlt::Playlist::reorder(int const*)";
+ "Mlt::Transition::connect(Mlt::Service&, int, int)";
+- "Mlt::Producer::set_creation_time(long)";
++# "Mlt::Producer::set_creation_time(long)";
++ _ZN3Mlt8Producer17set_creation_timeE[lx];
+ "Mlt::Producer::get_creation_time()";
+ };
+ } MLTPP_6.10.0;
+--
+2.46.1
+
+
+From 2072c6b3596854f1a7165d7ddd5994204e741db8 Mon Sep 17 00:00:00 2001
+From: Dan Dennedy <dan@dennedy.org>
+Date: Tue, 24 Sep 2024 10:00:51 -0700
+Subject: [PATCH 2/3] fix mlt++.vers #1020
+
+---
+ src/mlt++/mlt++.vers | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/mlt++/mlt++.vers b/src/mlt++/mlt++.vers
+index c47f017a..2d8c1dda 100644
+--- a/src/mlt++/mlt++.vers
++++ b/src/mlt++/mlt++.vers
+@@ -540,10 +540,10 @@ MLTPP_6.14.0 {
+ "Mlt::Service::set_profile(mlt_profile_s*)";
+ "Mlt::Playlist::reorder(int const*)";
+ "Mlt::Transition::connect(Mlt::Service&, int, int)";
+-# "Mlt::Producer::set_creation_time(long)";
+- _ZN3Mlt8Producer17set_creation_timeE[lx];
+ "Mlt::Producer::get_creation_time()";
+ };
++# "Mlt::Producer::set_creation_time(long)";
++ _ZN3Mlt8Producer17set_creation_timeE[lx];
+ } MLTPP_6.10.0;
+
+ MLTPP_6.18.0 {
+--
+2.46.1
+
+
+From 63953cf7338181c82eb6eb9f93c8c9a11aaee5f7 Mon Sep 17 00:00:00 2001
+From: Dan Dennedy <dan@dennedy.org>
+Date: Tue, 24 Sep 2024 10:55:16 -0700
+Subject: [PATCH 3/3] fix Mlt::Properties::set(int64_t) symbol version
+
+Related to #1020
+---
+ src/mlt++/mlt++.vers | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/src/mlt++/mlt++.vers b/src/mlt++/mlt++.vers
+index 2d8c1dda..19300de3 100644
+--- a/src/mlt++/mlt++.vers
++++ b/src/mlt++/mlt++.vers
+@@ -310,7 +310,6 @@ MLTPP_0.8.8 {
+ "Mlt::Properties::set(char const*, char const*)";
+ "Mlt::Properties::set(char const*, double)";
+ "Mlt::Properties::set(char const*, int)";
+- "Mlt::Properties::set(char const*, long)";
+ "Mlt::Properties::set(char const*, void*, int, void (*)(void*), char* (*)(void*, int))";
+ "Mlt::Properties::set_lcnumeric(char const*)";
+ "Mlt::Properties::setup_wait_for(char const*)";
+@@ -414,6 +413,8 @@ MLTPP_0.8.8 {
+ "Mlt::Transition::Transition(Mlt::Transition&)";
+ "Mlt::Transition::Transition(mlt_transition_s*)";
+ };
++# "Mlt::Properties::set(char const*, int64_t)";
++ _ZN3Mlt10Properties3setEPKc[lx];
+
+ local: *;
+ };
+@@ -542,7 +543,7 @@ MLTPP_6.14.0 {
+ "Mlt::Transition::connect(Mlt::Service&, int, int)";
+ "Mlt::Producer::get_creation_time()";
+ };
+-# "Mlt::Producer::set_creation_time(long)";
++# "Mlt::Producer::set_creation_time(int64_t)";
+ _ZN3Mlt8Producer17set_creation_timeE[lx];
+ } MLTPP_6.10.0;
+
+--
+2.46.1
+
diff --git a/media-libs/mlt/mlt-7.28.0.ebuild b/media-libs/mlt/mlt-7.28.0.ebuild
index 19eadbe44a80..65b63e9a0624 100644
--- a/media-libs/mlt/mlt-7.28.0.ebuild
+++ b/media-libs/mlt/mlt-7.28.0.ebuild
@@ -89,6 +89,8 @@ PATCHES=(
"${FILESDIR}"/${PN}-6.10.0-swig-underlinking.patch
"${FILESDIR}"/${PN}-6.22.1-no_lua_bdepend.patch
"${FILESDIR}"/${PN}-7.0.1-cmake-symlink.patch
+ # in git master, https://github.com/mltframework/mlt/issues/1020
+ "${FILESDIR}"/${P}-fix-32bit.patch
)
pkg_setup() {
^ permalink raw reply related [flat|nested] 23+ messages in thread
end of thread, other threads:[~2024-10-21 17:35 UTC | newest]
Thread overview: 23+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-06-12 18:04 [gentoo-commits] repo/gentoo:master commit in: media-libs/mlt/, media-libs/mlt/files/ Sam James
-- strict thread matches above, loose matches on Subject: below --
2024-10-21 17:35 Andreas Sturmlechner
2024-01-07 14:33 Andreas Sturmlechner
2023-10-08 14:37 Andreas Sturmlechner
2022-12-15 19:26 Andreas Sturmlechner
2022-04-29 4:25 Sam James
2021-08-05 1:48 Sam James
2021-04-24 21:40 Andreas Sturmlechner
2020-10-05 11:22 Andreas Sturmlechner
2020-06-30 21:44 Andreas Sturmlechner
2020-06-30 21:44 Andreas Sturmlechner
2020-06-30 21:44 Andreas Sturmlechner
2020-03-19 11:46 Andreas Sturmlechner
2018-12-12 11:56 Andreas Sturmlechner
2018-08-09 22:20 Andreas Sturmlechner
2018-07-22 21:50 Andreas Sturmlechner
2018-07-22 21:50 Andreas Sturmlechner
2018-07-22 21:50 Andreas Sturmlechner
2017-11-15 23:45 Andreas Sturmlechner
2017-10-28 12:17 Andreas Sturmlechner
2016-05-11 18:06 Michael Palimaka
2016-02-15 15:42 Alexis Ballier
2015-08-21 12:53 Alexis Ballier
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox