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; + } + +