[FFmpeg-cvslog] libopenh264enc: Add support for building with OpenH264 1.4

Martin Storsjö git at videolan.org
Fri Mar 6 11:56:19 CET 2015


ffmpeg | branch: master | Martin Storsjö <martin at martin.st> | Thu Mar  5 13:57:44 2015 +0200| [25c29d32835f38cdc5f0c84fa27dfc489a228770] | committer: Martin Storsjö

libopenh264enc: Add support for building with OpenH264 1.4

Signed-off-by: Martin Storsjö <martin at martin.st>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=25c29d32835f38cdc5f0c84fa27dfc489a228770
---

 libavcodec/libopenh264enc.c |    8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/libavcodec/libopenh264enc.c b/libavcodec/libopenh264enc.c
index 459a0ef..e3f9a95 100644
--- a/libavcodec/libopenh264enc.c
+++ b/libavcodec/libopenh264enc.c
@@ -39,6 +39,10 @@ typedef struct SVCContext {
     char *profile;
 } SVCContext;
 
+#define OPENH264_VER_AT_LEAST(maj, min) \
+    ((OPENH264_MAJOR  > (maj)) || \
+     (OPENH264_MAJOR == (maj) && OPENH264_MINOR >= (min)))
+
 #define OFFSET(x) offsetof(SVCContext, x)
 #define VE AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_ENCODING_PARAM
 static const AVOption options[] = {
@@ -103,7 +107,11 @@ static av_cold int svc_encode_init(AVCodecContext *avctx)
     param.bEnableLongTermReference   = 0;
     param.iLtrMarkPeriod             = 30;
     param.uiIntraPeriod              = avctx->gop_size;
+#if OPENH264_VER_AT_LEAST(1, 4)
+    param.eSpsPpsIdStrategy          = CONSTANT_ID;
+#else
     param.bEnableSpsPpsIdAddition    = 0;
+#endif
     param.bPrefixNalAddingCtrl       = 0;
     param.iLoopFilterDisableIdc      = !s->loopfilter;
     param.iEntropyCodingModeFlag     = 0;



More information about the ffmpeg-cvslog mailing list