diff imgconvert.c @ 9011:90c99bda19f5 libavcodec

Approved hunks for VAAPI / our new shiny hwaccel API by Gwenole Beauchesne gbeauchesne splitted desktop com
author michael
date Mon, 23 Feb 2009 13:35:52 +0000
parents 043574c5c153
children d041d818f35c
line wrap: on
line diff
--- a/imgconvert.c	Sun Feb 22 23:13:00 2009 +0000
+++ b/imgconvert.c	Mon Feb 23 13:35:52 2009 +0000
@@ -57,6 +57,7 @@
     uint8_t color_type;      /**< color type (see FF_COLOR_xxx constants) */
     uint8_t pixel_type;      /**< pixel storage type (see FF_PIXEL_xxx constants) */
     uint8_t is_alpha : 1;    /**< true if alpha can be specified */
+    uint8_t is_hwaccel : 1;  /**< true if this is an HW accelerated format */
     uint8_t x_chroma_shift;  /**< X chroma subsampling factor is 2 ^ shift */
     uint8_t y_chroma_shift;  /**< Y chroma subsampling factor is 2 ^ shift */
     uint8_t depth;           /**< bit depth of the color components */
@@ -279,24 +280,31 @@
     },
     [PIX_FMT_XVMC_MPEG2_MC] = {
         .name = "xvmcmc",
+        .is_hwaccel = 1,
     },
     [PIX_FMT_XVMC_MPEG2_IDCT] = {
         .name = "xvmcidct",
+        .is_hwaccel = 1,
     },
     [PIX_FMT_VDPAU_MPEG1] = {
         .name = "vdpau_mpeg1",
+        .is_hwaccel = 1,
     },
     [PIX_FMT_VDPAU_MPEG2] = {
         .name = "vdpau_mpeg2",
+        .is_hwaccel = 1,
     },
     [PIX_FMT_VDPAU_H264] = {
         .name = "vdpau_h264",
+        .is_hwaccel = 1,
     },
     [PIX_FMT_VDPAU_WMV3] = {
         .name = "vdpau_wmv3",
+        .is_hwaccel = 1,
     },
     [PIX_FMT_VDPAU_VC1] = {
         .name = "vdpau_vc1",
+        .is_hwaccel = 1,
     },
     [PIX_FMT_UYYVYY411] = {
         .name = "uyyvyy411",
@@ -459,6 +467,11 @@
     }
 }
 
+int ff_is_hwaccel_pix_fmt(enum PixelFormat pix_fmt)
+{
+    return pix_fmt_info[pix_fmt].is_hwaccel;
+}
+
 int ff_set_systematic_pal(uint32_t pal[256], enum PixelFormat pix_fmt){
     int i;