summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexis Ballier <aballier@gentoo.org>2008-03-01 20:15:53 +0000
committerAlexis Ballier <aballier@gentoo.org>2008-03-01 20:15:53 +0000
commit3f447610bc78f936a8f111eb9681099124776331 (patch)
tree6cef24c569e14dcf7fca9a16bbd013ea1fbe9713 /media-video
parentalpha stable wrt #208255 (diff)
downloadhistorical-3f447610bc78f936a8f111eb9681099124776331.tar.gz
historical-3f447610bc78f936a8f111eb9681099124776331.tar.bz2
historical-3f447610bc78f936a8f111eb9681099124776331.zip
version bump, workaround cinelerra's inability to set the ratecontrol method by restoring the old default, thanks to Paul de Vries <phs.de.vries@gmail.com> for reporting in bug #211206
Package-Manager: portage-2.1.4.4
Diffstat (limited to 'media-video')
-rw-r--r--media-video/cinelerra-cvs/ChangeLog11
-rw-r--r--media-video/cinelerra-cvs/Manifest16
-rw-r--r--media-video/cinelerra-cvs/cinelerra-cvs-20080301.ebuild108
-rw-r--r--media-video/cinelerra-cvs/files/cinelerra-cvs-defaultx264tocqp.patch12
-rw-r--r--media-video/cinelerra-cvs/files/cinelerra-cvs-swscaler.patch159
5 files changed, 304 insertions, 2 deletions
diff --git a/media-video/cinelerra-cvs/ChangeLog b/media-video/cinelerra-cvs/ChangeLog
index e10c4d643bf2..8aa64ed31900 100644
--- a/media-video/cinelerra-cvs/ChangeLog
+++ b/media-video/cinelerra-cvs/ChangeLog
@@ -1,6 +1,15 @@
# ChangeLog for media-video/cinelerra-cvs
# Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-video/cinelerra-cvs/ChangeLog,v 1.39 2008/01/26 00:03:04 aballier Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-video/cinelerra-cvs/ChangeLog,v 1.40 2008/03/01 20:15:52 aballier Exp $
+
+*cinelerra-cvs-20080301 (01 Mar 2008)
+
+ 01 Mar 2008; Alexis Ballier <aballier@gentoo.org>
+ +files/cinelerra-cvs-defaultx264tocqp.patch,
+ +files/cinelerra-cvs-swscaler.patch, +cinelerra-cvs-20080301.ebuild:
+ version bump, workaround cinelerra's inability to set the ratecontrol method
+ by restoring the old default, thanks to Paul de Vries
+ <phs.de.vries@gmail.com> for reporting in bug #211206
26 Jan 2008; Alexis Ballier <aballier@gentoo.org>
cinelerra-cvs-20080115.ebuild:
diff --git a/media-video/cinelerra-cvs/Manifest b/media-video/cinelerra-cvs/Manifest
index adb23f614f5d..09aa60f2a070 100644
--- a/media-video/cinelerra-cvs/Manifest
+++ b/media-video/cinelerra-cvs/Manifest
@@ -1,6 +1,20 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA1
+
AUX cinelerra-compilewarnings.diff 1424 RMD160 0c801e2cfc778a76681b7a976e47d18f0d8bb75a SHA1 c052d67f9de343189a2e63cf763c48644b42328e SHA256 387ee6e80a0e1f2905d27ba204fb2bda3753f16aa45bc7a16b82d6d51ad462d5
AUX cinelerra-cvs-20080115-swscaler.patch 5012 RMD160 8ebc7520dc58b96fbe903964a05b5884b496ee90 SHA1 a0d15e358b5bdebc05194eb0966b98c25ec00d19 SHA256 acae0382cd23e8b4371151e5084aa0e0873f9e1c405f90fd7f2487fbb393ceb6
+AUX cinelerra-cvs-defaultx264tocqp.patch 405 RMD160 a89e2be0b15581d880a4cc086fcd9f233ee97391 SHA1 88810ed033a030f48e0264b48dd28526ad517698 SHA256 13082a69d87805cd743fc2fe7eae66e16a87eba763e17524da3b03a23d1483ac
+AUX cinelerra-cvs-swscaler.patch 5012 RMD160 8ebc7520dc58b96fbe903964a05b5884b496ee90 SHA1 a0d15e358b5bdebc05194eb0966b98c25ec00d19 SHA256 acae0382cd23e8b4371151e5084aa0e0873f9e1c405f90fd7f2487fbb393ceb6
DIST cinelerra-cvs-20080115.tar.bz2 31231763 RMD160 41bc0a88e12f91aabca278ea05dde04d6632a3e0 SHA1 70eff234992d61d9a049ef7f26a04faefddb7671 SHA256 3ada71b7632379e9aca2ff335a038f73e36965e97df23551f788cc307081957c
+DIST cinelerra-cvs-20080301.tar.bz2 31202811 RMD160 9d04e04854206006572ebebff888af21bde947d3 SHA1 efc530ac8b88ade1acc3437b5edebe6eb3dc0fc9 SHA256 bf5ed3594eff305333d808eb414e75714c7b783ef85e95a0db838fcfb6c0d149
EBUILD cinelerra-cvs-20080115.ebuild 2934 RMD160 903af6598e839203638a609bcec17fc1d8c358f3 SHA1 d039ca1617bcec8c58e436b1e8e10eafe07a6495 SHA256 e0060302299e338684c058a22cc9f780686c0936e8faed3e32fdcd589862cbe4
-MISC ChangeLog 6185 RMD160 c3206cb92814233cfb6ab408f07f356d6b50f545 SHA1 5ca521988fa979226d56f678b91df99b4cfe2006 SHA256 f0f034278dc5037067c5f1a8d7c30dd8def5b158edfe04dd9ce9138f0a3183f1
+EBUILD cinelerra-cvs-20080301.ebuild 2986 RMD160 ee91678162795a8a4af7d0e2e86c31384739011c SHA1 feda76e33c37ee5ae9051f891e8b5a6f83680079 SHA256 dc7fa00c3a799367432d212bd5d394979b7bb818ced0b9578d8c49ed8872cd13
+MISC ChangeLog 6586 RMD160 597300d47c96c8cc9ced1ae8a48bbb51134d3a7d SHA1 832899f9f4c4c186f16b1ffcd5a0b9b228997d36 SHA256 47e3206c61df5568a3259bfef9e0e5dd7d692867f9d9ed991ec2eac3bdd1bd7c
MISC metadata.xml 159 RMD160 21717801992314b5fc85dfeb6da77bf71fc54c7e SHA1 26b6ea95dc60c40d9b482830ce7e7c54233a7698 SHA256 38df217d3a650829cd34e6c74bd2710a01751ccd5511b5be296e3f48dd4d81cb
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2.0.7 (GNU/Linux)
+
+iD8DBQFHybmFvFcC4BYPU0oRAk3aAKC+PiNGnSO7eaYZbOPXt/zzsRTxLwCgulFC
+YgOEJKhGdMPso5iMl9Elqy4=
+=FWlU
+-----END PGP SIGNATURE-----
diff --git a/media-video/cinelerra-cvs/cinelerra-cvs-20080301.ebuild b/media-video/cinelerra-cvs/cinelerra-cvs-20080301.ebuild
new file mode 100644
index 000000000000..7e312ab00e12
--- /dev/null
+++ b/media-video/cinelerra-cvs/cinelerra-cvs-20080301.ebuild
@@ -0,0 +1,108 @@
+# Copyright 1999-2008 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-video/cinelerra-cvs/cinelerra-cvs-20080301.ebuild,v 1.1 2008/03/01 20:15:52 aballier Exp $
+
+WANT_AUTOMAKE=1.9
+WANT_AUTOCONF=2.5
+
+inherit toolchain-funcs eutils flag-o-matic autotools
+
+#filter-flags "-fPIC -fforce-addr"
+
+DESCRIPTION="Cinelerra - Professional Video Editor - Unofficial CVS-version"
+HOMEPAGE="http://cvs.cinelerra.org/"
+SRC_URI="mirror://gentoo/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="3dnow alsa esd mmx oss static truetype ieee1394 css altivec opengl"
+RDEPEND="media-libs/libpng
+ >=media-libs/libdv-1.0.0
+ media-libs/faad2
+ media-libs/faac
+ media-libs/a52dec
+ media-libs/libsndfile
+ media-libs/tiff
+ media-video/ffmpeg
+ media-sound/lame
+ >=sci-libs/fftw-3.0.1
+ >=media-libs/x264-svn-20060302
+ ieee1394? ( media-libs/libiec61883 >=sys-libs/libraw1394-1.2.0 \
+ >=sys-libs/libavc1394-0.5.0 )
+ media-video/mjpegtools
+ alsa? ( media-libs/alsa-lib )
+ esd? ( >=media-sound/esound-0.2.34 )
+ truetype? ( >=media-libs/freetype-2.1.10 )
+ opengl? ( virtual/opengl )
+ >=media-libs/openexr-1.2.2
+ >=media-libs/libvorbis-1.1.0
+ >=media-libs/libogg-1.1
+ >=media-libs/libtheora-1.0_alpha4-r1
+ x11-libs/libX11
+ x11-libs/libXv
+ x11-libs/libXxf86vm
+ x11-libs/libXext
+ x11-libs/libXvMC
+ x11-libs/libXft"
+
+DEPEND="${RDEPEND}
+ dev-util/pkgconfig
+ x86? ( dev-lang/nasm )"
+
+S="${WORKDIR}/${PN}"
+
+pkg_setup() {
+ if [[ "$(gcc-major-version)" -lt "4" ]]; then
+ eerror "You need to have gcc 4 or better"
+ eerror "Please follow : http://www.gentoo.org/doc/en/gcc-upgrading.xml"
+ eerror "And have a look at bug #128659"
+ die "You must use gcc 4 or better."
+ fi
+}
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}/${PN}-swscaler.patch"
+ epatch "${FILESDIR}/cinelerra-compilewarnings.diff"
+ epatch "${FILESDIR}/${PN}-defaultx264tocqp.patch"
+ AT_M4DIR="m4" eautoreconf
+}
+
+src_compile() {
+ econf \
+ `use_enable static` \
+ `use_enable alsa` \
+ `use_enable esd` \
+ `use_enable oss` \
+ `use_enable mmx` \
+ `use_enable 3dnow` \
+ --with-plugindir=/usr/$(get_libdir)/cinelerra \
+ `use_enable truetype freetype2` \
+ `use_enable ieee1394 firewire` \
+ `use_enable css` \
+ `use_enable opengl` \
+ `use_enable altivec` \
+ --with-external-ffmpeg \
+ --with-buildinfo=cust/"Gentoo - SVN r1053" \
+ || die "configure failed"
+ emake || die "make failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die
+ dohtml -a png,html,texi,sdw -r doc/*
+ # workaround
+ rm -fR "${D}/usr/include"
+ mv "${D}/usr/bin/mpeg3cat" "${D}/usr/bin/mpeg3cat.hv"
+ mv "${D}/usr/bin/mpeg3dump" "${D}/usr/bin/mpeg3dump.hv"
+ mv "${D}/usr/bin/mpeg3toc" "${D}/usr/bin/mpeg3toc.hv"
+ ln -s /usr/bin/mpeg2enc "${D}/usr/$(get_libdir)/cinelerra/mpeg2enc.plugin"
+}
+
+pkg_postinst () {
+ elog "Please note that this is unofficial and somewhat experimental code."
+ elog "See cvs.cinelerra.org for a list of changes to the official cinelerra"
+ elog "release."
+}
diff --git a/media-video/cinelerra-cvs/files/cinelerra-cvs-defaultx264tocqp.patch b/media-video/cinelerra-cvs/files/cinelerra-cvs-defaultx264tocqp.patch
new file mode 100644
index 000000000000..88e98ebdb9ae
--- /dev/null
+++ b/media-video/cinelerra-cvs/files/cinelerra-cvs-defaultx264tocqp.patch
@@ -0,0 +1,12 @@
+Index: cinelerra-cvs/quicktime/qth264.c
+===================================================================
+--- cinelerra-cvs.orig/quicktime/qth264.c
++++ cinelerra-cvs/quicktime/qth264.c
+@@ -506,6 +506,7 @@ static quicktime_h264_codec_t* init_comm
+
+ codec = (quicktime_h264_codec_t*)codec_base->priv;
+ x264_param_default(&codec->param);
++ codec->param.rc.i_rc_method = X264_RC_CQP;
+
+
+ return codec;
diff --git a/media-video/cinelerra-cvs/files/cinelerra-cvs-swscaler.patch b/media-video/cinelerra-cvs/files/cinelerra-cvs-swscaler.patch
new file mode 100644
index 000000000000..255ce4dd9f2b
--- /dev/null
+++ b/media-video/cinelerra-cvs/files/cinelerra-cvs-swscaler.patch
@@ -0,0 +1,159 @@
+Index: cinelerra-cvs/cinelerra/ffmpeg.C
+===================================================================
+--- cinelerra-cvs.orig/cinelerra/ffmpeg.C
++++ cinelerra-cvs/cinelerra/ffmpeg.C
+@@ -140,6 +140,11 @@ int FFMPEG::convert_cmodel(VFrame *frame
+ PixelFormat pix_fmt_out =
+ color_model_to_pix_fmt(frame_out->get_color_model());
+
++#ifdef HAVE_SWSCALER
++ // We need a context for swscale
++ struct SwsContext *convert_ctx;
++#endif
++
+ // do conversion within libavcodec if possible
+ if (pix_fmt_in != PIX_FMT_NB && pix_fmt_out != PIX_FMT_NB) {
+ // set up a temporary pictures from frame_in and frame_out
+@@ -147,7 +152,9 @@ int FFMPEG::convert_cmodel(VFrame *frame
+ init_picture_from_frame(&picture_in, frame_in);
+ init_picture_from_frame(&picture_out, frame_out);
+
+- int result = img_convert(&picture_out,
++ int result;
++#ifndef HAVE_SWSCALER
++ result = img_convert(&picture_out,
+ pix_fmt_out,
+ &picture_in,
+ pix_fmt_in,
+@@ -156,6 +163,28 @@ int FFMPEG::convert_cmodel(VFrame *frame
+ if (result) {
+ printf("FFMPEG::convert_cmodel img_convert() failed\n");
+ }
++#else
++ convert_ctx = sws_getContext(frame_in->get_w(), frame_in->get_h(),pix_fmt_in,
++ frame_out->get_w(),frame_out->get_h(),pix_fmt_out,
++ SWS_BICUBIC, NULL, NULL, NULL);
++
++ if(convert_ctx == NULL){
++ printf("FFMPEG::convert_cmodel : swscale context initialization failed\n");
++ return 1;
++ }
++
++ result = sws_scale(convert_ctx,
++ picture_in.data, picture_in.linesize,
++ 0, 0,
++ picture_out.data, picture_out.linesize);
++
++
++ sws_freeContext(convert_ctx);
++
++ if(result){
++ printf("FFMPEG::convert_cmodel sws_scale() failed\n");
++ }
++#endif
+ return result;
+ }
+
+@@ -203,13 +232,19 @@ int FFMPEG::convert_cmodel(AVPicture *pi
+
+ // set up a temporary picture_out from frame_out
+ AVPicture picture_out;
++#ifdef HAVE_SWSCALER
++ // We need a context for swscale
++ struct SwsContext *convert_ctx;
++#endif
+ init_picture_from_frame(&picture_out, frame_out);
+ int cmodel_out = frame_out->get_color_model();
+ PixelFormat pix_fmt_out = color_model_to_pix_fmt(cmodel_out);
+
+ // do conversion within libavcodec if possible
+ if (pix_fmt_out != PIX_FMT_NB) {
+- int result = img_convert(&picture_out,
++ int result;
++#ifndef HAVE_SWSCALER
++ result = img_convert(&picture_out,
+ pix_fmt_out,
+ picture_in,
+ pix_fmt_in,
+@@ -218,6 +253,28 @@ int FFMPEG::convert_cmodel(AVPicture *pi
+ if (result) {
+ printf("FFMPEG::convert_cmodel img_convert() failed\n");
+ }
++#else
++ convert_ctx = sws_getContext(width_in, height_in,pix_fmt_in,
++ frame_out->get_w(),frame_out->get_h(),pix_fmt_out,
++ SWS_BICUBIC, NULL, NULL, NULL);
++
++ if(convert_ctx == NULL){
++ printf("FFMPEG::convert_cmodel : swscale context initialization failed\n");
++ return 1;
++ }
++
++ result = sws_scale(convert_ctx,
++ picture_in->data, picture_in->linesize,
++ 0, 0,
++ picture_out.data, picture_out.linesize);
++
++
++ sws_freeContext(convert_ctx);
++
++ if(result){
++ printf("FFMPEG::convert_cmodel sws_scale() failed\n");
++ }
++#endif
+ return result;
+ }
+
+Index: cinelerra-cvs/cinelerra/ffmpeg.h
+===================================================================
+--- cinelerra-cvs.orig/cinelerra/ffmpeg.h
++++ cinelerra-cvs/cinelerra/ffmpeg.h
+@@ -3,6 +3,9 @@
+
+ extern "C" {
+ #include <avcodec.h>
++#ifdef HAVE_SWSCALER
++#include <swscale.h>
++#endif
+ };
+
+ #include "asset.h"
+Index: cinelerra-cvs/configure.in
+===================================================================
+--- cinelerra-cvs.orig/configure.in
++++ cinelerra-cvs/configure.in
+@@ -341,10 +341,33 @@ AC_SUBST(CPU_CFLAGS)
+ ############ external ffmpeg
+ AC_ARG_WITH([external-ffmpeg], AC_HELP_STRING([--with-external-ffmpeg], [use external ffmpeg library]))
+
++AH_TEMPLATE(HAVE_SWSCALER, [Define to 1 if swscaler is available in ffmpeg.])
++
+ if test "x$with_external_ffmpeg" = "xyes"; then
+- PKG_CHECK_MODULES([FFMPEG], [libavcodec libpostproc])
++ PKG_CHECK_MODULES([FFMPEG_TEMP], [libavcodec libpostproc])
+ FFMPEG_FOLDER=""
+ FFMPEG_EXTERNALTEXT="External ffmpeg"
++
++ dnl --------------------------------------------------------------
++ dnl check if libavcodec contains img_convert
++ dnl that means that libswscale is compiled in
++
++ AC_MSG_CHECKING(for ffmpeg swscale support)
++ saved_LIBS="$LIBS"
++ LIBS="$saved_LIBS $FFMPEG_TEMP_LIBS"
++ AC_TRY_LINK([#include <ffmpeg/avcodec.h>],
++ [img_convert(0, 0, 0,0,0,0)],
++ enable_ffmpeg_swscale=no,enable_ffmpeg_swscale=yes)
++ LIBS="$saved_LIBS"
++ AC_MSG_RESULT($enable_ffmpeg_swscale)
++
++ if test x"$enable_ffmpeg_swscale" == xyes; then
++ AC_DEFINE(HAVE_SWSCALER)
++ PKG_CHECK_MODULES([FFMPEG], [libavcodec libpostproc libswscale])
++ else
++ PKG_CHECK_MODULES([FFMPEG], [libavcodec libpostproc])
++ fi
++
+ else
+ FFMPEG_FOLDER=ffmpeg
+ FFMPEG_CFLAGS="-I\$(top_srcdir)/quicktime/ffmpeg/libavcodec"