speedhq: fix decoding artifacts
[ffmpeg.git] / libavcodec / qsv.c
index efd7cea..aac6ce6 100644 (file)
@@ -105,6 +105,21 @@ int ff_qsv_error(int mfx_err)
     }
 }
 
+int ff_qsv_map_pixfmt(enum AVPixelFormat format, uint32_t *fourcc)
+{
+    switch (format) {
+    case AV_PIX_FMT_YUV420P:
+    case AV_PIX_FMT_YUVJ420P:
+        *fourcc = MFX_FOURCC_NV12;
+        return AV_PIX_FMT_NV12;
+    case AV_PIX_FMT_YUV420P10:
+        *fourcc = MFX_FOURCC_P010;
+        return AV_PIX_FMT_P010;
+    default:
+        return AVERROR(ENOSYS);
+    }
+}
+
 static int qsv_load_plugins(mfxSession session, const char *load_plugins,
                             void *logctx)
 {