]> git.sesse.net Git - ffmpeg/blobdiff - libavutil/hwcontext_internal.h
Merge commit 'c73fb9efb22c8d66d24de2716f7f9970f234c3c3'
[ffmpeg] / libavutil / hwcontext_internal.h
index cf24ce5eafe7738b41853bcd0c210a7eaaeb938e..f18b616fcab94c8be0f6c9e2d61482f7ad454758 100644 (file)
@@ -47,6 +47,12 @@ typedef struct HWContextType {
      */
     size_t             device_priv_size;
 
+    /**
+     * Size of the hardware-specific device configuration.
+     * (Used to query hwframe constraints.)
+     */
+    size_t             device_hwconfig_size;
+
     /**
      * size of the public frame pool hardware-specific context,
      * i.e. AVHWFramesContext.hwctx
@@ -61,6 +67,10 @@ typedef struct HWContextType {
     int              (*device_init)(AVHWDeviceContext *ctx);
     void             (*device_uninit)(AVHWDeviceContext *ctx);
 
+    int              (*frames_get_constraints)(AVHWDeviceContext *ctx,
+                                               const void *hwconfig,
+                                               AVHWFramesConstraints *constraints);
+
     int              (*frames_init)(AVHWFramesContext *ctx);
     void             (*frames_uninit)(AVHWFramesContext *ctx);
 
@@ -87,6 +97,7 @@ struct AVHWFramesInternal {
 };
 
 extern const HWContextType ff_hwcontext_type_cuda;
+extern const HWContextType ff_hwcontext_type_vaapi;
 extern const HWContextType ff_hwcontext_type_vdpau;
 
 #endif /* AVUTIL_HWCONTEXT_INTERNAL_H */