qsvencoder: Don't use USAGE_HINT_ENCODER and enable derived image support
authorSeungha Yang <seungha@centricular.com>
Mon, 4 Apr 2022 11:47:03 +0000 (20:47 +0900)
committerGStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org>
Mon, 4 Apr 2022 21:18:13 +0000 (21:18 +0000)
Peformance issue by disabled derived image support was reported

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2111>

subprojects/gst-plugins-bad/sys/qsv/gstqsvencoder.cpp

index 213b565..684fbab 100644 (file)
@@ -893,7 +893,7 @@ gst_qsv_encoder_prepare_va_pool (GstQsvEncoder * self,
 
   priv->internal_pool = gst_va_pool_new_with_config (caps,
       GST_VIDEO_INFO_SIZE (aligned_info), 0, 0,
-      VA_SURFACE_ATTRIB_USAGE_HINT_ENCODER, GST_VA_FEATURE_DISABLED,
+      VA_SURFACE_ATTRIB_USAGE_HINT_GENERIC, GST_VA_FEATURE_AUTO,
       allocator, &params);
   gst_object_unref (allocator);
 
@@ -1479,12 +1479,9 @@ gst_qsv_encoder_propose_allocation (GstVideoEncoder * encoder, GstQuery * query)
     return FALSE;
   }
 
-  /* Will not use derived image
-   * https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1110
-   */
   pool = gst_va_pool_new_with_config (caps,
       GST_VIDEO_INFO_SIZE (&info), priv->surface_pool->len, 0,
-      VA_SURFACE_ATTRIB_USAGE_HINT_ENCODER, GST_VA_FEATURE_DISABLED,
+      VA_SURFACE_ATTRIB_USAGE_HINT_GENERIC, GST_VA_FEATURE_AUTO,
       allocator, &params);
 
   if (!pool) {