Removed unneeded package: net-libs/opal.
This commit is contained in:
parent
b4b5233936
commit
60613a13ad
|
@ -1,12 +0,0 @@
|
||||||
AUX opal-3.10.10-ffmpeg2-1.patch 15039 BLAKE2B 6951443ade9bbcaf2cebad4865ff63c3b99f8cc68dc0adf5400c9c95432a32243503f2c140c71e65f609e9a595dbdcaeefa13e5c21236b46960f2abda0689d5f SHA512 606eb31858505c03086e963d2f75108f7ef1e6653beb46d4bc5c8ec5672fca06c653ae82689cacd6278bad32d243c4822ba9ab87500626380ca74c39081d8a82
|
|
||||||
AUX opal-3.10.11-libav9-gentoo.patch 8068 BLAKE2B 67f1a4c46fd4f6ad11d0b271ebca4d5ad507bdd1f11c539c18ce3d9c4fd0f8877e679008714733f04c3c3857ea2b8fdbe5b539062160b75552a986c07bf0b4be SHA512 b99d9c91bed8537d12b145053e7796e2acbb42a99bb6d415a5a02dbfc6a37e26582d076e92a032ee537071cf367e9dae3af5aa2819a1a715d062a5256665a1d2
|
|
||||||
AUX opal-3.10.9-avoid_cflags_mixup.patch 5378 BLAKE2B f8f2b95dca416ebea558906d6b6bac50fa47d024b7ccf80732f1472c3a8bd6e434e2fecdfe3d3420ec15f4ea427c47b693a963b54ada10a0d3035e9ff6bfa95a SHA512 fdc6b52db3bd299d2235ebdb917921d3c9d01a03ffed65e8e4b833e66da21bde4c1497740a38a41f3d7393a6c65969a64587612a11c9590904b66c9fb86e1e7e
|
|
||||||
AUX opal-3.10.9-disable-h323-workaround.patch 498 BLAKE2B a75a6dcea5f329ce9d5750bff4e100e7692f51379334c7e7d2a47f061479807484e30cfd9ba6626e682334fe4bd2042465532da4c4c750406ab8670df56849d7 SHA512 58e8ef12c39bce3a4d386b2b6033e1e242852bbf78371c58e91bd020cfcd95b40a9831db91fa76da431a9f8c4bb40c846b420e3a462dad77658a37c2281a9d39
|
|
||||||
AUX opal-3.10.9-ffmpeg.patch 7084 BLAKE2B 3512362ac750bf942e726f26b27cc5315fc463bd30a4c4036fe049404e30563f065f39dd4ef16aa795db62fb614bad72abb8f87a9ac5c3b2703c997df1873dc4 SHA512 109c41fd92793bafdbbf066d5f7e33175be4034fe2a1ce2bd1df8f569e86101d04617151df851025da17c7b46bb345022200990c36bbb47f940afcea306a6701
|
|
||||||
AUX opal-3.10.9-java-ruby-swig-fix.patch 874 BLAKE2B 4d78f1790265f37b0bfc86bd1009802acc5d4f7b105e2c2471b3658185a90ae719d26815bf481177e5207b82110d41fa1049f4d12af0d1aaf17d88a2722f16a5 SHA512 a7132cd6ad61d143cc11e00a048aaf66e1802890ac5fbde7ff964f99dc45a3abc79a081572cbdae5a84a50eee8af11266695a5de9c2691385c6f849e27105022
|
|
||||||
AUX opal-3.10.9-labs_is_in_stdlib.patch 532 BLAKE2B f34da437a566996a0f0ed4e0f4e0bfcae8d5feb99ddaa9a2a8721a91975d51b5f6c151c1d483f144c34c5cabdb9df95a58bc0527874f4006f15182424b5dda4b SHA512 f1342804fec2e6422d499f776a39dff2e36e5604e2d43084322c9fd0b4bf7d511852c3ca02dc072d133b9204b4984b4400f56846f58cc2edfc0446176cdbfcf5
|
|
||||||
AUX opal-3.10.9-svn_revision_override.patch 456 BLAKE2B 964ee6b63a11d1a8f8e0c4ce9facbf671c577b0d6862c4b67d9721093748a81f1a50de8c27d5af69712a9ed0115d08375d711294307500f10222e645ea931d7a SHA512 b78843500d1d90ce11e8620fdad9f4a97184ee603a839828c39aad85d5f33bb08bd776f2faaf7c86e364cd4dc4d3166485d74dd66551ce508c9bee22a336d2ee
|
|
||||||
DIST opal-3.10.11-htmldoc.tar.bz2 2944338 BLAKE2B 3e686809a217c13718e3e777a5c11b92b1405d5421b882abc50a3e231db28d72099e7383fa23bf130cc5fa2bf123412702248054cfa7be14dcbc999fd3bd1248 SHA512 6075487344d4cfa5c2e2219376e3eccd98028475eac6f89d20d24d611a8806a27eb354ce8e77e16c620c8cb3d398b9502082f3fe8f67763d3f67feea835819b5
|
|
||||||
DIST opal-3.10.11.tar.bz2 8590616 BLAKE2B 1ea56285315e879d85190db4e2b2fa814cf0fc7825db80547d1fde978f6d24a8e2cd853575a4c13dbfc7d8dada422a90ab95512a367a87de6d13889a6d8f8ca4 SHA512 970745375e7ebb29178ce9d0bc29254e69dd952e5f754038979a8613489a26f0fb68d63ec2709ffa1964e50fe9cfde874489f683a451d83e7a075d62d9228fa1
|
|
||||||
EBUILD opal-3.10.11.ebuild 7576 BLAKE2B 3fcaec1853a533f7c1558a01e60c0a2e87a23c70fc722562a26574378744fe5888d0f1127b6ede40a1b81d15b4167fa5f92fc4ef6e703745ac797fbcd54a8458 SHA512 a09b032b7c02865284234ed290b216380f7c2923100021761206791e3349ecf5b187483850c3916384611198672e00246408e2222a7c6c37023839754b50459c
|
|
||||||
MISC metadata.xml 1991 BLAKE2B 54cc03c07f00922490919635a1f991e0afd3ae2faff3e68c974440fdf3856d627d2edb989606699bb1aa9cfe908799fe79183e02e44755a86288c975c94d5225 SHA512 13f09ef3f906a17908dd0d68994fedf6c81f92e4e87b781f7bbb9c0927148450ba782d7b06af94d1f1f1bc7a2e4d916e5467d5ed6c94e3674dfda81c3e1a5d74
|
|
|
@ -1,396 +0,0 @@
|
||||||
Submitted By: Igor Živković <contact@igor-zivkovic.from.hr>
|
|
||||||
Date: 2013-10-08
|
|
||||||
Initial Package Version: 3.10.10
|
|
||||||
Upstream Status: Unknown
|
|
||||||
Origin: Gentoo
|
|
||||||
Description: Fixes building against FFmpeg version >= 2.0.0
|
|
||||||
|
|
||||||
diff -Naur opal-3.10.10.orig/plugins/video/common/dyna.cxx opal-3.10.10/plugins/video/common/dyna.cxx
|
|
||||||
--- opal-3.10.10.orig/plugins/video/common/dyna.cxx 2013-02-20 03:18:05.000000000 +0100
|
|
||||||
+++ opal-3.10.10/plugins/video/common/dyna.cxx 2013-10-08 12:57:25.058873513 +0200
|
|
||||||
@@ -210,7 +210,7 @@
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
-FFMPEGLibrary::FFMPEGLibrary(CodecID codec)
|
|
||||||
+FFMPEGLibrary::FFMPEGLibrary(AVCodecID codec)
|
|
||||||
{
|
|
||||||
m_codec = codec;
|
|
||||||
if (m_codec==CODEC_ID_H264)
|
|
||||||
@@ -348,12 +348,12 @@
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
-AVCodec *FFMPEGLibrary::AvcodecFindEncoder(enum CodecID id)
|
|
||||||
+AVCodec *FFMPEGLibrary::AvcodecFindEncoder(enum AVCodecID id)
|
|
||||||
{
|
|
||||||
return Favcodec_find_encoder(id);
|
|
||||||
}
|
|
||||||
|
|
||||||
-AVCodec *FFMPEGLibrary::AvcodecFindDecoder(enum CodecID id)
|
|
||||||
+AVCodec *FFMPEGLibrary::AvcodecFindDecoder(enum AVCodecID id)
|
|
||||||
{
|
|
||||||
WaitAndSignal m(processLock);
|
|
||||||
|
|
||||||
diff -Naur opal-3.10.10.orig/plugins/video/common/dyna.h opal-3.10.10/plugins/video/common/dyna.h
|
|
||||||
--- opal-3.10.10.orig/plugins/video/common/dyna.h 2013-02-20 03:18:05.000000000 +0100
|
|
||||||
+++ opal-3.10.10/plugins/video/common/dyna.h 2013-10-08 12:57:25.058873513 +0200
|
|
||||||
@@ -88,13 +88,13 @@
|
|
||||||
class FFMPEGLibrary
|
|
||||||
{
|
|
||||||
public:
|
|
||||||
- FFMPEGLibrary(CodecID codec);
|
|
||||||
+ FFMPEGLibrary(AVCodecID codec);
|
|
||||||
~FFMPEGLibrary();
|
|
||||||
|
|
||||||
bool Load();
|
|
||||||
|
|
||||||
- AVCodec *AvcodecFindEncoder(enum CodecID id);
|
|
||||||
- AVCodec *AvcodecFindDecoder(enum CodecID id);
|
|
||||||
+ AVCodec *AvcodecFindEncoder(enum AVCodecID id);
|
|
||||||
+ AVCodec *AvcodecFindDecoder(enum AVCodecID id);
|
|
||||||
AVCodecContext *AvcodecAllocContext(void);
|
|
||||||
AVFrame *AvcodecAllocFrame(void);
|
|
||||||
int AvcodecOpen(AVCodecContext *ctx, AVCodec *codec);
|
|
||||||
@@ -117,15 +117,15 @@
|
|
||||||
DynaLink m_libAvcodec;
|
|
||||||
DynaLink m_libAvutil;
|
|
||||||
|
|
||||||
- CodecID m_codec;
|
|
||||||
+ AVCodecID m_codec;
|
|
||||||
char m_codecString[32];
|
|
||||||
|
|
||||||
void (*Favcodec_init)(void);
|
|
||||||
void (*Fav_init_packet)(AVPacket *pkt);
|
|
||||||
|
|
||||||
void (*Favcodec_register_all)(void);
|
|
||||||
- AVCodec *(*Favcodec_find_encoder)(enum CodecID id);
|
|
||||||
- AVCodec *(*Favcodec_find_decoder)(enum CodecID id);
|
|
||||||
+ AVCodec *(*Favcodec_find_encoder)(enum AVCodecID id);
|
|
||||||
+ AVCodec *(*Favcodec_find_decoder)(enum AVCodecID id);
|
|
||||||
AVCodecContext *(*Favcodec_alloc_context)(void);
|
|
||||||
AVFrame *(*Favcodec_alloc_frame)(void);
|
|
||||||
int (*Favcodec_open)(AVCodecContext *ctx, AVCodec *codec);
|
|
||||||
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
|
|
||||||
--- opal-3.10.10.orig/plugins/video/common/ffmpeg/libavcodec/avcodec.h 2013-02-20 03:18:04.000000000 +0100
|
|
||||||
+++ opal-3.10.10/plugins/video/common/ffmpeg/libavcodec/avcodec.h 2013-10-08 12:57:25.060873488 +0200
|
|
||||||
@@ -101,7 +101,7 @@
|
|
||||||
* 1. no value of a existing codec ID changes (that would break ABI),
|
|
||||||
* 2. it is as close as possible to similar codecs.
|
|
||||||
*/
|
|
||||||
-enum CodecID {
|
|
||||||
+enum AVCodecID {
|
|
||||||
CODEC_ID_NONE,
|
|
||||||
|
|
||||||
/* video codecs */
|
|
||||||
@@ -1390,7 +1390,7 @@
|
|
||||||
|
|
||||||
char codec_name[32];
|
|
||||||
enum AVMediaType codec_type; /* see AVMEDIA_TYPE_xxx */
|
|
||||||
- enum CodecID codec_id; /* see CODEC_ID_xxx */
|
|
||||||
+ enum AVCodecID codec_id; /* see CODEC_ID_xxx */
|
|
||||||
|
|
||||||
/**
|
|
||||||
* fourcc (LSB first, so "ABCD" -> ('D'<<24) + ('C'<<16) + ('B'<<8) + 'A').
|
|
||||||
@@ -2843,7 +2843,7 @@
|
|
||||||
*/
|
|
||||||
const char *name;
|
|
||||||
enum AVMediaType type;
|
|
||||||
- enum CodecID id;
|
|
||||||
+ enum AVCodecID id;
|
|
||||||
int priv_data_size;
|
|
||||||
int (*init)(AVCodecContext *);
|
|
||||||
int (*encode)(AVCodecContext *, uint8_t *buf, int buf_size, void *data);
|
|
||||||
@@ -2898,7 +2898,7 @@
|
|
||||||
*
|
|
||||||
* See CODEC_ID_xxx
|
|
||||||
*/
|
|
||||||
- enum CodecID id;
|
|
||||||
+ enum AVCodecID id;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Supported pixel format.
|
|
||||||
@@ -3402,10 +3402,10 @@
|
|
||||||
/**
|
|
||||||
* Find a registered encoder with a matching codec ID.
|
|
||||||
*
|
|
||||||
- * @param id CodecID of the requested encoder
|
|
||||||
+ * @param id AVCodecID of the requested encoder
|
|
||||||
* @return An encoder if one was found, NULL otherwise.
|
|
||||||
*/
|
|
||||||
-AVCodec *avcodec_find_encoder(enum CodecID id);
|
|
||||||
+AVCodec *avcodec_find_encoder(enum AVCodecID id);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Find a registered encoder with the specified name.
|
|
||||||
@@ -3418,10 +3418,10 @@
|
|
||||||
/**
|
|
||||||
* Find a registered decoder with a matching codec ID.
|
|
||||||
*
|
|
||||||
- * @param id CodecID of the requested decoder
|
|
||||||
+ * @param id AVCodecID of the requested decoder
|
|
||||||
* @return A decoder if one was found, NULL otherwise.
|
|
||||||
*/
|
|
||||||
-AVCodec *avcodec_find_decoder(enum CodecID id);
|
|
||||||
+AVCodec *avcodec_find_decoder(enum AVCodecID id);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Find a registered decoder with the specified name.
|
|
||||||
@@ -3822,7 +3822,7 @@
|
|
||||||
* @param[in] codec_id the codec
|
|
||||||
* @return Number of bits per sample or zero if unknown for the given codec.
|
|
||||||
*/
|
|
||||||
-int av_get_bits_per_sample(enum CodecID codec_id);
|
|
||||||
+int av_get_bits_per_sample(enum AVCodecID codec_id);
|
|
||||||
|
|
||||||
#if FF_API_OLD_SAMPLE_FMT
|
|
||||||
/**
|
|
||||||
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
|
|
||||||
--- opal-3.10.10.orig/plugins/video/H.263-1998/h263-1998.cxx 2013-02-20 03:18:03.000000000 +0100
|
|
||||||
+++ opal-3.10.10/plugins/video/H.263-1998/h263-1998.cxx 2013-10-08 12:57:25.061873475 +0200
|
|
||||||
@@ -48,6 +48,10 @@
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include "h263-1998.h"
|
|
||||||
+extern "C"
|
|
||||||
+{
|
|
||||||
+#include <libavutil/opt.h>
|
|
||||||
+}
|
|
||||||
#include <limits>
|
|
||||||
#include <iomanip>
|
|
||||||
#include <stdio.h>
|
|
||||||
@@ -203,7 +207,7 @@
|
|
||||||
PTRACE(4, m_prefix, "Encoder closed");
|
|
||||||
}
|
|
||||||
|
|
||||||
-bool H263_Base_EncoderContext::Init(CodecID codecId)
|
|
||||||
+bool H263_Base_EncoderContext::Init(AVCodecID codecId)
|
|
||||||
{
|
|
||||||
PTRACE(5, m_prefix, "Opening encoder");
|
|
||||||
|
|
||||||
@@ -317,9 +321,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 +332,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 +364,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 +374,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 +454,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 +516,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 +598,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.10.orig/plugins/video/H.263-1998/h263-1998.h opal-3.10.10/plugins/video/H.263-1998/h263-1998.h
|
|
||||||
--- opal-3.10.10.orig/plugins/video/H.263-1998/h263-1998.h 2013-02-20 03:18:03.000000000 +0100
|
|
||||||
+++ opal-3.10.10/plugins/video/H.263-1998/h263-1998.h 2013-10-08 12:57:25.062873463 +0200
|
|
||||||
@@ -115,7 +115,7 @@
|
|
||||||
virtual ~H263_Base_EncoderContext();
|
|
||||||
|
|
||||||
virtual bool Init() = 0;
|
|
||||||
- virtual bool Init(CodecID codecId);
|
|
||||||
+ virtual bool Init(AVCodecID codecId);
|
|
||||||
|
|
||||||
virtual bool SetOptions(const char * const * options);
|
|
||||||
virtual void SetOption(const char * option, const char * value);
|
|
||||||
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
|
|
||||||
--- opal-3.10.10.orig/plugins/video/H.263-1998/Makefile.in 2013-02-20 03:18:03.000000000 +0100
|
|
||||||
+++ opal-3.10.10/plugins/video/H.263-1998/Makefile.in 2013-10-08 12:57:25.062873463 +0200
|
|
||||||
@@ -35,7 +35,7 @@
|
|
||||||
$(COMMONDIR)/dyna.cxx
|
|
||||||
|
|
||||||
CFLAGS += @LIBAVCODEC_CFLAGS@ -I$(COMMONDIR)
|
|
||||||
-LIBS += @DL_LIBS@
|
|
||||||
+LIBS += @DL_LIBS@ @LIBAVUTIL_LIBS@
|
|
||||||
|
|
||||||
HAVE_LIBAVCODEC_RTP_MODE=@HAVE_LIBAVCODEC_RTP_MODE@
|
|
||||||
ifeq ($(HAVE_LIBAVCODEC_RTP_MODE),yes)
|
|
||||||
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
|
|
||||||
--- opal-3.10.10.orig/plugins/video/H.264/gpl/h264_helper.cxx 2013-02-20 03:18:02.000000000 +0100
|
|
||||||
+++ opal-3.10.10/plugins/video/H.264/gpl/h264_helper.cxx 2013-10-08 12:57:25.062873463 +0200
|
|
||||||
@@ -27,6 +27,7 @@
|
|
||||||
#include <fstream>
|
|
||||||
#include <stdlib.h>
|
|
||||||
#include <sys/stat.h>
|
|
||||||
+#include <unistd.h>
|
|
||||||
|
|
||||||
#ifdef HAVE_UNISTD_H
|
|
||||||
#include <unistd.h>
|
|
||||||
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
|
|
||||||
--- opal-3.10.10.orig/plugins/video/H.264/h264-x264.cxx 2013-02-20 03:18:02.000000000 +0100
|
|
||||||
+++ opal-3.10.10/plugins/video/H.264/h264-x264.cxx 2013-10-08 12:57:25.063873450 +0200
|
|
||||||
@@ -40,6 +40,9 @@
|
|
||||||
#include "plugin-config.h"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
+#define FF_IDCT_H264 11
|
|
||||||
+#define CODEC_FLAG2_SKIP_RD 0x00004000
|
|
||||||
+
|
|
||||||
#include <codec/opalplugin.hpp>
|
|
||||||
|
|
||||||
#include "../common/ffmpeg.h"
|
|
||||||
@@ -1071,13 +1074,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.10.orig/plugins/video/H.264/shared/x264wrap.cxx opal-3.10.10/plugins/video/H.264/shared/x264wrap.cxx
|
|
||||||
--- opal-3.10.10.orig/plugins/video/H.264/shared/x264wrap.cxx 2013-02-20 03:18:02.000000000 +0100
|
|
||||||
+++ opal-3.10.10/plugins/video/H.264/shared/x264wrap.cxx 2013-10-08 12:57:25.064873438 +0200
|
|
||||||
@@ -33,6 +33,7 @@
|
|
||||||
|
|
||||||
#include <codec/opalplugin.hpp>
|
|
||||||
#include <stdio.h>
|
|
||||||
+#include <unistd.h>
|
|
||||||
|
|
||||||
#ifdef HAVE_UNISTD_H
|
|
||||||
#include <unistd.h>
|
|
||||||
diff -Naur opal-3.10.10.orig/plugins/video/MPEG4-ffmpeg/Makefile.in opal-3.10.10/plugins/video/MPEG4-ffmpeg/Makefile.in
|
|
||||||
--- opal-3.10.10.orig/plugins/video/MPEG4-ffmpeg/Makefile.in 2013-02-20 03:18:07.000000000 +0100
|
|
||||||
+++ opal-3.10.10/plugins/video/MPEG4-ffmpeg/Makefile.in 2013-10-08 12:57:25.064873438 +0200
|
|
||||||
@@ -31,7 +31,7 @@
|
|
||||||
SRCS := mpeg4.cxx $(COMMONDIR)/dyna.cxx
|
|
||||||
|
|
||||||
CFLAGS += @LIBAVCODEC_CFLAGS@ -I$(COMMONDIR)
|
|
||||||
-LIBS += @DL_LIBS@
|
|
||||||
+LIBS += @DL_LIBS@ @LIBAVUTIL_LIBS@
|
|
||||||
|
|
||||||
# Add LIBAVCODEC_SOURCE_DIR to the include path so we can #include <libavcodec/...h>
|
|
||||||
# Also add libavutil, so ffmpeg headers can #include "log.h".
|
|
||||||
diff -Naur opal-3.10.10.orig/plugins/video/MPEG4-ffmpeg/mpeg4.cxx opal-3.10.10/plugins/video/MPEG4-ffmpeg/mpeg4.cxx
|
|
||||||
--- opal-3.10.10.orig/plugins/video/MPEG4-ffmpeg/mpeg4.cxx 2013-02-20 03:18:07.000000000 +0100
|
|
||||||
+++ opal-3.10.10/plugins/video/MPEG4-ffmpeg/mpeg4.cxx 2013-10-08 12:57:25.065873425 +0200
|
|
||||||
@@ -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
|
|
||||||
{
|
|
||||||
@@ -1325,7 +1326,7 @@
|
|
||||||
|
|
||||||
void MPEG4DecoderContext::SetStaticDecodingParams() {
|
|
||||||
m_avcontext->flags |= CODEC_FLAG_4MV;
|
|
||||||
- m_avcontext->flags |= CODEC_FLAG_PART;
|
|
||||||
+ av_opt_set_int(m_avcontext->priv_data, "data_partitionin", 1, 0);
|
|
||||||
m_avcontext->workaround_bugs = 0; // no workaround for buggy implementations
|
|
||||||
}
|
|
||||||
|
|
|
@ -1,262 +0,0 @@
|
||||||
--- plugins/video/common/dyna.cxx
|
|
||||||
+++ plugins/video/common/dyna.cxx
|
|
||||||
@@ -37,6 +37,7 @@
|
|
||||||
* Craig Southeren (craigs@postincrement.com)
|
|
||||||
* Matthias Schneider (ma30002000@yahoo.de)
|
|
||||||
*/
|
|
||||||
+#include <stdio.h>
|
|
||||||
#include "dyna.h"
|
|
||||||
|
|
||||||
bool DynaLink::Open(const char *name)
|
|
||||||
@@ -210,14 +211,14 @@
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
-FFMPEGLibrary::FFMPEGLibrary(CodecID codec)
|
|
||||||
+FFMPEGLibrary::FFMPEGLibrary(AVCodecID codec)
|
|
||||||
{
|
|
||||||
m_codec = codec;
|
|
||||||
- if (m_codec==CODEC_ID_H264)
|
|
||||||
+ if (m_codec==AV_CODEC_ID_H264)
|
|
||||||
snprintf( m_codecString, sizeof(m_codecString), "H264");
|
|
||||||
- if (m_codec==CODEC_ID_H263P)
|
|
||||||
+ if (m_codec==AV_CODEC_ID_H263P)
|
|
||||||
snprintf( m_codecString, sizeof(m_codecString), "H263+");
|
|
||||||
- if (m_codec==CODEC_ID_MPEG4)
|
|
||||||
+ if (m_codec==AV_CODEC_ID_MPEG4)
|
|
||||||
snprintf( m_codecString, sizeof(m_codecString), "MPEG4");
|
|
||||||
m_isLoadedOK = false;
|
|
||||||
}
|
|
||||||
@@ -348,12 +349,12 @@
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
-AVCodec *FFMPEGLibrary::AvcodecFindEncoder(enum CodecID id)
|
|
||||||
+AVCodec *FFMPEGLibrary::AvcodecFindEncoder(enum AVCodecID id)
|
|
||||||
{
|
|
||||||
return Favcodec_find_encoder(id);
|
|
||||||
}
|
|
||||||
|
|
||||||
-AVCodec *FFMPEGLibrary::AvcodecFindDecoder(enum CodecID id)
|
|
||||||
+AVCodec *FFMPEGLibrary::AvcodecFindDecoder(enum AVCodecID id)
|
|
||||||
{
|
|
||||||
WaitAndSignal m(processLock);
|
|
||||||
|
|
||||||
--- plugins/video/common/dyna.h
|
|
||||||
+++ plugins/video/common/dyna.h
|
|
||||||
@@ -88,13 +88,13 @@
|
|
||||||
class FFMPEGLibrary
|
|
||||||
{
|
|
||||||
public:
|
|
||||||
- FFMPEGLibrary(CodecID codec);
|
|
||||||
+ FFMPEGLibrary(AVCodecID codec);
|
|
||||||
~FFMPEGLibrary();
|
|
||||||
|
|
||||||
bool Load();
|
|
||||||
|
|
||||||
- AVCodec *AvcodecFindEncoder(enum CodecID id);
|
|
||||||
- AVCodec *AvcodecFindDecoder(enum CodecID id);
|
|
||||||
+ AVCodec *AvcodecFindEncoder(enum AVCodecID id);
|
|
||||||
+ AVCodec *AvcodecFindDecoder(enum AVCodecID id);
|
|
||||||
AVCodecContext *AvcodecAllocContext(void);
|
|
||||||
AVFrame *AvcodecAllocFrame(void);
|
|
||||||
int AvcodecOpen(AVCodecContext *ctx, AVCodec *codec);
|
|
||||||
@@ -117,15 +117,15 @@
|
|
||||||
DynaLink m_libAvcodec;
|
|
||||||
DynaLink m_libAvutil;
|
|
||||||
|
|
||||||
- CodecID m_codec;
|
|
||||||
+ AVCodecID m_codec;
|
|
||||||
char m_codecString[32];
|
|
||||||
|
|
||||||
void (*Favcodec_init)(void);
|
|
||||||
void (*Fav_init_packet)(AVPacket *pkt);
|
|
||||||
|
|
||||||
void (*Favcodec_register_all)(void);
|
|
||||||
- AVCodec *(*Favcodec_find_encoder)(enum CodecID id);
|
|
||||||
- AVCodec *(*Favcodec_find_decoder)(enum CodecID id);
|
|
||||||
+ AVCodec *(*Favcodec_find_encoder)(enum AVCodecID id);
|
|
||||||
+ AVCodec *(*Favcodec_find_decoder)(enum AVCodecID id);
|
|
||||||
AVCodecContext *(*Favcodec_alloc_context)(void);
|
|
||||||
AVFrame *(*Favcodec_alloc_frame)(void);
|
|
||||||
int (*Favcodec_open)(AVCodecContext *ctx, AVCodec *codec);
|
|
||||||
--- plugins/video/H.263-1998/h263-1998.cxx
|
|
||||||
+++ plugins/video/H.263-1998/h263-1998.cxx
|
|
||||||
@@ -43,6 +43,12 @@
|
|
||||||
* $Date: 2014/04/29 09:02:06 $
|
|
||||||
*/
|
|
||||||
|
|
||||||
+#define CODEC_FLAG_H263P_UMV 0x02000000
|
|
||||||
+#define CODEC_FLAG_H263P_SLICE_STRUCT 0x10000000
|
|
||||||
+#define CODEC_FLAG_H263P_AIV 0x00000008
|
|
||||||
+#define CODEC_FLAG_OBMC 0x00000001
|
|
||||||
+#define FF_I_TYPE 1
|
|
||||||
+
|
|
||||||
#ifndef PLUGIN_CODEC_DLL_EXPORTS
|
|
||||||
#include "plugin-config.h"
|
|
||||||
#endif
|
|
||||||
@@ -94,7 +100,7 @@
|
|
||||||
{ CIF16_WIDTH, CIF16_HEIGHT, PLUGINCODEC_CIF16_MPI },
|
|
||||||
};
|
|
||||||
|
|
||||||
-static FFMPEGLibrary FFMPEGLibraryInstance(CODEC_ID_H263P);
|
|
||||||
+static FFMPEGLibrary FFMPEGLibraryInstance(AV_CODEC_ID_H263P);
|
|
||||||
|
|
||||||
|
|
||||||
/////////////////////////////////////////////////////////////////////////////
|
|
||||||
@@ -203,7 +209,7 @@
|
|
||||||
PTRACE(4, m_prefix, "Encoder closed");
|
|
||||||
}
|
|
||||||
|
|
||||||
-bool H263_Base_EncoderContext::Init(CodecID codecId)
|
|
||||||
+bool H263_Base_EncoderContext::Init(AVCodecID codecId)
|
|
||||||
{
|
|
||||||
PTRACE(5, m_prefix, "Opening encoder");
|
|
||||||
|
|
||||||
@@ -616,7 +622,7 @@
|
|
||||||
|
|
||||||
bool H263_RFC2190_EncoderContext::Init()
|
|
||||||
{
|
|
||||||
- if (!H263_Base_EncoderContext::Init(CODEC_ID_H263))
|
|
||||||
+ if (!H263_Base_EncoderContext::Init(AV_CODEC_ID_H263))
|
|
||||||
return false;
|
|
||||||
|
|
||||||
#if LIBAVCODEC_RTP_MODE
|
|
||||||
@@ -661,7 +667,7 @@
|
|
||||||
|
|
||||||
bool H263_RFC2429_EncoderContext::Init()
|
|
||||||
{
|
|
||||||
- return H263_Base_EncoderContext::Init(CODEC_ID_H263P);
|
|
||||||
+ return H263_Base_EncoderContext::Init(AV_CODEC_ID_H263P);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@@ -685,7 +691,7 @@
|
|
||||||
if (!FFMPEGLibraryInstance.Load())
|
|
||||||
return;
|
|
||||||
|
|
||||||
- if ((m_codec = FFMPEGLibraryInstance.AvcodecFindDecoder(CODEC_ID_H263)) == NULL) {
|
|
||||||
+ if ((m_codec = FFMPEGLibraryInstance.AvcodecFindDecoder(AV_CODEC_ID_H263)) == NULL) {
|
|
||||||
PTRACE(1, m_prefix, "Codec not found for decoder");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
--- plugins/video/H.263-1998/h263-1998.h
|
|
||||||
+++ plugins/video/H.263-1998/h263-1998.h
|
|
||||||
@@ -115,7 +115,7 @@
|
|
||||||
virtual ~H263_Base_EncoderContext();
|
|
||||||
|
|
||||||
virtual bool Init() = 0;
|
|
||||||
- virtual bool Init(CodecID codecId);
|
|
||||||
+ virtual bool Init(AVCodecID codecId);
|
|
||||||
|
|
||||||
virtual bool SetOptions(const char * const * options);
|
|
||||||
virtual void SetOption(const char * option, const char * value);
|
|
||||||
--- plugins/video/H.263-1998/Makefile.in
|
|
||||||
+++ plugins/video/H.263-1998/Makefile.in
|
|
||||||
@@ -34,7 +34,7 @@
|
|
||||||
$(COMMONDIR)/mpi.cxx \
|
|
||||||
$(COMMONDIR)/dyna.cxx
|
|
||||||
|
|
||||||
-CXXFLAGS += @LIBAVCODEC_CFLAGS@ -I$(COMMONDIR)
|
|
||||||
+CXXFLAGS += @LIBAVCODEC_CFLAGS@ -I$(COMMONDIR) -fpermissive
|
|
||||||
LIBS += @DL_LIBS@
|
|
||||||
|
|
||||||
HAVE_LIBAVCODEC_RTP_MODE=@HAVE_LIBAVCODEC_RTP_MODE@
|
|
||||||
--- plugins/video/H.264/h264-x264.cxx
|
|
||||||
+++ plugins/video/H.264/h264-x264.cxx
|
|
||||||
@@ -36,6 +36,15 @@
|
|
||||||
* $Date: 2014/04/29 09:02:06 $
|
|
||||||
*/
|
|
||||||
|
|
||||||
+#define FF_ER_AGGRESSIVE 3
|
|
||||||
+#define CODEC_FLAG2_BRDO 0x00000400
|
|
||||||
+#define CODEC_FLAG2_MEMC_ONLY 0x00001000
|
|
||||||
+#define CODEC_FLAG2_DROP_FRAME_TIMECODE 0x00002000
|
|
||||||
+#define CODEC_FLAG2_SKIP_RD 0x00004000 ///< RD optimal MB level residual skipping
|
|
||||||
+#define FF_IDCT_H264 11
|
|
||||||
+
|
|
||||||
+#include <stdio.h>
|
|
||||||
+
|
|
||||||
#ifndef PLUGIN_CODEC_DLL_EXPORTS
|
|
||||||
#include "plugin-config.h"
|
|
||||||
#endif
|
|
||||||
@@ -104,7 +113,7 @@
|
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
-FFMPEGLibrary FFMPEGLibraryInstance(CODEC_ID_H264);
|
|
||||||
+FFMPEGLibrary FFMPEGLibraryInstance(AV_CODEC_ID_H264);
|
|
||||||
|
|
||||||
PLUGINCODEC_CONTROL_LOG_FUNCTION_DEF
|
|
||||||
|
|
||||||
@@ -1064,7 +1073,7 @@
|
|
||||||
allows you to fail the create operation (return false), which cannot
|
|
||||||
be done in the normal C++ constructor. */
|
|
||||||
|
|
||||||
- if ((m_codec = FFMPEGLibraryInstance.AvcodecFindDecoder(CODEC_ID_H264)) == NULL)
|
|
||||||
+ if ((m_codec = FFMPEGLibraryInstance.AvcodecFindDecoder(AV_CODEC_ID_H264)) == NULL)
|
|
||||||
return false;
|
|
||||||
|
|
||||||
if ((m_context = FFMPEGLibraryInstance.AvcodecAllocContext()) == NULL)
|
|
||||||
@@ -1072,7 +1081,7 @@
|
|
||||||
|
|
||||||
m_context->workaround_bugs = FF_BUG_AUTODETECT;
|
|
||||||
#ifdef FF_ER_AGGRESSIVE
|
|
||||||
- m_context->error_recognition = FF_ER_AGGRESSIVE;
|
|
||||||
+ m_context->err_recognition = FF_ER_AGGRESSIVE;
|
|
||||||
#endif
|
|
||||||
m_context->idct_algo = FF_IDCT_H264;
|
|
||||||
m_context->error_concealment = FF_EC_GUESS_MVS | FF_EC_DEBLOCK;
|
|
||||||
|
|
||||||
--- plugins/video/MPEG4-ffmpeg/mpeg4.cxx
|
|
||||||
+++ plugins/video/MPEG4-ffmpeg/mpeg4.cxx
|
|
||||||
@@ -53,6 +53,11 @@
|
|
||||||
|
|
||||||
*/
|
|
||||||
|
|
||||||
+#define CODEC_FLAG_H263P_UMV 0x02000000
|
|
||||||
+#define CODEC_FLAG_H263P_SLICE_STRUCT 0x10000000
|
|
||||||
+#define FF_I_TYPE 1
|
|
||||||
+#define CODEC_FLAG_PART 0x0080
|
|
||||||
+
|
|
||||||
// Plugin specific
|
|
||||||
#define _CRT_SECURE_NO_DEPRECATE
|
|
||||||
|
|
||||||
@@ -205,7 +210,7 @@
|
|
||||||
{ 0 }
|
|
||||||
};
|
|
||||||
|
|
||||||
-FFMPEGLibrary FFMPEGLibraryInstance(CODEC_ID_MPEG4);
|
|
||||||
+FFMPEGLibrary FFMPEGLibraryInstance(AV_CODEC_ID_MPEG4);
|
|
||||||
|
|
||||||
|
|
||||||
static bool mpeg4IsIframe (BYTE * frameBuffer, unsigned int frameLen )
|
|
||||||
@@ -701,7 +706,7 @@
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
- if((m_avcodec = FFMPEGLibraryInstance.AvcodecFindEncoder(CODEC_ID_MPEG4)) == NULL){
|
|
||||||
+ if((m_avcodec = FFMPEGLibraryInstance.AvcodecFindEncoder(AV_CODEC_ID_MPEG4)) == NULL){
|
|
||||||
PTRACE(1, "MPEG4", "Encoder not found");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
@@ -1391,7 +1396,7 @@
|
|
||||||
|
|
||||||
bool MPEG4DecoderContext::OpenCodec()
|
|
||||||
{
|
|
||||||
- if ((m_avcodec = FFMPEGLibraryInstance.AvcodecFindDecoder(CODEC_ID_MPEG4)) == NULL) {
|
|
||||||
+ if ((m_avcodec = FFMPEGLibraryInstance.AvcodecFindDecoder(AV_CODEC_ID_MPEG4)) == NULL) {
|
|
||||||
PTRACE(1, "MPEG4", "Decoder not found for encoder");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
--- plugins/video/MPEG4-ffmpeg/Makefile.in
|
|
||||||
+++ plugins/video/MPEG4-ffmpeg/Makefile.in
|
|
||||||
@@ -30,7 +30,7 @@
|
|
||||||
SRCDIR := .
|
|
||||||
SRCS := mpeg4.cxx $(COMMONDIR)/dyna.cxx
|
|
||||||
|
|
||||||
-CXXFLAGS += @LIBAVCODEC_CFLAGS@ -I$(COMMONDIR)
|
|
||||||
+CXXFLAGS += @LIBAVCODEC_CFLAGS@ -I$(COMMONDIR) -fpermissive
|
|
||||||
LIBS += @DL_LIBS@
|
|
||||||
|
|
||||||
# Add LIBAVCODEC_SOURCE_DIR to the include path so we can #include <libavcodec/...h>
|
|
|
@ -1,131 +0,0 @@
|
||||||
diff -uNr opal-3.10.8.orig/plugins/plugin-inc.mak.in opal-3.10.8/plugins/plugin-inc.mak.in
|
|
||||||
--- opal-3.10.8.orig/plugins/plugin-inc.mak.in 2012-10-24 12:07:31.000000000 -0400
|
|
||||||
+++ opal-3.10.8/plugins/plugin-inc.mak.in 2012-10-24 12:09:22.000000000 -0400
|
|
||||||
@@ -31,11 +31,13 @@
|
|
||||||
CC := @CC@
|
|
||||||
CXX := @CXX@
|
|
||||||
CFLAGS += @CFLAGS@ -I@prefix@/include -I$(PLUGINDIR)/../include -I$(PLUGINDIR)
|
|
||||||
+CXXFLAGS += @CXXFLAGS@ -I@prefix@/include -I$(PLUGINDIR)/../include -I$(PLUGINDIR)
|
|
||||||
LDFLAGS += @LDFLAGS@ @LDSO@
|
|
||||||
PLUGINEXT :=@PLUGINEXT@
|
|
||||||
|
|
||||||
ifneq ($(DEBUG),)
|
|
||||||
CFLAGS += -g
|
|
||||||
+CXXFLAGS += -g
|
|
||||||
endif
|
|
||||||
|
|
||||||
OBJDIR := $(PLUGINDIR)/../lib_@OSTYPE@_@MACHTYPE@/plugins/$(BASENAME)
|
|
||||||
@@ -64,11 +66,11 @@
|
|
||||||
|
|
||||||
$(OBJDIR)/%.o : %.cxx
|
|
||||||
@mkdir -p $(OBJDIR) >/dev/null 2>&1
|
|
||||||
- $(Q_CC)$(CXX) -c $(CXXFLAGS) $(CFLAGS) -o $@ $<
|
|
||||||
+ $(Q_CC)$(CXX) -c $(CXXFLAGS) -o $@ $<
|
|
||||||
|
|
||||||
$(OBJDIR)/%.o : %.cpp
|
|
||||||
@mkdir -p $(OBJDIR) >/dev/null 2>&1
|
|
||||||
- $(Q_CC)$(CXX) -c $(CXXFLAGS) $(CFLAGS) -o $@ $<
|
|
||||||
+ $(Q_CC)$(CXX) -c $(CXXFLAGS) -o $@ $<
|
|
||||||
|
|
||||||
OBJECTS = $(addprefix $(OBJDIR)/,$(patsubst %.cxx,%.o,$(patsubst %.cpp,%.o,$(patsubst %.c,%.o,$(notdir $(SRCS))))))
|
|
||||||
|
|
||||||
diff -uNr opal-3.10.8.orig/plugins/video/H.261-vic/Makefile.in opal-3.10.8/plugins/video/H.261-vic/Makefile.in
|
|
||||||
--- opal-3.10.8.orig/plugins/video/H.261-vic/Makefile.in 2012-10-24 12:07:46.000000000 -0400
|
|
||||||
+++ opal-3.10.8/plugins/video/H.261-vic/Makefile.in 2012-10-24 12:04:10.000000000 -0400
|
|
||||||
@@ -39,7 +39,7 @@
|
|
||||||
$(SRCDIR)/bv.c \
|
|
||||||
|
|
||||||
|
|
||||||
-CFLAGS += -I$(COMMONDIR)
|
|
||||||
+CXXFLAGS += -I$(COMMONDIR)
|
|
||||||
|
|
||||||
INSTALL_DIR := @VC_PLUGIN_DIR@
|
|
||||||
PLUGINDIR := @PLUGINDIR@
|
|
||||||
diff -uNr opal-3.10.8.orig/plugins/video/H.263-1998/Makefile.in opal-3.10.8/plugins/video/H.263-1998/Makefile.in
|
|
||||||
--- opal-3.10.8.orig/plugins/video/H.263-1998/Makefile.in 2012-10-24 12:08:02.000000000 -0400
|
|
||||||
+++ opal-3.10.8/plugins/video/H.263-1998/Makefile.in 2012-10-24 12:04:00.000000000 -0400
|
|
||||||
@@ -34,12 +34,12 @@
|
|
||||||
$(COMMONDIR)/mpi.cxx \
|
|
||||||
$(COMMONDIR)/dyna.cxx
|
|
||||||
|
|
||||||
-CFLAGS += @LIBAVCODEC_CFLAGS@ -I$(COMMONDIR)
|
|
||||||
+CXXFLAGS += @LIBAVCODEC_CFLAGS@ -I$(COMMONDIR)
|
|
||||||
LIBS += @DL_LIBS@
|
|
||||||
|
|
||||||
HAVE_LIBAVCODEC_RTP_MODE=@HAVE_LIBAVCODEC_RTP_MODE@
|
|
||||||
ifeq ($(HAVE_LIBAVCODEC_RTP_MODE),yes)
|
|
||||||
-CFLAGS += -DLIBAVCODEC_RTP_MODE=1
|
|
||||||
+CXXFLAGS += -DLIBAVCODEC_RTP_MODE=1
|
|
||||||
endif
|
|
||||||
|
|
||||||
vpath %.cxx $(COMMONDIR)
|
|
||||||
diff -uNr opal-3.10.8.orig/plugins/video/H.264/gpl/Makefile.in opal-3.10.8/plugins/video/H.264/gpl/Makefile.in
|
|
||||||
--- opal-3.10.8.orig/plugins/video/H.264/gpl/Makefile.in 2012-10-24 12:06:15.000000000 -0400
|
|
||||||
+++ opal-3.10.8/plugins/video/H.264/gpl/Makefile.in 2012-10-24 12:11:11.000000000 -0400
|
|
||||||
@@ -47,6 +47,7 @@
|
|
||||||
CC =@CC@
|
|
||||||
CXX =@CXX@
|
|
||||||
CFLAGS =@X264_CFLAGS@ -I.. -I$(PLUGINDIR) -I$(OPALDIR)/include -DGPL_HELPER_APP -DPLUGINCODEC_TRACING
|
|
||||||
+CXXFLAGS =@X264_CFLAGS@ -I.. -I$(PLUGINDIR) -I$(OPALDIR)/include -DGPL_HELPER_APP -DPLUGINCODEC_TRACING
|
|
||||||
LDFLAGS =@LDFLAGS@ @X264_LIBS@
|
|
||||||
|
|
||||||
|
|
||||||
@@ -59,7 +60,7 @@
|
|
||||||
|
|
||||||
$(OBJDIR)/%.o : %.cxx
|
|
||||||
@mkdir -p $(OBJDIR) >/dev/null 2>&1
|
|
||||||
- $(Q_CC)$(CXX) $(CFLAGS) -c $< -o $@
|
|
||||||
+ $(Q_CC)$(CXX) $(CXXFLAGS) -c $< -o $@
|
|
||||||
|
|
||||||
$(OBJDIR)/%.o : %.c
|
|
||||||
@mkdir -p $(OBJDIR) >/dev/null 2>&1
|
|
||||||
diff -uNr opal-3.10.8.orig/plugins/video/H.264/Makefile.in opal-3.10.8/plugins/video/H.264/Makefile.in
|
|
||||||
--- opal-3.10.8.orig/plugins/video/H.264/Makefile.in 2012-10-24 12:08:17.000000000 -0400
|
|
||||||
+++ opal-3.10.8/plugins/video/H.264/Makefile.in 2012-10-24 12:04:29.000000000 -0400
|
|
||||||
@@ -34,12 +34,12 @@
|
|
||||||
$(SHAREDDIR)/x264wrap.cxx \
|
|
||||||
$(COMMONDIR)/dyna.cxx \
|
|
||||||
|
|
||||||
-CFLAGS += @LIBAVCODEC_CFLAGS@ -I$(COMMONDIR) -DLIB_DIR='"$(libdir)"' -DVC_PLUGIN_DIR='"@VC_PLUGIN_DIR@"'
|
|
||||||
+CXXFLAGS += @LIBAVCODEC_CFLAGS@ -I$(COMMONDIR) -DLIB_DIR='"$(libdir)"' -DVC_PLUGIN_DIR='"@VC_PLUGIN_DIR@"'
|
|
||||||
LIBS += @DL_LIBS@
|
|
||||||
|
|
||||||
IS_H264_LICENSED:=@IS_H264_LICENSED@
|
|
||||||
ifeq ($(IS_H264_LICENSED),yes)
|
|
||||||
- CFLAGS += @X264_CFLAGS@ -DX264_LICENSED
|
|
||||||
+ CXXFLAGS += @X264_CFLAGS@ -DX264_LICENSED
|
|
||||||
LIBS += @X264_LIBS@
|
|
||||||
else
|
|
||||||
SUBDIRS := gpl
|
|
||||||
diff -uNr opal-3.10.8.orig/plugins/video/MPEG4-ffmpeg/Makefile.in opal-3.10.8/plugins/video/MPEG4-ffmpeg/Makefile.in
|
|
||||||
--- opal-3.10.8.orig/plugins/video/MPEG4-ffmpeg/Makefile.in 2012-10-24 12:08:36.000000000 -0400
|
|
||||||
+++ opal-3.10.8/plugins/video/MPEG4-ffmpeg/Makefile.in 2012-10-24 12:04:45.000000000 -0400
|
|
||||||
@@ -30,14 +30,14 @@
|
|
||||||
SRCDIR := .
|
|
||||||
SRCS := mpeg4.cxx $(COMMONDIR)/dyna.cxx
|
|
||||||
|
|
||||||
-CFLAGS += @LIBAVCODEC_CFLAGS@ -I$(COMMONDIR)
|
|
||||||
+CXXFLAGS += @LIBAVCODEC_CFLAGS@ -I$(COMMONDIR)
|
|
||||||
LIBS += @DL_LIBS@
|
|
||||||
|
|
||||||
# Add LIBAVCODEC_SOURCE_DIR to the include path so we can #include <libavcodec/...h>
|
|
||||||
# Also add libavutil, so ffmpeg headers can #include "log.h".
|
|
||||||
LIBAVCODEC_SOURCE_DIR := @LIBAVCODEC_SOURCE_DIR@
|
|
||||||
ifneq (,$(LIBAVCODEC_SOURCE_DIR))
|
|
||||||
-CFLAGS += -I$(LIBAVCODEC_SOURCE_DIR) -I$(LIBAVCODEC_SOURCE_DIR)/libavutil
|
|
||||||
+CXXFLAGS += -I$(LIBAVCODEC_SOURCE_DIR) -I$(LIBAVCODEC_SOURCE_DIR)/libavutil
|
|
||||||
endif
|
|
||||||
|
|
||||||
vpath %.cxx $(COMMONDIR)
|
|
||||||
diff -uNr opal-3.10.8.orig/plugins/video/THEORA/Makefile.in opal-3.10.8/plugins/video/THEORA/Makefile.in
|
|
||||||
--- opal-3.10.8.orig/plugins/video/THEORA/Makefile.in 2012-10-24 12:08:47.000000000 -0400
|
|
||||||
+++ opal-3.10.8/plugins/video/THEORA/Makefile.in 2012-10-24 12:05:00.000000000 -0400
|
|
||||||
@@ -30,7 +30,7 @@
|
|
||||||
SRCDIR := .
|
|
||||||
SRCS := theora_frame.cxx theora_plugin.cxx
|
|
||||||
|
|
||||||
-CFLAGS += @THEORA_CFLAGS@ -I$(COMMONDIR)
|
|
||||||
+CXXFLAGS += @THEORA_CFLAGS@ -I$(COMMONDIR)
|
|
||||||
LIBS += @THEORA_LIBS@
|
|
||||||
|
|
||||||
INSTALL_DIR := @VC_PLUGIN_DIR@
|
|
|
@ -1,13 +0,0 @@
|
||||||
# Sent to upstream on 2012-10-23
|
|
||||||
# By Jesus Rivero <neurogeek@gentoo.org>
|
|
||||||
diff -uNr opal-3.10.8.orig/include/h323/h323.h opal-3.10.8/include/h323/h323.h
|
|
||||||
--- opal-3.10.8.orig/include/h323/h323.h 2012-10-22 07:50:37.000000000 -0400
|
|
||||||
+++ opal-3.10.8/include/h323/h323.h 2012-10-23 14:10:37.000000000 -0400
|
|
||||||
@@ -40,6 +40,7 @@
|
|
||||||
#include <h323/h323con.h>
|
|
||||||
#include <h323/gkclient.h>
|
|
||||||
#include <opal/buildopts.h>
|
|
||||||
+#include <ptlib.h>
|
|
||||||
|
|
||||||
PString OpalGetVersion();
|
|
||||||
unsigned OpalGetMajorVersion();
|
|
|
@ -1,189 +0,0 @@
|
||||||
Note: This is not optimal but is backported from what is in the 3.12 branch.
|
|
||||||
|
|
||||||
|
|
||||||
r28871 | rjongbloed | 2013-01-13 02:18:43 -0300 (Sun, 13 Jan 2013) | 2 lines
|
|
||||||
|
|
||||||
Fixed compile against latest FFMPEG, specifically Mac OS-X "port" version. Have no idea what all the deprecated symbols are replaced by!
|
|
||||||
|
|
||||||
Index: opal-3.10.9/plugins/video/H.263-1998/h263-1998.cxx
|
|
||||||
===================================================================
|
|
||||||
--- opal-3.10.9.orig/plugins/video/H.263-1998/h263-1998.cxx
|
|
||||||
+++ opal-3.10.9/plugins/video/H.263-1998/h263-1998.cxx
|
|
||||||
@@ -312,6 +312,7 @@ void H263_Base_EncoderContext::SetOption
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
+#ifdef CODEC_FLAG_H263P_UMV
|
|
||||||
if (STRCMPI(option, H263_ANNEX_D) == 0) {
|
|
||||||
// Annex D: Unrestructed Motion Vectors
|
|
||||||
// Level 2+
|
|
||||||
@@ -322,7 +323,9 @@ void H263_Base_EncoderContext::SetOption
|
|
||||||
m_context->flags &= ~CODEC_FLAG_H263P_UMV;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
+#endif
|
|
||||||
|
|
||||||
+#ifdef CODEC_FLAG_OBMC
|
|
||||||
#if 0 // DO NOT ENABLE THIS FLAG. FFMPEG IS NOT THREAD_SAFE WHEN THIS FLAG IS SET
|
|
||||||
if (STRCMPI(option, H263_ANNEX_F) == 0) {
|
|
||||||
// Annex F: Advanced Prediction Mode
|
|
||||||
@@ -334,7 +337,9 @@ void H263_Base_EncoderContext::SetOption
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
+#endif
|
|
||||||
|
|
||||||
+#ifdef CODEC_FLAG_AC_PRED
|
|
||||||
if (STRCMPI(option, H263_ANNEX_I) == 0) {
|
|
||||||
// Annex I: Advanced Intra Coding
|
|
||||||
// Level 3+
|
|
||||||
@@ -345,7 +350,9 @@ void H263_Base_EncoderContext::SetOption
|
|
||||||
m_context->flags &= ~CODEC_FLAG_AC_PRED;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
+#endif
|
|
||||||
|
|
||||||
+#ifdef CODEC_FLAG_LOOP_FILTER
|
|
||||||
if (STRCMPI(option, H263_ANNEX_J) == 0) {
|
|
||||||
// Annex J: Deblocking Filter
|
|
||||||
// works with eyeBeam
|
|
||||||
@@ -355,7 +362,9 @@ void H263_Base_EncoderContext::SetOption
|
|
||||||
m_context->flags &= ~CODEC_FLAG_LOOP_FILTER;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
+#endif
|
|
||||||
|
|
||||||
+#ifdef CODEC_FLAG_H263P_SLICE_STRUCT
|
|
||||||
if (STRCMPI(option, H263_ANNEX_K) == 0) {
|
|
||||||
// Annex K: Slice Structure
|
|
||||||
// does not work with eyeBeam
|
|
||||||
@@ -365,7 +374,9 @@ void H263_Base_EncoderContext::SetOption
|
|
||||||
m_context->flags &= ~CODEC_FLAG_H263P_SLICE_STRUCT;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
+#endif
|
|
||||||
|
|
||||||
+#ifdef CODEC_FLAG_H263P_AIV
|
|
||||||
if (STRCMPI(option, H263_ANNEX_S) == 0) {
|
|
||||||
// Annex S: Alternative INTER VLC mode
|
|
||||||
// does not work with eyeBeam
|
|
||||||
@@ -375,6 +386,7 @@ void H263_Base_EncoderContext::SetOption
|
|
||||||
m_context->flags &= ~CODEC_FLAG_H263P_AIV;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
+#endif
|
|
||||||
|
|
||||||
if (STRCMPI(option, PLUGINCODEC_MEDIA_PACKETIZATION) == 0 ||
|
|
||||||
STRCMPI(option, PLUGINCODEC_MEDIA_PACKETIZATIONS) == 0) {
|
|
||||||
@@ -452,12 +464,24 @@ bool H263_Base_EncoderContext::OpenCodec
|
|
||||||
|
|
||||||
#define CODEC_TRACER_FLAG(tracer, flag) \
|
|
||||||
PTRACE(4, m_prefix, #flag " is " << ((m_context->flags & flag) ? "enabled" : "disabled"));
|
|
||||||
+#ifdef CODEC_FLAG_H263P_UMV
|
|
||||||
CODEC_TRACER_FLAG(tracer, CODEC_FLAG_H263P_UMV);
|
|
||||||
+#endif
|
|
||||||
+#ifdef CODEC_FLAG_OBMC
|
|
||||||
CODEC_TRACER_FLAG(tracer, CODEC_FLAG_OBMC);
|
|
||||||
+#endif
|
|
||||||
+#ifdef CODEC_FLAG_AC_PRED
|
|
||||||
CODEC_TRACER_FLAG(tracer, CODEC_FLAG_AC_PRED);
|
|
||||||
+#endif
|
|
||||||
+#ifdef CODEC_FLAG_H263P_SLICE_STRUCT
|
|
||||||
CODEC_TRACER_FLAG(tracer, CODEC_FLAG_H263P_SLICE_STRUCT)
|
|
||||||
+#endif
|
|
||||||
+#ifdef CODEC_FLAG_LOOP_FILTER
|
|
||||||
CODEC_TRACER_FLAG(tracer, CODEC_FLAG_LOOP_FILTER);
|
|
||||||
+#endif
|
|
||||||
+#ifdef CODEC_FLAG_H263P_AIV
|
|
||||||
CODEC_TRACER_FLAG(tracer, CODEC_FLAG_H263P_AIV);
|
|
||||||
+#endif
|
|
||||||
|
|
||||||
return FFMPEGLibraryInstance.AvcodecOpen(m_context, m_codec) == 0;
|
|
||||||
}
|
|
||||||
@@ -521,7 +545,7 @@ bool H263_Base_EncoderContext::EncodeFra
|
|
||||||
|
|
||||||
// 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 +627,21 @@ bool H263_RFC2190_EncoderContext::Init()
|
|
||||||
m_context->rtp_callback = &H263_RFC2190_EncoderContext::RTPCallBack;
|
|
||||||
m_context->opaque = this; // used to separate out packets from different encode threads
|
|
||||||
|
|
||||||
+#ifdef CODEC_FLAG_H263P_UMV
|
|
||||||
m_context->flags &= ~CODEC_FLAG_H263P_UMV;
|
|
||||||
+#endif
|
|
||||||
+#ifdef CODEC_FLAG_4MV
|
|
||||||
m_context->flags &= ~CODEC_FLAG_4MV;
|
|
||||||
-#if LIBAVCODEC_RTP_MODE
|
|
||||||
+#endif
|
|
||||||
+#if LIBAVCODEC_RTP_MODE && defined(CODEC_FLAG_H263P_AIC)
|
|
||||||
m_context->flags &= ~CODEC_FLAG_H263P_AIC;
|
|
||||||
#endif
|
|
||||||
+#ifdef CODEC_FLAG_H263P_AIV
|
|
||||||
m_context->flags &= ~CODEC_FLAG_H263P_AIV;
|
|
||||||
+#endif
|
|
||||||
+#ifdef CODEC_FLAG_H263P_SLICE_STRUCT
|
|
||||||
m_context->flags &= ~CODEC_FLAG_H263P_SLICE_STRUCT;
|
|
||||||
+#endif
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
Index: opal-3.10.9/plugins/video/H.264/h264-x264.cxx
|
|
||||||
===================================================================
|
|
||||||
--- opal-3.10.9.orig/plugins/video/H.264/h264-x264.cxx
|
|
||||||
+++ opal-3.10.9/plugins/video/H.264/h264-x264.cxx
|
|
||||||
@@ -1071,13 +1071,13 @@ class MyDecoder : public PluginCodec<MY_
|
|
||||||
return false;
|
|
||||||
|
|
||||||
m_context->workaround_bugs = FF_BUG_AUTODETECT;
|
|
||||||
+#ifdef FF_ER_AGGRESSIVE
|
|
||||||
m_context->error_recognition = FF_ER_AGGRESSIVE;
|
|
||||||
+#endif
|
|
||||||
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;
|
|
||||||
|
|
||||||
Index: opal-3.10.9/plugins/video/MPEG4-ffmpeg/mpeg4.cxx
|
|
||||||
===================================================================
|
|
||||||
--- opal-3.10.9.orig/plugins/video/MPEG4-ffmpeg/mpeg4.cxx
|
|
||||||
+++ opal-3.10.9/plugins/video/MPEG4-ffmpeg/mpeg4.cxx
|
|
||||||
@@ -594,12 +594,10 @@ void MPEG4EncoderContext::SetStaticEncod
|
|
||||||
#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;
|
|
||||||
/*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;
|
|
||||||
#endif
|
|
||||||
m_avcontext->opaque = this; // for use in RTP callback
|
|
||||||
}
|
|
||||||
@@ -804,7 +802,7 @@ int MPEG4EncoderContext::EncodeFrames(co
|
|
||||||
// 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
|
|
||||||
{
|
|
||||||
@@ -1325,7 +1323,6 @@ void MPEG4DecoderContext::SetFrameHeight
|
|
||||||
|
|
||||||
void MPEG4DecoderContext::SetStaticDecodingParams() {
|
|
||||||
m_avcontext->flags |= CODEC_FLAG_4MV;
|
|
||||||
- m_avcontext->flags |= CODEC_FLAG_PART;
|
|
||||||
m_avcontext->workaround_bugs = 0; // no workaround for buggy implementations
|
|
||||||
}
|
|
||||||
|
|
|
@ -1,29 +0,0 @@
|
||||||
diff -uNr opal-3.10.9.orig/Makefile.in opal-3.10.9/Makefile.in
|
|
||||||
--- opal-3.10.9.orig/Makefile.in 2012-12-03 11:09:17.000000000 -0500
|
|
||||||
+++ opal-3.10.9/Makefile.in 2012-12-03 11:09:35.000000000 -0500
|
|
||||||
@@ -371,9 +371,9 @@
|
|
||||||
ifeq ($(OPAL_JAVA), yes)
|
|
||||||
|
|
||||||
JAVA_SRCDIR = $(OPAL_SRCDIR)/java
|
|
||||||
-JAVA_WRAPPER = $(JAVA_SRCDIR)/java_swig_wrapper.c
|
|
||||||
+JAVA_WRAPPER = $(JAVA_SRCDIR)/java_swig_wrapper.cxx
|
|
||||||
|
|
||||||
-VPATH_C += $(JAVA_SRCDIR)
|
|
||||||
+VPATH_CXX += $(JAVA_SRCDIR)
|
|
||||||
SOURCES += $(JAVA_WRAPPER)
|
|
||||||
|
|
||||||
endif
|
|
||||||
@@ -384,10 +384,10 @@
|
|
||||||
|
|
||||||
ifeq ($(OPAL_RUBY), yes)
|
|
||||||
|
|
||||||
-RUBY_SRCDIR = $(OPAL_SRCDIR)/ruby
|
|
||||||
-RUBY_WRAPPER = $(JAVA_SRCDIR)/ruby_swig_wrapper.c
|
|
||||||
+RUBY_SRCDIR = $(OPAL_SRCDIR)/Ruby
|
|
||||||
+RUBY_WRAPPER = $(JAVA_SRCDIR)/ruby_swig_wrapper.cxx
|
|
||||||
|
|
||||||
-VPATH_C += $(RUBY_SRCDIR)
|
|
||||||
+VPATH_CXX += $(RUBY_SRCDIR)
|
|
||||||
SOURCES += $(RUBY_WRAPPER)
|
|
||||||
|
|
||||||
endif
|
|
|
@ -1,11 +0,0 @@
|
||||||
diff -uNr opal-3.10.8.orig/plugins/audio/G.722.2/AMR-WB/dec_lpc.c opal-3.10.8/plugins/audio/G.722.2/AMR-WB/dec_lpc.c
|
|
||||||
--- opal-3.10.8.orig/plugins/audio/G.722.2/AMR-WB/dec_lpc.c 2012-10-22 07:50:37.000000000 -0400
|
|
||||||
+++ opal-3.10.8/plugins/audio/G.722.2/AMR-WB/dec_lpc.c 2012-10-22 10:20:49.000000000 -0400
|
|
||||||
@@ -3,6 +3,7 @@
|
|
||||||
* 3GPP AMR Wideband Floating-point Speech Codec
|
|
||||||
*===================================================================
|
|
||||||
*/
|
|
||||||
+#include <stdlib.h>
|
|
||||||
#include <math.h>
|
|
||||||
#include "typedef.h"
|
|
||||||
#include "dec_util.h"
|
|
|
@ -1,15 +0,0 @@
|
||||||
diff -uNr opal-3.10.8.orig/src/opal/manager.cxx opal-3.10.8/src/opal/manager.cxx
|
|
||||||
--- opal-3.10.8.orig/src/opal/manager.cxx 2012-10-22 07:50:36.000000000 -0400
|
|
||||||
+++ opal-3.10.8/src/opal/manager.cxx 2012-10-22 08:30:45.000000000 -0400
|
|
||||||
@@ -56,7 +56,10 @@
|
|
||||||
#include <ptclib/url.h>
|
|
||||||
|
|
||||||
#include "../../version.h"
|
|
||||||
-#include "../../revision.h"
|
|
||||||
+
|
|
||||||
+# define SVN_REVISION 0
|
|
||||||
+//#include "../../revision.h"
|
|
||||||
+
|
|
||||||
|
|
||||||
|
|
||||||
static const char * const DefaultMediaFormatOrder[] = {
|
|
|
@ -1,41 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
|
||||||
<pkgmetadata>
|
|
||||||
<!-- maintainer-needed -->
|
|
||||||
<use>
|
|
||||||
<flag name="capi">Enable CAPI support</flag>
|
|
||||||
<flag name="celt">Enable CELT ultra-low delay audio codec</flag>
|
|
||||||
<flag name="dtmf">Enable DTMF encoding/decoding support</flag>
|
|
||||||
<flag name="fax">Enable T.38 FAX protocol</flag>
|
|
||||||
<flag name="h224">Enable H.224 real time control protocol</flag>
|
|
||||||
<flag name="h281">Enable H.281 Far-End Camera Control protocol</flag>
|
|
||||||
<flag name="h323">Enable H.323 protocol</flag>
|
|
||||||
<flag name="iax">Enable Inter-Asterisk eXchange protocol</flag>
|
|
||||||
<flag name="ivr">Enable Interactive Voice Response</flag>
|
|
||||||
<flag name="ilbc">Enable iLBC (RFC 3951) speech codec</flag>
|
|
||||||
<flag name="ixj">Enable xJack cards support</flag>
|
|
||||||
<flag name="lid">Enable Line Interface Device</flag>
|
|
||||||
<flag name="plugins">Enable plugins support</flag>
|
|
||||||
<flag name="sbc">Enable the Bluetooth low-complexity, SubBand Codec
|
|
||||||
</flag>
|
|
||||||
<flag name="sip">Enable Session Initiation Protocol</flag>
|
|
||||||
<flag name="sipim">Enable SIP Instant Messages session</flag>
|
|
||||||
<flag name="srtp">Enable Secure Real-time Transport Protocol</flag>
|
|
||||||
<flag name="stats">Enable statistic reporting</flag>
|
|
||||||
<flag name="swig">Use swig to generate bindings</flag>
|
|
||||||
<flag name="video">Enable video support</flag>
|
|
||||||
<flag name="vpb">Enable Voicetronics VPB card support</flag>
|
|
||||||
<flag name="vxml">Enable VXML support</flag>
|
|
||||||
<flag name="wav">Enable WAVFILE support</flag>
|
|
||||||
<flag name="x264-static">Install x264 plugin statically linked with x264
|
|
||||||
</flag>
|
|
||||||
<!-- unused atm
|
|
||||||
<flag name="g711plc">Enable G711 Packet Loss Concealment</flag>
|
|
||||||
<flag name="msrp">Enable Message Session Relay Protocol</flag>
|
|
||||||
<flag name="rfc4103">Enable RTP Payload for Text Conversation</flag>
|
|
||||||
-->
|
|
||||||
</use>
|
|
||||||
<upstream>
|
|
||||||
<remote-id type="sourceforge">opalvoip</remote-id>
|
|
||||||
</upstream>
|
|
||||||
</pkgmetadata>
|
|
|
@ -1,257 +0,0 @@
|
||||||
# Copyright 1999-2016 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
EAPI=5
|
|
||||||
|
|
||||||
inherit eutils autotools toolchain-funcs java-pkg-opt-2 flag-o-matic
|
|
||||||
|
|
||||||
DESCRIPTION="C++ class library normalising numerous telephony protocols"
|
|
||||||
HOMEPAGE="http://www.opalvoip.org/"
|
|
||||||
SRC_URI="mirror://sourceforge/opalvoip/${P}.tar.bz2
|
|
||||||
doc? ( mirror://sourceforge/opalvoip/${P}-htmldoc.tar.bz2 )"
|
|
||||||
|
|
||||||
LICENSE="MPL-1.0"
|
|
||||||
SLOT="0"
|
|
||||||
KEYWORDS="alpha amd64 ia64 ppc ppc64 sparc x86"
|
|
||||||
IUSE="capi celt debug doc +dtmf examples fax ffmpeg h224 h281 h323 iax ilbc
|
|
||||||
ipv6 ivr ixj java ldap lid +plugins sbc +sip +sipim +sound srtp ssl static-libs
|
|
||||||
stats swig theora +video vpb vxml +wav x264 x264-static +xml"
|
|
||||||
|
|
||||||
REQUIRED_USE="x264-static? ( x264 )
|
|
||||||
h281? ( h224 )
|
|
||||||
sip? ( sipim )"
|
|
||||||
|
|
||||||
RDEPEND=">=net-libs/ptlib-2.10.10:=[stun,debug=,dtmf,http,ipv6?,ldap?,sound?,ssl?,video?,vxml?,wav?,xml?]
|
|
||||||
>=media-libs/speex-1.2_beta
|
|
||||||
fax? ( net-libs/ptlib[asn] )
|
|
||||||
h323? ( net-libs/ptlib[asn] )
|
|
||||||
ivr? ( net-libs/ptlib[http,xml,vxml] )
|
|
||||||
java? ( >=virtual/jre-1.4 )
|
|
||||||
plugins? (
|
|
||||||
media-sound/gsm
|
|
||||||
capi? ( net-dialup/capi4k-utils )
|
|
||||||
celt? ( media-libs/celt )
|
|
||||||
ffmpeg? ( virtual/ffmpeg[encode] )
|
|
||||||
ixj? ( sys-kernel/linux-headers )
|
|
||||||
ilbc? ( dev-libs/ilbc-rfc3951 )
|
|
||||||
sbc? ( media-libs/libsamplerate )
|
|
||||||
theora? ( media-libs/libtheora )
|
|
||||||
x264? ( virtual/ffmpeg
|
|
||||||
media-libs/x264 ) )
|
|
||||||
srtp? ( net-libs/libsrtp )
|
|
||||||
vxml? ( net-libs/ptlib[http,vxml] )"
|
|
||||||
DEPEND="${RDEPEND}
|
|
||||||
virtual/pkgconfig
|
|
||||||
>=sys-devel/gcc-3
|
|
||||||
java? ( swig? ( dev-lang/swig )
|
|
||||||
>=virtual/jdk-1.4 )"
|
|
||||||
|
|
||||||
# NOTES:
|
|
||||||
# ffmpeg[encode] is for h263 and mpeg4
|
|
||||||
# ssl, xml, vxml, ipv6, ldap, sound, wav, and video are use flags
|
|
||||||
# herited from ptlib: feature is enabled if ptlib has enabled it
|
|
||||||
# however, disabling it if ptlib has it looks hard (coz of buildopts.h)
|
|
||||||
# forcing ptlib to disable it for opal is not a solution too
|
|
||||||
# atm, accepting the "auto-feature" looks like a good solution
|
|
||||||
# (asn is used for fax and config _only_ for examples)
|
|
||||||
# OPALDIR should not be used anymore but if a package still need it, create it
|
|
||||||
|
|
||||||
pkg_setup() {
|
|
||||||
# workaround for bug 282838
|
|
||||||
append-cxxflags "-fno-visibility-inlines-hidden"
|
|
||||||
append-cxxflags "-fno-strict-aliasing"
|
|
||||||
|
|
||||||
# need >=gcc-3
|
|
||||||
if [[ $(gcc-major-version) -lt 3 ]]; then
|
|
||||||
eerror "You need to use gcc-3 at least."
|
|
||||||
eerror "Please change gcc version with 'gcc-config'."
|
|
||||||
die "You need to use gcc-3 at least."
|
|
||||||
fi
|
|
||||||
|
|
||||||
java-pkg-opt-2_pkg_setup
|
|
||||||
}
|
|
||||||
|
|
||||||
src_prepare() {
|
|
||||||
# remove visual studio related files from samples/
|
|
||||||
if use examples; then
|
|
||||||
rm -f samples/*/*.vcproj
|
|
||||||
rm -f samples/*/*.sln
|
|
||||||
rm -f samples/*/*.dsp
|
|
||||||
rm -f samples/*/*.dsw
|
|
||||||
fi
|
|
||||||
|
|
||||||
# LFS ffmpeg2+ fixes.
|
|
||||||
epatch "${FILESDIR}"/opal-3.10.10-ffmpeg2-1.patch
|
|
||||||
|
|
||||||
if ! use h323; then
|
|
||||||
# Without this patch, ekiga wont compile, even with
|
|
||||||
# USE=-h323.
|
|
||||||
epatch "${FILESDIR}/${PN}-3.10.9-disable-h323-workaround.patch"
|
|
||||||
fi
|
|
||||||
|
|
||||||
epatch "${FILESDIR}/${PN}-3.10.9-java-ruby-swig-fix.patch"
|
|
||||||
|
|
||||||
sed -i -e "s:\(.*HAS_H224.*\), \[OPAL_H323\]:\1:" configure.ac \
|
|
||||||
|| die "sed failed"
|
|
||||||
|
|
||||||
# sed fixes for ffmpeg-3.
|
|
||||||
sed -e 's/CODEC_ID/AV_&/' \
|
|
||||||
-e 's/PIX_FMT_/AV_&/' \
|
|
||||||
-i plugins/video/H.263-1998/h263-1998.cxx \
|
|
||||||
plugins/video/common/dyna.cxx \
|
|
||||||
plugins/video/H.264/h264-x264.cxx \
|
|
||||||
plugins/video/MPEG4-ffmpeg/mpeg4.cxx || die "sed failed"
|
|
||||||
|
|
||||||
eaclocal
|
|
||||||
eautoconf
|
|
||||||
|
|
||||||
# in plugins
|
|
||||||
cd plugins/
|
|
||||||
eaclocal
|
|
||||||
eautoconf
|
|
||||||
cd ..
|
|
||||||
|
|
||||||
# disable celt if celt is not enabled (prevent auto magic dep)
|
|
||||||
# already in repository
|
|
||||||
if ! use celt; then
|
|
||||||
sed -i -e "s/HAVE_CELT=yes/HAVE_CELT=no/" plugins/configure \
|
|
||||||
|| die "sed failed"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# fix automatic swig detection, upstream bug 2712521 (upstream reject it)
|
|
||||||
if ! use swig; then
|
|
||||||
sed -i -e "/^SWIG=/d" configure || die "patching configure failed"
|
|
||||||
fi
|
|
||||||
|
|
||||||
use ilbc || { rm -r plugins/audio/iLBC/ || die "removing iLBC failed"; }
|
|
||||||
|
|
||||||
java-pkg-opt-2_src_prepare
|
|
||||||
}
|
|
||||||
|
|
||||||
src_configure() {
|
|
||||||
local forcedconf=""
|
|
||||||
|
|
||||||
# fix bug 277233, upstream bug 2820939
|
|
||||||
if use fax; then
|
|
||||||
forcedconf="${forcedconf} --enable-statistics"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# --with-libavcodec-source-dir should _not_ be set, it's for trunk sources
|
|
||||||
# versioncheck: check for ptlib version
|
|
||||||
# shared: should always be enabled for a lib
|
|
||||||
# localspeex, localspeexdsp, localgsm, localilbc: never use bundled libs
|
|
||||||
# samples: only build some samples, useless
|
|
||||||
# libavcodec-stackalign-hack: prevent hack (default disable by upstream)
|
|
||||||
# default-to-full-capabilties: default enable by upstream
|
|
||||||
# aec: atm, only used when bundled speex, so it's painless for us
|
|
||||||
# zrtp doesn't depend on net-libs/libzrtpcpp but on libzrtp from
|
|
||||||
# http://zfoneproject.com/ wich is not in portage
|
|
||||||
# msrp: highly experimental
|
|
||||||
# spandsp: doesn't work with newest spandsp, upstream bug 2796047
|
|
||||||
# g711plc: force enable
|
|
||||||
# rfc4103: not really used, upstream bug 2795831
|
|
||||||
# t38, spandsp: merged in fax
|
|
||||||
# h450, h460, h501: merged in h323 (they are additional features of h323)
|
|
||||||
econf \
|
|
||||||
--enable-versioncheck \
|
|
||||||
--enable-shared \
|
|
||||||
--disable-zrtp \
|
|
||||||
--disable-localspeex \
|
|
||||||
--disable-localspeexdsp \
|
|
||||||
--disable-localgsm \
|
|
||||||
--disable-localilbc \
|
|
||||||
--disable-samples \
|
|
||||||
--disable-libavcodec-stackalign-hack \
|
|
||||||
--enable-default-to-full-capabilties \
|
|
||||||
--enable-aec \
|
|
||||||
--disable-msrp \
|
|
||||||
--disable-spandsp \
|
|
||||||
--enable-g711plc \
|
|
||||||
--enable-rfc4103 \
|
|
||||||
$(use_enable debug) \
|
|
||||||
$(use_enable capi) \
|
|
||||||
$(use_enable fax) \
|
|
||||||
$(use_enable fax t38) \
|
|
||||||
$(use_enable h224) \
|
|
||||||
$(use_enable h281) \
|
|
||||||
$(use_enable h323) \
|
|
||||||
$(use_enable h323 h450) \
|
|
||||||
$(use_enable h323 h460) \
|
|
||||||
$(use_enable h323 h501) \
|
|
||||||
$(use_enable iax) \
|
|
||||||
$(use_enable ivr) \
|
|
||||||
$(use_enable ixj) \
|
|
||||||
$(use_enable java) \
|
|
||||||
$(use_enable lid) \
|
|
||||||
$(use_enable plugins) \
|
|
||||||
$(use_enable sbc) \
|
|
||||||
$(use_enable sip) \
|
|
||||||
$(use_enable sipim) \
|
|
||||||
$(use_enable stats statistics) \
|
|
||||||
$(use_enable video) $(use_enable video rfc4175) \
|
|
||||||
$(use_enable vpb) \
|
|
||||||
$(use_enable x264 h264) \
|
|
||||||
$(use_enable x264-static x264-link-static) \
|
|
||||||
${forcedconf}
|
|
||||||
}
|
|
||||||
|
|
||||||
src_compile() {
|
|
||||||
local makeopts=""
|
|
||||||
|
|
||||||
use debug && makeopts="debug"
|
|
||||||
|
|
||||||
emake ${makeopts} || die "emake failed"
|
|
||||||
}
|
|
||||||
|
|
||||||
src_install() {
|
|
||||||
emake DESTDIR="${D}" install || die "emake install failed"
|
|
||||||
|
|
||||||
# Get rid of static libraries if not requested
|
|
||||||
# There seems to be no easy way to disable this in the build system
|
|
||||||
if ! use static-libs; then
|
|
||||||
rm -v "${D}"/usr/lib*/*.a || die
|
|
||||||
fi
|
|
||||||
|
|
||||||
if use doc; then
|
|
||||||
dohtml -r "${WORKDIR}"/html/* docs/* || die "dohtml failed"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# ChangeLog is not standard and does not exist on 3.10.10
|
|
||||||
# dodoc ChangeLog-${PN}-v${PV//./_}.txt || die "dodoc failed"
|
|
||||||
|
|
||||||
if use examples; then
|
|
||||||
local exampledir="/usr/share/doc/${PF}/examples"
|
|
||||||
local basedir="samples"
|
|
||||||
local sampledirs="`ls ${basedir} --hide=configure* \
|
|
||||||
--hide=opal_samples.mak.in`"
|
|
||||||
|
|
||||||
# first, install files
|
|
||||||
insinto ${exampledir}/
|
|
||||||
doins ${basedir}/{configure*,opal_samples*} \
|
|
||||||
|| die "doins failed"
|
|
||||||
|
|
||||||
# now, all examples
|
|
||||||
for x in ${sampledirs}; do
|
|
||||||
insinto ${exampledir}/${x}/
|
|
||||||
doins ${basedir}/${x}/* || die "doins failed"
|
|
||||||
done
|
|
||||||
|
|
||||||
# some examples need version.h
|
|
||||||
insinto "/usr/share/doc/${PF}/"
|
|
||||||
doins version.h || die "doins failed"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_postinst() {
|
|
||||||
if use examples; then
|
|
||||||
ewarn "All examples have been installed, some of them will not work on your system"
|
|
||||||
ewarn "it will depend of the enabled USE flags in ptlib and opal"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if ! use plugins || ! use sound || ! use video; then
|
|
||||||
ewarn "You have disabled sound, video or plugins USE flags."
|
|
||||||
ewarn "Most audio/video features or plugins have been disabled silently"
|
|
||||||
ewarn "even if enabled via USE flags."
|
|
||||||
ewarn "Having a feature enabled via USE flag but disabled can lead to issues."
|
|
||||||
fi
|
|
||||||
}
|
|
Loading…
Reference in a new issue