Opal 3.10.9 and PTLib 2.10.9.

parent 56f59528
......@@ -4,29 +4,27 @@
# Maintainer: Adrián Chaves Fernández (Gallaecio) <adriyetichaves@gmail.com>
pkgname=opal
pkgver=3.10.7
_pkgver="Stable 7"
_pkgver2="v3.10 Luyten"
pkgver=3.10.9
pkgrel=1
pkgdesc="Open Phone Abstraction Library."
arch=('i686' 'x86_64')
pkgdesc="Open Phone Abstraction Library"
arch=('x86_64')
url="http://www.opalvoip.org/"
license=('MPL')
depends=('libtheora' 'ptlib' 'silc-toolkit' 'speex' 'x264>=20090416')
depends=('gsm' 'libtheora' 'ptlib' 'silc-toolkit' 'speex' 'x264')
makedepends=('ffmpeg')
changelog=ChangeLog
source=("http://downloads.sourceforge.net/project/opalvoip/$_pkgver2/$_pkgver/$pkgname-$pkgver.tar.bz2")
md5sums=('8686bb930668067eefadab115d2ee1c2')
source=("http://ftp.gnome.org/pub/GNOME/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz"
"$pkgname-ffmpeg.diff")
md5sums=('bb8eeb28321035663738e4fc8d6eb852'
'b3655f313db17dfea44cbabe4cf850f5')
build() {
cd $srcdir/$pkgname-$pkgver
# Patches.
sed "/#include \"..\/common\/platform.h\"/a\
#include <unistd.h>" \
-i plugins/video/H.264/shared/x264wrap.h
patch -Np1 -i "${srcdir}/$pkgname-ffmpeg.diff"
CFLAGS="$CFLAGS -D__STDC_CONSTANT_MACROS" \
CXXFLAGS="$CXXFLAGS -fpermissive" \
./configure \
--localstatedir=/var \
--prefix=/usr \
......@@ -37,4 +35,5 @@ build() {
package() {
cd $srcdir/$pkgname-$pkgver
make DESTDIR=$pkgdir install
chmod 644 "${pkgdir}/usr/lib/libopal_s.a"
}
diff -Naur opal-3.10.9/plugins/video/H.263-1998/h263-1998.cxx opal-3.10.9-fixed/plugins/video/H.263-1998/h263-1998.cxx
--- opal-3.10.9/plugins/video/H.263-1998/h263-1998.cxx 2012-11-26 10:48:25.000000000 +0000
+++ opal-3.10.9-fixed/plugins/video/H.263-1998/h263-1998.cxx 2012-11-30 21:02:18.872495475 +0000
@@ -1,6 +1,6 @@
/*
* H.263 Plugin codec for OpenH323/OPAL
- *
+
* This code is based on the following files from the OPAL project which
* have been removed from the current build and distributions but are still
* available in the CVS "attic"
@@ -48,6 +48,7 @@
#endif
#include "h263-1998.h"
+#include <libavutil/opt.h>
#include <limits>
#include <iomanip>
#include <stdio.h>
@@ -317,9 +318,9 @@
// Level 2+
// works with eyeBeam, signaled via non-standard "D"
if (atoi(value) == 1)
- m_context->flags |= CODEC_FLAG_H263P_UMV;
+ av_opt_set_int(m_context->priv_data, "umv", 1, 0);
else
- m_context->flags &= ~CODEC_FLAG_H263P_UMV;
+ av_opt_set_int(m_context->priv_data, "umv", 0, 0);
return;
}
@@ -328,9 +329,9 @@
// Annex F: Advanced Prediction Mode
// does not work with eyeBeam
if (atoi(value) == 1)
- m_context->flags |= CODEC_FLAG_OBMC;
+ av_opt_set_int(m_context->priv_data, "obmc", 1, 0);
else
- m_context->flags &= ~CODEC_FLAG_OBMC;
+ av_opt_set_int(m_context->priv_data, "obmc", 0, 0);
return;
}
#endif
@@ -360,9 +361,9 @@
// Annex K: Slice Structure
// does not work with eyeBeam
if (atoi(value) != 0)
- m_context->flags |= CODEC_FLAG_H263P_SLICE_STRUCT;
+ av_opt_set_int(m_context->priv_data, "structured_slices", 1, 0);
else
- m_context->flags &= ~CODEC_FLAG_H263P_SLICE_STRUCT;
+ av_opt_set_int(m_context->priv_data, "structured_slices", 0, 0);
return;
}
@@ -370,9 +371,9 @@
// Annex S: Alternative INTER VLC mode
// does not work with eyeBeam
if (atoi(value) == 1)
- m_context->flags |= CODEC_FLAG_H263P_AIV;
+ av_opt_set_int(m_context->priv_data, "aiv", 1, 0);
else
- m_context->flags &= ~CODEC_FLAG_H263P_AIV;
+ av_opt_set_int(m_context->priv_data, "aiv", 0, 0);
return;
}
@@ -450,15 +451,6 @@
PTRACE(5, m_prefix, "qmax set to " << m_context->qmax);
PTRACE(5, m_prefix, "payload size set to " << m_context->rtp_payload_size);
- #define CODEC_TRACER_FLAG(tracer, flag) \
- PTRACE(4, m_prefix, #flag " is " << ((m_context->flags & flag) ? "enabled" : "disabled"));
- CODEC_TRACER_FLAG(tracer, CODEC_FLAG_H263P_UMV);
- CODEC_TRACER_FLAG(tracer, CODEC_FLAG_OBMC);
- CODEC_TRACER_FLAG(tracer, CODEC_FLAG_AC_PRED);
- CODEC_TRACER_FLAG(tracer, CODEC_FLAG_H263P_SLICE_STRUCT)
- CODEC_TRACER_FLAG(tracer, CODEC_FLAG_LOOP_FILTER);
- CODEC_TRACER_FLAG(tracer, CODEC_FLAG_H263P_AIV);
-
return FFMPEGLibraryInstance.AvcodecOpen(m_context, m_codec) == 0;
}
@@ -521,7 +513,7 @@
// Need to copy to local buffer to guarantee 16 byte alignment
memcpy(m_inputFrame->data[0], OPAL_VIDEO_FRAME_DATA_PTR(header), header->width*header->height*3/2);
- m_inputFrame->pict_type = (flags & PluginCodec_CoderForceIFrame) ? FF_I_TYPE : AV_PICTURE_TYPE_NONE;
+ m_inputFrame->pict_type = (flags & PluginCodec_CoderForceIFrame) ? AV_PICTURE_TYPE_I : AV_PICTURE_TYPE_NONE;
/*
m_inputFrame->pts = (int64_t)srcRTP.GetTimestamp()*m_context->time_base.den/m_context->time_base.num/VIDEO_CLOCKRATE;
@@ -603,13 +595,13 @@
m_context->rtp_callback = &H263_RFC2190_EncoderContext::RTPCallBack;
m_context->opaque = this; // used to separate out packets from different encode threads
- m_context->flags &= ~CODEC_FLAG_H263P_UMV;
+ av_opt_set_int(m_context->priv_data, "umv", 0, 0);
m_context->flags &= ~CODEC_FLAG_4MV;
#if LIBAVCODEC_RTP_MODE
m_context->flags &= ~CODEC_FLAG_H263P_AIC;
#endif
- m_context->flags &= ~CODEC_FLAG_H263P_AIV;
- m_context->flags &= ~CODEC_FLAG_H263P_SLICE_STRUCT;
+ av_opt_set_int(m_context->priv_data, "aiv", 0, 0);
+ av_opt_set_int(m_context->priv_data, "structured_slices", 0, 0);
return true;
}
diff -Naur opal-3.10.9/plugins/video/H.264/gpl/h264_helper.cxx opal-3.10.9-fixed/plugins/video/H.264/gpl/h264_helper.cxx
--- opal-3.10.9/plugins/video/H.264/gpl/h264_helper.cxx 2012-11-26 10:48:23.000000000 +0000
+++ opal-3.10.9-fixed/plugins/video/H.264/gpl/h264_helper.cxx 2012-11-30 21:03:53.031985469 +0000
@@ -27,10 +27,7 @@
#include <fstream>
#include <stdlib.h>
#include <sys/stat.h>
-
-#ifdef HAVE_UNISTD_H
#include <unistd.h>
-#endif
#ifndef PLUGINCODEC_TRACING
diff -Naur opal-3.10.9/plugins/video/H.264/h264-x264.cxx opal-3.10.9-fixed/plugins/video/H.264/h264-x264.cxx
--- opal-3.10.9/plugins/video/H.264/h264-x264.cxx 2012-11-26 10:48:24.000000000 +0000
+++ opal-3.10.9-fixed/plugins/video/H.264/h264-x264.cxx 2012-11-30 21:02:18.875828944 +0000
@@ -1071,13 +1071,10 @@
return false;
m_context->workaround_bugs = FF_BUG_AUTODETECT;
- m_context->error_recognition = FF_ER_AGGRESSIVE;
m_context->idct_algo = FF_IDCT_H264;
m_context->error_concealment = FF_EC_GUESS_MVS | FF_EC_DEBLOCK;
m_context->flags = CODEC_FLAG_INPUT_PRESERVED | CODEC_FLAG_EMU_EDGE;
- m_context->flags2 = CODEC_FLAG2_BRDO |
- CODEC_FLAG2_MEMC_ONLY |
- CODEC_FLAG2_DROP_FRAME_TIMECODE |
+ m_context->flags2 = CODEC_FLAG2_DROP_FRAME_TIMECODE |
CODEC_FLAG2_SKIP_RD |
CODEC_FLAG2_CHUNKS;
diff -Naur opal-3.10.9/plugins/video/H.264/shared/x264wrap.cxx opal-3.10.9-fixed/plugins/video/H.264/shared/x264wrap.cxx
--- opal-3.10.9/plugins/video/H.264/shared/x264wrap.cxx 2012-11-26 10:48:24.000000000 +0000
+++ opal-3.10.9-fixed/plugins/video/H.264/shared/x264wrap.cxx 2012-11-30 21:03:20.272164531 +0000
@@ -33,10 +33,7 @@
#include <codec/opalplugin.hpp>
#include <stdio.h>
-
-#ifdef HAVE_UNISTD_H
#include <unistd.h>
-#endif
#if defined(X264_LICENSED) || defined(GPL_HELPER_APP)
diff -Naur opal-3.10.9/plugins/video/MPEG4-ffmpeg/mpeg4.cxx opal-3.10.9-fixed/plugins/video/MPEG4-ffmpeg/mpeg4.cxx
--- opal-3.10.9/plugins/video/MPEG4-ffmpeg/mpeg4.cxx 2012-11-26 10:48:28.000000000 +0000
+++ opal-3.10.9-fixed/plugins/video/MPEG4-ffmpeg/mpeg4.cxx 2012-11-30 21:02:18.875828944 +0000
@@ -103,6 +103,7 @@
#else /* LIBAVCODEC_HAVE_SOURCE_DIR */
#include "../common/ffmpeg.h"
+#include <libavutil/opt.h>
#endif /* LIBAVCODEC_HAVE_SOURCE_DIR */
}
@@ -589,17 +590,17 @@
m_avpicture->quality = m_videoQMin;
#ifdef USE_ORIG
- m_avcontext->flags |= CODEC_FLAG_PART; // data partitioning
+ av_opt_set_int(m_avcontext->priv_data, "data_partitionin", 1, 0);
m_avcontext->flags |= CODEC_FLAG_4MV; // 4 motion vectors
#else
m_avcontext->max_b_frames=0; /*don't use b frames*/
m_avcontext->flags|=CODEC_FLAG_AC_PRED;
- m_avcontext->flags|=CODEC_FLAG_H263P_UMV;
+ av_opt_set_int(m_avcontext->priv_data, "umv", 1, 0);
/*c->flags|=CODEC_FLAG_QPEL;*/ /*don't enable this one: this forces profile_level to advanced simple profile */
m_avcontext->flags|=CODEC_FLAG_4MV;
m_avcontext->flags|=CODEC_FLAG_GMC;
m_avcontext->flags|=CODEC_FLAG_LOOP_FILTER;
- m_avcontext->flags|=CODEC_FLAG_H263P_SLICE_STRUCT;
+ av_opt_set_int(m_avcontext->priv_data, "structured_slices", 1, 0);
#endif
m_avcontext->opaque = this; // for use in RTP callback
}
@@ -804,7 +805,7 @@
// Should the next frame be an I-Frame?
if ((flags & PluginCodec_CoderForceIFrame) || (m_frameNum == 0))
{
- m_avpicture->pict_type = FF_I_TYPE;
+ m_avpicture->pict_type = AV_PICTURE_TYPE_I;
}
else // No IFrame requested, let avcodec decide what to do
{
@@ -1324,8 +1325,8 @@
//
void MPEG4DecoderContext::SetStaticDecodingParams() {
- m_avcontext->flags |= CODEC_FLAG_4MV;
- m_avcontext->flags |= CODEC_FLAG_PART;
+ m_avcontext->flags |= CODEC_FLAG_4MV;
+ av_opt_set_int(m_avcontext->priv_data, "data_partitionin", 1, 0);
m_avcontext->workaround_bugs = 0; // no workaround for buggy implementations
}
......@@ -4,8 +4,8 @@
# Maintainer: Adrián Chaves Fernández (Gallaecio) <adriyetichaves@gmail.com>
pkgname=ptlib
pkgver=2.10.7
_pkgver="Stable 7"
pkgver=2.10.9
_pkgver="Stable ${pkgver:5}"
_pkgver2="v3.10 Luyten"
pkgrel=1
pkgdesc="Portable Windows Library."
......@@ -15,7 +15,7 @@ license=('MPL')
depends=('alsa-lib' 'expat' 'gcc-libs' 'openssl' 'sdl' 'v4l-utils')
changelog=ChangeLog
source=("http://downloads.sourceforge.net/project/opalvoip/$_pkgver2/$_pkgver/$pkgname-$pkgver.tar.bz2")
md5sums=('7fb74a97743fcc5f33d0f97dec7bc878')
md5sums=('a2ec7e8a94c501e7d468cbb8ecc9fdc9')
build() {
cd $srcdir/$pkgname-$pkgver
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment