aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/qsv.h
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2015-07-20 14:30:07 +0200
committerAnton Khirnov <anton@khirnov.net>2015-09-28 15:44:47 +0200
commitd0c8c380ecf3d9bb16621a4fb59ebbcde301002a (patch)
tree910ee239110c26f8929a7fb85c58581aeaafd39d /libavcodec/qsv.h
parent5d2daebf3cc8de4cee1973db6a2229beaad3b7cd (diff)
downloadffmpeg-d0c8c380ecf3d9bb16621a4fb59ebbcde301002a.tar.gz
qsv: document AVQSVContext members
Diffstat (limited to 'libavcodec/qsv.h')
-rw-r--r--libavcodec/qsv.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/libavcodec/qsv.h b/libavcodec/qsv.h
index 6532594257..922b8582a4 100644
--- a/libavcodec/qsv.h
+++ b/libavcodec/qsv.h
@@ -23,10 +23,29 @@
#include <mfx/mfxvideo.h>
+/**
+ * This struct is used for communicating QSV parameters between libavcodec and
+ * the caller. It is managed by the caller and must be assigned to
+ * AVCodecContext.hwaccel_context.
+ * - decoding: hwaccel_context must be set on return from the get_format()
+ * callback
+ * - encoding: hwaccel_context must be set before avcodec_open2()
+ */
typedef struct AVQSVContext {
+ /**
+ * If non-NULL, the session to use for encoding or decoding.
+ * Otherwise, libavcodec will try to create an internal session.
+ */
mfxSession session;
+
+ /**
+ * The IO pattern to use.
+ */
int iopattern;
+ /**
+ * Extra buffers to pass to encoder or decoder initialization.
+ */
mfxExtBuffer **ext_buffers;
int nb_ext_buffers;
} AVQSVContext;