mirror of
https://github.com/Ponce/slackbuilds
synced 2024-11-16 19:50:19 +01:00
multimedia/cinelerra: Updated for version cv_2.2.
Signed-off-by: Matteo Bernardini <ponce@slackbuilds.org>
This commit is contained in:
parent
43c6222a6b
commit
cdd811af8e
5 changed files with 172 additions and 142 deletions
|
@ -1,126 +0,0 @@
|
|||
http://bugs.cinelerra.org/ticket/949
|
||||
https://bugs.gentoo.org/show_bug.cgi?id=361709
|
||||
|
||||
diff -Nru cinelerra.orig//cinelerra/channelpicker.C cinelerra/cinelerra/channelpicker.C
|
||||
--- cinelerra.orig//cinelerra/channelpicker.C 2010-11-24 18:18:03.000000000 -0500
|
||||
+++ cinelerra/cinelerra/channelpicker.C 2011-02-17 13:31:30.147880002 -0500
|
||||
@@ -39,7 +39,7 @@
|
||||
#include "recordgui.h"
|
||||
#include "recordmonitor.h"
|
||||
#include "theme.h"
|
||||
-#include "vdevicebuz.h"
|
||||
+//#include "vdevicebuz.h"
|
||||
#include "vdeviceprefs.h"
|
||||
#include "videodevice.h"
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
// printf("PrefsChannelPicker::PrefsChannelPicker 1\n");
|
||||
this->mwindow = mwindow;
|
||||
this->prefs = prefs;
|
||||
- VDeviceBUZ::get_inputs(&input_sources);
|
||||
+// VDeviceBUZ::get_inputs(&input_sources);
|
||||
}
|
||||
|
||||
PrefsChannelPicker::~PrefsChannelPicker()
|
||||
diff -Nru cinelerra.orig//cinelerra/Makefile.am cinelerra/cinelerra/Makefile.am
|
||||
--- cinelerra.orig//cinelerra/Makefile.am 2010-11-24 18:18:03.000000000 -0500
|
||||
+++ cinelerra/cinelerra/Makefile.am 2011-02-17 13:31:30.147880002 -0500
|
||||
@@ -305,10 +305,8 @@
|
||||
vattachmentpoint.C \
|
||||
vautomation.C \
|
||||
vdevicebase.C \
|
||||
- vdevicebuz.C \
|
||||
vdevicedvb.C \
|
||||
vdeviceprefs.C \
|
||||
- vdevicev4l.C \
|
||||
vdevicev4l2.C \
|
||||
vdevicev4l2jpeg.C \
|
||||
vdevicex11.C \
|
||||
diff -Nru cinelerra.orig//cinelerra/reversemake cinelerra/cinelerra/reversemake
|
||||
--- cinelerra.orig//cinelerra/reversemake 2010-11-24 18:18:03.000000000 -0500
|
||||
+++ cinelerra/cinelerra/reversemake 2011-02-17 13:31:30.151880002 -0500
|
||||
@@ -32,10 +32,8 @@
|
||||
make $OBJDIR/vedits.o
|
||||
make $OBJDIR/vedit.o
|
||||
make $OBJDIR/vdevicex11.o
|
||||
-make $OBJDIR/vdevicev4l.o
|
||||
make $OBJDIR/vdeviceprefs.o
|
||||
make $OBJDIR/vdevicelml.o
|
||||
-make $OBJDIR/vdevicebuz.o
|
||||
make $OBJDIR/vdevicebase.o
|
||||
make $OBJDIR/vdevice1394.o
|
||||
make $OBJDIR/vautomation.o
|
||||
diff -Nru cinelerra.orig//cinelerra/videodevice.C cinelerra/cinelerra/videodevice.C
|
||||
--- cinelerra.orig//cinelerra/videodevice.C 2010-11-24 18:18:03.000000000 -0500
|
||||
+++ cinelerra/cinelerra/videodevice.C 2011-02-17 13:41:53.239880001 -0500
|
||||
@@ -39,9 +39,9 @@
|
||||
#ifdef HAVE_FIREWIRE
|
||||
#include "vdevice1394.h"
|
||||
#endif
|
||||
-#include "vdevicebuz.h"
|
||||
+//#include "vdevicebuz.h"
|
||||
#include "vdevicedvb.h"
|
||||
-#include "vdevicev4l.h"
|
||||
+//#include "vdevicev4l.h"
|
||||
#include "vdevicev4l2.h"
|
||||
#include "vdevicev4l2jpeg.h"
|
||||
#include "vdevicex11.h"
|
||||
@@ -203,7 +203,6 @@
|
||||
result = input_base->open_input();
|
||||
break;
|
||||
|
||||
-
|
||||
#ifdef HAVE_VIDEO4LINUX2
|
||||
case VIDEO4LINUX2:
|
||||
new_device_base();
|
||||
@@ -250,8 +249,8 @@
|
||||
{
|
||||
switch(in_config->driver)
|
||||
{
|
||||
- case VIDEO4LINUX:
|
||||
- return input_base = new VDeviceV4L(this);
|
||||
+ //case VIDEO4LINUX:
|
||||
+ // return input_base = new VDeviceV4L(this);
|
||||
|
||||
#ifdef HAVE_VIDEO4LINUX2
|
||||
case VIDEO4LINUX2:
|
||||
@@ -264,8 +263,8 @@
|
||||
case SCREENCAPTURE:
|
||||
return input_base = new VDeviceX11(this, 0);
|
||||
|
||||
- case CAPTURE_BUZ:
|
||||
- return input_base = new VDeviceBUZ(this);
|
||||
+ //case CAPTURE_BUZ:
|
||||
+ // return input_base = new VDeviceBUZ(this);
|
||||
|
||||
#ifdef HAVE_FIREWIRE
|
||||
case CAPTURE_FIREWIRE:
|
||||
@@ -662,9 +661,9 @@
|
||||
//printf("VideoDevice::open_output 1 %d\n", out_config->driver);
|
||||
switch(out_config->driver)
|
||||
{
|
||||
- case PLAYBACK_BUZ:
|
||||
- output_base = new VDeviceBUZ(this);
|
||||
- break;
|
||||
+ //case PLAYBACK_BUZ:
|
||||
+ // output_base = new VDeviceBUZ(this);
|
||||
+ // break;
|
||||
case PLAYBACK_X11:
|
||||
case PLAYBACK_X11_XV:
|
||||
case PLAYBACK_X11_GL:
|
||||
diff -Nru cinelerra.orig//cinelerra/videodevice.h cinelerra/cinelerra/videodevice.h
|
||||
--- cinelerra.orig//cinelerra/videodevice.h 2010-11-24 18:18:03.000000000 -0500
|
||||
+++ cinelerra/cinelerra/videodevice.h 2011-02-17 13:31:30.167880002 -0500
|
||||
@@ -40,9 +40,9 @@
|
||||
#include "thread.h"
|
||||
#include "picture.inc"
|
||||
#include "vdevicebase.inc"
|
||||
-#include "vdevicebuz.inc"
|
||||
+//#include "vdevicebuz.inc"
|
||||
#include "vdevicelml.inc"
|
||||
-#include "vdevicev4l.inc"
|
||||
+//#include "vdevicev4l.inc"
|
||||
#include "vdevicex11.inc"
|
||||
#include "videoconfig.inc"
|
||||
#include "videowindow.inc"
|
||||
|
|
@ -23,7 +23,7 @@
|
|||
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
PRGNAM=cinelerra
|
||||
VERSION=${VERSION:-cv_2.1.5}
|
||||
VERSION=${VERSION:-cv_2.2}
|
||||
BUILD=${BUILD:-1}
|
||||
TAG=${TAG:-_SBo}
|
||||
|
||||
|
@ -66,7 +66,7 @@ rm -rf $PKG
|
|||
mkdir -p $TMP $PKG $OUTPUT
|
||||
cd $TMP
|
||||
rm -rf $PRGNAM
|
||||
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
|
||||
tar xvf $CWD/$PRGNAM-$VERSION.tar.?z*
|
||||
cd $PRGNAM
|
||||
chown -R root:root .
|
||||
find . \
|
||||
|
@ -75,13 +75,13 @@ find . \
|
|||
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
|
||||
-exec chmod 644 {} \;
|
||||
|
||||
# Patches (from gentoo repository) for drop v4l1 support and fix from upstream to build with ffmpeg trunk.
|
||||
# Patches (from gentoo repository)
|
||||
# http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/media-video/cinelerra/files/
|
||||
patch -p1 < $CWD/ffmpeg.patch
|
||||
patch -p1 < $CWD/cinelerra-v4l1_removal.patch
|
||||
for i in $CWD/patches/* ; do patch -p1 < $i ; done
|
||||
|
||||
./autogen.sh
|
||||
|
||||
LDFLAGS="-ldl" \
|
||||
CFLAGS="$SLKCFLAGS -D__STDC_CONSTANT_MACROS" \
|
||||
CXXFLAGS="$SLKCFLAGS -D__STDC_CONSTANT_MACROS" \
|
||||
./configure \
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
PRGNAM="cinelerra"
|
||||
VERSION="cv_2.1.5"
|
||||
VERSION="cv_2.2"
|
||||
HOMEPAGE="http://cinelerra.org/"
|
||||
DOWNLOAD="http://www.ginoepri.com/linux/cinelerra-cv_2.1.5.tar.gz"
|
||||
DOWNLOAD=""
|
||||
MD5SUM="e79452b6a6682005fa7b90248aebe32f"
|
||||
DOWNLOAD_x86_64=""
|
||||
MD5SUM_x86_64=""
|
||||
|
|
156
multimedia/cinelerra/patches/cinelerra-ffmpeg-0.11.patch
Normal file
156
multimedia/cinelerra/patches/cinelerra-ffmpeg-0.11.patch
Normal file
|
@ -0,0 +1,156 @@
|
|||
Let it build with ffmpeg-0.11
|
||||
|
||||
Index: cinelerra-20111223/cinelerra/ffmpeg.C
|
||||
===================================================================
|
||||
--- cinelerra-20111223.orig/cinelerra/ffmpeg.C
|
||||
+++ cinelerra-20111223/cinelerra/ffmpeg.C
|
||||
@@ -23,7 +23,6 @@ FFMPEG::FFMPEG(Asset *asset) {
|
||||
|
||||
int FFMPEG::init(char *codec_string) {
|
||||
|
||||
- avcodec_init();
|
||||
avcodec_register_all();
|
||||
|
||||
CodecID id = codec_id(codec_string);
|
||||
Index: cinelerra-20111223/cinelerra/fileac3.C
|
||||
===================================================================
|
||||
--- cinelerra-20111223.orig/cinelerra/fileac3.C
|
||||
+++ cinelerra-20111223/cinelerra/fileac3.C
|
||||
@@ -84,7 +84,6 @@ int FileAC3::open_file(int rd, int wr)
|
||||
|
||||
if(wr)
|
||||
{
|
||||
- avcodec_init();
|
||||
avcodec_register_all();
|
||||
codec = avcodec_find_encoder(CODEC_ID_AC3);
|
||||
if(!codec)
|
||||
Index: cinelerra-20111223/configure.in
|
||||
===================================================================
|
||||
--- cinelerra-20111223.orig/configure.in
|
||||
+++ cinelerra-20111223/configure.in
|
||||
@@ -338,7 +338,7 @@ AC_SUBST(CPU_CFLAGS)
|
||||
AC_ARG_WITH([external-ffmpeg], AC_HELP_STRING([--with-external-ffmpeg], [use external ffmpeg library]))
|
||||
|
||||
if test "x$with_external_ffmpeg" = "xyes"; then
|
||||
- PKG_CHECK_MODULES([FFMPEG_TEMP], [libavcodec libpostproc])
|
||||
+ PKG_CHECK_MODULES([FFMPEG_TEMP], [libavcodec libpostproc libavutil])
|
||||
FFMPEG_FOLDER=""
|
||||
FFMPEG_EXTERNALTEXT="External ffmpeg"
|
||||
|
||||
@@ -356,10 +356,10 @@ if test "x$with_external_ffmpeg" = "xyes
|
||||
AC_MSG_RESULT($enable_ffmpeg_swscale)
|
||||
if test x"$enable_ffmpeg_swscale" = xyes; then
|
||||
dnl AC_DEFINE(HAVE_SWSCALER)
|
||||
- PKG_CHECK_MODULES([FFMPEG], [libavcodec libpostproc libswscale])
|
||||
+ PKG_CHECK_MODULES([FFMPEG], [libavcodec libpostproc libswscale libavutil])
|
||||
FFMPEG_CFLAGS="$FFMPEG_CFLAGS -I/usr/include/libavcodec -I/usr/include/libswscale -DHAVE_SWSCALER"
|
||||
else
|
||||
- PKG_CHECK_MODULES([FFMPEG], [libavcodec libpostproc])
|
||||
+ PKG_CHECK_MODULES([FFMPEG], [libavcodec libpostproc libavutil])
|
||||
fi
|
||||
FFMPEG_EXTERNALTEXT="External ffmpeg"
|
||||
else
|
||||
Index: cinelerra-20111223/quicktime/mpeg4.c
|
||||
===================================================================
|
||||
--- cinelerra-20111223.orig/quicktime/mpeg4.c
|
||||
+++ cinelerra-20111223/quicktime/mpeg4.c
|
||||
@@ -8,6 +8,7 @@
|
||||
|
||||
|
||||
#include "libavcodec/avcodec.h"
|
||||
+#include "libavutil/dict.h"
|
||||
#include "colormodels.h"
|
||||
#include "funcprotos.h"
|
||||
#include "qtffmpeg.h"
|
||||
@@ -624,12 +625,12 @@ static int encode(quicktime_t *file, uns
|
||||
else
|
||||
// ffmpeg section
|
||||
{
|
||||
+ AVDictionary ** opts = NULL;
|
||||
static char *video_rc_eq="tex^qComp";
|
||||
codec->encode_initialized[current_field] = 1;
|
||||
if(!ffmpeg_initialized)
|
||||
{
|
||||
ffmpeg_initialized = 1;
|
||||
- avcodec_init();
|
||||
avcodec_register_all();
|
||||
}
|
||||
|
||||
@@ -673,8 +674,10 @@ static int encode(quicktime_t *file, uns
|
||||
context->b_quant_offset = 1.25;
|
||||
#if LIBAVCODEC_VERSION_INT < ((52<<16)+(0<<8)+0)
|
||||
context->error_resilience = FF_ER_CAREFUL;
|
||||
-#else
|
||||
+#elif LIBAVCODEC_VERSION_INT < ((54<<16)+(0<<8)+0)
|
||||
context->error_recognition = FF_ER_CAREFUL;
|
||||
+#else
|
||||
+ context->err_recognition |= AV_EF_CAREFUL;
|
||||
#endif
|
||||
context->error_concealment = 3;
|
||||
context->frame_skip_cmp = FF_CMP_DCTMAX;
|
||||
@@ -699,7 +702,7 @@ static int encode(quicktime_t *file, uns
|
||||
context->profile= FF_PROFILE_UNKNOWN;
|
||||
context->rc_buffer_aggressivity = 1.0;
|
||||
context->level= FF_LEVEL_UNKNOWN;
|
||||
- context->flags |= CODEC_FLAG_H263P_UMV;
|
||||
+ av_dict_set(opts, "umv", "1", 0);
|
||||
context->flags |= CODEC_FLAG_AC_PRED;
|
||||
|
||||
// All the forbidden settings can be extracted from libavcodec/mpegvideo.c of ffmpeg...
|
||||
@@ -717,10 +720,8 @@ static int encode(quicktime_t *file, uns
|
||||
(codec->ffmpeg_id == CODEC_ID_MPEG4 ||
|
||||
codec->ffmpeg_id == CODEC_ID_MPEG1VIDEO ||
|
||||
codec->ffmpeg_id == CODEC_ID_MPEG2VIDEO ||
|
||||
- codec->ffmpeg_id == CODEC_ID_H263P ||
|
||||
- codec->ffmpeg_id == CODEC_FLAG_H263P_SLICE_STRUCT))
|
||||
+ codec->ffmpeg_id == CODEC_ID_H263P ))
|
||||
{
|
||||
- avcodec_thread_init(context, file->cpus);
|
||||
context->thread_count = file->cpus;
|
||||
}
|
||||
|
||||
@@ -740,7 +741,7 @@ static int encode(quicktime_t *file, uns
|
||||
* codec->fix_bitrate,
|
||||
* codec->quantizer);
|
||||
*/
|
||||
- avcodec_open(context, codec->encoder[current_field]);
|
||||
+ avcodec_open2(context, codec->encoder[current_field], opts);
|
||||
|
||||
avcodec_get_frame_defaults(&codec->picture[current_field]);
|
||||
|
||||
Index: cinelerra-20111223/quicktime/qtffmpeg.c
|
||||
===================================================================
|
||||
--- cinelerra-20111223.orig/quicktime/qtffmpeg.c
|
||||
+++ cinelerra-20111223/quicktime/qtffmpeg.c
|
||||
@@ -54,7 +54,6 @@ quicktime_ffmpeg_t* quicktime_new_ffmpeg
|
||||
if(!ffmpeg_initialized)
|
||||
{
|
||||
ffmpeg_initialized = 1;
|
||||
- avcodec_init();
|
||||
avcodec_register_all();
|
||||
}
|
||||
|
||||
@@ -90,10 +89,8 @@ quicktime_ffmpeg_t* quicktime_new_ffmpeg
|
||||
(ffmpeg_id == CODEC_ID_MPEG4 ||
|
||||
ffmpeg_id == CODEC_ID_MPEG1VIDEO ||
|
||||
ffmpeg_id == CODEC_ID_MPEG2VIDEO ||
|
||||
- ffmpeg_id == CODEC_ID_H263P ||
|
||||
- ffmpeg_id == CODEC_FLAG_H263P_SLICE_STRUCT))
|
||||
+ ffmpeg_id == CODEC_ID_H263P ))
|
||||
{
|
||||
- avcodec_thread_init(context, cpus);
|
||||
context->thread_count = cpus;
|
||||
}
|
||||
if(avcodec_open(context,
|
||||
Index: cinelerra-20111223/quicktime/wma.c
|
||||
===================================================================
|
||||
--- cinelerra-20111223.orig/quicktime/wma.c
|
||||
+++ cinelerra-20111223/quicktime/wma.c
|
||||
@@ -67,7 +67,6 @@ static int init_decode(quicktime_audio_m
|
||||
if(!ffmpeg_initialized)
|
||||
{
|
||||
ffmpeg_initialized = 1;
|
||||
- avcodec_init();
|
||||
avcodec_register_all();
|
||||
}
|
||||
|
|
@ -1,9 +1,9 @@
|
|||
Fix build with ffmpeg/libav trunk / 0.7
|
||||
|
||||
Index: cinelerra/cinelerra/ffmpeg.C
|
||||
Index: cinelerra-20101104/cinelerra/ffmpeg.C
|
||||
===================================================================
|
||||
--- cinelerra.orig/cinelerra/ffmpeg.C
|
||||
+++ cinelerra/cinelerra/ffmpeg.C
|
||||
--- cinelerra-20101104.orig/cinelerra/ffmpeg.C
|
||||
+++ cinelerra-20101104/cinelerra/ffmpeg.C
|
||||
@@ -364,12 +364,15 @@ int FFMPEG::decode(uint8_t *data, long d
|
||||
|
||||
// NOTE: frame must already have data space allocated
|
||||
|
@ -23,10 +23,10 @@ Index: cinelerra/cinelerra/ffmpeg.C
|
|||
|
||||
if (length < 0) {
|
||||
printf("FFMPEG::decode error decoding frame\n");
|
||||
Index: cinelerra/quicktime/qtffmpeg.c
|
||||
Index: cinelerra-20101104/quicktime/qtffmpeg.c
|
||||
===================================================================
|
||||
--- cinelerra.orig/quicktime/qtffmpeg.c
|
||||
+++ cinelerra/quicktime/qtffmpeg.c
|
||||
--- cinelerra-20101104.orig/quicktime/qtffmpeg.c
|
||||
+++ cinelerra-20101104/quicktime/qtffmpeg.c
|
||||
@@ -181,6 +181,7 @@ static int decode_wrapper(quicktime_t *f
|
||||
|
||||
if(!result)
|
||||
|
@ -52,10 +52,10 @@ Index: cinelerra/quicktime/qtffmpeg.c
|
|||
|
||||
|
||||
|
||||
Index: cinelerra/quicktime/wma.c
|
||||
Index: cinelerra-20101104/quicktime/wma.c
|
||||
===================================================================
|
||||
--- cinelerra.orig/quicktime/wma.c
|
||||
+++ cinelerra/quicktime/wma.c
|
||||
--- cinelerra-20101104.orig/quicktime/wma.c
|
||||
+++ cinelerra-20101104/quicktime/wma.c
|
||||
@@ -195,11 +195,14 @@ printf("decode 2 %x %llx %llx\n", chunk_
|
||||
chunk_size);
|
||||
#else
|
Loading…
Reference in a new issue