]> git.sesse.net Git - ffmpeg/blobdiff - libavcodec/qsv.c
avformat/dump: Remove remnants of codec timebase
[ffmpeg] / libavcodec / qsv.c
index 171a8d60779fe4bf99761a29470e3aa3dc452636..6e3154e1a39f573aaf58c6e047e115e0f05e4a9d 100644 (file)
@@ -64,6 +64,10 @@ int ff_qsv_codec_id_to_mfx(enum AVCodecID codec_id)
     case AV_CODEC_ID_VP9:
         return MFX_CODEC_VP9;
 #endif
+#if QSV_VERSION_ATLEAST(1, 34)
+    case AV_CODEC_ID_AV1:
+        return MFX_CODEC_AV1;
+#endif
 
     default:
         break;
@@ -219,10 +223,12 @@ int ff_qsv_map_pixfmt(enum AVPixelFormat format, uint32_t *fourcc)
         return AV_PIX_FMT_P010;
 #if CONFIG_VAAPI
     case AV_PIX_FMT_YUV422P:
+    case AV_PIX_FMT_YUYV422:
         *fourcc = MFX_FOURCC_YUY2;
         return AV_PIX_FMT_YUYV422;
 #if QSV_VERSION_ATLEAST(1, 27)
     case AV_PIX_FMT_YUV422P10:
+    case AV_PIX_FMT_Y210:
         *fourcc = MFX_FOURCC_Y210;
         return AV_PIX_FMT_Y210;
 #endif
@@ -355,6 +361,7 @@ static int ff_qsv_set_display_handle(AVCodecContext *avctx, QSVSession *qs)
     av_dict_set(&child_device_opts, "driver",        "iHD",  0);
 
     ret = av_hwdevice_ctx_create(&qs->va_device_ref, AV_HWDEVICE_TYPE_VAAPI, NULL, child_device_opts, 0);
+    av_dict_free(&child_device_opts);
     if (ret < 0) {
         av_log(avctx, AV_LOG_ERROR, "Failed to create a VAAPI device.\n");
         return ret;
@@ -369,8 +376,6 @@ static int ff_qsv_set_display_handle(AVCodecContext *avctx, QSVSession *qs)
         }
     }
 
-    av_dict_free(&child_device_opts);
-
     return 0;
 }
 #endif //AVCODEC_QSV_LINUX_SESSION_HANDLE