]> git.sesse.net Git - ffmpeg/commitdiff
avcodec/qsvenc: Added PicTiming SEI
authorSven Dueking <sven@nablet.com>
Wed, 19 Aug 2015 08:17:40 +0000 (09:17 +0100)
committerMichael Niedermayer <michael@niedermayer.cc>
Wed, 19 Aug 2015 11:49:37 +0000 (13:49 +0200)
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
libavcodec/qsvenc.c
libavcodec/qsvenc.h
libavcodec/qsvenc_h264.c

index e5d3fa605d0e9606a5b19f178dc1fd2dc2f6398b..1532258d49ea918174ace0b87b855008fc777a59 100644 (file)
@@ -146,6 +146,9 @@ static int init_video_param(AVCodecContext *avctx, QSVEncContext *q)
         q->extco.CAVLC                = avctx->coder_type == FF_CODER_TYPE_VLC ?
                                         MFX_CODINGOPTION_ON : MFX_CODINGOPTION_UNKNOWN;
 
+        q->extco.PicTimingSEI         = q->pic_timing_sei ?
+                                        MFX_CODINGOPTION_ON : MFX_CODINGOPTION_UNKNOWN;
+
         q->extparam[0] = (mfxExtBuffer *)&q->extco;
 
         q->param.ExtParam    = q->extparam;
index 19be2aa448f0194f65bdb91fb765529bfe86e134..231648821f2dc5ff7b56501c6ebdbd6a28f291e3 100644 (file)
@@ -61,6 +61,7 @@ typedef struct QSVEncContext {
     int preset;
     int avbr_accuracy;
     int avbr_convergence;
+    int pic_timing_sei;
 
     char *load_plugins;
 } QSVEncContext;
index 95396fce1d20ed069b6ca11a08afb5542fbcc795..b15f6b2188f0162e8477b4ab5e7f2edf526c4c2c 100644 (file)
@@ -69,6 +69,7 @@ static const AVOption options[] = {
     { "idr_interval", "Distance (in I-frames) between IDR frames", OFFSET(qsv.idr_interval), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, INT_MAX, VE },
     { "avbr_accuracy",    "Accuracy of the AVBR ratecontrol",    OFFSET(qsv.avbr_accuracy),    AV_OPT_TYPE_INT, { .i64 = 0 }, 0, INT_MAX, VE },
     { "avbr_convergence", "Convergence of the AVBR ratecontrol", OFFSET(qsv.avbr_convergence), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, INT_MAX, VE },
+    { "pic_timing_sei",    "Insert picture timing SEI with pic_struct_syntax element", OFFSET(qsv.pic_timing_sei), AV_OPT_TYPE_INT, { .i64 = 1 }, 0, 1, VE },
 
     { "profile", NULL, OFFSET(qsv.profile), AV_OPT_TYPE_INT, { .i64 = MFX_PROFILE_UNKNOWN }, 0, INT_MAX, VE, "profile" },
     { "unknown" , NULL, 0, AV_OPT_TYPE_CONST, { .i64 = MFX_PROFILE_UNKNOWN      }, INT_MIN, INT_MAX,     VE, "profile" },