util/format: Add more multi-planar formats.
[mesa.git] / src / gallium / include / pipe / p_format.h
index a51843caa203b888f7bf37a7ff10517f9a0cda99..f1a4652c36eca96916f31af4f159f2658adbca5b 100644 (file)
@@ -58,6 +58,7 @@ enum pipe_format {
    PIPE_FORMAT_UYVY,
    PIPE_FORMAT_YUYV,
    PIPE_FORMAT_Z16_UNORM,
+   PIPE_FORMAT_Z16_UNORM_S8_UINT,
    PIPE_FORMAT_Z32_UNORM,
    PIPE_FORMAT_Z32_FLOAT,
    PIPE_FORMAT_Z24_UNORM_S8_UINT,
@@ -239,6 +240,18 @@ enum pipe_format {
    PIPE_FORMAT_NV12,
    PIPE_FORMAT_NV21,
 
+   /* PIPE_FORMAT_Y8_U8_V8_420_UNORM = IYUV */
+   /* PIPE_FORMAT_Y8_U8V8_420_UNORM = NV12 */
+   PIPE_FORMAT_Y8_U8_V8_422_UNORM,
+   PIPE_FORMAT_Y8_U8V8_422_UNORM,
+   PIPE_FORMAT_Y8_U8_V8_444_UNORM,
+
+   PIPE_FORMAT_Y16_U16_V16_420_UNORM,
+    /* PIPE_FORMAT_Y16_U16V16_420_UNORM */
+   PIPE_FORMAT_Y16_U16_V16_422_UNORM,
+   PIPE_FORMAT_Y16_U16V16_422_UNORM,
+   PIPE_FORMAT_Y16_U16_V16_444_UNORM,
+
    PIPE_FORMAT_A4R4_UNORM,
    PIPE_FORMAT_R4A4_UNORM,
    PIPE_FORMAT_R8A8_UNORM,
@@ -570,11 +583,19 @@ pipe_format_to_chroma_format(enum pipe_format format)
       case PIPE_FORMAT_IYUV:
       case PIPE_FORMAT_P010:
       case PIPE_FORMAT_P016:
+      case PIPE_FORMAT_Y16_U16_V16_420_UNORM:
          return PIPE_VIDEO_CHROMA_FORMAT_420;
       case PIPE_FORMAT_UYVY:
       case PIPE_FORMAT_YUYV:
       case PIPE_FORMAT_YV16:
+      case PIPE_FORMAT_Y8_U8_V8_422_UNORM:
+      case PIPE_FORMAT_Y8_U8V8_422_UNORM:
+      case PIPE_FORMAT_Y16_U16_V16_422_UNORM:
+      case PIPE_FORMAT_Y16_U16V16_422_UNORM:
          return PIPE_VIDEO_CHROMA_FORMAT_422;
+      case PIPE_FORMAT_Y8_U8_V8_444_UNORM:
+      case PIPE_FORMAT_Y16_U16_V16_444_UNORM:
+         return PIPE_VIDEO_CHROMA_FORMAT_444;
       default:
          return PIPE_VIDEO_CHROMA_FORMAT_NONE;
    }