summaryrefslogtreecommitdiff
path: root/libavcodec/vdpau.h
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2014-12-27 13:06:25 +0100
committerMichael Niedermayer <michaelni@gmx.at>2014-12-27 13:06:25 +0100
commitd7aaeea5402c81c83960080c5e6086560a962419 (patch)
tree407a243c65efa33260c8f4994339f15497fece92 /libavcodec/vdpau.h
parentddb9a24a7f11c448263ef9b163e8425832cb089c (diff)
parentc220a60f92dde9c7c118fc4deddff5c1f617cda9 (diff)
Merge commit 'c220a60f92dde9c7c118fc4deddff5c1f617cda9'
* commit 'c220a60f92dde9c7c118fc4deddff5c1f617cda9': vdpau: add helper for surface chroma type and size Conflicts: libavcodec/vdpau.c libavcodec/version.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/vdpau.h')
-rw-r--r--libavcodec/vdpau.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/libavcodec/vdpau.h b/libavcodec/vdpau.h
index 100677902e..a42ca013f2 100644
--- a/libavcodec/vdpau.h
+++ b/libavcodec/vdpau.h
@@ -170,6 +170,26 @@ int av_vdpau_bind_context(AVCodecContext *avctx, VdpDevice device,
VdpGetProcAddress *get_proc_address, unsigned flags);
/**
+ * Gets the parameters to create an adequate VDPAU video surface for the codec
+ * context using VDPAU hardware decoding acceleration.
+ *
+ * @note Behavior is undefined if the context was not successfully bound to a
+ * VDPAU device using av_vdpau_bind_context().
+ *
+ * @param avctx the codec context being used for decoding the stream
+ * @param type storage space for the VDPAU video surface chroma type
+ * (or NULL to ignore)
+ * @param width storage space for the VDPAU video surface pixel width
+ * (or NULL to ignore)
+ * @param height storage space for the VDPAU video surface pixel height
+ * (or NULL to ignore)
+ *
+ * @return 0 on success, a negative AVERROR code on failure.
+ */
+int av_vdpau_get_surface_parameters(AVCodecContext *avctx, VdpChromaType *type,
+ uint32_t *width, uint32_t *height);
+
+/**
* Allocate an AVVDPAUContext.
*
* @return Newly-allocated AVVDPAUContext or NULL on failure.