diff --git a/libavcodec/libopenh264enc.c b/libavcodec/libopenh264enc.c index 9be3a97d78..00fd9df00d 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;