summaryrefslogtreecommitdiff
path: root/libavcodec/qsv_internal.h
diff options
context:
space:
mode:
authorMark Thompson <sw@jkqxz.net>2017-03-30 22:06:03 +0100
committerMark Thompson <sw@jkqxz.net>2017-03-30 22:06:03 +0100
commitc0f2a8eac172ce720a513abe1706a026236c0579 (patch)
tree9e88b168279cf1bd024460610ecd219a6f25a1d9 /libavcodec/qsv_internal.h
parent2f18e452f88fc6ed7b0e308d4de5c386ee1b3a12 (diff)
parent00aeedd84105a17f414185bd33ecadebeddb3a27 (diff)
downloadffmpeg-c0f2a8eac172ce720a513abe1706a026236c0579.tar.gz
Merge commit '00aeedd84105a17f414185bd33ecadebeddb3a27'
* commit '00aeedd84105a17f414185bd33ecadebeddb3a27': qsv{dec,enc}: use a struct as a memory id with internal memory allocator Merged-by: Mark Thompson <sw@jkqxz.net>
Diffstat (limited to 'libavcodec/qsv_internal.h')
-rw-r--r--libavcodec/qsv_internal.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/libavcodec/qsv_internal.h b/libavcodec/qsv_internal.h
index b1567fbef8..624b2b8308 100644
--- a/libavcodec/qsv_internal.h
+++ b/libavcodec/qsv_internal.h
@@ -38,6 +38,10 @@
(MFX_VERSION_MAJOR > (MAJOR) || \
MFX_VERSION_MAJOR == (MAJOR) && MFX_VERSION_MINOR >= (MINOR))
+typedef struct QSVMid {
+ mfxHDL handle;
+} QSVMid;
+
typedef struct QSVFrame {
AVFrame *frame;
mfxFrameSurface1 surface;
@@ -52,8 +56,8 @@ typedef struct QSVFrame {
typedef struct QSVFramesContext {
AVBufferRef *hw_frames_ctx;
mfxFrameInfo info;
- mfxMemId *mids;
- int nb_mids;
+ QSVMid *mids;
+ int nb_mids;
} QSVFramesContext;
/**
@@ -79,4 +83,6 @@ int ff_qsv_init_session_hwcontext(AVCodecContext *avctx, mfxSession *session,
QSVFramesContext *qsv_frames_ctx,
const char *load_plugins, int opaque);
+int ff_qsv_find_surface_idx(QSVFramesContext *ctx, QSVFrame *frame);
+
#endif /* AVCODEC_QSV_INTERNAL_H */