wok-next rev 20092

Up opal (3.10.10)
author Pascal Bellard <pascal.bellard@slitaz.org>
date Sat Oct 28 12:53:30 2017 +0200 (2017-10-28)
parents 23a611e4163c
children 6ad45360af55
files opal-dev/receipt opal/receipt opal/stuff/patches/opal-3.10.10-ffmpeg2-1.patch opal/stuff/patches/series
line diff
     1.1 --- a/opal-dev/receipt	Sat Oct 28 12:28:24 2017 +0200
     1.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.3 @@ -1,18 +0,0 @@
     1.4 -# SliTaz package receipt.
     1.5 -
     1.6 -PACKAGE="opal-dev"
     1.7 -VERSION="3.6.6"
     1.8 -CATEGORY="development"
     1.9 -SHORT_DESC="Open Phone Abstraction library devel files."
    1.10 -MAINTAINER="pascal.bellard@slitaz.org"
    1.11 -LICENSE="MPL"
    1.12 -WANTED="opal"
    1.13 -WEB_SITE="http://www.ekiga.org/"
    1.14 -
    1.15 -# Rules to gen a SliTaz package suitable for Tazpkg.
    1.16 -genpkg_rules()
    1.17 -{
    1.18 -	mkdir -p $fs/usr/lib
    1.19 -	cp -a $install/usr/include $fs/usr
    1.20 -	cp $install/usr/lib/*.a $fs/usr/lib
    1.21 -}
     2.1 --- a/opal/receipt	Sat Oct 28 12:28:24 2017 +0200
     2.2 +++ b/opal/receipt	Sat Oct 28 12:53:30 2017 +0200
     2.3 @@ -1,35 +1,48 @@
     2.4 -# SliTaz package receipt.
     2.5 +# SliTaz package receipt v2.
     2.6  
     2.7  PACKAGE="opal"
     2.8 -VERSION="3.6.6"
     2.9 +VERSION="3.10.10"
    2.10  CATEGORY="network"
    2.11  SHORT_DESC="Open Phone Abstraction library."
    2.12  MAINTAINER="pascal.bellard@slitaz.org"
    2.13  LICENSE="MPL"
    2.14 -TARBALL="$PACKAGE-$VERSION.tar.bz2"
    2.15 +TARBALL="$PACKAGE-$VERSION.tar.xz"
    2.16  WEB_SITE="http://www.ekiga.org/"
    2.17  WGET_URL="http://ftp.gnome.org/pub/gnome/sources/$PACKAGE/${VERSION%.*}/$TARBALL"
    2.18  TAGS="telephony"
    2.19  
    2.20 -DEPENDS="cyrus-sasl expat jpeg libsdl libogg libtheora libunixODBC \
    2.21 -openssl ptlib tiff zlib"
    2.22  BUILD_DEPENDS="ptlib ptlib-dev openssl-dev"
    2.23 +SPLIT="opal opal-dev"
    2.24  
    2.25  # Rules to configure and make the package.
    2.26  compile_rules()
    2.27  {
    2.28 -	cd $src
    2.29 +	sed -i 's/CODEC_ID/AV_&/;s/PIX_FMT_/AV_&/' plugins/video/*/*.cxx
    2.30 +	sed -i '/<< mime.PrintContents/ s/mime/(const std::string\&)&/' \
    2.31 +		src/im/msrp.cxx
    2.32  	./configure --prefix=/usr --bindir=/bin \
    2.33  	--libexecdir=/usr/bin --mandir=/usr/share/man \
    2.34  	$CONFIGURE_ARGS &&
    2.35 -	make $MAKEFLAGS &&
    2.36 +	CXXFLAGS=-Wno-deprecated-declarations make $MAKEFLAGS &&
    2.37  	make DESTDIR=$DESTDIR install
    2.38  }
    2.39  
    2.40  # Rules to gen a SliTaz package suitable for Tazpkg.
    2.41  genpkg_rules()
    2.42  {
    2.43 -	mkdir -p $fs/usr
    2.44 -	cp -a $install/usr/lib $fs/usr
    2.45 -	rm -f $fs/usr/lib/*.a
    2.46 +	case $PACKAGE in
    2.47 +	opal)
    2.48 +		DEPENDS="cyrus-sasl expat jpeg libsdl libogg libtheora \
    2.49 +			libunixODBC openssl ptlib tiff zlib"
    2.50 +		mkdir -p $fs/usr
    2.51 +		cp -a $install/usr/lib $fs/usr
    2.52 +		rm -f $fs/usr/lib/*.a
    2.53 +		;;
    2.54 +	opal-dev)
    2.55 +		CAT="development|Open Phone Abstraction library devel files."
    2.56 +		mkdir -p $fs/usr/lib
    2.57 +		cp -a $install/usr/include $fs/usr
    2.58 +		cp $install/usr/lib/*.a $fs/usr/lib
    2.59 +		;;
    2.60 +	esac
    2.61  }
     3.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     3.2 +++ b/opal/stuff/patches/opal-3.10.10-ffmpeg2-1.patch	Sat Oct 28 12:53:30 2017 +0200
     3.3 @@ -0,0 +1,396 @@
     3.4 +Submitted By:            Igor Živković <contact@igor-zivkovic.from.hr>
     3.5 +Date:                    2013-10-08
     3.6 +Initial Package Version: 3.10.10
     3.7 +Upstream Status:         Unknown
     3.8 +Origin:                  Gentoo
     3.9 +Description:             Fixes building against FFmpeg version >= 2.0.0
    3.10 +
    3.11 +diff -Naur opal-3.10.10.orig/plugins/video/common/dyna.cxx opal-3.10.10/plugins/video/common/dyna.cxx
    3.12 +--- opal-3.10.10.orig/plugins/video/common/dyna.cxx	2013-02-20 03:18:05.000000000 +0100
    3.13 ++++ opal-3.10.10/plugins/video/common/dyna.cxx	2013-10-08 12:57:25.058873513 +0200
    3.14 +@@ -210,7 +210,7 @@
    3.15 + #endif
    3.16 + 
    3.17 + 
    3.18 +-FFMPEGLibrary::FFMPEGLibrary(CodecID codec)
    3.19 ++FFMPEGLibrary::FFMPEGLibrary(AVCodecID codec)
    3.20 + {
    3.21 +   m_codec = codec;
    3.22 +   if (m_codec==CODEC_ID_H264)
    3.23 +@@ -348,12 +348,12 @@
    3.24 +   return true;
    3.25 + }
    3.26 + 
    3.27 +-AVCodec *FFMPEGLibrary::AvcodecFindEncoder(enum CodecID id)
    3.28 ++AVCodec *FFMPEGLibrary::AvcodecFindEncoder(enum AVCodecID id)
    3.29 + {
    3.30 +   return Favcodec_find_encoder(id);
    3.31 + }
    3.32 + 
    3.33 +-AVCodec *FFMPEGLibrary::AvcodecFindDecoder(enum CodecID id)
    3.34 ++AVCodec *FFMPEGLibrary::AvcodecFindDecoder(enum AVCodecID id)
    3.35 + {
    3.36 +   WaitAndSignal m(processLock);
    3.37 + 
    3.38 +diff -Naur opal-3.10.10.orig/plugins/video/common/dyna.h opal-3.10.10/plugins/video/common/dyna.h
    3.39 +--- opal-3.10.10.orig/plugins/video/common/dyna.h	2013-02-20 03:18:05.000000000 +0100
    3.40 ++++ opal-3.10.10/plugins/video/common/dyna.h	2013-10-08 12:57:25.058873513 +0200
    3.41 +@@ -88,13 +88,13 @@
    3.42 + class FFMPEGLibrary 
    3.43 + {
    3.44 +   public:
    3.45 +-    FFMPEGLibrary(CodecID codec);
    3.46 ++    FFMPEGLibrary(AVCodecID codec);
    3.47 +     ~FFMPEGLibrary();
    3.48 + 
    3.49 +     bool Load();
    3.50 + 
    3.51 +-    AVCodec *AvcodecFindEncoder(enum CodecID id);
    3.52 +-    AVCodec *AvcodecFindDecoder(enum CodecID id);
    3.53 ++    AVCodec *AvcodecFindEncoder(enum AVCodecID id);
    3.54 ++    AVCodec *AvcodecFindDecoder(enum AVCodecID id);
    3.55 +     AVCodecContext *AvcodecAllocContext(void);
    3.56 +     AVFrame *AvcodecAllocFrame(void);
    3.57 +     int AvcodecOpen(AVCodecContext *ctx, AVCodec *codec);
    3.58 +@@ -117,15 +117,15 @@
    3.59 +     DynaLink m_libAvcodec;
    3.60 +     DynaLink m_libAvutil;
    3.61 + 
    3.62 +-    CodecID m_codec;
    3.63 ++    AVCodecID m_codec;
    3.64 +     char m_codecString[32];
    3.65 + 
    3.66 +     void (*Favcodec_init)(void);
    3.67 +     void (*Fav_init_packet)(AVPacket *pkt);
    3.68 + 
    3.69 +     void (*Favcodec_register_all)(void);
    3.70 +-    AVCodec *(*Favcodec_find_encoder)(enum CodecID id);
    3.71 +-    AVCodec *(*Favcodec_find_decoder)(enum CodecID id);
    3.72 ++    AVCodec *(*Favcodec_find_encoder)(enum AVCodecID id);
    3.73 ++    AVCodec *(*Favcodec_find_decoder)(enum AVCodecID id);
    3.74 +     AVCodecContext *(*Favcodec_alloc_context)(void);
    3.75 +     AVFrame *(*Favcodec_alloc_frame)(void);
    3.76 +     int (*Favcodec_open)(AVCodecContext *ctx, AVCodec *codec);
    3.77 +diff -Naur opal-3.10.10.orig/plugins/video/common/ffmpeg/libavcodec/avcodec.h opal-3.10.10/plugins/video/common/ffmpeg/libavcodec/avcodec.h
    3.78 +--- opal-3.10.10.orig/plugins/video/common/ffmpeg/libavcodec/avcodec.h	2013-02-20 03:18:04.000000000 +0100
    3.79 ++++ opal-3.10.10/plugins/video/common/ffmpeg/libavcodec/avcodec.h	2013-10-08 12:57:25.060873488 +0200
    3.80 +@@ -101,7 +101,7 @@
    3.81 +  * 1. no value of a existing codec ID changes (that would break ABI),
    3.82 +  * 2. it is as close as possible to similar codecs.
    3.83 +  */
    3.84 +-enum CodecID {
    3.85 ++enum AVCodecID {
    3.86 +     CODEC_ID_NONE,
    3.87 + 
    3.88 +     /* video codecs */
    3.89 +@@ -1390,7 +1390,7 @@
    3.90 + 
    3.91 +     char codec_name[32];
    3.92 +     enum AVMediaType codec_type; /* see AVMEDIA_TYPE_xxx */
    3.93 +-    enum CodecID codec_id; /* see CODEC_ID_xxx */
    3.94 ++    enum AVCodecID codec_id; /* see CODEC_ID_xxx */
    3.95 + 
    3.96 +     /**
    3.97 +      * fourcc (LSB first, so "ABCD" -> ('D'<<24) + ('C'<<16) + ('B'<<8) + 'A').
    3.98 +@@ -2843,7 +2843,7 @@
    3.99 +      */
   3.100 +     const char *name;
   3.101 +     enum AVMediaType type;
   3.102 +-    enum CodecID id;
   3.103 ++    enum AVCodecID id;
   3.104 +     int priv_data_size;
   3.105 +     int (*init)(AVCodecContext *);
   3.106 +     int (*encode)(AVCodecContext *, uint8_t *buf, int buf_size, void *data);
   3.107 +@@ -2898,7 +2898,7 @@
   3.108 +      *
   3.109 +      * See CODEC_ID_xxx
   3.110 +      */
   3.111 +-    enum CodecID id;
   3.112 ++    enum AVCodecID id;
   3.113 + 
   3.114 +     /**
   3.115 +      * Supported pixel format.
   3.116 +@@ -3402,10 +3402,10 @@
   3.117 + /**
   3.118 +  * Find a registered encoder with a matching codec ID.
   3.119 +  *
   3.120 +- * @param id CodecID of the requested encoder
   3.121 ++ * @param id AVCodecID of the requested encoder
   3.122 +  * @return An encoder if one was found, NULL otherwise.
   3.123 +  */
   3.124 +-AVCodec *avcodec_find_encoder(enum CodecID id);
   3.125 ++AVCodec *avcodec_find_encoder(enum AVCodecID id);
   3.126 + 
   3.127 + /**
   3.128 +  * Find a registered encoder with the specified name.
   3.129 +@@ -3418,10 +3418,10 @@
   3.130 + /**
   3.131 +  * Find a registered decoder with a matching codec ID.
   3.132 +  *
   3.133 +- * @param id CodecID of the requested decoder
   3.134 ++ * @param id AVCodecID of the requested decoder
   3.135 +  * @return A decoder if one was found, NULL otherwise.
   3.136 +  */
   3.137 +-AVCodec *avcodec_find_decoder(enum CodecID id);
   3.138 ++AVCodec *avcodec_find_decoder(enum AVCodecID id);
   3.139 + 
   3.140 + /**
   3.141 +  * Find a registered decoder with the specified name.
   3.142 +@@ -3822,7 +3822,7 @@
   3.143 +  * @param[in] codec_id the codec
   3.144 +  * @return Number of bits per sample or zero if unknown for the given codec.
   3.145 +  */
   3.146 +-int av_get_bits_per_sample(enum CodecID codec_id);
   3.147 ++int av_get_bits_per_sample(enum AVCodecID codec_id);
   3.148 + 
   3.149 + #if FF_API_OLD_SAMPLE_FMT
   3.150 + /**
   3.151 +diff -Naur opal-3.10.10.orig/plugins/video/H.263-1998/h263-1998.cxx opal-3.10.10/plugins/video/H.263-1998/h263-1998.cxx
   3.152 +--- opal-3.10.10.orig/plugins/video/H.263-1998/h263-1998.cxx	2013-02-20 03:18:03.000000000 +0100
   3.153 ++++ opal-3.10.10/plugins/video/H.263-1998/h263-1998.cxx	2013-10-08 12:57:25.061873475 +0200
   3.154 +@@ -48,6 +48,10 @@
   3.155 + #endif
   3.156 + 
   3.157 + #include "h263-1998.h"
   3.158 ++extern "C"
   3.159 ++{
   3.160 ++#include <libavutil/opt.h>
   3.161 ++}
   3.162 + #include <limits>
   3.163 + #include <iomanip>
   3.164 + #include <stdio.h>
   3.165 +@@ -203,7 +207,7 @@
   3.166 +   PTRACE(4, m_prefix, "Encoder closed");
   3.167 + }
   3.168 + 
   3.169 +-bool H263_Base_EncoderContext::Init(CodecID codecId)
   3.170 ++bool H263_Base_EncoderContext::Init(AVCodecID codecId)
   3.171 + {
   3.172 +   PTRACE(5, m_prefix, "Opening encoder");
   3.173 + 
   3.174 +@@ -317,9 +321,9 @@
   3.175 +     // Level 2+ 
   3.176 +     // works with eyeBeam, signaled via  non-standard "D"
   3.177 +     if (atoi(value) == 1)
   3.178 +-      m_context->flags |= CODEC_FLAG_H263P_UMV; 
   3.179 ++      av_opt_set_int(m_context->priv_data, "umv", 1, 0);
   3.180 +     else
   3.181 +-      m_context->flags &= ~CODEC_FLAG_H263P_UMV; 
   3.182 ++      av_opt_set_int(m_context->priv_data, "umv", 0, 0);
   3.183 +     return;
   3.184 +   }
   3.185 + 
   3.186 +@@ -328,9 +332,9 @@
   3.187 +     // Annex F: Advanced Prediction Mode
   3.188 +     // does not work with eyeBeam
   3.189 +     if (atoi(value) == 1)
   3.190 +-      m_context->flags |= CODEC_FLAG_OBMC; 
   3.191 ++      av_opt_set_int(m_context->priv_data, "obmc", 1, 0);
   3.192 +     else
   3.193 +-      m_context->flags &= ~CODEC_FLAG_OBMC; 
   3.194 ++      av_opt_set_int(m_context->priv_data, "obmc", 0, 0);
   3.195 +     return;
   3.196 +   }
   3.197 + #endif
   3.198 +@@ -360,9 +364,9 @@
   3.199 +     // Annex K: Slice Structure
   3.200 +     // does not work with eyeBeam
   3.201 +     if (atoi(value) != 0)
   3.202 +-      m_context->flags |= CODEC_FLAG_H263P_SLICE_STRUCT; 
   3.203 ++      av_opt_set_int(m_context->priv_data, "structured_slices", 1, 0);
   3.204 +     else
   3.205 +-      m_context->flags &= ~CODEC_FLAG_H263P_SLICE_STRUCT; 
   3.206 ++      av_opt_set_int(m_context->priv_data, "structured_slices", 0, 0);
   3.207 +     return;
   3.208 +   }
   3.209 + 
   3.210 +@@ -370,9 +374,9 @@
   3.211 +     // Annex S: Alternative INTER VLC mode
   3.212 +     // does not work with eyeBeam
   3.213 +     if (atoi(value) == 1)
   3.214 +-      m_context->flags |= CODEC_FLAG_H263P_AIV; 
   3.215 ++      av_opt_set_int(m_context->priv_data, "aiv", 1, 0);
   3.216 +     else
   3.217 +-      m_context->flags &= ~CODEC_FLAG_H263P_AIV; 
   3.218 ++      av_opt_set_int(m_context->priv_data, "aiv", 0, 0);
   3.219 +     return;
   3.220 +   }
   3.221 + 
   3.222 +@@ -450,15 +454,6 @@
   3.223 +   PTRACE(5, m_prefix, "qmax set to " << m_context->qmax);
   3.224 +   PTRACE(5, m_prefix, "payload size set to " << m_context->rtp_payload_size);
   3.225 + 
   3.226 +-  #define CODEC_TRACER_FLAG(tracer, flag) \
   3.227 +-    PTRACE(4, m_prefix, #flag " is " << ((m_context->flags & flag) ? "enabled" : "disabled"));
   3.228 +-  CODEC_TRACER_FLAG(tracer, CODEC_FLAG_H263P_UMV);
   3.229 +-  CODEC_TRACER_FLAG(tracer, CODEC_FLAG_OBMC);
   3.230 +-  CODEC_TRACER_FLAG(tracer, CODEC_FLAG_AC_PRED);
   3.231 +-  CODEC_TRACER_FLAG(tracer, CODEC_FLAG_H263P_SLICE_STRUCT)
   3.232 +-  CODEC_TRACER_FLAG(tracer, CODEC_FLAG_LOOP_FILTER);
   3.233 +-  CODEC_TRACER_FLAG(tracer, CODEC_FLAG_H263P_AIV);
   3.234 +-
   3.235 +   return FFMPEGLibraryInstance.AvcodecOpen(m_context, m_codec) == 0;
   3.236 + }
   3.237 + 
   3.238 +@@ -521,7 +516,7 @@
   3.239 + 
   3.240 +     // Need to copy to local buffer to guarantee 16 byte alignment
   3.241 +     memcpy(m_inputFrame->data[0], OPAL_VIDEO_FRAME_DATA_PTR(header), header->width*header->height*3/2);
   3.242 +-    m_inputFrame->pict_type = (flags & PluginCodec_CoderForceIFrame) ? FF_I_TYPE : AV_PICTURE_TYPE_NONE;
   3.243 ++    m_inputFrame->pict_type = (flags & PluginCodec_CoderForceIFrame) ? AV_PICTURE_TYPE_I : AV_PICTURE_TYPE_NONE;
   3.244 + 
   3.245 +     /*
   3.246 +     m_inputFrame->pts = (int64_t)srcRTP.GetTimestamp()*m_context->time_base.den/m_context->time_base.num/VIDEO_CLOCKRATE;
   3.247 +@@ -603,13 +598,13 @@
   3.248 +   m_context->rtp_callback = &H263_RFC2190_EncoderContext::RTPCallBack;
   3.249 +   m_context->opaque = this; // used to separate out packets from different encode threads
   3.250 + 
   3.251 +-  m_context->flags &= ~CODEC_FLAG_H263P_UMV;
   3.252 ++  av_opt_set_int(m_context->priv_data, "umv", 0, 0);
   3.253 +   m_context->flags &= ~CODEC_FLAG_4MV;
   3.254 + #if LIBAVCODEC_RTP_MODE
   3.255 +   m_context->flags &= ~CODEC_FLAG_H263P_AIC;
   3.256 + #endif
   3.257 +-  m_context->flags &= ~CODEC_FLAG_H263P_AIV;
   3.258 +-  m_context->flags &= ~CODEC_FLAG_H263P_SLICE_STRUCT;
   3.259 ++  av_opt_set_int(m_context->priv_data, "aiv", 0, 0);
   3.260 ++  av_opt_set_int(m_context->priv_data, "structured_slices", 0, 0);
   3.261 + 
   3.262 +   return true;
   3.263 + }
   3.264 +diff -Naur opal-3.10.10.orig/plugins/video/H.263-1998/h263-1998.h opal-3.10.10/plugins/video/H.263-1998/h263-1998.h
   3.265 +--- opal-3.10.10.orig/plugins/video/H.263-1998/h263-1998.h	2013-02-20 03:18:03.000000000 +0100
   3.266 ++++ opal-3.10.10/plugins/video/H.263-1998/h263-1998.h	2013-10-08 12:57:25.062873463 +0200
   3.267 +@@ -115,7 +115,7 @@
   3.268 +     virtual ~H263_Base_EncoderContext();
   3.269 + 
   3.270 +     virtual bool Init() = 0;
   3.271 +-    virtual bool Init(CodecID codecId);
   3.272 ++    virtual bool Init(AVCodecID codecId);
   3.273 + 
   3.274 +     virtual bool SetOptions(const char * const * options);
   3.275 +     virtual void SetOption(const char * option, const char * value);
   3.276 +diff -Naur opal-3.10.10.orig/plugins/video/H.263-1998/Makefile.in opal-3.10.10/plugins/video/H.263-1998/Makefile.in
   3.277 +--- opal-3.10.10.orig/plugins/video/H.263-1998/Makefile.in	2013-02-20 03:18:03.000000000 +0100
   3.278 ++++ opal-3.10.10/plugins/video/H.263-1998/Makefile.in	2013-10-08 12:57:25.062873463 +0200
   3.279 +@@ -35,7 +35,7 @@
   3.280 +              $(COMMONDIR)/dyna.cxx
   3.281 + 
   3.282 + CFLAGS += @LIBAVCODEC_CFLAGS@ -I$(COMMONDIR)
   3.283 +-LIBS   += @DL_LIBS@
   3.284 ++LIBS   += @DL_LIBS@ @LIBAVUTIL_LIBS@
   3.285 + 
   3.286 + HAVE_LIBAVCODEC_RTP_MODE=@HAVE_LIBAVCODEC_RTP_MODE@
   3.287 + ifeq ($(HAVE_LIBAVCODEC_RTP_MODE),yes)
   3.288 +diff -Naur opal-3.10.10.orig/plugins/video/H.264/gpl/h264_helper.cxx opal-3.10.10/plugins/video/H.264/gpl/h264_helper.cxx
   3.289 +--- opal-3.10.10.orig/plugins/video/H.264/gpl/h264_helper.cxx	2013-02-20 03:18:02.000000000 +0100
   3.290 ++++ opal-3.10.10/plugins/video/H.264/gpl/h264_helper.cxx	2013-10-08 12:57:25.062873463 +0200
   3.291 +@@ -27,6 +27,7 @@
   3.292 + #include <fstream>
   3.293 + #include <stdlib.h> 
   3.294 + #include <sys/stat.h>
   3.295 ++#include <unistd.h>
   3.296 + 
   3.297 + #ifdef HAVE_UNISTD_H
   3.298 + #include <unistd.h>
   3.299 +diff -Naur opal-3.10.10.orig/plugins/video/H.264/h264-x264.cxx opal-3.10.10/plugins/video/H.264/h264-x264.cxx
   3.300 +--- opal-3.10.10.orig/plugins/video/H.264/h264-x264.cxx	2013-02-20 03:18:02.000000000 +0100
   3.301 ++++ opal-3.10.10/plugins/video/H.264/h264-x264.cxx	2013-10-08 12:57:25.063873450 +0200
   3.302 +@@ -40,6 +40,9 @@
   3.303 + #include "plugin-config.h"
   3.304 + #endif
   3.305 + 
   3.306 ++#define FF_IDCT_H264 11
   3.307 ++#define CODEC_FLAG2_SKIP_RD 0x00004000
   3.308 ++
   3.309 + #include <codec/opalplugin.hpp>
   3.310 + 
   3.311 + #include "../common/ffmpeg.h"
   3.312 +@@ -1071,13 +1074,10 @@
   3.313 +         return false;
   3.314 + 
   3.315 +       m_context->workaround_bugs = FF_BUG_AUTODETECT;
   3.316 +-      m_context->error_recognition = FF_ER_AGGRESSIVE;
   3.317 +       m_context->idct_algo = FF_IDCT_H264;
   3.318 +       m_context->error_concealment = FF_EC_GUESS_MVS | FF_EC_DEBLOCK;
   3.319 +       m_context->flags = CODEC_FLAG_INPUT_PRESERVED | CODEC_FLAG_EMU_EDGE;
   3.320 +-      m_context->flags2 = CODEC_FLAG2_BRDO |
   3.321 +-                          CODEC_FLAG2_MEMC_ONLY |
   3.322 +-                          CODEC_FLAG2_DROP_FRAME_TIMECODE |
   3.323 ++      m_context->flags2 = CODEC_FLAG2_DROP_FRAME_TIMECODE |
   3.324 +                           CODEC_FLAG2_SKIP_RD |
   3.325 +                           CODEC_FLAG2_CHUNKS;
   3.326 + 
   3.327 +diff -Naur opal-3.10.10.orig/plugins/video/H.264/shared/x264wrap.cxx opal-3.10.10/plugins/video/H.264/shared/x264wrap.cxx
   3.328 +--- opal-3.10.10.orig/plugins/video/H.264/shared/x264wrap.cxx	2013-02-20 03:18:02.000000000 +0100
   3.329 ++++ opal-3.10.10/plugins/video/H.264/shared/x264wrap.cxx	2013-10-08 12:57:25.064873438 +0200
   3.330 +@@ -33,6 +33,7 @@
   3.331 + 
   3.332 + #include <codec/opalplugin.hpp>
   3.333 + #include <stdio.h>
   3.334 ++#include <unistd.h>
   3.335 + 
   3.336 + #ifdef HAVE_UNISTD_H
   3.337 + #include <unistd.h>
   3.338 +diff -Naur opal-3.10.10.orig/plugins/video/MPEG4-ffmpeg/Makefile.in opal-3.10.10/plugins/video/MPEG4-ffmpeg/Makefile.in
   3.339 +--- opal-3.10.10.orig/plugins/video/MPEG4-ffmpeg/Makefile.in	2013-02-20 03:18:07.000000000 +0100
   3.340 ++++ opal-3.10.10/plugins/video/MPEG4-ffmpeg/Makefile.in	2013-10-08 12:57:25.064873438 +0200
   3.341 +@@ -31,7 +31,7 @@
   3.342 + SRCS      := mpeg4.cxx $(COMMONDIR)/dyna.cxx
   3.343 + 
   3.344 + CFLAGS += @LIBAVCODEC_CFLAGS@ -I$(COMMONDIR)
   3.345 +-LIBS   += @DL_LIBS@
   3.346 ++LIBS   += @DL_LIBS@ @LIBAVUTIL_LIBS@
   3.347 + 
   3.348 + # Add LIBAVCODEC_SOURCE_DIR to the include path so we can #include <libavcodec/...h>
   3.349 + # Also add libavutil, so ffmpeg headers can #include "log.h".
   3.350 +diff -Naur opal-3.10.10.orig/plugins/video/MPEG4-ffmpeg/mpeg4.cxx opal-3.10.10/plugins/video/MPEG4-ffmpeg/mpeg4.cxx
   3.351 +--- opal-3.10.10.orig/plugins/video/MPEG4-ffmpeg/mpeg4.cxx	2013-02-20 03:18:07.000000000 +0100
   3.352 ++++ opal-3.10.10/plugins/video/MPEG4-ffmpeg/mpeg4.cxx	2013-10-08 12:57:25.065873425 +0200
   3.353 +@@ -103,6 +103,7 @@
   3.354 + 
   3.355 + #else /* LIBAVCODEC_HAVE_SOURCE_DIR */
   3.356 + #include "../common/ffmpeg.h"
   3.357 ++#include <libavutil/opt.h>
   3.358 + #endif /* LIBAVCODEC_HAVE_SOURCE_DIR */
   3.359 + }
   3.360 + 
   3.361 +@@ -589,17 +590,17 @@
   3.362 +     m_avpicture->quality = m_videoQMin;
   3.363 + 
   3.364 + #ifdef USE_ORIG
   3.365 +-    m_avcontext->flags |= CODEC_FLAG_PART;   // data partitioning
   3.366 ++    av_opt_set_int(m_avcontext->priv_data, "data_partitionin", 1, 0);
   3.367 +     m_avcontext->flags |= CODEC_FLAG_4MV;    // 4 motion vectors
   3.368 + #else
   3.369 +     m_avcontext->max_b_frames=0; /*don't use b frames*/
   3.370 +     m_avcontext->flags|=CODEC_FLAG_AC_PRED;
   3.371 +-    m_avcontext->flags|=CODEC_FLAG_H263P_UMV;
   3.372 ++    av_opt_set_int(m_avcontext->priv_data, "umv", 1, 0);
   3.373 +     /*c->flags|=CODEC_FLAG_QPEL;*/ /*don't enable this one: this forces profile_level to advanced simple profile */
   3.374 +     m_avcontext->flags|=CODEC_FLAG_4MV;
   3.375 +     m_avcontext->flags|=CODEC_FLAG_GMC;
   3.376 +     m_avcontext->flags|=CODEC_FLAG_LOOP_FILTER;
   3.377 +-    m_avcontext->flags|=CODEC_FLAG_H263P_SLICE_STRUCT;
   3.378 ++    av_opt_set_int(m_avcontext->priv_data, "structured_slices", 1, 0);
   3.379 + #endif
   3.380 +     m_avcontext->opaque = this;              // for use in RTP callback
   3.381 + }
   3.382 +@@ -804,7 +805,7 @@
   3.383 +         // Should the next frame be an I-Frame?
   3.384 +         if ((flags & PluginCodec_CoderForceIFrame) || (m_frameNum == 0))
   3.385 +         {
   3.386 +-            m_avpicture->pict_type = FF_I_TYPE;
   3.387 ++            m_avpicture->pict_type = AV_PICTURE_TYPE_I;
   3.388 +         }
   3.389 +         else // No IFrame requested, let avcodec decide what to do
   3.390 +         {
   3.391 +@@ -1325,7 +1326,7 @@
   3.392 + 
   3.393 + void MPEG4DecoderContext::SetStaticDecodingParams() {
   3.394 +     m_avcontext->flags |= CODEC_FLAG_4MV; 
   3.395 +-    m_avcontext->flags |= CODEC_FLAG_PART;
   3.396 ++    av_opt_set_int(m_avcontext->priv_data, "data_partitionin", 1, 0);
   3.397 +     m_avcontext->workaround_bugs = 0; // no workaround for buggy implementations
   3.398 + }
   3.399 + 
     4.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     4.2 +++ b/opal/stuff/patches/series	Sat Oct 28 12:53:30 2017 +0200
     4.3 @@ -0,0 +1,1 @@
     4.4 +opal-3.10.10-ffmpeg2-1.patch