summaryrefslogtreecommitdiff
path: root/libavcodec/vdpau.c
diff options
context:
space:
mode:
authorRĂ©mi Denis-Courmont <remi@remlab.net>2014-10-04 16:55:02 +0300
committerAnton Khirnov <anton@khirnov.net>2014-10-05 10:08:53 +0000
commit319424d25c53f82b87187ce03ed984d438f1bee6 (patch)
treeda4783adb66a3e18d3f930fc2d1cf72d912d7e3b /libavcodec/vdpau.c
parent2a5ac99e6e06078713f684fee2466c91f677b303 (diff)
vdpau: add helper for VDPAU to libav error codes conversion
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Diffstat (limited to 'libavcodec/vdpau.c')
-rw-r--r--libavcodec/vdpau.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/libavcodec/vdpau.c b/libavcodec/vdpau.c
index 5406874b21..581eadae36 100644
--- a/libavcodec/vdpau.c
+++ b/libavcodec/vdpau.c
@@ -38,6 +38,30 @@
* @{
*/
+static int vdpau_error(VdpStatus status)
+{
+ switch (status) {
+ case VDP_STATUS_OK:
+ return 0;
+ case VDP_STATUS_NO_IMPLEMENTATION:
+ return AVERROR(ENOSYS);
+ case VDP_STATUS_DISPLAY_PREEMPTED:
+ return AVERROR(EIO);
+ case VDP_STATUS_INVALID_HANDLE:
+ return AVERROR(EBADF);
+ case VDP_STATUS_INVALID_POINTER:
+ return AVERROR(EFAULT);
+ case VDP_STATUS_RESOURCES:
+ return AVERROR(ENOBUFS);
+ case VDP_STATUS_HANDLE_DEVICE_MISMATCH:
+ return AVERROR(EXDEV);
+ case VDP_STATUS_ERROR:
+ return AVERROR(EIO);
+ default:
+ return AVERROR(EINVAL);
+ }
+}
+
int ff_vdpau_common_start_frame(struct vdpau_picture_context *pic_ctx,
av_unused const uint8_t *buffer,
av_unused uint32_t size)