--- plugins/video/H.264/h264-x264.cxx 2013-03-14 12:51:48.000000000 +0100 +++ ../opal_patch/plugins/video/H.264/h264-x264.cxx 2013-03-13 14:55:26.000000000 +0100 @@ -36,6 +36,15 @@ * $Date: 2012-07-18 05:41:57 +0200 (Wed, 18 Jul 2012) $ */ +#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 + #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,14 +1073,14 @@ 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) return false; m_context->workaround_bugs = FF_BUG_AUTODETECT; - m_context->error_recognition = FF_ER_AGGRESSIVE; +// 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;