[arch-commits] Commit in cinelerra-cv/trunk (PKGBUILD cinelerra-cv-ffmpeg4.patch)

Antonio Rojas arojas at archlinux.org
Tue May 1 18:17:07 UTC 2018


    Date: Tuesday, May 1, 2018 @ 18:17:07
  Author: arojas
Revision: 318600

ffmpeg 4.0 rebuild

Added:
  cinelerra-cv/trunk/cinelerra-cv-ffmpeg4.patch
Modified:
  cinelerra-cv/trunk/PKGBUILD

----------------------------+
 PKGBUILD                   |   10 +++--
 cinelerra-cv-ffmpeg4.patch |   82 +++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 89 insertions(+), 3 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2018-05-01 17:01:19 UTC (rev 318599)
+++ PKGBUILD	2018-05-01 18:17:07 UTC (rev 318600)
@@ -7,7 +7,7 @@
 _name=CinelerraCV
 pkgname=cinelerra-cv
 pkgver=2.3
-pkgrel=3
+pkgrel=4
 epoch=1
 pkgdesc="Professional video editing and compositing environment"
 arch=('x86_64')
@@ -23,7 +23,8 @@
         'ffmpeg2.0.patch'
         'gcc5fix.patch'
         'cinelerra-cv-ffmpeg3.patch'
