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 +