diff mbox

[FFmpeg-devel,V3,2/4] lavc/vaapi_encode: Add max slices number query.

Message ID 5e0a7a6c-55d9-cdd0-a6e0-4eaa789adfc9@gmail.com
State Superseded
Headers show

Commit Message

Jun Zhao Aug. 18, 2017, 2:13 a.m. UTC
From 23201c7288b07fc117279a2efca7372158564730 Mon Sep 17 00:00:00 2001
From: Jun Zhao <jun.zhao@intel.com>
Date: Tue, 1 Aug 2017 04:16:30 -0400
Subject: [PATCH V3 2/4] lavc/vaapi_encode: Add max slices number query.

Add max slices number query.

Signed-off-by: Jun Zhao <jun.zhao@intel.com>
---
 libavcodec/vaapi_encode.c | 4 ++++
 libavcodec/vaapi_encode.h | 4 ++++
 2 files changed, 8 insertions(+)
diff mbox

Patch

diff --git a/libavcodec/vaapi_encode.c b/libavcodec/vaapi_encode.c
index afc3970d44..f4275dfab4 100644
--- a/libavcodec/vaapi_encode.c
+++ b/libavcodec/vaapi_encode.c
@@ -971,6 +971,7 @@  static av_cold int vaapi_encode_config_attributes(AVCodecContext *avctx)
         { VAConfigAttribRTFormat         },
         { VAConfigAttribRateControl      },
         { VAConfigAttribEncMaxRefFrames  },
+        { VAConfigAttribEncMaxSlices     },
         { VAConfigAttribEncPackedHeaders },
     };
 
@@ -1101,6 +1102,9 @@  static av_cold int vaapi_encode_config_attributes(AVCodecContext *avctx)
             }
         }
         break;
+        case VAConfigAttribEncMaxSlices:
+            ctx->max_slices = attr[i].value;
+            break;
         case VAConfigAttribEncPackedHeaders:
             if (ctx->va_packed_headers & ~attr[i].value) {
                 // This isn't fatal, but packed headers are always
diff --git a/libavcodec/vaapi_encode.h b/libavcodec/vaapi_encode.h
index e9aaec6f74..59633bb60f 100644
--- a/libavcodec/vaapi_encode.h
+++ b/libavcodec/vaapi_encode.h
@@ -158,6 +158,10 @@  typedef struct VAAPIEncodeContext {
         VAEncMiscParameterFrameRate fr;
     } fr_params;
 
+    // Supported max-slices number per frame. (0 means driver cannot
+    // support max mutil-slices query)
+    int             max_slices;
+
     // Per-sequence parameter structure (VAEncSequenceParameterBuffer*).
     void           *codec_sequence_params;