-        'ffmpeg-link.patch')
+        'ffmpeg-link.patch'
+        'cinelerra-cv-ffmpeg4.patch')
 sha512sums=('908dc097af8507e3b60b4787e0350500b8ba8c4340bbbdbf3716e61d74074e5f0617500b94ed1d450e030f88f3821f948cfa37c247ec2c2571fd76974374868e'
             '0295d71dd4b17051288778f54c57babd4fbfab5be29b71c47caf2bbac614898a7c2c7cb6cb1d093e6237f929f4e765a2fbed363cc34a3481d628ccdda19fe83e'
             '0882e87b3d8bd99de6c08d61a2569dd4595a90066ee6f697fddedb9f863f4ba3bcfb2b986e7ffeef369151cebf326a128f322d86c3c84602f7b35252f91a9bdb'
@@ -30,7 +31,8 @@
             '5313820d0030c216710654cb4ba17d33478e7f1d644c668d64e74c0d580d04ba658e68302a85311b2d2792c05a943a546b620ec680847d0324d335b168ba69c7'
             'b81bc1c5794003486f0ca1f8e5172ed4b0d1b06d2b3c00d5fc665a00b921e128d83e321fd0c41f9508f9f3726908b1f3876b45d4ecc4a32e7ec5e95ede564495'
             'e7f7c4058e4ea5cd21ed9abcb8383828aef181474b373051a23cbf31e6a68ba728c392fda93c301fd299facfe13e398ad1ccb990fc9ab3a3e4f4fd6238fea905'
-            'bc3729d9a61b9734356162acdcf3c055b2a3fdb162686db9267da97a7e8b28f39637abd8524a6b2e286fbe99bd89d45e1df857048125286fbe6262e470ba6124')
+            'bc3729d9a61b9734356162acdcf3c055b2a3fdb162686db9267da97a7e8b28f39637abd8524a6b2e286fbe99bd89d45e1df857048125286fbe6262e470ba6124'
+            '39af2d3b1e1ce0faaef63db23bebc5466b7ac15a75da58c7119f443ec6c4b06ec9118cea21fa2d5ff98031b7399f24e0a5d2280ebd01dea534377f685e0492de')
 
 prepare() {
   mv -v "${_name}-${pkgver}" "${pkgname}-${pkgver}"
@@ -48,6 +50,8 @@
   # fix build with ffmpeg 3.0
   patch -p1 -i ../cinelerra-cv-ffmpeg3.patch
   patch -p0 -i ../ffmpeg-link.patch
+  # fix build with ffmpeg 4.0 (Gentoo)
+  patch -p1 -i ../cinelerra-cv-ffmpeg4.patch
   # gcc 4.6 workaround
   export CFLAGS+=" -Wwrite-strings -D__STDC_CONSTANT_MACROS"
   export CPPFLAGS="$CFLAGS"

Added: cinelerra-cv-ffmpeg4.patch
===================================================================
--- cinelerra-cv-ffmpeg4.patch	                        (rev 0)
+++ cinelerra-cv-ffmpeg4.patch	2018-05-01 18:17:07 UTC (rev 318600)
@@ -0,0 +1,82 @@
+Index: CinelerraCV-2.3/quicktime/mpeg4.c
+===================================================================
+--- CinelerraCV-2.3.orig/quicktime/mpeg4.c
++++ CinelerraCV-2.3/quicktime/mpeg4.c
+@@ -625,7 +625,6 @@ static int encode(quicktime_t *file, uns
+ 		else
+ // ffmpeg section
+ 		{
+-			static char *video_rc_eq="tex^qComp";
+ 			codec->encode_initialized[current_field] = 1;
+ 			if(!ffmpeg_initialized)
+ 			{
+@@ -650,7 +649,6 @@ static int encode(quicktime_t *file, uns
+ 			context->pix_fmt = AV_PIX_FMT_YUV420P;
+ 			context->bit_rate = codec->bitrate / codec->total_fields;
+ 			context->bit_rate_tolerance = codec->bitrate_tolerance;
+-			context->rc_eq = video_rc_eq;
+         	context->rc_max_rate = 0;
+         	context->rc_min_rate = 0;
+         	context->rc_buffer_size = 0;
+@@ -658,8 +656,6 @@ static int encode(quicktime_t *file, uns
+ 				(!codec->fix_bitrate ? codec->quantizer : 2);
+ 			context->qmax = 
+ 				(!codec->fix_bitrate ? codec->quantizer : 31);
+-			context->lmin = 2 * FF_QP2LAMBDA;
+-			context->lmax = 31 * FF_QP2LAMBDA;
+ 			context->mb_lmin = 2 * FF_QP2LAMBDA;
+ 			context->mb_lmax = 31 * FF_QP2LAMBDA;
+ 			context->max_qdiff = 3;
+@@ -680,8 +676,6 @@ static int encode(quicktime_t *file, uns
+ 			context->frame_skip_cmp = FF_CMP_DCTMAX;
+ 			context->ildct_cmp = FF_CMP_VSAD;
+ 			context->intra_dc_precision = 0;
+-        	context->intra_quant_bias = FF_DEFAULT_QUANT_BIAS;
+-        	context->inter_quant_bias = FF_DEFAULT_QUANT_BIAS;
+         	context->i_quant_factor = -0.8;
+         	context->i_quant_offset = 0.0;
+ 			context->mb_decision = FF_MB_DECISION_SIMPLE;
+@@ -689,17 +683,13 @@ static int encode(quicktime_t *file, uns
+ 			context->me_sub_cmp = FF_CMP_SAD;
+ 			context->me_cmp = FF_CMP_SAD;
+ 			context->me_pre_cmp = FF_CMP_SAD;
+-			context->me_method = ME_EPZS;
+ 			context->me_subpel_quality = 8;
+ 			context->me_penalty_compensation = 256;
+ 			context->me_range = 0;
+-			context->me_threshold = 0;
+-			context->mb_threshold = 0;
+ 			context->nsse_weight= 8;
+         	context->profile= FF_PROFILE_UNKNOWN;
+-			context->rc_buffer_aggressivity = 1.0;
+         	context->level= FF_LEVEL_UNKNOWN;
+-			context->flags |= CODEC_FLAG_AC_PRED;
++			context->flags |= AV_CODEC_FLAG_AC_PRED;
+ 
+ // All the forbidden settings can be extracted from libavcodec/mpegvideo.c of ffmpeg...
+  			
+@@ -709,7 +699,7 @@ static int encode(quicktime_t *file, uns
+ 			   codec->ffmpeg_id == AV_CODEC_ID_H263 ||
+ 			   codec->ffmpeg_id == AV_CODEC_ID_H263P ||
+ 			   codec->ffmpeg_id == AV_CODEC_ID_FLV1)
+-				context->flags |= CODEC_FLAG_4MV;
++				context->flags |= AV_CODEC_FLAG_4MV;
+ // Not compatible with Win
+ //			context->flags |= CODEC_FLAG_QPEL;
+ 
+@@ -723,12 +713,12 @@ static int encode(quicktime_t *file, uns
+ 			}
+ 
+ 			if(!codec->fix_bitrate)
+-				context->flags |= CODEC_FLAG_QSCALE;
++				context->flags |= AV_CODEC_FLAG_QSCALE;
+ 
+ 			if(codec->interlaced)
+ 			{
+-				context->flags |= CODEC_FLAG_INTERLACED_DCT;
+-				context->flags |= CODEC_FLAG_INTERLACED_ME;
++				context->flags |= AV_CODEC_FLAG_INTERLACED_DCT;
++				context->flags |= AV_CODEC_FLAG_INTERLACED_ME;
+ 			}
+ 
+ 



More information about the arch-commits mailing list