msdk: change the wait time for encoder and vpp
authorHaihao Xiang <haihao.xiang@intel.com>
Wed, 12 Dec 2018 07:24:18 +0000 (15:24 +0800)
committerVíctor Manuel Jáquez Leal <vjaquez@igalia.com>
Wed, 12 Dec 2018 17:24:00 +0000 (17:24 +0000)
In MSDK samples, the wait time for encoder, decoder and vpp is
300000. Let's set the wait time to the same value in msdk plugin

sys/msdk/gstmsdkenc.c
sys/msdk/gstmsdkvpp.c

index 6a0db48..bc9d4d3 100644 (file)
@@ -685,9 +685,12 @@ gst_msdkenc_finish_frame (GstMsdkEnc * thiz, MsdkEncTask * task,
     return GST_FLOW_ERROR;
   }
 
-  /* Wait for encoding operation to complete */
+  /* Wait for encoding operation to complete, the magic number 300000 below
+   * is used in MSDK samples
+   * #define MSDK_ENC_WAIT_INTERVAL 300000
+   */
   MFXVideoCORE_SyncOperation (gst_msdk_context_get_session (thiz->context),
-      task->sync_point, 10000);
+      task->sync_point, 300000);
   if (!discard && task->output_bitstream.DataLength) {
     GstBuffer *out_buf = NULL;
     guint8 *data =
index 5917590..d6fe056 100644 (file)
@@ -699,8 +699,12 @@ gst_msdkvpp_transform (GstBaseTransform * trans, GstBuffer * inbuf,
     if (status == MFX_ERR_MORE_DATA)
       goto error_more_data;
 
+    /* Wait for vpp operation to complete, the magic number 300000 below
+     * is used in MSDK samples
+     * #define MSDK_VPP_WAIT_INTERVAL 300000
+     */
     if (sync_point)
-      MFXVideoCORE_SyncOperation (session, sync_point, 10000);
+      MFXVideoCORE_SyncOperation (session, sync_point, 300000);
 
     /* More than one output buffers are generated */
     if (status == MFX_ERR_MORE_SURFACE) {