msdk: set parameters in mfxFrameData for a MFX_FOURCC_Y410 frame
authorHaihao Xiang <haihao.xiang@intel.com>
Fri, 31 May 2019 07:37:51 +0000 (15:37 +0800)
committerVíctor Manuel Jáquez Leal <vjaquez@igalia.com>
Sat, 29 Jun 2019 15:33:57 +0000 (17:33 +0200)
sys/msdk/gstmsdkallocator_libva.c
sys/msdk/gstmsdksystemmemory.c

index f0243c0..0ce7972 100644 (file)
@@ -356,6 +356,10 @@ gst_msdk_frame_lock (mfxHDL pthis, mfxMemId mid, mfxFrameData * data)
         data->U = data->Y + 2;
         data->V = data->Y + 6;
         break;
+      case VA_FOURCC_Y410:
+        data->Pitch = mem_id->image.pitches[0];
+        data->U = buf + mem_id->image.offsets[0];       /* data->Y410 */
+        break;
 #endif
 
       default:
index add427a..51bde40 100644 (file)
@@ -144,6 +144,11 @@ ensure_data (GstMsdkSystemMemory * mem)
       mem->surface->Data.V = mem->surface->Data.Y + 6;
       mem->surface->Data.Pitch = mem->destination_pitches[0];
       break;
+    case GST_VIDEO_FORMAT_Y410:
+      mem->surface->Data.U = mem->cached_data[0];       /* Data.Y410 */
+      mem->surface->Data.Pitch = mem->destination_pitches[0];
+      break;
+
     default:
       g_assert_not_reached ();
       break;