From 1aea701830442035f976a8d9adb198666a9f5df9 Mon Sep 17 00:00:00 2001
From: Gwenole Beauchesne <gbeauchesne@splitted-desktop.com>
Date: Tue, 17 Mar 2009 12:43:09 +0000
Subject: [PATCH] Amend AVCodecContext with hwaccel_context (HW accelerator
 context).

This is needed for some HW accelerators that require a context that
FFmpeg can't instantiate itself. e.g. display-dependent data from
VA API and VDPAU.

Originally committed as revision 18025 to svn://svn.ffmpeg.org/ffmpeg/trunk
---
 libavcodec/avcodec.h | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
index 10424384eae..3adc941ca83 100644
--- a/libavcodec/avcodec.h
+++ b/libavcodec/avcodec.h
@@ -2340,6 +2340,18 @@ typedef struct AVCodecContext {
      * Set to time_base ticks per frame. Default 1, e.g., H.264/MPEG-2 set it to 2.
      */
     int ticks_per_frame;
+
+    /**
+     * Hardware accelerator context.
+     * For some hardware accelerators, a global context needs to be
+     * provided by the user. In that case, this holds display-dependent
+     * data FFmpeg cannot instantiate itself. Please refer to the
+     * FFmpeg HW accelerator documentation to know how to fill this
+     * is. e.g. for VA API, this is a struct vaapi_context.
+     * - encoding: unused
+     * - decoding: Set by user
+     */
+    void *hwaccel_context;
 } AVCodecContext;
 
 /**
-- 
GitLab