////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2026 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

// NOWHINE ENTIRE FILE
/// @file g_chifeature2xmltypes.h
/// @brief chifeature2xmltypes type definitions [Warning: This file is autogenerated. Do not make local edits to this file!]
///           Make edits to chifeature2types.xml
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
#ifndef G_CHIFEATURE2XMLTYPES_H
#define G_CHIFEATURE2XMLTYPES_H

#include <array>

union ChiFeature2InstanceFlags
{
    struct
    {
        UINT isNZSLSnapshot        : 1;
        UINT isSWRemosaicSnapshot  : 1;
        UINT isHWRemosaicSnapshot  : 1;
        UINT isBPSCamera           : 1;
        UINT isRotationRequired    : 1;
        UINT isHDRWithMFHDRMode    : 1;
        UINT isHDRWithSHDRMode     : 1;
        UINT isHDRWithQHDRMode     : 1;
        UINT isHDR                 : 1;
        UINT is3ExpHDRSnapshot     : 1;
        UINT is2ExpHDRSnapshot     : 1;
        UINT stabilizationMode     : 3;
        UINT isAIDenoiserSnapshot  : 1;
        UINT isCDSSnapshot         : 1;
        UINT isF2PlayerUsecase     : 1;
        UINT isQLL                 : 1;
        UINT isPseudoZSLSnapshot   : 1;
        UINT isAFB                 : 1;
        UINT isReprocessMode       : 1;
        UINT isOfflineIFE          : 1;
        UINT isHVXHDRMode          : 1;
        UINT isRawHDR              : 1;
        UINT isNZSLHRSnapshot      : 1;
        UINT reserved              : 7;
    };

    UINT value;
};

/// @brief ChiFeature2InstanceFlags type enum string associations
static constexpr UINT32 ChiFeature2InstanceFlagsAssociationsSize = 24;
static constexpr std::array<std::pair<const CHAR*, UINT32>, ChiFeature2InstanceFlagsAssociationsSize> ChiFeature2InstanceFlagsAssociations =
{{
    { "isNZSLSnapshot"        , 1 },
    { "isSWRemosaicSnapshot"  , 1 },
    { "isHWRemosaicSnapshot"  , 1 },
    { "isBPSCamera"           , 1 },
    { "isRotationRequired"    , 1 },
    { "isHDRWithMFHDRMode"    , 1 },
    { "isHDRWithSHDRMode"     , 1 },
    { "isHDRWithQHDRMode"     , 1 },
    { "isHDR"                 , 1 },
    { "is3ExpHDRSnapshot"     , 1 },
    { "is2ExpHDRSnapshot"     , 1 },
    { "stabilizationMode"     , 3 },
    { "isAIDenoiserSnapshot"  , 1 },
    { "isCDSSnapshot"         , 1 },
    { "isF2PlayerUsecase"     , 1 },
    { "isQLL"                 , 1 },
    { "isPseudoZSLSnapshot"   , 1 },
    { "isAFB"                 , 1 },
    { "isReprocessMode"       , 1 },
    { "isOfflineIFE"          , 1 },
    { "isHVXHDRMode"          , 1 },
    { "isRawHDR"              , 1 },
    { "isNZSLHRSnapshot"      , 1 },
    { "reserved"              , 7 }
}};

enum class ChiFeature2PruneType : UINT32
{
    MINVALIDTYPE                                      = 1,
    RT2ASPRUNE                                        = 1,
    PREVIEW                                           = 2,
    POSTPROC                                          = 3,
    B2YJPEG                                           = 4,
    HDRJPEG                                           = 5,
    TWOFRAMEMFHDRJPEG                                 = 6,
    THREEFRAMEMFHDRJPEG                               = 7,
    MFSRJPEG                                          = 8,
    THREEFRAMEMFSRHDRJPEG                             = 9,
    TWOFRAMEMFSRHDRJPEG                               = 10,
    B2YBOKEHJPEG                                      = 11,
    HDRBOKEHJPEG                                      = 12,
    TWOFRAMEMFHDRBOKEHJPEG                            = 13,
    THREEFRAMEMFHDRBOKEHJPEG                          = 14,
    MFSRBOKEHJPEG                                     = 15,
    THREEFRAMEMFSRHDRBOKEHJPEG                        = 16,
    TWOFRAMEMFSRHDRBOKEHJPEG                          = 17,
    B2YFUSIONJPEG                                     = 18,
    HDRFUSIONJPEG                                     = 19,
    TWOFRAMEMFHDRFUSIONJPEG                           = 20,
    THREEFRAMEMFHDRFUSIONJPEG                         = 21,
    MFSRFUSIONJPEG                                    = 22,
    THREEFRAMEMFSRHDRFUSIONJPEG                       = 23,
    TWOFRAMEMFSRHDRFUSIONJPEG                         = 24,
    B2YY2YJPEG                                        = 25,
    HDRY2YJPEG                                        = 26,
    TWOFRAMEMFHDRY2YJPEG                              = 27,
    THREEFRAMEMFHDRY2YJPEG                            = 28,
    MFSRY2YJPEG                                       = 29,
    B2YYUV                                            = 30,
    HDRYUV                                            = 31,
    TWOFRAMEMFHDRYUV                                  = 32,
    THREEFRAMEMFHDRYUV                                = 33,
    MFSRYUV                                           = 34,
    THREEFRAMEMFSRHDRYUV                              = 35,
    TWOFRAMEMFSRHDRYUV                                = 36,
    B2YBOKEHYUV                                       = 37,
    HDRBOKEHYUV                                       = 38,
    TWOFRAMEMFHDRBOKEHYUV                             = 39,
    THREEFRAMEMFHDRBOKEHYUV                           = 40,
    MFSRBOKEHYUV                                      = 41,
    THREEFRAMEMFSRHDRBOKEHYUV                         = 42,
    TWOFRAMEMFSRHDRBOKEHYUV                           = 43,
    B2YFUSIONYUV                                      = 44,
    HDRFUSIONYUV                                      = 45,
    TWOFRAMEMFHDRFUSIONYUV                            = 46,
    THREEFRAMEMFHDRFUSIONYUV                          = 47,
    MFSRFUSIONYUV                                     = 48,
    THREEFRAMEMFSRHDRFUSIONYUV                        = 49,
    TWOFRAMEMFSRHDRFUSIONYUV                          = 50,
    VIDEO4KEIS                                        = 51,
    NZSLRTMUX                                         = 52,
    RAWCB                                             = 53,
    BPSIDEALRAWCB                                     = 54,
    EXPCONTEXTRAWCB                                   = 55,
    NZSLRTRAW                                         = 56,
    MCXRTY2YPROC                                      = 57,
    MCXRTPROC                                         = 58,
    MCXPREVIEWY2Y                                     = 59,
    POSTVIEW                                          = 60,
    ASPOSTVIEW                                        = 61,
    RT2BPS                                            = 62,
    NZSLRT2BPS                                        = 63,
    NZSLSWRemosaicRT2BPS                              = 64,
    MCXPHYSICALPREVIEWY2Y                             = 65,
    B2YJPEGLOGICAL                                    = 66,
    B2YJPEGFUSIONPHYSICAL                             = 67,
    NONHDRQLLADRC                                     = 68,
    SWMFJPEG                                          = 69,
    SWMFBOKEHJPEG                                     = 70,
    SWMFFUSIONJPEG                                    = 71,
    SWMFYUV                                           = 72,
    SWMFBOKEHYUV                                      = 73,
    SWMFFUSIONYUV                                     = 74,
    SWMFAIDenoiserJPEG                                = 75,
    SWMFAIDenoiserBOKEHJPEG                           = 76,
    SWMFAIDenoiserFUSIONJPEG                          = 77,
    SWMFAIDenoiserYUV                                 = 78,
    SWMFAIDenoiserBOKEHYUV                            = 79,
    SWMFAIDenoiserFUSIONYUV                           = 80,
    NONHDRQLLMFHDR                                    = 81,
    QLLMFHDR                                          = 82,
    B2YCDSJPEG                                        = 83,
    B2YCDSBOKEHJPEG                                   = 84,
    B2YCDSFUSIONJPEG                                  = 85,
    B2YCDSY2YJPEG                                     = 86,
    B2YCDSYUV                                         = 87,
    B2YCDSBOKEHYUV                                    = 88,
    B2YCDSFUSIONYUV                                   = 89,
    B2YCDSJPEGLOGICAL                                 = 90,
    B2YCDSJPEGFUSIONPHYSICAL                          = 91,
    MFSRHDRAFBFUSION                                  = 92,
    RT2AS1EXPMFHDRPRUNE                               = 93,
    NOHDRPREVIEW                                      = 94,
    HDRPREVIEW                                        = 95,
    XHDRPREVIEW                                       = 96,
    NOHDRPREVIEWWITHDEFAULTOFFLINEPIPELINE            = 97,
    HDRPREVIEWWITHDEFAULTOFFLINEPIPELINE              = 98,
    VIDEO4KEISNOHDRPREVIEW                            = 99,
    VIDEO4KEISHDRPREVIEW                              = 100,
    VIDEO4KEISNOHDRPREVIEWWWITHDEFAULTOFFLINEPIPELINE = 101,
    VIDEO4KEISHDRPREVIEWWWITHDEFAULTOFFLINEPIPELINE   = 102,
    NONMULTIPREVIEW                                   = 103,
    NONMULTIPREVIEWPOSTPROC                           = 104,
    SWRemosaicB2YJPEG                                 = 105,
    SWRemosaicB2YYUV                                  = 106,
    SWRemosaicB2YFUSIONJPEG                           = 107,
    SWRemosaicB2YFUSIONYUV                            = 108,
    SWRemosaicB2YBOKEHJPEG                            = 109,
    SWRemosaicB2YBOKEHYUV                             = 110,
    SWRemosaicB2YJPEGLOGICAL                          = 111,
    SWRemosaicB2YJPEGFUSIONPHYSICAL                   = 112,
    SWRemosaicHDRJPEG                                 = 113,
    SWRemosaicHDRYUV                                  = 114,
    SWRemosaicHDRFUSIONJPEG                           = 115,
    SWRemosaicHDRFUSIONYUV                            = 116,
    SWRemosaicHDRBOKEHJPEG                            = 117,
    SWRemosaicHDRBOKEHYUV                             = 118,
    SWRemosaicMFSRJPEG                                = 119,
    SWRemosaicMFSRYUV                                 = 120,
    SWRemosaicMFSRFUSIONJPEG                          = 121,
    SWRemosaicMFSRFUSIONYUV                           = 122,
    SWRemosaicMFSRBOKEHJPEG                           = 123,
    SWRemosaicMFSRBOKEHYUV                            = 124,
    SWRemosaicSWMFJPEG                                = 125,
    SWRemosaicSWMFYUV                                 = 126,
    SWRemosaicSWMFFUSIONJPEG                          = 127,
    SWRemosaicSWMFFUSIONYUV                           = 128,
    SWRemosaicSWMFBOKEHJPEG                           = 129,
    SWRemosaicSWMFBOKEHYUV                            = 130,
    RTMCX2MEMCPY                                      = 131,
    RTQCFA2MUXPRUNE                                   = 132,
    MCXRTPROCDISPLAY                                  = 133,
    B2YFUSIONYUVJPEG                                  = 134,
    MFSRFUSIONYUVJPEG                                 = 135,
    HDRPOSTPROC                                       = 136,
    MFSRHDRJPEG                                       = 137,
    SWRemosaicMFSRHDRJPEG                             = 138,
    MFSRHDRBOKEHJPEG                                  = 139,
    B2YY2YYUV                                         = 140,
    RTMCX2OFFLINEIFE                                  = 141,
    OFFLINEIFERAWCB                                   = 142,
    OFFLINEIFERT2ASPRUNE                              = 143,
    OFFLINEIFERT2BPS                                  = 144,
    MFSRHDRYUV                                        = 145,
    AEBLONG                                           = 146,
    AEBSHORT                                          = 147,
    AEBB2YYUV                                         = 148,
    AEBB2YJPEG                                        = 149,
    AEBMFSRYUV                                        = 150,
    AEBMFSRJPEG                                       = 151,
    AEBRT2BPSLONG                                     = 152,
    AEBRT2BPSSHORT                                    = 153,
    XHDRMCXPREVIEWY2Y                                 = 154,
    MFSRJPEGLOGICAL                                   = 155,
    PREVIEWCBINMULTIPREVIEW                           = 156,
    PZSLQCFAB2YUVJPEG                                 = 157,
    PZSLQCFAMFSRJPEG                                  = 158,
    PZSLRTRAW                                         = 159,
    PZSLRT2BPS                                        = 160,
    BPSIDEALRAWPZSLCB                                 = 161,
    B2YMLAWBJPEG                                      = 162,
    MFHDRMLAWBJPEG                                    = 163,
    MFSRMLAWBJPEG                                     = 164,
    MFHDRMFSRMLAWBJPEG                                = 165,
    MCXPREVIEWAPPY2Y                                  = 166,
    MCXPHYSICALPREVIEWAPPY2Y                          = 167,
    DEPTHPROVIDER                                     = 168,
    MCRRT2B2Y                                         = 169,
    MCRRT2METASER2B2Y                                 = 170,
    MCRRT2MFSR                                        = 171,
    RTPOSTPROC2B2Y                                    = 172,
    RTPOSTPROC2MFSR                                   = 173,
    PZSLQCFAB2YYUV                                    = 174,
    PZSLQCFAMFSRYUV                                   = 175,
    RTCROPRAW                                         = 176,
    PZSLQCFANOREMOSAIC                                = 177,
    HDRMCXRTPROCDISPLAY                               = 178,
    MFSRYUVAIDE2                                      = 179,
    B2YJPEGP010HLG                                    = 180,
    MFSRHDRFUSIONJPEG                                 = 181,
    MFSRHDRFUSIONYUV                                  = 182,
    NZSLPOSTVIEW                                      = 183,
    NZSLRTRAWHIGH                                     = 184,
    NZSLHRRTMUX                                       = 185,
    MAXVALIDTYPE                                      = 186,
    UNDEFINED                                         = 186,
    INVALIDTYPE                                       = 191,
    MAXFEATUREINDEX                                   = 191
};

/// @brief ChiFeature2PruneType type enum string associations
static constexpr UINT32 ChiFeature2PruneTypeAssociationsSize = 190;
static constexpr std::array<std::pair<const CHAR*, UINT32>, ChiFeature2PruneTypeAssociationsSize> ChiFeature2PruneTypeAssociations =
{{
    { "MINVALIDTYPE"                                       , 1   },
    { "RT2ASPRUNE"                                         , 1   },
    { "PREVIEW"                                            , 2   },
    { "POSTPROC"                                           , 3   },
    { "B2YJPEG"                                            , 4   },
    { "HDRJPEG"                                            , 5   },
    { "TWOFRAMEMFHDRJPEG"                                  , 6   },
    { "THREEFRAMEMFHDRJPEG"                                , 7   },
    { "MFSRJPEG"                                           , 8   },
    { "THREEFRAMEMFSRHDRJPEG"                              , 9   },
    { "TWOFRAMEMFSRHDRJPEG"                                , 10  },
    { "B2YBOKEHJPEG"                                       , 11  },
    { "HDRBOKEHJPEG"                                       , 12  },
    { "TWOFRAMEMFHDRBOKEHJPEG"                             , 13  },
    { "THREEFRAMEMFHDRBOKEHJPEG"                           , 14  },
    { "MFSRBOKEHJPEG"                                      , 15  },
    { "THREEFRAMEMFSRHDRBOKEHJPEG"                         , 16  },
    { "TWOFRAMEMFSRHDRBOKEHJPEG"                           , 17  },
    { "B2YFUSIONJPEG"                                      , 18  },
    { "HDRFUSIONJPEG"                                      , 19  },
    { "TWOFRAMEMFHDRFUSIONJPEG"                            , 20  },
    { "THREEFRAMEMFHDRFUSIONJPEG"                          , 21  },
    { "MFSRFUSIONJPEG"                                     , 22  },
    { "THREEFRAMEMFSRHDRFUSIONJPEG"                        , 23  },
    { "TWOFRAMEMFSRHDRFUSIONJPEG"                          , 24  },
    { "B2YY2YJPEG"                                         , 25  },
    { "HDRY2YJPEG"                                         , 26  },
    { "TWOFRAMEMFHDRY2YJPEG"                               , 27  },
    { "THREEFRAMEMFHDRY2YJPEG"                             , 28  },
    { "MFSRY2YJPEG"                                        , 29  },
    { "B2YYUV"                                             , 30  },
    { "HDRYUV"                                             , 31  },
    { "TWOFRAMEMFHDRYUV"                                   , 32  },
    { "THREEFRAMEMFHDRYUV"                                 , 33  },
    { "MFSRYUV"                                            , 34  },
    { "THREEFRAMEMFSRHDRYUV"                               , 35  },
    { "TWOFRAMEMFSRHDRYUV"                                 , 36  },
    { "B2YBOKEHYUV"                                        , 37  },
    { "HDRBOKEHYUV"                                        , 38  },
    { "TWOFRAMEMFHDRBOKEHYUV"                              , 39  },
    { "THREEFRAMEMFHDRBOKEHYUV"                            , 40  },
    { "MFSRBOKEHYUV"                                       , 41  },
    { "THREEFRAMEMFSRHDRBOKEHYUV"                          , 42  },
    { "TWOFRAMEMFSRHDRBOKEHYUV"                            , 43  },
    { "B2YFUSIONYUV"                                       , 44  },
    { "HDRFUSIONYUV"                                       , 45  },
    { "TWOFRAMEMFHDRFUSIONYUV"                             , 46  },
    { "THREEFRAMEMFHDRFUSIONYUV"                           , 47  },
    { "MFSRFUSIONYUV"                                      , 48  },
    { "THREEFRAMEMFSRHDRFUSIONYUV"                         , 49  },
    { "TWOFRAMEMFSRHDRFUSIONYUV"                           , 50  },
    { "VIDEO4KEIS"                                         , 51  },
    { "NZSLRTMUX"                                          , 52  },
    { "RAWCB"                                              , 53  },
    { "BPSIDEALRAWCB"                                      , 54  },
    { "EXPCONTEXTRAWCB"                                    , 55  },
    { "NZSLRTRAW"                                          , 56  },
    { "MCXRTY2YPROC"                                       , 57  },
    { "MCXRTPROC"                                          , 58  },
    { "MCXPREVIEWY2Y"                                      , 59  },
    { "POSTVIEW"                                           , 60  },
    { "ASPOSTVIEW"                                         , 61  },
    { "RT2BPS"                                             , 62  },
    { "NZSLRT2BPS"                                         , 63  },
    { "NZSLSWRemosaicRT2BPS"                               , 64  },
    { "MCXPHYSICALPREVIEWY2Y"                              , 65  },
    { "B2YJPEGLOGICAL"                                     , 66  },
    { "B2YJPEGFUSIONPHYSICAL"                              , 67  },
    { "NONHDRQLLADRC"                                      , 68  },
    { "SWMFJPEG"                                           , 69  },
    { "SWMFBOKEHJPEG"                                      , 70  },
    { "SWMFFUSIONJPEG"                                     , 71  },
    { "SWMFYUV"                                            , 72  },
    { "SWMFBOKEHYUV"                                       , 73  },
    { "SWMFFUSIONYUV"                                      , 74  },
    { "SWMFAIDenoiserJPEG"                                 , 75  },
    { "SWMFAIDenoiserBOKEHJPEG"                            , 76  },
    { "SWMFAIDenoiserFUSIONJPEG"                           , 77  },
    { "SWMFAIDenoiserYUV"                                  , 78  },
    { "SWMFAIDenoiserBOKEHYUV"                             , 79  },
    { "SWMFAIDenoiserFUSIONYUV"                            , 80  },
    { "NONHDRQLLMFHDR"                                     , 81  },
    { "QLLMFHDR"                                           , 82  },
    { "B2YCDSJPEG"                                         , 83  },
    { "B2YCDSBOKEHJPEG"                                    , 84  },
    { "B2YCDSFUSIONJPEG"                                   , 85  },
    { "B2YCDSY2YJPEG"                                      , 86  },
    { "B2YCDSYUV"                                          , 87  },
    { "B2YCDSBOKEHYUV"                                     , 88  },
    { "B2YCDSFUSIONYUV"                                    , 89  },
    { "B2YCDSJPEGLOGICAL"                                  , 90  },
    { "B2YCDSJPEGFUSIONPHYSICAL"                           , 91  },
    { "MFSRHDRAFBFUSION"                                   , 92  },
    { "RT2AS1EXPMFHDRPRUNE"                                , 93  },
    { "NOHDRPREVIEW"                                       , 94  },
    { "HDRPREVIEW"                                         , 95  },
    { "XHDRPREVIEW"                                        , 96  },
    { "NOHDRPREVIEWWITHDEFAULTOFFLINEPIPELINE"             , 97  },
    { "HDRPREVIEWWITHDEFAULTOFFLINEPIPELINE"               , 98  },
    { "VIDEO4KEISNOHDRPREVIEW"                             , 99  },
    { "VIDEO4KEISHDRPREVIEW"                               , 100 },
    { "VIDEO4KEISNOHDRPREVIEWWWITHDEFAULTOFFLINEPIPELINE"  , 101 },
    { "VIDEO4KEISHDRPREVIEWWWITHDEFAULTOFFLINEPIPELINE"    , 102 },
    { "NONMULTIPREVIEW"                                    , 103 },
    { "NONMULTIPREVIEWPOSTPROC"                            , 104 },
    { "SWRemosaicB2YJPEG"                                  , 105 },
    { "SWRemosaicB2YYUV"                                   , 106 },
    { "SWRemosaicB2YFUSIONJPEG"                            , 107 },
    { "SWRemosaicB2YFUSIONYUV"                             , 108 },
    { "SWRemosaicB2YBOKEHJPEG"                             , 109 },
    { "SWRemosaicB2YBOKEHYUV"                              , 110 },
    { "SWRemosaicB2YJPEGLOGICAL"                           , 111 },
    { "SWRemosaicB2YJPEGFUSIONPHYSICAL"                    , 112 },
    { "SWRemosaicHDRJPEG"                                  , 113 },
    { "SWRemosaicHDRYUV"                                   , 114 },
    { "SWRemosaicHDRFUSIONJPEG"                            , 115 },
    { "SWRemosaicHDRFUSIONYUV"                             , 116 },
    { "SWRemosaicHDRBOKEHJPEG"                             , 117 },
    { "SWRemosaicHDRBOKEHYUV"                              , 118 },
    { "SWRemosaicMFSRJPEG"                                 , 119 },
    { "SWRemosaicMFSRYUV"                                  , 120 },
    { "SWRemosaicMFSRFUSIONJPEG"                           , 121 },
    { "SWRemosaicMFSRFUSIONYUV"                            , 122 },
    { "SWRemosaicMFSRBOKEHJPEG"                            , 123 },
    { "SWRemosaicMFSRBOKEHYUV"                             , 124 },
    { "SWRemosaicSWMFJPEG"                                 , 125 },
    { "SWRemosaicSWMFYUV"                                  , 126 },
    { "SWRemosaicSWMFFUSIONJPEG"                           , 127 },
    { "SWRemosaicSWMFFUSIONYUV"                            , 128 },
    { "SWRemosaicSWMFBOKEHJPEG"                            , 129 },
    { "SWRemosaicSWMFBOKEHYUV"                             , 130 },
    { "RTMCX2MEMCPY"                                       , 131 },
    { "RTQCFA2MUXPRUNE"                                    , 132 },
    { "MCXRTPROCDISPLAY"                                   , 133 },
    { "B2YFUSIONYUVJPEG"                                   , 134 },
    { "MFSRFUSIONYUVJPEG"                                  , 135 },
    { "HDRPOSTPROC"                                        , 136 },
    { "MFSRHDRJPEG"                                        , 137 },
    { "SWRemosaicMFSRHDRJPEG"                              , 138 },
    { "MFSRHDRBOKEHJPEG"                                   , 139 },
    { "B2YY2YYUV"                                          , 140 },
    { "RTMCX2OFFLINEIFE"                                   , 141 },
    { "OFFLINEIFERAWCB"                                    , 142 },
    { "OFFLINEIFERT2ASPRUNE"                               , 143 },
    { "OFFLINEIFERT2BPS"                                   , 144 },
    { "MFSRHDRYUV"                                         , 145 },
    { "AEBLONG"                                            , 146 },
    { "AEBSHORT"                                           , 147 },
    { "AEBB2YYUV"                                          , 148 },
    { "AEBB2YJPEG"                                         , 149 },
    { "AEBMFSRYUV"                                         , 150 },
    { "AEBMFSRJPEG"                                        , 151 },
    { "AEBRT2BPSLONG"                                      , 152 },
    { "AEBRT2BPSSHORT"                                     , 153 },
    { "XHDRMCXPREVIEWY2Y"                                  , 154 },
    { "MFSRJPEGLOGICAL"                                    , 155 },
    { "PREVIEWCBINMULTIPREVIEW"                            , 156 },
    { "PZSLQCFAB2YUVJPEG"                                  , 157 },
    { "PZSLQCFAMFSRJPEG"                                   , 158 },
    { "PZSLRTRAW"                                          , 159 },
    { "PZSLRT2BPS"                                         , 160 },
    { "BPSIDEALRAWPZSLCB"                                  , 161 },
    { "B2YMLAWBJPEG"                                       , 162 },
    { "MFHDRMLAWBJPEG"                                     , 163 },
    { "MFSRMLAWBJPEG"                                      , 164 },
    { "MFHDRMFSRMLAWBJPEG"                                 , 165 },
    { "MCXPREVIEWAPPY2Y"                                   , 166 },
    { "MCXPHYSICALPREVIEWAPPY2Y"                           , 167 },
    { "DEPTHPROVIDER"                                      , 168 },
    { "MCRRT2B2Y"                                          , 169 },
    { "MCRRT2METASER2B2Y"                                  , 170 },
    { "MCRRT2MFSR"                                         , 171 },
    { "RTPOSTPROC2B2Y"                                     , 172 },
    { "RTPOSTPROC2MFSR"                                    , 173 },
    { "PZSLQCFAB2YYUV"                                     , 174 },
    { "PZSLQCFAMFSRYUV"                                    , 175 },
    { "RTCROPRAW"                                          , 176 },
    { "PZSLQCFANOREMOSAIC"                                 , 177 },
    { "HDRMCXRTPROCDISPLAY"                                , 178 },
    { "MFSRYUVAIDE2"                                       , 179 },
    { "B2YJPEGP010HLG"                                     , 180 },
    { "MFSRHDRFUSIONJPEG"                                  , 181 },
    { "MFSRHDRFUSIONYUV"                                   , 182 },
    { "NZSLPOSTVIEW"                                       , 183 },
    { "NZSLRTRAWHIGH"                                      , 184 },
    { "NZSLHRRTMUX"                                        , 185 },
    { "MAXVALIDTYPE"                                       , 186 },
    { "UNDEFINED"                                          , 186 },
    { "INVALIDTYPE"                                        , 191 },
    { "MAXFEATUREINDEX"                                    , 191 }
}};

enum class ChiFeature2Type
{
    UNDEFINED_FEATURE,
    AFBFUSION,
    ANCHORSYNC,
    B2Y,
    B2Y_CDS,
    BOKEH,
    BPS,
    DEMUX,
    DEPTHPROVIDER,
    FORMATCONVERTOR,
    FRAME_SELECT,
    FUSION,
    GPU,
    HDR,
    IFE,
    IPE,
    JPEG,
    MCX_REALTIME,
    MC_REALTIME_REPROCESS,
    MEMCPY,
    METADATASERIALIZER,
    MFHDR,
    MFNR,
    MFSR,
    MFSR_AIDE2,
    ML,
    MLAWBSNAPSHOT,
    MUX,
    OFFLINEIFEPOSTPROC,
    OFFLINEPREVIEW,
    OFFLINEREPROCESS,
    POSTFUSIONIPE,
    RAWHDR,
    REALTIME,
    REALTIMESERIALIZER,
    REALTIME_POST_PROCESS,
    RTSWREMOSAIC,
    SERIALIZER,
    STATSREGENERATION,
    SWMF,
    SWMF_DENOISER,
    SW_REMOSAIC,
    THREEFRAMEMFHDR,
    TWOFRAMEMFHDR,
    Y2Y,
    Y2Y_MULTI_PREVIEW,
    Y2Y_REALTIME_DIFF_DIMEN,
    YUVREPROCESS,
    MaxFeatureList
};

/// @brief ChiFeature2Type type enum string associations
static constexpr UINT32 ChiFeature2TypeAssociationsSize = 49;
static constexpr std::array<const CHAR*, ChiFeature2TypeAssociationsSize> ChiFeature2TypeAssociations =
{
    "UNDEFINED_FEATURE",
    "AFBFUSION",
    "ANCHORSYNC",
    "B2Y",
    "B2Y_CDS",
    "BOKEH",
    "BPS",
    "DEMUX",
    "DEPTHPROVIDER",
    "FORMATCONVERTOR",
    "FRAME_SELECT",
    "FUSION",
    "GPU",
    "HDR",
    "IFE",
    "IPE",
    "JPEG",
    "MCX_REALTIME",
    "MC_REALTIME_REPROCESS",
    "MEMCPY",
    "METADATASERIALIZER",
    "MFHDR",
    "MFNR",
    "MFSR",
    "MFSR_AIDE2",
    "ML",
    "MLAWBSNAPSHOT",
    "MUX",
    "OFFLINEIFEPOSTPROC",
    "OFFLINEPREVIEW",
    "OFFLINEREPROCESS",
    "POSTFUSIONIPE",
    "RAWHDR",
    "REALTIME",
    "REALTIMESERIALIZER",
    "REALTIME_POST_PROCESS",
    "RTSWREMOSAIC",
    "SERIALIZER",
    "STATSREGENERATION",
    "SWMF",
    "SWMF_DENOISER",
    "SW_REMOSAIC",
    "THREEFRAMEMFHDR",
    "TWOFRAMEMFHDR",
    "Y2Y",
    "Y2Y_MULTI_PREVIEW",
    "Y2Y_REALTIME_DIFF_DIMEN",
    "YUVREPROCESS",
    "MaxFeatureList"
};


////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// DepthStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static ChiFeature2StreamDescriptor DepthStreamDesc =
{
    "DepthStreamDesc",                                                               // Name
    ChiStreamIntentDepth,                                                            // Stream Intent Mask
    ChiStreamFormatY16,                                                              // Chi Format
    NULL,                                                                            // Physical Camera
    0,                                                                               // Num Stream Props
    NULL,                                                                            // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// PostviewAppStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static ChiFeature2StreamDescriptor PostviewAppStreamDesc =
{
    "PostviewAppStreamDesc",                                                         // Name
    ChiStreamIntentPostview,                                                         // Stream Intent Mask
    ChiStreamFormatYCbCr420_888,                                                     // Chi Format
    NULL,                                                                            // Physical Camera
    0,                                                                               // Num Stream Props
    NULL,                                                                            // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// PostviewStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static ChiFeature2StreamDescriptor PostviewStreamDesc =
{
    "PostviewStreamDesc",                                                            // Name
    ChiStreamIntentPostview,                                                         // Stream Intent Mask
    ChiStreamFormatYCbCr420_888,                                                     // Chi Format
    NULL,                                                                            // Physical Camera
    0,                                                                               // Num Stream Props
    NULL,                                                                            // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// DualStillCaptureYUVStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr UINT32 DualStillCaptureYUVStreamDescProps0 = 1;

static ChiFeature2Property DualStillCaptureYUVStreamDescProps[] =
{
    { 1, "sequence", sizeof(DualStillCaptureYUVStreamDescProps0), &DualStillCaptureYUVStreamDescProps0, SequencePropType }
};

static ChiFeature2StreamDescriptor DualStillCaptureYUVStreamDesc =
{
    "DualStillCaptureYUVStreamDesc",                                                 // Name
    ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
    ChiStreamFormatYCbCr420_888,                                                     // Chi Format
    NULL,                                                                            // Physical Camera
    1,                                                                               // Num Stream Props
    &DualStillCaptureYUVStreamDescProps[0],                                          // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// RealTimeTYUVSnapshotStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiDataSpace RealTimeTYUVSnapshotStreamDescProps0[] = { DataspaceV0JFIF, DataspaceUnknown, DataspaceStandard_BT709, DataspaceDisplayP3 };

static ChiFeature2Property RealTimeTYUVSnapshotStreamDescProps[] =
{
    { 0, "dataspace", sizeof(RealTimeTYUVSnapshotStreamDescProps0), &RealTimeTYUVSnapshotStreamDescProps0, DataspacePropType }
};

static ChiFeature2StreamDescriptor RealTimeTYUVSnapshotStreamDesc =
{
    "RealTimeYUVSnapshotStreamDesc",                                                 // Name
    ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
    ChiStreamFormatYCbCr420_888,                                                     // Chi Format
    NULL,                                                                            // Physical Camera
    1,                                                                               // Num Stream Props
    &RealTimeTYUVSnapshotStreamDescProps[0],                                         // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// StillCaptureYUVStreamDesc_1
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr UINT32 StillCaptureYUVStreamDesc_1Props0 = 1;

static ChiFeature2Property StillCaptureYUVStreamDesc_1Props[] =
{
    { 1, "sequence", sizeof(StillCaptureYUVStreamDesc_1Props0), &StillCaptureYUVStreamDesc_1Props0, SequencePropType }
};

static ChiFeature2StreamDescriptor StillCaptureYUVStreamDesc_1 =
{
    "StillCaptureYUVStreamDesc_1",                                                   // Name
    ChiStreamIntentStillCapture | ChiStreamIntentVideoSnapshot,                      // Stream Intent Mask
    ChiStreamFormatYCbCr420_888,                                                     // Chi Format
    NULL,                                                                            // Physical Camera
    1,                                                                               // Num Stream Props
    &StillCaptureYUVStreamDesc_1Props[0],                                            // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// StillCaptureYUVStreamDesc_2
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr UINT32 StillCaptureYUVStreamDesc_2Props0 = 2;

static ChiFeature2Property StillCaptureYUVStreamDesc_2Props[] =
{
    { 1, "sequence", sizeof(StillCaptureYUVStreamDesc_2Props0), &StillCaptureYUVStreamDesc_2Props0, SequencePropType }
};

static ChiFeature2StreamDescriptor StillCaptureYUVStreamDesc_2 =
{
    "StillCaptureYUVStreamDesc_2",                                                   // Name
    ChiStreamIntentStillCapture | ChiStreamIntentVideoSnapshot,                      // Stream Intent Mask
    ChiStreamFormatYCbCr420_888,                                                     // Chi Format
    NULL,                                                                            // Physical Camera
    1,                                                                               // Num Stream Props
    &StillCaptureYUVStreamDesc_2Props[0],                                            // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// VideoStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiStreamFormat VideoStreamDescProps0[] = { ChiStreamFormatImplDefined, ChiStreamFormatYCbCr420_888, ChiStreamFormatRGB888 };

static ChiFeature2Property VideoStreamDescProps[] =
{
    { 2, "format", sizeof(VideoStreamDescProps0), &VideoStreamDescProps0, FormatPropType }
};

static ChiFeature2StreamDescriptor VideoStreamDesc =
{
    "VideoStreamDescriptor",                                                         // Name
    ChiStreamIntentRecord | ChiStreamIntentAnalysis,                                 // Stream Intent Mask
    static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
    NULL,                                                                            // Physical Camera
    1,                                                                               // Num Stream Props
    &VideoStreamDescProps[0],                                                        // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// YUVReprocessInputStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static ChiFeature2StreamDescriptor YUVReprocessInputStreamDesc =
{
    "YUVReprocessInputStreamDesc",                                                   // Name
    ChiStreamIntentAnalysis,                                                         // Stream Intent Mask
    ChiStreamFormatYCbCr420_888,                                                     // Chi Format
    NULL,                                                                            // Physical Camera
    0,                                                                               // Num Stream Props
    NULL,                                                                            // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// XHDRVideoStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static ChiFeature2StreamDescriptor XHDRVideoStreamDesc =
{
    "XHDRVideoStreamDescriptor",                                                     // Name
    ChiStreamIntentRecord | ChiStreamIntentAnalysis,                                 // Stream Intent Mask
    ChiStreamFormatImplDefined,                                                      // Chi Format
    NULL,                                                                            // Physical Camera
    0,                                                                               // Num Stream Props
    NULL,                                                                            // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// YUVInputStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static ChiFeature2StreamDescriptor YUVInputStreamDesc =
{
    "YUVInputStreamDesc",                                                            // Name
    ChiStreamIntentAnalysis,                                                         // Stream Intent Mask
    static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
    NULL,                                                                            // Physical Camera
    0,                                                                               // Num Stream Props
    NULL,                                                                            // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// MCXLogicalPreviewCBStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static ChiFeature2StreamDescriptor MCXLogicalPreviewCBStreamDesc =
{
    "MCXLogicalPreviewCBStreamDescriptor",                                           // Name
    ChiStreamIntentPreview | ChiStreamIntentAnalysis,                                // Stream Intent Mask
    ChiStreamFormatYCbCr420_888,                                                     // Chi Format
    NULL,                                                                            // Physical Camera
    0,                                                                               // Num Stream Props
    NULL,                                                                            // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// MCXOfflineIFEVideoStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static ChiFeature2StreamDescriptor MCXOfflineIFEVideoStreamDesc =
{
    "MCXOfflineIFEVideoStreamDescriptor",                                            // Name
    ChiStreamIntentRecord | ChiStreamIntentAnalysis,                                 // Stream Intent Mask
    static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
    "0",                                                                             // Physical Camera
    0,                                                                               // Num Stream Props
    NULL,                                                                            // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// RawOutputStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static ChiFeature2StreamDescriptor RawOutputStreamDesc =
{
    "RawOutputStreamDesc",                                                           // Name
    ChiStreamIntentRaw,                                                              // Stream Intent Mask
    ChiStreamFormatRaw16,                                                            // Chi Format
    NULL,                                                                            // Physical Camera
    0,                                                                               // Num Stream Props
    NULL,                                                                            // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// RawInputStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static ChiFeature2StreamDescriptor RawInputStreamDesc =
{
    "RawInputStreamDesc",                                                            // Name
    ChiStreamIntentRaw | ChiStreamIntentAnalysis,                                    // Stream Intent Mask
    static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
    NULL,                                                                            // Physical Camera
    0,                                                                               // Num Stream Props
    NULL,                                                                            // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// ImplSnapshotStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiDataSpace ImplSnapshotStreamDescProps0[] = { DataspaceV0JFIF, DataspaceUnknown, DataspaceStandard_BT709 };
constexpr UINT32 ImplSnapshotStreamDescProps1 = 2;

static ChiFeature2Property ImplSnapshotStreamDescProps[] =
{
    { 0, "dataspace", sizeof(ImplSnapshotStreamDescProps0), &ImplSnapshotStreamDescProps0, DataspacePropType },
    { 3, "stream_type", sizeof(ImplSnapshotStreamDescProps1), &ImplSnapshotStreamDescProps1, StreamType }
};

static ChiFeature2StreamDescriptor ImplSnapshotStreamDesc =
{
    "ImplementationStreamDesc",                                                      // Name
    ChiStreamIntentZsl,                                                              // Stream Intent Mask
    ChiStreamFormatImplDefined,                                                      // Chi Format
    NULL,                                                                            // Physical Camera
    2,                                                                               // Num Stream Props
    &ImplSnapshotStreamDescProps[0],                                                 // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// ZslStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static ChiFeature2StreamDescriptor ZslStreamDesc =
{
    "ZslStreamDesc",                                                                 // Name
    ChiStreamIntentZsl,                                                              // Stream Intent Mask
    static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
    NULL,                                                                            // Physical Camera
    0,                                                                               // Num Stream Props
    NULL,                                                                            // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// YUV420P010StreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiDataSpace YUV420P010StreamDescProps0[] = { DataspaceV0JFIF, DataspaceUnknown, DataspaceStandard_BT709, DataspaceStandardBT2020_HLG, DataspaceDisplayP3 };
constexpr UINT32 YUV420P010StreamDescProps1 = 2;

static ChiFeature2Property YUV420P010StreamDescProps[] =
{
    { 0, "dataspace", sizeof(YUV420P010StreamDescProps0), &YUV420P010StreamDescProps0, DataspacePropType },
    { 3, "stream_type", sizeof(YUV420P010StreamDescProps1), &YUV420P010StreamDescProps1, StreamType }
};

static ChiFeature2StreamDescriptor YUV420P010StreamDesc =
{
    "YUV420P010StreamDesc",                                                          // Name
    ChiStreamIntentStillCapture | ChiStreamIntentVideoSnapshot | ChiStreamIntentAnalysis, // Stream Intent Mask
    ChiStreamFormatP010,                                                             // Chi Format
    NULL,                                                                            // Physical Camera
    2,                                                                               // Num Stream Props
    &YUV420P010StreamDescProps[0],                                                   // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// P010StillCaptureStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiDataSpace P010StillCaptureStreamDescProps0[] = { DataspaceV0JFIF, DataspaceUnknown, DataspaceStandard_BT709, DataspaceStandardBT2020_HLG, DataspaceDisplayP3 };
constexpr UINT32 P010StillCaptureStreamDescProps1 = 2;

static ChiFeature2Property P010StillCaptureStreamDescProps[] =
{
    { 0, "dataspace", sizeof(P010StillCaptureStreamDescProps0), &P010StillCaptureStreamDescProps0, DataspacePropType },
    { 3, "stream_type", sizeof(P010StillCaptureStreamDescProps1), &P010StillCaptureStreamDescProps1, StreamType }
};

static ChiFeature2StreamDescriptor P010StillCaptureStreamDesc =
{
    "P010StillCaptureStreamDesc",                                                    // Name
    ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
    ChiStreamFormatP010,                                                             // Chi Format
    NULL,                                                                            // Physical Camera
    2,                                                                               // Num Stream Props
    &P010StillCaptureStreamDescProps[0],                                             // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// IMPLDefinedReprocessStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static ChiFeature2StreamDescriptor IMPLDefinedReprocessStreamDesc =
{
    "ImplementationDefinedReprocessStreamDescriptor",                                // Name
    ChiStreamIntentStillCapture | ChiStreamIntentAnalysis,                           // Stream Intent Mask
    ChiStreamFormatImplDefined,                                                      // Chi Format
    NULL,                                                                            // Physical Camera
    0,                                                                               // Num Stream Props
    NULL,                                                                            // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// MCXOfflineIFEPreviewStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static ChiFeature2StreamDescriptor MCXOfflineIFEPreviewStreamDesc =
{
    "MCXOfflineIFEPreviewStreamDescriptor",                                          // Name
    ChiStreamIntentPreview,                                                          // Stream Intent Mask
    static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
    "0",                                                                             // Physical Camera
    0,                                                                               // Num Stream Props
    NULL,                                                                            // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// RawReprocessStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiStreamFormat RawReprocessStreamDescProps0[] = { ChiStreamFormatRaw10, ChiStreamFormatRaw16 };

static ChiFeature2Property RawReprocessStreamDescProps[] =
{
    { 2, "format", sizeof(RawReprocessStreamDescProps0), &RawReprocessStreamDescProps0, FormatPropType }
};

static ChiFeature2StreamDescriptor RawReprocessStreamDesc =
{
    "RawReprocessStreamDescriptor",                                                  // Name
    ChiStreamIntentStillCapture | ChiStreamIntentAnalysis,                           // Stream Intent Mask
    static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
    NULL,                                                                            // Physical Camera
    1,                                                                               // Num Stream Props
    &RawReprocessStreamDescProps[0],                                                 // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// StillCaptureYUVStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiDataSpace StillCaptureYUVStreamDescProps0[] = { DataspaceV0JFIF, DataspaceUnknown, DataspaceStandard_BT709, DataspaceDisplayP3 };
constexpr UINT32 StillCaptureYUVStreamDescProps1 = 2;

static ChiFeature2Property StillCaptureYUVStreamDescProps[] =
{
    { 0, "dataspace", sizeof(StillCaptureYUVStreamDescProps0), &StillCaptureYUVStreamDescProps0, DataspacePropType },
    { 3, "stream_type", sizeof(StillCaptureYUVStreamDescProps1), &StillCaptureYUVStreamDescProps1, StreamType }
};

static ChiFeature2StreamDescriptor StillCaptureYUVStreamDesc =
{
    "StillCaptureYUVStreamDesc",                                                     // Name
    ChiStreamIntentStillCapture | ChiStreamIntentVideoSnapshot,                      // Stream Intent Mask
    ChiStreamFormatYCbCr420_888,                                                     // Chi Format
    NULL,                                                                            // Physical Camera
    2,                                                                               // Num Stream Props
    &StillCaptureYUVStreamDescProps[0],                                              // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// MemcpyOutputStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static ChiFeature2StreamDescriptor MemcpyOutputStreamDesc =
{
    "MemcpyOutputStreamDesc",                                                        // Name
    ChiStreamIntentAnalysis,                                                         // Stream Intent Mask
    ChiStreamFormatYCbCr420_888,                                                     // Chi Format
    NULL,                                                                            // Physical Camera
    0,                                                                               // Num Stream Props
    NULL,                                                                            // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// MCXLogicalVideoStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static ChiFeature2StreamDescriptor MCXLogicalVideoStreamDesc =
{
    "MCXLogicalVideoStreamDescriptor",                                               // Name
    ChiStreamIntentRecord | ChiStreamIntentAnalysis,                                 // Stream Intent Mask
    static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
    NULL,                                                                            // Physical Camera
    0,                                                                               // Num Stream Props
    NULL,                                                                            // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// ThirdPreviewStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr UINT32 ThirdPreviewStreamDescProps0 = 3;

static ChiFeature2Property ThirdPreviewStreamDescProps[] =
{
    { 1, "sequence", sizeof(ThirdPreviewStreamDescProps0), &ThirdPreviewStreamDescProps0, SequencePropType }
};

static ChiFeature2StreamDescriptor ThirdPreviewStreamDesc =
{
    "ThirdPreviewStreamDescriptor",                                                  // Name
    ChiStreamIntentPreview | ChiStreamIntentAnalysis,                                // Stream Intent Mask
    ChiStreamFormatImplDefined,                                                      // Chi Format
    NULL,                                                                            // Physical Camera
    1,                                                                               // Num Stream Props
    &ThirdPreviewStreamDescProps[0],                                                 // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// DualYUVOutputStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr UINT32 DualYUVOutputStreamDescProps0 = 1;

static ChiFeature2Property DualYUVOutputStreamDescProps[] =
{
    { 1, "sequence", sizeof(DualYUVOutputStreamDescProps0), &DualYUVOutputStreamDescProps0, SequencePropType }
};

static ChiFeature2StreamDescriptor DualYUVOutputStreamDesc =
{
    "DualYUVOutputStreamDesc",                                                       // Name
    ChiStreamIntentStillCapture | ChiStreamIntentPostview | ChiStreamIntentAnalysis, // Stream Intent Mask
    static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
    NULL,                                                                            // Physical Camera
    1,                                                                               // Num Stream Props
    &DualYUVOutputStreamDescProps[0],                                                // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// MCXLogicalPreviewStreamDesc_1
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr UINT32 MCXLogicalPreviewStreamDesc_1Props0 = 1;

static ChiFeature2Property MCXLogicalPreviewStreamDesc_1Props[] =
{
    { 1, "sequence", sizeof(MCXLogicalPreviewStreamDesc_1Props0), &MCXLogicalPreviewStreamDesc_1Props0, SequencePropType }
};

static ChiFeature2StreamDescriptor MCXLogicalPreviewStreamDesc_1 =
{
    "MCXLogicalPreviewStreamDescriptor_1",                                           // Name
    ChiStreamIntentPreview,                                                          // Stream Intent Mask
    static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
    NULL,                                                                            // Physical Camera
    1,                                                                               // Num Stream Props
    &MCXLogicalPreviewStreamDesc_1Props[0],                                          // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// PostviewP010StreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static ChiFeature2StreamDescriptor PostviewP010StreamDesc =
{
    "PostviewP010StreamDesc",                                                        // Name
    ChiStreamIntentPostview,                                                         // Stream Intent Mask
    ChiStreamFormatP010,                                                             // Chi Format
    NULL,                                                                            // Physical Camera
    0,                                                                               // Num Stream Props
    NULL,                                                                            // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// DualAnalysisStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr UINT32 DualAnalysisStreamDescProps0 = 1;

static ChiFeature2Property DualAnalysisStreamDescProps[] =
{
    { 1, "sequence", sizeof(DualAnalysisStreamDescProps0), &DualAnalysisStreamDescProps0, SequencePropType }
};

static ChiFeature2StreamDescriptor DualAnalysisStreamDesc =
{
    "DualAnalysisStreamDescriptor",                                                  // Name
    ChiStreamIntentAnalysis,                                                         // Stream Intent Mask
    static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
    NULL,                                                                            // Physical Camera
    1,                                                                               // Num Stream Props
    &DualAnalysisStreamDescProps[0],                                                 // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// JPEGThumbnailStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiDataSpace JPEGThumbnailStreamDescProps0[] = { DataspaceJPEGAPPSegments };

static ChiFeature2Property JPEGThumbnailStreamDescProps[] =
{
    { 0, "dataspace", sizeof(JPEGThumbnailStreamDescProps0), &JPEGThumbnailStreamDescProps0, DataspacePropType }
};

static ChiFeature2StreamDescriptor JPEGThumbnailStreamDesc =
{
    "JPEGThumbnailStreamDesc",                                                       // Name
    ChiStreamIntentStillCapture | ChiStreamIntentVideoSnapshot,                      // Stream Intent Mask
    ChiStreamFormatBlob,                                                             // Chi Format
    NULL,                                                                            // Physical Camera
    1,                                                                               // Num Stream Props
    &JPEGThumbnailStreamDescProps[0],                                                // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// YUVSnapshotStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiDataSpace YUVSnapshotStreamDescProps0[] = { DataspaceV0JFIF, DataspaceUnknown, DataspaceStandard_BT709, DataspaceDisplayP3 };

static ChiFeature2Property YUVSnapshotStreamDescProps[] =
{
    { 0, "dataspace", sizeof(YUVSnapshotStreamDescProps0), &YUVSnapshotStreamDescProps0, DataspacePropType }
};

static ChiFeature2StreamDescriptor YUVSnapshotStreamDesc =
{
    "YUVSnapshotStreamDesc",                                                         // Name
    ChiStreamIntentStillCapture | ChiStreamIntentAnalysis,                           // Stream Intent Mask
    ChiStreamFormatYCbCr420_888,                                                     // Chi Format
    NULL,                                                                            // Physical Camera
    1,                                                                               // Num Stream Props
    &YUVSnapshotStreamDescProps[0],                                                  // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// YUVDsxStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiDataSpace YUVDsxStreamDescProps0[] = { DataspaceV0JFIF, DataspaceUnknown, DataspaceStandard_BT709 };

static ChiFeature2Property YUVDsxStreamDescProps[] =
{
    { 0, "dataspace", sizeof(YUVDsxStreamDescProps0), &YUVDsxStreamDescProps0, DataspacePropType }
};

static ChiFeature2StreamDescriptor YUVDsxStreamDesc =
{
    "YUVDsxStreamDesc",                                                              // Name
    ChiStreamIntentYuvDsx,                                                           // Stream Intent Mask
    ChiStreamFormatYCbCr420_888,                                                     // Chi Format
    NULL,                                                                            // Physical Camera
    1,                                                                               // Num Stream Props
    &YUVDsxStreamDescProps[0],                                                       // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// MCXLogicalPreviewStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static ChiFeature2StreamDescriptor MCXLogicalPreviewStreamDesc =
{
    "MCXLogicalPreviewStreamDescriptor",                                             // Name
    ChiStreamIntentPreview,                                                          // Stream Intent Mask
    static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
    NULL,                                                                            // Physical Camera
    0,                                                                               // Num Stream Props
    NULL,                                                                            // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// RawStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static ChiFeature2StreamDescriptor RawStreamDesc =
{
    "RawStreamDescriptor",                                                           // Name
    ChiStreamIntentRaw,                                                              // Stream Intent Mask
    static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
    NULL,                                                                            // Physical Camera
    0,                                                                               // Num Stream Props
    NULL,                                                                            // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// RawStreamDesc1
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr UINT32 RawStreamDesc1Props0 = 1;

static ChiFeature2Property RawStreamDesc1Props[] =
{
    { 1, "sequence", sizeof(RawStreamDesc1Props0), &RawStreamDesc1Props0, SequencePropType }
};

static ChiFeature2StreamDescriptor RawStreamDesc1 =
{
    "RawStreamDescriptor1",                                                          // Name
    ChiStreamIntentRaw,                                                              // Stream Intent Mask
    static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
    NULL,                                                                            // Physical Camera
    1,                                                                               // Num Stream Props
    &RawStreamDesc1Props[0],                                                         // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// RawStreamDesc2
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr UINT32 RawStreamDesc2Props0 = 2;

static ChiFeature2Property RawStreamDesc2Props[] =
{
    { 1, "sequence", sizeof(RawStreamDesc2Props0), &RawStreamDesc2Props0, SequencePropType }
};

static ChiFeature2StreamDescriptor RawStreamDesc2 =
{
    "RawStreamDescriptor2",                                                          // Name
    ChiStreamIntentRaw,                                                              // Stream Intent Mask
    static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
    NULL,                                                                            // Physical Camera
    1,                                                                               // Num Stream Props
    &RawStreamDesc2Props[0],                                                         // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// RawStreamDesc3
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr UINT32 RawStreamDesc3Props0 = 3;

static ChiFeature2Property RawStreamDesc3Props[] =
{
    { 1, "sequence", sizeof(RawStreamDesc3Props0), &RawStreamDesc3Props0, SequencePropType }
};

static ChiFeature2StreamDescriptor RawStreamDesc3 =
{
    "RawStreamDescriptor3",                                                          // Name
    ChiStreamIntentRaw,                                                              // Stream Intent Mask
    static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
    NULL,                                                                            // Physical Camera
    1,                                                                               // Num Stream Props
    &RawStreamDesc3Props[0],                                                         // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// ShortRawStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr UINT32 ShortRawStreamDescProps0 = 1;

static ChiFeature2Property ShortRawStreamDescProps[] =
{
    { 1, "sequence", sizeof(ShortRawStreamDescProps0), &ShortRawStreamDescProps0, SequencePropType }
};

static ChiFeature2StreamDescriptor ShortRawStreamDesc =
{
    "ShortExpRawStreamDescriptor",                                                   // Name
    ChiStreamIntentRaw,                                                              // Stream Intent Mask
    static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
    NULL,                                                                            // Physical Camera
    1,                                                                               // Num Stream Props
    &ShortRawStreamDescProps[0],                                                     // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// XHDRPreviewStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static ChiFeature2StreamDescriptor XHDRPreviewStreamDesc =
{
    "XHDRPreviewStreamDescriptor",                                                   // Name
    ChiStreamIntentPreview | ChiStreamIntentAnalysis,                                // Stream Intent Mask
    static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
    NULL,                                                                            // Physical Camera
    0,                                                                               // Num Stream Props
    NULL,                                                                            // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// HEICSnapshotStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiDataSpace HEICSnapshotStreamDescProps0[] = { DataspaceHEIF };

static ChiFeature2Property HEICSnapshotStreamDescProps[] =
{
    { 0, "dataspace", sizeof(HEICSnapshotStreamDescProps0), &HEICSnapshotStreamDescProps0, DataspacePropType }
};

static ChiFeature2StreamDescriptor HEICSnapshotStreamDesc =
{
    "HEICSnapshotStreamDesc",                                                        // Name
    ChiStreamIntentStillCapture | ChiStreamIntentVideoSnapshot,                      // Stream Intent Mask
    static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
    NULL,                                                                            // Physical Camera
    1,                                                                               // Num Stream Props
    &HEICSnapshotStreamDescProps[0],                                                 // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// YUVAnalysisStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiStreamFormat YUVAnalysisStreamDescProps0[] = { ChiStreamFormatImplDefined, ChiStreamFormatYCbCr420_888 };

static ChiFeature2Property YUVAnalysisStreamDescProps[] =
{
    { 2, "format", sizeof(YUVAnalysisStreamDescProps0), &YUVAnalysisStreamDescProps0, FormatPropType }
};

static ChiFeature2StreamDescriptor YUVAnalysisStreamDesc =
{
    "YUVAnalysisStreamDescriptor",                                                   // Name
    ChiStreamIntentAnalysis,                                                         // Stream Intent Mask
    static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
    NULL,                                                                            // Physical Camera
    1,                                                                               // Num Stream Props
    &YUVAnalysisStreamDescProps[0],                                                  // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// P010AnalysisStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static ChiFeature2StreamDescriptor P010AnalysisStreamDesc =
{
    "P010AnalysisStreamDescriptor",                                                  // Name
    ChiStreamIntentAnalysis,                                                         // Stream Intent Mask
    ChiStreamFormatP010,                                                             // Chi Format
    NULL,                                                                            // Physical Camera
    0,                                                                               // Num Stream Props
    NULL,                                                                            // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// DualPreviewStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiStreamFormat DualPreviewStreamDescProps0[] = { ChiStreamFormatImplDefined, ChiStreamFormatYCbCr420_888 };
constexpr UINT32 DualPreviewStreamDescProps1 = 1;

static ChiFeature2Property DualPreviewStreamDescProps[] =
{
    { 2, "format", sizeof(DualPreviewStreamDescProps0), &DualPreviewStreamDescProps0, FormatPropType },
    { 1, "sequence", sizeof(DualPreviewStreamDescProps1), &DualPreviewStreamDescProps1, SequencePropType }
};

static ChiFeature2StreamDescriptor DualPreviewStreamDesc =
{
    "DualPreviewStreamDescriptor",                                                   // Name
    ChiStreamIntentPreview,                                                          // Stream Intent Mask
    static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
    NULL,                                                                            // Physical Camera
    2,                                                                               // Num Stream Props
    &DualPreviewStreamDescProps[0],                                                  // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// YUVOutputStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static ChiFeature2StreamDescriptor YUVOutputStreamDesc =
{
    "YUVOutputStreamDesc",                                                           // Name
    ChiStreamIntentStillCapture | ChiStreamIntentPostview | ChiStreamIntentAnalysis | ChiStreamIntentZsl, // Stream Intent Mask
    static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
    NULL,                                                                            // Physical Camera
    0,                                                                               // Num Stream Props
    NULL,                                                                            // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// MemcpyRawStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiStreamFormat MemcpyRawStreamDescProps0[] = { ChiStreamFormatRaw10, ChiStreamFormatRawOpaque };

static ChiFeature2Property MemcpyRawStreamDescProps[] =
{
    { 2, "format", sizeof(MemcpyRawStreamDescProps0), &MemcpyRawStreamDescProps0, FormatPropType }
};

static ChiFeature2StreamDescriptor MemcpyRawStreamDesc =
{
    "MemcpyRawStreamDescriptor",                                                     // Name
    ChiStreamIntentRaw,                                                              // Stream Intent Mask
    static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
    NULL,                                                                            // Physical Camera
    1,                                                                               // Num Stream Props
    &MemcpyRawStreamDescProps[0],                                                    // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// PreviewStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static ChiFeature2StreamDescriptor PreviewStreamDesc =
{
    "PreviewStreamDescriptor",                                                       // Name
    ChiStreamIntentPreview,                                                          // Stream Intent Mask
    static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
    NULL,                                                                            // Physical Camera
    0,                                                                               // Num Stream Props
    NULL,                                                                            // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// JPEGSnapshotStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiDataSpace JPEGSnapshotStreamDescProps0[] = { DataspaceV0JFIF };

static ChiFeature2Property JPEGSnapshotStreamDescProps[] =
{
    { 0, "dataspace", sizeof(JPEGSnapshotStreamDescProps0), &JPEGSnapshotStreamDescProps0, DataspacePropType }
};

static ChiFeature2StreamDescriptor JPEGSnapshotStreamDesc =
{
    "JPEGSnapshotStreamDesc",                                                        // Name
    ChiStreamIntentStillCapture | ChiStreamIntentVideoSnapshot,                      // Stream Intent Mask
    ChiStreamFormatBlob,                                                             // Chi Format
    NULL,                                                                            // Physical Camera
    1,                                                                               // Num Stream Props
    &JPEGSnapshotStreamDescProps[0],                                                 // Stream Props
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// ZslImplDefinedMCXStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiStreamFormat ZslImplDefinedMCXStreamDescProps0[] = { ChiStreamFormatImplDefined, ChiStreamFormatP010, ChiStreamFormatP010Video, ChiStreamFormatYCbCr420_888 };
constexpr ChiDataSpace ZslImplDefinedMCXStreamDescProps1[] = { DataspaceV0JFIF, DataspaceUnknown, DataspaceStandard_BT709, DataspaceDisplayP3 };
constexpr UINT32 ZslImplDefinedMCXStreamDescProps2 = 2;

static ChiFeature2Property ZslImplDefinedMCXStreamDescProps[] =
{
    { 2, "format", sizeof(ZslImplDefinedMCXStreamDescProps0), &ZslImplDefinedMCXStreamDescProps0, FormatPropType },
    { 0, "dataspace", sizeof(ZslImplDefinedMCXStreamDescProps1), &ZslImplDefinedMCXStreamDescProps1, DataspacePropType },
    { 3, "stream_type", sizeof(ZslImplDefinedMCXStreamDescProps2), &ZslImplDefinedMCXStreamDescProps2, StreamType }
};

static ChiFeature2StreamDescriptor ZslImplDefinedMCXStreamDesc[] =
{
    {
        "ZslImplDefinedMCXStreamDesc0",                                                  // Name
        ChiStreamIntentStillCapture | ChiStreamIntentZsl,                                // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "0",                                                                             // Physical Camera
        3,                                                                               // Num Stream Props
        &ZslImplDefinedMCXStreamDescProps[0],                                            // Stream Props
    },
    {
        "ZslImplDefinedMCXStreamDesc1",                                                  // Name
        ChiStreamIntentStillCapture | ChiStreamIntentZsl,                                // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "1",                                                                             // Physical Camera
        3,                                                                               // Num Stream Props
        &ZslImplDefinedMCXStreamDescProps[0],                                            // Stream Props
    },
    {
        "ZslImplDefinedMCXStreamDesc2",                                                  // Name
        ChiStreamIntentStillCapture | ChiStreamIntentZsl,                                // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "2",                                                                             // Physical Camera
        3,                                                                               // Num Stream Props
        &ZslImplDefinedMCXStreamDescProps[0],                                            // Stream Props
    },
    {
        "ZslImplDefinedMCXStreamDesc3",                                                  // Name
        ChiStreamIntentStillCapture | ChiStreamIntentZsl,                                // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "3",                                                                             // Physical Camera
        3,                                                                               // Num Stream Props
        &ZslImplDefinedMCXStreamDescProps[0],                                            // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// ZslImplDefinedMCXHDRStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiStreamFormat ZslImplDefinedMCXHDRStreamDescProps0[] = { ChiStreamFormatImplDefined, ChiStreamFormatP010, ChiStreamFormatP010Video, ChiStreamFormatYCbCr420_888 };
constexpr ChiDataSpace ZslImplDefinedMCXHDRStreamDescProps1[] = { DataspaceV0JFIF, DataspaceUnknown, DataspaceStandard_BT709, DataspaceDisplayP3 };
constexpr UINT32 ZslImplDefinedMCXHDRStreamDescProps2 = 2;

static ChiFeature2Property ZslImplDefinedMCXHDRStreamDescProps[] =
{
    { 2, "format", sizeof(ZslImplDefinedMCXHDRStreamDescProps0), &ZslImplDefinedMCXHDRStreamDescProps0, FormatPropType },
    { 0, "dataspace", sizeof(ZslImplDefinedMCXHDRStreamDescProps1), &ZslImplDefinedMCXHDRStreamDescProps1, DataspacePropType },
    { 3, "stream_type", sizeof(ZslImplDefinedMCXHDRStreamDescProps2), &ZslImplDefinedMCXHDRStreamDescProps2, StreamType }
};

static ChiFeature2StreamDescriptor ZslImplDefinedMCXHDRStreamDesc[] =
{
    {
        "ZslImplDefinedMCXHDRStreamDesc0",                                               // Name
        ChiStreamIntentStillCapture | ChiStreamIntentZsl,                                // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "0",                                                                             // Physical Camera
        3,                                                                               // Num Stream Props
        &ZslImplDefinedMCXHDRStreamDescProps[0],                                         // Stream Props
    },
    {
        "ZslImplDefinedMCXHDRStreamDesc1",                                               // Name
        ChiStreamIntentStillCapture | ChiStreamIntentZsl,                                // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "1",                                                                             // Physical Camera
        3,                                                                               // Num Stream Props
        &ZslImplDefinedMCXHDRStreamDescProps[0],                                         // Stream Props
    },
    {
        "ZslImplDefinedMCXHDRStreamDesc2",                                               // Name
        ChiStreamIntentStillCapture | ChiStreamIntentZsl,                                // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "2",                                                                             // Physical Camera
        3,                                                                               // Num Stream Props
        &ZslImplDefinedMCXHDRStreamDescProps[0],                                         // Stream Props
    },
    {
        "ZslImplDefinedMCXHDRStreamDesc3",                                               // Name
        ChiStreamIntentStillCapture | ChiStreamIntentZsl,                                // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "3",                                                                             // Physical Camera
        3,                                                                               // Num Stream Props
        &ZslImplDefinedMCXHDRStreamDescProps[0],                                         // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// JPEGMCXSnapshotStreamDescPzsl
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiDataSpace JPEGMCXSnapshotStreamDescPzslProps0[] = { DataspaceV0JFIF };

static ChiFeature2Property JPEGMCXSnapshotStreamDescPzslProps[] =
{
    { 0, "dataspace", sizeof(JPEGMCXSnapshotStreamDescPzslProps0), &JPEGMCXSnapshotStreamDescPzslProps0, DataspacePropType }
};

static ChiFeature2StreamDescriptor JPEGMCXSnapshotStreamDescPzsl[] =
{
    {
        "JPEGMCXSnapshotStreamDescriptorPzsl0",                                          // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatBlob,                                                             // Chi Format
        "0",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &JPEGMCXSnapshotStreamDescPzslProps[0],                                          // Stream Props
    },
    {
        "JPEGMCXSnapshotStreamDescriptorPzsl1",                                          // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatBlob,                                                             // Chi Format
        "1",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &JPEGMCXSnapshotStreamDescPzslProps[0],                                          // Stream Props
    },
    {
        "JPEGMCXSnapshotStreamDescriptorPzsl2",                                          // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatBlob,                                                             // Chi Format
        "2",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &JPEGMCXSnapshotStreamDescPzslProps[0],                                          // Stream Props
    },
    {
        "JPEGMCXSnapshotStreamDescriptorPzsl3",                                          // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatBlob,                                                             // Chi Format
        "3",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &JPEGMCXSnapshotStreamDescPzslProps[0],                                          // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// MCXPhyVideoStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr UINT32 MCXPhyVideoStreamDescProps0 = 1;

static ChiFeature2Property MCXPhyVideoStreamDescProps[] =
{
    { 3, "stream_type", sizeof(MCXPhyVideoStreamDescProps0), &MCXPhyVideoStreamDescProps0, StreamType }
};

static ChiFeature2StreamDescriptor MCXPhyVideoStreamDesc[] =
{
    {
        "MCXPhyVideoStreamDescriptor0",                                                  // Name
        ChiStreamIntentRecord | ChiStreamIntentAnalysis,                                 // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "0",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &MCXPhyVideoStreamDescProps[0],                                                  // Stream Props
    },
    {
        "MCXPhyVideoStreamDescriptor1",                                                  // Name
        ChiStreamIntentRecord | ChiStreamIntentAnalysis,                                 // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "1",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &MCXPhyVideoStreamDescProps[0],                                                  // Stream Props
    },
    {
        "MCXPhyVideoStreamDescriptor2",                                                  // Name
        ChiStreamIntentRecord | ChiStreamIntentAnalysis,                                 // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "2",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &MCXPhyVideoStreamDescProps[0],                                                  // Stream Props
    },
    {
        "MCXPhyVideoStreamDescriptor3",                                                  // Name
        ChiStreamIntentRecord | ChiStreamIntentAnalysis,                                 // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "3",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &MCXPhyVideoStreamDescProps[0],                                                  // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// ZslImplDefinedMCXStreamDesc_1
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiStreamFormat ZslImplDefinedMCXStreamDesc_1Props0[] = { ChiStreamFormatImplDefined, ChiStreamFormatP010, ChiStreamFormatP010Video, ChiStreamFormatYCbCr420_888 };
constexpr UINT32 ZslImplDefinedMCXStreamDesc_1Props1 = 1;
constexpr ChiDataSpace ZslImplDefinedMCXStreamDesc_1Props2[] = { DataspaceV0JFIF, DataspaceUnknown, DataspaceStandard_BT709, DataspaceDisplayP3 };
constexpr UINT32 ZslImplDefinedMCXStreamDesc_1Props3 = 2;

static ChiFeature2Property ZslImplDefinedMCXStreamDesc_1Props[] =
{
    { 2, "format", sizeof(ZslImplDefinedMCXStreamDesc_1Props0), &ZslImplDefinedMCXStreamDesc_1Props0, FormatPropType },
    { 1, "sequence", sizeof(ZslImplDefinedMCXStreamDesc_1Props1), &ZslImplDefinedMCXStreamDesc_1Props1, SequencePropType },
    { 0, "dataspace", sizeof(ZslImplDefinedMCXStreamDesc_1Props2), &ZslImplDefinedMCXStreamDesc_1Props2, DataspacePropType },
    { 3, "stream_type", sizeof(ZslImplDefinedMCXStreamDesc_1Props3), &ZslImplDefinedMCXStreamDesc_1Props3, StreamType }
};

static ChiFeature2StreamDescriptor ZslImplDefinedMCXStreamDesc_1[] =
{
    {
        "ZslImplDefinedMCXStreamDesc0_1",                                                // Name
        ChiStreamIntentStillCapture | ChiStreamIntentZsl,                                // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "0",                                                                             // Physical Camera
        4,                                                                               // Num Stream Props
        &ZslImplDefinedMCXStreamDesc_1Props[0],                                          // Stream Props
    },
    {
        "ZslImplDefinedMCXStreamDesc1_1",                                                // Name
        ChiStreamIntentStillCapture | ChiStreamIntentZsl,                                // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "1",                                                                             // Physical Camera
        4,                                                                               // Num Stream Props
        &ZslImplDefinedMCXStreamDesc_1Props[0],                                          // Stream Props
    },
    {
        "ZslImplDefinedMCXStreamDesc2_1",                                                // Name
        ChiStreamIntentStillCapture | ChiStreamIntentZsl,                                // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "2",                                                                             // Physical Camera
        4,                                                                               // Num Stream Props
        &ZslImplDefinedMCXStreamDesc_1Props[0],                                          // Stream Props
    },
    {
        "ZslImplDefinedMCXStreamDesc3_1",                                                // Name
        ChiStreamIntentStillCapture | ChiStreamIntentZsl,                                // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "3",                                                                             // Physical Camera
        4,                                                                               // Num Stream Props
        &ZslImplDefinedMCXStreamDesc_1Props[0],                                          // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// DualZslImplDefinedMCXHDRStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiStreamFormat DualZslImplDefinedMCXHDRStreamDescProps0[] = { ChiStreamFormatImplDefined, ChiStreamFormatP010, ChiStreamFormatP010Video, ChiStreamFormatYCbCr420_888 };
constexpr UINT32 DualZslImplDefinedMCXHDRStreamDescProps1 = 1;
constexpr ChiDataSpace DualZslImplDefinedMCXHDRStreamDescProps2[] = { DataspaceV0JFIF, DataspaceUnknown, DataspaceStandard_BT709, DataspaceDisplayP3 };
constexpr UINT32 DualZslImplDefinedMCXHDRStreamDescProps3 = 2;

static ChiFeature2Property DualZslImplDefinedMCXHDRStreamDescProps[] =
{
    { 2, "format", sizeof(DualZslImplDefinedMCXHDRStreamDescProps0), &DualZslImplDefinedMCXHDRStreamDescProps0, FormatPropType },
    { 1, "sequence", sizeof(DualZslImplDefinedMCXHDRStreamDescProps1), &DualZslImplDefinedMCXHDRStreamDescProps1, SequencePropType },
    { 0, "dataspace", sizeof(DualZslImplDefinedMCXHDRStreamDescProps2), &DualZslImplDefinedMCXHDRStreamDescProps2, DataspacePropType },
    { 3, "stream_type", sizeof(DualZslImplDefinedMCXHDRStreamDescProps3), &DualZslImplDefinedMCXHDRStreamDescProps3, StreamType }
};

static ChiFeature2StreamDescriptor DualZslImplDefinedMCXHDRStreamDesc[] =
{
    {
        "DualZslImplDefinedMCXHDRStreamDesc0",                                           // Name
        ChiStreamIntentStillCapture | ChiStreamIntentZsl,                                // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "0",                                                                             // Physical Camera
        4,                                                                               // Num Stream Props
        &DualZslImplDefinedMCXHDRStreamDescProps[0],                                     // Stream Props
    },
    {
        "DualZslImplDefinedMCXHDRStreamDesc1",                                           // Name
        ChiStreamIntentStillCapture | ChiStreamIntentZsl,                                // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "1",                                                                             // Physical Camera
        4,                                                                               // Num Stream Props
        &DualZslImplDefinedMCXHDRStreamDescProps[0],                                     // Stream Props
    },
    {
        "DualZslImplDefinedMCXHDRStreamDesc2",                                           // Name
        ChiStreamIntentStillCapture | ChiStreamIntentZsl,                                // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "2",                                                                             // Physical Camera
        4,                                                                               // Num Stream Props
        &DualZslImplDefinedMCXHDRStreamDescProps[0],                                     // Stream Props
    },
    {
        "DualZslImplDefinedMCXHDRStreamDesc3",                                           // Name
        ChiStreamIntentStillCapture | ChiStreamIntentZsl,                                // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "3",                                                                             // Physical Camera
        4,                                                                               // Num Stream Props
        &DualZslImplDefinedMCXHDRStreamDescProps[0],                                     // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// StillCaptureMCXYUVStreamDesc_2
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr UINT32 StillCaptureMCXYUVStreamDesc_2Props0 = 2;

static ChiFeature2Property StillCaptureMCXYUVStreamDesc_2Props[] =
{
    { 1, "sequence", sizeof(StillCaptureMCXYUVStreamDesc_2Props0), &StillCaptureMCXYUVStreamDesc_2Props0, SequencePropType }
};

static ChiFeature2StreamDescriptor StillCaptureMCXYUVStreamDesc_2[] =
{
    {
        "StillCaptureMCXYUVStreamDesc0_2",                                               // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "0",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &StillCaptureMCXYUVStreamDesc_2Props[0],                                         // Stream Props
    },
    {
        "StillCaptureMCXYUVStreamDesc1_2",                                               // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "1",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &StillCaptureMCXYUVStreamDesc_2Props[0],                                         // Stream Props
    },
    {
        "StillCaptureMCXYUVStreamDesc2_2",                                               // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "2",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &StillCaptureMCXYUVStreamDesc_2Props[0],                                         // Stream Props
    },
    {
        "StillCaptureMCXYUVStreamDesc3_2",                                               // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "3",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &StillCaptureMCXYUVStreamDesc_2Props[0],                                         // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// YUVMCXSnapshotStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiDataSpace YUVMCXSnapshotStreamDescProps0[] = { DataspaceV0JFIF, DataspaceUnknown, DataspaceStandard_BT709, DataspaceDisplayP3 };
constexpr UINT32 YUVMCXSnapshotStreamDescProps1 = 2;

static ChiFeature2Property YUVMCXSnapshotStreamDescProps[] =
{
    { 0, "dataspace", sizeof(YUVMCXSnapshotStreamDescProps0), &YUVMCXSnapshotStreamDescProps0, DataspacePropType },
    { 3, "stream_type", sizeof(YUVMCXSnapshotStreamDescProps1), &YUVMCXSnapshotStreamDescProps1, StreamType }
};

static ChiFeature2StreamDescriptor YUVMCXSnapshotStreamDesc[] =
{
    {
        "YUVMCXSnapshotStreamDescriptor0",                                               // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "0",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &YUVMCXSnapshotStreamDescProps[0],                                               // Stream Props
    },
    {
        "YUVMCXSnapshotStreamDescriptor1",                                               // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "1",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &YUVMCXSnapshotStreamDescProps[0],                                               // Stream Props
    },
    {
        "YUVMCXSnapshotStreamDescriptor2",                                               // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "2",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &YUVMCXSnapshotStreamDescProps[0],                                               // Stream Props
    },
    {
        "YUVMCXSnapshotStreamDescriptor3",                                               // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "3",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &YUVMCXSnapshotStreamDescProps[0],                                               // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// YUVMCXSnapshotHDRStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiDataSpace YUVMCXSnapshotHDRStreamDescProps0[] = { DataspaceV0JFIF, DataspaceUnknown, DataspaceStandard_BT709, DataspaceDisplayP3 };
constexpr UINT32 YUVMCXSnapshotHDRStreamDescProps1 = 2;
constexpr UINT32 YUVMCXSnapshotHDRStreamDescProps2 = 1;

static ChiFeature2Property YUVMCXSnapshotHDRStreamDescProps[] =
{
    { 0, "dataspace", sizeof(YUVMCXSnapshotHDRStreamDescProps0), &YUVMCXSnapshotHDRStreamDescProps0, DataspacePropType },
    { 3, "stream_type", sizeof(YUVMCXSnapshotHDRStreamDescProps1), &YUVMCXSnapshotHDRStreamDescProps1, StreamType },
    { 1, "sequence", sizeof(YUVMCXSnapshotHDRStreamDescProps2), &YUVMCXSnapshotHDRStreamDescProps2, SequencePropType }
};

static ChiFeature2StreamDescriptor YUVMCXSnapshotHDRStreamDesc[] =
{
    {
        "YUVMCXSnapshotHDRStreamDescriptor0",                                            // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "0",                                                                             // Physical Camera
        3,                                                                               // Num Stream Props
        &YUVMCXSnapshotHDRStreamDescProps[0],                                            // Stream Props
    },
    {
        "YUVMCXSnapshotHDRStreamDescriptor1",                                            // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "1",                                                                             // Physical Camera
        3,                                                                               // Num Stream Props
        &YUVMCXSnapshotHDRStreamDescProps[0],                                            // Stream Props
    },
    {
        "YUVMCXSnapshotHDRStreamDescriptor2",                                            // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "2",                                                                             // Physical Camera
        3,                                                                               // Num Stream Props
        &YUVMCXSnapshotHDRStreamDescProps[0],                                            // Stream Props
    },
    {
        "YUVMCXSnapshotHDRStreamDescriptor3",                                            // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "3",                                                                             // Physical Camera
        3,                                                                               // Num Stream Props
        &YUVMCXSnapshotHDRStreamDescProps[0],                                            // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// PhysicalStillCaptureMCXStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr UINT32 PhysicalStillCaptureMCXStreamDescProps0 = 1;

static ChiFeature2Property PhysicalStillCaptureMCXStreamDescProps[] =
{
    { 3, "stream_type", sizeof(PhysicalStillCaptureMCXStreamDescProps0), &PhysicalStillCaptureMCXStreamDescProps0, StreamType }
};

static ChiFeature2StreamDescriptor PhysicalStillCaptureMCXStreamDesc[] =
{
    {
        "PhyStillCaptureMCXStreamDesc0",                                                 // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "0",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &PhysicalStillCaptureMCXStreamDescProps[0],                                      // Stream Props
    },
    {
        "PhyStillCaptureMCXStreamDesc1",                                                 // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "1",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &PhysicalStillCaptureMCXStreamDescProps[0],                                      // Stream Props
    },
    {
        "PhyStillCaptureMCXStreamDesc2",                                                 // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "2",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &PhysicalStillCaptureMCXStreamDescProps[0],                                      // Stream Props
    },
    {
        "PhyStillCaptureMCXStreamDesc3",                                                 // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "3",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &PhysicalStillCaptureMCXStreamDescProps[0],                                      // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// PhysicalYUVDsxMCXStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr UINT32 PhysicalYUVDsxMCXStreamDescProps0 = 1;

static ChiFeature2Property PhysicalYUVDsxMCXStreamDescProps[] =
{
    { 3, "stream_type", sizeof(PhysicalYUVDsxMCXStreamDescProps0), &PhysicalYUVDsxMCXStreamDescProps0, StreamType }
};

static ChiFeature2StreamDescriptor PhysicalYUVDsxMCXStreamDesc[] =
{
    {
        "PhyYUVDsxMCXStreamDesc0",                                                       // Name
        ChiStreamIntentYuvDsx,                                                           // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "0",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &PhysicalYUVDsxMCXStreamDescProps[0],                                            // Stream Props
    },
    {
        "PhyYUVDsxMCXStreamDesc1",                                                       // Name
        ChiStreamIntentYuvDsx,                                                           // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "1",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &PhysicalYUVDsxMCXStreamDescProps[0],                                            // Stream Props
    },
    {
        "PhyYUVDsxMCXStreamDesc2",                                                       // Name
        ChiStreamIntentYuvDsx,                                                           // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "2",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &PhysicalYUVDsxMCXStreamDescProps[0],                                            // Stream Props
    },
    {
        "PhyYUVDsxMCXStreamDesc3",                                                       // Name
        ChiStreamIntentYuvDsx,                                                           // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "3",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &PhysicalYUVDsxMCXStreamDescProps[0],                                            // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// DualPhysicalStillCaptureMCXHDRStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr UINT32 DualPhysicalStillCaptureMCXHDRStreamDescProps0 = 1;
constexpr UINT32 DualPhysicalStillCaptureMCXHDRStreamDescProps1 = 1;

static ChiFeature2Property DualPhysicalStillCaptureMCXHDRStreamDescProps[] =
{
    { 1, "sequence", sizeof(DualPhysicalStillCaptureMCXHDRStreamDescProps0), &DualPhysicalStillCaptureMCXHDRStreamDescProps0, SequencePropType },
    { 3, "stream_type", sizeof(DualPhysicalStillCaptureMCXHDRStreamDescProps1), &DualPhysicalStillCaptureMCXHDRStreamDescProps1, StreamType }
};

static ChiFeature2StreamDescriptor DualPhysicalStillCaptureMCXHDRStreamDesc[] =
{
    {
        "DualPhyStillCaptureMCXHDRStreamDesc0",                                          // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "0",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &DualPhysicalStillCaptureMCXHDRStreamDescProps[0],                               // Stream Props
    },
    {
        "DualPhyStillCaptureMCXHDRStreamDesc1",                                          // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "1",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &DualPhysicalStillCaptureMCXHDRStreamDescProps[0],                               // Stream Props
    },
    {
        "DualPhyStillCaptureMCXHDRStreamDesc2",                                          // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "2",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &DualPhysicalStillCaptureMCXHDRStreamDescProps[0],                               // Stream Props
    },
    {
        "DualPhyStillCaptureMCXHDRStreamDesc3",                                          // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "3",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &DualPhysicalStillCaptureMCXHDRStreamDescProps[0],                               // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// PhysicalStillCaptureMCXStreamDesc_1
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr UINT32 PhysicalStillCaptureMCXStreamDesc_1Props0 = 1;
constexpr UINT32 PhysicalStillCaptureMCXStreamDesc_1Props1 = 1;

static ChiFeature2Property PhysicalStillCaptureMCXStreamDesc_1Props[] =
{
    { 1, "sequence", sizeof(PhysicalStillCaptureMCXStreamDesc_1Props0), &PhysicalStillCaptureMCXStreamDesc_1Props0, SequencePropType },
    { 3, "stream_type", sizeof(PhysicalStillCaptureMCXStreamDesc_1Props1), &PhysicalStillCaptureMCXStreamDesc_1Props1, StreamType }
};

static ChiFeature2StreamDescriptor PhysicalStillCaptureMCXStreamDesc_1[] =
{
    {
        "PhyStillCaptureMCXStreamDesc0_1",                                               // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "0",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &PhysicalStillCaptureMCXStreamDesc_1Props[0],                                    // Stream Props
    },
    {
        "PhyStillCaptureMCXStreamDesc1_1",                                               // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "1",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &PhysicalStillCaptureMCXStreamDesc_1Props[0],                                    // Stream Props
    },
    {
        "PhyStillCaptureMCXStreamDesc2_1",                                               // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "2",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &PhysicalStillCaptureMCXStreamDesc_1Props[0],                                    // Stream Props
    },
    {
        "PhyStillCaptureMCXStreamDesc3_1",                                               // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "3",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &PhysicalStillCaptureMCXStreamDesc_1Props[0],                                    // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// PhysicalZslmplMCXStreamDesc_1
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr UINT32 PhysicalZslmplMCXStreamDesc_1Props0 = 1;
constexpr UINT32 PhysicalZslmplMCXStreamDesc_1Props1 = 1;

static ChiFeature2Property PhysicalZslmplMCXStreamDesc_1Props[] =
{
    { 1, "sequence", sizeof(PhysicalZslmplMCXStreamDesc_1Props0), &PhysicalZslmplMCXStreamDesc_1Props0, SequencePropType },
    { 3, "stream_type", sizeof(PhysicalZslmplMCXStreamDesc_1Props1), &PhysicalZslmplMCXStreamDesc_1Props1, StreamType }
};

static ChiFeature2StreamDescriptor PhysicalZslmplMCXStreamDesc_1[] =
{
    {
        "PhyZslImplMCXStreamDesc0_1",                                                    // Name
        ChiStreamIntentZsl,                                                              // Stream Intent Mask
        ChiStreamFormatImplDefined,                                                      // Chi Format
        "0",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &PhysicalZslmplMCXStreamDesc_1Props[0],                                          // Stream Props
    },
    {
        "PhyZslImplMCXStreamDesc1_1",                                                    // Name
        ChiStreamIntentZsl,                                                              // Stream Intent Mask
        ChiStreamFormatImplDefined,                                                      // Chi Format
        "1",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &PhysicalZslmplMCXStreamDesc_1Props[0],                                          // Stream Props
    },
    {
        "PhyZslImplMCXStreamDesc2_1",                                                    // Name
        ChiStreamIntentZsl,                                                              // Stream Intent Mask
        ChiStreamFormatImplDefined,                                                      // Chi Format
        "2",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &PhysicalZslmplMCXStreamDesc_1Props[0],                                          // Stream Props
    },
    {
        "PhyZslImplMCXStreamDesc3_1",                                                    // Name
        ChiStreamIntentZsl,                                                              // Stream Intent Mask
        ChiStreamFormatImplDefined,                                                      // Chi Format
        "3",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &PhysicalZslmplMCXStreamDesc_1Props[0],                                          // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// PhysicalZslmplMCXHDRStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr UINT32 PhysicalZslmplMCXHDRStreamDescProps0 = 1;
constexpr UINT32 PhysicalZslmplMCXHDRStreamDescProps1 = 1;

static ChiFeature2Property PhysicalZslmplMCXHDRStreamDescProps[] =
{
    { 1, "sequence", sizeof(PhysicalZslmplMCXHDRStreamDescProps0), &PhysicalZslmplMCXHDRStreamDescProps0, SequencePropType },
    { 3, "stream_type", sizeof(PhysicalZslmplMCXHDRStreamDescProps1), &PhysicalZslmplMCXHDRStreamDescProps1, StreamType }
};

static ChiFeature2StreamDescriptor PhysicalZslmplMCXHDRStreamDesc[] =
{
    {
        "PhyZslImplMCXHDRStreamDesc0",                                                   // Name
        ChiStreamIntentZsl,                                                              // Stream Intent Mask
        ChiStreamFormatImplDefined,                                                      // Chi Format
        "0",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &PhysicalZslmplMCXHDRStreamDescProps[0],                                         // Stream Props
    },
    {
        "PhyZslImplMCXHDRStreamDesc1",                                                   // Name
        ChiStreamIntentZsl,                                                              // Stream Intent Mask
        ChiStreamFormatImplDefined,                                                      // Chi Format
        "1",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &PhysicalZslmplMCXHDRStreamDescProps[0],                                         // Stream Props
    },
    {
        "PhyZslImplMCXHDRStreamDesc2",                                                   // Name
        ChiStreamIntentZsl,                                                              // Stream Intent Mask
        ChiStreamFormatImplDefined,                                                      // Chi Format
        "2",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &PhysicalZslmplMCXHDRStreamDescProps[0],                                         // Stream Props
    },
    {
        "PhyZslImplMCXHDRStreamDesc3",                                                   // Name
        ChiStreamIntentZsl,                                                              // Stream Intent Mask
        ChiStreamFormatImplDefined,                                                      // Chi Format
        "3",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &PhysicalZslmplMCXHDRStreamDescProps[0],                                         // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// JPEGMCXThumbnailStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiDataSpace JPEGMCXThumbnailStreamDescProps0[] = { DataspaceJPEGAPPSegments };

static ChiFeature2Property JPEGMCXThumbnailStreamDescProps[] =
{
    { 0, "dataspace", sizeof(JPEGMCXThumbnailStreamDescProps0), &JPEGMCXThumbnailStreamDescProps0, DataspacePropType }
};

static ChiFeature2StreamDescriptor JPEGMCXThumbnailStreamDesc[] =
{
    {
        "JPEGMCXThumbnailStreamDescriptor0",                                             // Name
        ChiStreamIntentStillCapture | ChiStreamIntentVideoSnapshot,                      // Stream Intent Mask
        ChiStreamFormatBlob,                                                             // Chi Format
        "0",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &JPEGMCXThumbnailStreamDescProps[0],                                             // Stream Props
    },
    {
        "JPEGMCXThumbnailStreamDescriptor1",                                             // Name
        ChiStreamIntentStillCapture | ChiStreamIntentVideoSnapshot,                      // Stream Intent Mask
        ChiStreamFormatBlob,                                                             // Chi Format
        "1",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &JPEGMCXThumbnailStreamDescProps[0],                                             // Stream Props
    },
    {
        "JPEGMCXThumbnailStreamDescriptor2",                                             // Name
        ChiStreamIntentStillCapture | ChiStreamIntentVideoSnapshot,                      // Stream Intent Mask
        ChiStreamFormatBlob,                                                             // Chi Format
        "2",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &JPEGMCXThumbnailStreamDescProps[0],                                             // Stream Props
    },
    {
        "JPEGMCXThumbnailStreamDescriptor3",                                             // Name
        ChiStreamIntentStillCapture | ChiStreamIntentVideoSnapshot,                      // Stream Intent Mask
        ChiStreamFormatBlob,                                                             // Chi Format
        "3",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &JPEGMCXThumbnailStreamDescProps[0],                                             // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// JPEGMCXThumbnailStreamDescPzsl
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiDataSpace JPEGMCXThumbnailStreamDescPzslProps0[] = { DataspaceJPEGAPPSegments };

static ChiFeature2Property JPEGMCXThumbnailStreamDescPzslProps[] =
{
    { 0, "dataspace", sizeof(JPEGMCXThumbnailStreamDescPzslProps0), &JPEGMCXThumbnailStreamDescPzslProps0, DataspacePropType }
};

static ChiFeature2StreamDescriptor JPEGMCXThumbnailStreamDescPzsl[] =
{
    {
        "JPEGMCXThumbnailStreamDescriptorPzsl0",                                         // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatBlob,                                                             // Chi Format
        "0",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &JPEGMCXThumbnailStreamDescPzslProps[0],                                         // Stream Props
    },
    {
        "JPEGMCXThumbnailStreamDescriptorPzsl1",                                         // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatBlob,                                                             // Chi Format
        "1",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &JPEGMCXThumbnailStreamDescPzslProps[0],                                         // Stream Props
    },
    {
        "JPEGMCXThumbnailStreamDescriptorPzsl2",                                         // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatBlob,                                                             // Chi Format
        "2",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &JPEGMCXThumbnailStreamDescPzslProps[0],                                         // Stream Props
    },
    {
        "JPEGMCXThumbnailStreamDescriptorPzsl3",                                         // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatBlob,                                                             // Chi Format
        "3",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &JPEGMCXThumbnailStreamDescPzslProps[0],                                         // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// MCXRawCbStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiStreamFormat MCXRawCbStreamDescProps0[] = { ChiStreamFormatRaw10, ChiStreamFormatRaw12, ChiStreamFormatRawOpaque };

static ChiFeature2Property MCXRawCbStreamDescProps[] =
{
    { 2, "format", sizeof(MCXRawCbStreamDescProps0), &MCXRawCbStreamDescProps0, FormatPropType }
};

static ChiFeature2StreamDescriptor MCXRawCbStreamDesc[] =
{
    {
        "MCXRawCbStreamDescriptor0",                                                     // Name
        ChiStreamIntentRaw,                                                              // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "0",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &MCXRawCbStreamDescProps[0],                                                     // Stream Props
    },
    {
        "MCXRawCbStreamDescriptor1",                                                     // Name
        ChiStreamIntentRaw,                                                              // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "1",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &MCXRawCbStreamDescProps[0],                                                     // Stream Props
    },
    {
        "MCXRawCbStreamDescriptor2",                                                     // Name
        ChiStreamIntentRaw,                                                              // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "2",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &MCXRawCbStreamDescProps[0],                                                     // Stream Props
    },
    {
        "MCXRawCbStreamDescriptor3",                                                     // Name
        ChiStreamIntentRaw,                                                              // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "3",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &MCXRawCbStreamDescProps[0],                                                     // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// MCXRawCbHRStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiStreamFormat MCXRawCbHRStreamDescProps0[] = { ChiStreamFormatRaw10, ChiStreamFormatRaw12, ChiStreamFormatRawOpaque };

static ChiFeature2Property MCXRawCbHRStreamDescProps[] =
{
    { 2, "format", sizeof(MCXRawCbHRStreamDescProps0), &MCXRawCbHRStreamDescProps0, FormatPropType }
};

static ChiFeature2StreamDescriptor MCXRawCbHRStreamDesc[] =
{
    {
        "MCXRawCbHRStreamDescriptor0",                                                   // Name
        ChiStreamIntentHRRaw,                                                            // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "0",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &MCXRawCbHRStreamDescProps[0],                                                   // Stream Props
    },
    {
        "MCXRawCbHRStreamDescriptor1",                                                   // Name
        ChiStreamIntentHRRaw,                                                            // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "1",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &MCXRawCbHRStreamDescProps[0],                                                   // Stream Props
    },
    {
        "MCXRawCbHRStreamDescriptor2",                                                   // Name
        ChiStreamIntentHRRaw,                                                            // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "2",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &MCXRawCbHRStreamDescProps[0],                                                   // Stream Props
    },
    {
        "MCXRawCbHRStreamDescriptor3",                                                   // Name
        ChiStreamIntentHRRaw,                                                            // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "3",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &MCXRawCbHRStreamDescProps[0],                                                   // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// MCXShotRawStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr UINT32 MCXShotRawStreamDescProps0 = 1;

static ChiFeature2Property MCXShotRawStreamDescProps[] =
{
    { 1, "sequence", sizeof(MCXShotRawStreamDescProps0), &MCXShotRawStreamDescProps0, SequencePropType }
};

static ChiFeature2StreamDescriptor MCXShotRawStreamDesc[] =
{
    {
        "ShortRawStreamDescriptor0",                                                     // Name
        ChiStreamIntentRaw,                                                              // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "0",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &MCXShotRawStreamDescProps[0],                                                   // Stream Props
    },
    {
        "ShortRawStreamDescriptor1",                                                     // Name
        ChiStreamIntentRaw,                                                              // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "1",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &MCXShotRawStreamDescProps[0],                                                   // Stream Props
    },
    {
        "ShortRawStreamDescriptor2",                                                     // Name
        ChiStreamIntentRaw,                                                              // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "2",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &MCXShotRawStreamDescProps[0],                                                   // Stream Props
    },
    {
        "ShortRawStreamDescriptor3",                                                     // Name
        ChiStreamIntentRaw,                                                              // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "3",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &MCXShotRawStreamDescProps[0],                                                   // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// HEICMCXSnapshotStreamDescPzsl
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiDataSpace HEICMCXSnapshotStreamDescPzslProps0[] = { DataspaceHEIF };

static ChiFeature2Property HEICMCXSnapshotStreamDescPzslProps[] =
{
    { 0, "dataspace", sizeof(HEICMCXSnapshotStreamDescPzslProps0), &HEICMCXSnapshotStreamDescPzslProps0, DataspacePropType }
};

static ChiFeature2StreamDescriptor HEICMCXSnapshotStreamDescPzsl[] =
{
    {
        "HEICMCXSnapshotStreamDescriptorPzsl0",                                          // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "0",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &HEICMCXSnapshotStreamDescPzslProps[0],                                          // Stream Props
    },
    {
        "HEICMCXSnapshotStreamDescriptorPzsl1",                                          // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "1",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &HEICMCXSnapshotStreamDescPzslProps[0],                                          // Stream Props
    },
    {
        "HEICMCXSnapshotStreamDescriptorPzsl2",                                          // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "2",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &HEICMCXSnapshotStreamDescPzslProps[0],                                          // Stream Props
    },
    {
        "HEICMCXSnapshotStreamDescriptorPzsl3",                                          // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "3",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &HEICMCXSnapshotStreamDescPzslProps[0],                                          // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// MCXPostviewStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static ChiFeature2StreamDescriptor MCXPostviewStreamDesc[] =
{
    {
        "MCXPostviewStreamDescriptor0",                                                  // Name
        ChiStreamIntentPostview,                                                         // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "0",                                                                             // Physical Camera
        0,                                                                               // Num Stream Props
        NULL,                                                                            // Stream Props
    },
    {
        "MCXPostviewStreamDescriptor1",                                                  // Name
        ChiStreamIntentPostview,                                                         // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "1",                                                                             // Physical Camera
        0,                                                                               // Num Stream Props
        NULL,                                                                            // Stream Props
    },
    {
        "MCXPostviewStreamDescriptor2",                                                  // Name
        ChiStreamIntentPostview,                                                         // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "2",                                                                             // Physical Camera
        0,                                                                               // Num Stream Props
        NULL,                                                                            // Stream Props
    },
    {
        "MCXPostviewStreamDescriptor3",                                                  // Name
        ChiStreamIntentPostview,                                                         // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "3",                                                                             // Physical Camera
        0,                                                                               // Num Stream Props
        NULL,                                                                            // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// HEICMCXSnapshotStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiDataSpace HEICMCXSnapshotStreamDescProps0[] = { DataspaceHEIF };

static ChiFeature2Property HEICMCXSnapshotStreamDescProps[] =
{
    { 0, "dataspace", sizeof(HEICMCXSnapshotStreamDescProps0), &HEICMCXSnapshotStreamDescProps0, DataspacePropType }
};

static ChiFeature2StreamDescriptor HEICMCXSnapshotStreamDesc[] =
{
    {
        "HEICMCXSnapshotStreamDescriptor0",                                              // Name
        ChiStreamIntentStillCapture | ChiStreamIntentVideoSnapshot,                      // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "0",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &HEICMCXSnapshotStreamDescProps[0],                                              // Stream Props
    },
    {
        "HEICMCXSnapshotStreamDescriptor1",                                              // Name
        ChiStreamIntentStillCapture | ChiStreamIntentVideoSnapshot,                      // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "1",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &HEICMCXSnapshotStreamDescProps[0],                                              // Stream Props
    },
    {
        "HEICMCXSnapshotStreamDescriptor2",                                              // Name
        ChiStreamIntentStillCapture | ChiStreamIntentVideoSnapshot,                      // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "2",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &HEICMCXSnapshotStreamDescProps[0],                                              // Stream Props
    },
    {
        "HEICMCXSnapshotStreamDescriptor3",                                              // Name
        ChiStreamIntentStillCapture | ChiStreamIntentVideoSnapshot,                      // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "3",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &HEICMCXSnapshotStreamDescProps[0],                                              // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// StillCaptureMCXYUVStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiDataSpace StillCaptureMCXYUVStreamDescProps0[] = { DataspaceV0JFIF, DataspaceUnknown, DataspaceStandard_BT709, DataspaceDisplayP3 };
constexpr UINT32 StillCaptureMCXYUVStreamDescProps1 = 2;

static ChiFeature2Property StillCaptureMCXYUVStreamDescProps[] =
{
    { 0, "dataspace", sizeof(StillCaptureMCXYUVStreamDescProps0), &StillCaptureMCXYUVStreamDescProps0, DataspacePropType },
    { 3, "stream_type", sizeof(StillCaptureMCXYUVStreamDescProps1), &StillCaptureMCXYUVStreamDescProps1, StreamType }
};

static ChiFeature2StreamDescriptor StillCaptureMCXYUVStreamDesc[] =
{
    {
        "StillCaptureMCXYUVStreamDesc0",                                                 // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "0",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &StillCaptureMCXYUVStreamDescProps[0],                                           // Stream Props
    },
    {
        "StillCaptureMCXYUVStreamDesc1",                                                 // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "1",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &StillCaptureMCXYUVStreamDescProps[0],                                           // Stream Props
    },
    {
        "StillCaptureMCXYUVStreamDesc2",                                                 // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "2",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &StillCaptureMCXYUVStreamDescProps[0],                                           // Stream Props
    },
    {
        "StillCaptureMCXYUVStreamDesc3",                                                 // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "3",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &StillCaptureMCXYUVStreamDescProps[0],                                           // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// MCXRaw16CbStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static ChiFeature2StreamDescriptor MCXRaw16CbStreamDesc[] =
{
    {
        "MCXRaw16CbStreamDescriptor0",                                                   // Name
        ChiStreamIntentRaw,                                                              // Stream Intent Mask
        ChiStreamFormatRaw16,                                                            // Chi Format
        "0",                                                                             // Physical Camera
        0,                                                                               // Num Stream Props
        NULL,                                                                            // Stream Props
    },
    {
        "MCXRaw16CbStreamDescriptor1",                                                   // Name
        ChiStreamIntentRaw,                                                              // Stream Intent Mask
        ChiStreamFormatRaw16,                                                            // Chi Format
        "1",                                                                             // Physical Camera
        0,                                                                               // Num Stream Props
        NULL,                                                                            // Stream Props
    },
    {
        "MCXRaw16CbStreamDescriptor2",                                                   // Name
        ChiStreamIntentRaw,                                                              // Stream Intent Mask
        ChiStreamFormatRaw16,                                                            // Chi Format
        "2",                                                                             // Physical Camera
        0,                                                                               // Num Stream Props
        NULL,                                                                            // Stream Props
    },
    {
        "MCXRaw16CbStreamDescriptor3",                                                   // Name
        ChiStreamIntentRaw,                                                              // Stream Intent Mask
        ChiStreamFormatRaw16,                                                            // Chi Format
        "3",                                                                             // Physical Camera
        0,                                                                               // Num Stream Props
        NULL,                                                                            // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// MCXRaw16CbHRStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static ChiFeature2StreamDescriptor MCXRaw16CbHRStreamDesc[] =
{
    {
        "MCXRaw16CbHRStreamDescriptor0",                                                 // Name
        ChiStreamIntentRaw,                                                              // Stream Intent Mask
        ChiStreamFormatRaw16,                                                            // Chi Format
        "0",                                                                             // Physical Camera
        0,                                                                               // Num Stream Props
        NULL,                                                                            // Stream Props
    },
    {
        "MCXRaw16CbHRStreamDescriptor1",                                                 // Name
        ChiStreamIntentRaw,                                                              // Stream Intent Mask
        ChiStreamFormatRaw16,                                                            // Chi Format
        "1",                                                                             // Physical Camera
        0,                                                                               // Num Stream Props
        NULL,                                                                            // Stream Props
    },
    {
        "MCXRaw16CbHRStreamDescriptor2",                                                 // Name
        ChiStreamIntentRaw,                                                              // Stream Intent Mask
        ChiStreamFormatRaw16,                                                            // Chi Format
        "2",                                                                             // Physical Camera
        0,                                                                               // Num Stream Props
        NULL,                                                                            // Stream Props
    },
    {
        "MCXRaw16CbHRStreamDescriptor3",                                                 // Name
        ChiStreamIntentRaw,                                                              // Stream Intent Mask
        ChiStreamFormatRaw16,                                                            // Chi Format
        "3",                                                                             // Physical Camera
        0,                                                                               // Num Stream Props
        NULL,                                                                            // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// MCXPhysicalRaw16CbStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr UINT32 MCXPhysicalRaw16CbStreamDescProps0 = 1;

static ChiFeature2Property MCXPhysicalRaw16CbStreamDescProps[] =
{
    { 3, "stream_type", sizeof(MCXPhysicalRaw16CbStreamDescProps0), &MCXPhysicalRaw16CbStreamDescProps0, StreamType }
};

static ChiFeature2StreamDescriptor MCXPhysicalRaw16CbStreamDesc[] =
{
    {
        "MCXPhysicalRaw16CbStreamDescriptor0",                                           // Name
        ChiStreamIntentRaw,                                                              // Stream Intent Mask
        ChiStreamFormatRaw16,                                                            // Chi Format
        "0",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &MCXPhysicalRaw16CbStreamDescProps[0],                                           // Stream Props
    },
    {
        "MCXPhysicalRaw16CbStreamDescriptor1",                                           // Name
        ChiStreamIntentRaw,                                                              // Stream Intent Mask
        ChiStreamFormatRaw16,                                                            // Chi Format
        "1",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &MCXPhysicalRaw16CbStreamDescProps[0],                                           // Stream Props
    },
    {
        "MCXPhysicalRaw16CbStreamDescriptor2",                                           // Name
        ChiStreamIntentRaw,                                                              // Stream Intent Mask
        ChiStreamFormatRaw16,                                                            // Chi Format
        "2",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &MCXPhysicalRaw16CbStreamDescProps[0],                                           // Stream Props
    },
    {
        "MCXPhysicalRaw16CbStreamDescriptor3",                                           // Name
        ChiStreamIntentRaw,                                                              // Stream Intent Mask
        ChiStreamFormatRaw16,                                                            // Chi Format
        "3",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &MCXPhysicalRaw16CbStreamDescProps[0],                                           // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// MCXPhyPreviewStreamDesc_1
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr UINT32 MCXPhyPreviewStreamDesc_1Props0 = 1;
constexpr UINT32 MCXPhyPreviewStreamDesc_1Props1 = 1;

static ChiFeature2Property MCXPhyPreviewStreamDesc_1Props[] =
{
    { 1, "sequence", sizeof(MCXPhyPreviewStreamDesc_1Props0), &MCXPhyPreviewStreamDesc_1Props0, SequencePropType },
    { 3, "stream_type", sizeof(MCXPhyPreviewStreamDesc_1Props1), &MCXPhyPreviewStreamDesc_1Props1, StreamType }
};

static ChiFeature2StreamDescriptor MCXPhyPreviewStreamDesc_1[] =
{
    {
        "MCXPhyPreviewStreamDescriptor0_1",                                              // Name
        ChiStreamIntentPreview,                                                          // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "0",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &MCXPhyPreviewStreamDesc_1Props[0],                                              // Stream Props
    },
    {
        "MCXPhyPreviewStreamDescriptor1_1",                                              // Name
        ChiStreamIntentPreview,                                                          // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "1",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &MCXPhyPreviewStreamDesc_1Props[0],                                              // Stream Props
    },
    {
        "MCXPhyPreviewStreamDescriptor2_1",                                              // Name
        ChiStreamIntentPreview,                                                          // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "2",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &MCXPhyPreviewStreamDesc_1Props[0],                                              // Stream Props
    },
    {
        "MCXPhyPreviewStreamDescriptor3_1",                                              // Name
        ChiStreamIntentPreview,                                                          // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "3",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &MCXPhyPreviewStreamDesc_1Props[0],                                              // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// MCXPhyPreviewStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr UINT32 MCXPhyPreviewStreamDescProps0 = 1;

static ChiFeature2Property MCXPhyPreviewStreamDescProps[] =
{
    { 3, "stream_type", sizeof(MCXPhyPreviewStreamDescProps0), &MCXPhyPreviewStreamDescProps0, StreamType }
};

static ChiFeature2StreamDescriptor MCXPhyPreviewStreamDesc[] =
{
    {
        "MCXPhyPreviewStreamDescriptor0",                                                // Name
        ChiStreamIntentPreview,                                                          // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "0",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &MCXPhyPreviewStreamDescProps[0],                                                // Stream Props
    },
    {
        "MCXPhyPreviewStreamDescriptor1",                                                // Name
        ChiStreamIntentPreview,                                                          // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "1",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &MCXPhyPreviewStreamDescProps[0],                                                // Stream Props
    },
    {
        "MCXPhyPreviewStreamDescriptor2",                                                // Name
        ChiStreamIntentPreview,                                                          // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "2",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &MCXPhyPreviewStreamDescProps[0],                                                // Stream Props
    },
    {
        "MCXPhyPreviewStreamDescriptor3",                                                // Name
        ChiStreamIntentPreview,                                                          // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "3",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &MCXPhyPreviewStreamDescProps[0],                                                // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// JPEGMCXSnapshotStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiDataSpace JPEGMCXSnapshotStreamDescProps0[] = { DataspaceV0JFIF };

static ChiFeature2Property JPEGMCXSnapshotStreamDescProps[] =
{
    { 0, "dataspace", sizeof(JPEGMCXSnapshotStreamDescProps0), &JPEGMCXSnapshotStreamDescProps0, DataspacePropType }
};

static ChiFeature2StreamDescriptor JPEGMCXSnapshotStreamDesc[] =
{
    {
        "JPEGMCXSnapshotStreamDescriptor0",                                              // Name
        ChiStreamIntentStillCapture | ChiStreamIntentVideoSnapshot,                      // Stream Intent Mask
        ChiStreamFormatBlob,                                                             // Chi Format
        "0",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &JPEGMCXSnapshotStreamDescProps[0],                                              // Stream Props
    },
    {
        "JPEGMCXSnapshotStreamDescriptor1",                                              // Name
        ChiStreamIntentStillCapture | ChiStreamIntentVideoSnapshot,                      // Stream Intent Mask
        ChiStreamFormatBlob,                                                             // Chi Format
        "1",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &JPEGMCXSnapshotStreamDescProps[0],                                              // Stream Props
    },
    {
        "JPEGMCXSnapshotStreamDescriptor2",                                              // Name
        ChiStreamIntentStillCapture | ChiStreamIntentVideoSnapshot,                      // Stream Intent Mask
        ChiStreamFormatBlob,                                                             // Chi Format
        "2",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &JPEGMCXSnapshotStreamDescProps[0],                                              // Stream Props
    },
    {
        "JPEGMCXSnapshotStreamDescriptor3",                                              // Name
        ChiStreamIntentStillCapture | ChiStreamIntentVideoSnapshot,                      // Stream Intent Mask
        ChiStreamFormatBlob,                                                             // Chi Format
        "3",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &JPEGMCXSnapshotStreamDescProps[0],                                              // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// YUV420P010MCXStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiDataSpace YUV420P010MCXStreamDescProps0[] = { DataspaceV0JFIF, DataspaceUnknown, DataspaceStandard_BT709, DataspaceStandardBT2020_HLG, DataspaceDisplayP3 };

static ChiFeature2Property YUV420P010MCXStreamDescProps[] =
{
    { 0, "dataspace", sizeof(YUV420P010MCXStreamDescProps0), &YUV420P010MCXStreamDescProps0, DataspacePropType }
};

static ChiFeature2StreamDescriptor YUV420P010MCXStreamDesc[] =
{
    {
        "YUV420P010MCXStreamDesc0",                                                      // Name
        ChiStreamIntentStillCapture | ChiStreamIntentVideoSnapshot,                      // Stream Intent Mask
        ChiStreamFormatP010,                                                             // Chi Format
        "0",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &YUV420P010MCXStreamDescProps[0],                                                // Stream Props
    },
    {
        "YUV420P010MCXStreamDesc1",                                                      // Name
        ChiStreamIntentStillCapture | ChiStreamIntentVideoSnapshot,                      // Stream Intent Mask
        ChiStreamFormatP010,                                                             // Chi Format
        "1",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &YUV420P010MCXStreamDescProps[0],                                                // Stream Props
    },
    {
        "YUV420P010MCXStreamDesc2",                                                      // Name
        ChiStreamIntentStillCapture | ChiStreamIntentVideoSnapshot,                      // Stream Intent Mask
        ChiStreamFormatP010,                                                             // Chi Format
        "2",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &YUV420P010MCXStreamDescProps[0],                                                // Stream Props
    },
    {
        "YUV420P010MCXStreamDesc3",                                                      // Name
        ChiStreamIntentStillCapture | ChiStreamIntentVideoSnapshot,                      // Stream Intent Mask
        ChiStreamFormatP010,                                                             // Chi Format
        "3",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &YUV420P010MCXStreamDescProps[0],                                                // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// DualYUV420P010MCXStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiDataSpace DualYUV420P010MCXStreamDescProps0[] = { DataspaceV0JFIF, DataspaceUnknown, DataspaceStandard_BT709, DataspaceStandardBT2020_HLG, DataspaceDisplayP3 };
constexpr UINT32 DualYUV420P010MCXStreamDescProps1 = 1;
constexpr UINT32 DualYUV420P010MCXStreamDescProps2 = 2;

static ChiFeature2Property DualYUV420P010MCXStreamDescProps[] =
{
    { 0, "dataspace", sizeof(DualYUV420P010MCXStreamDescProps0), &DualYUV420P010MCXStreamDescProps0, DataspacePropType },
    { 1, "sequence", sizeof(DualYUV420P010MCXStreamDescProps1), &DualYUV420P010MCXStreamDescProps1, SequencePropType },
    { 3, "stream_type", sizeof(DualYUV420P010MCXStreamDescProps2), &DualYUV420P010MCXStreamDescProps2, StreamType }
};

static ChiFeature2StreamDescriptor DualYUV420P010MCXStreamDesc[] =
{
    {
        "DualYUV420P010MCXStreamDesc0",                                                  // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatP010,                                                             // Chi Format
        "0",                                                                             // Physical Camera
        3,                                                                               // Num Stream Props
        &DualYUV420P010MCXStreamDescProps[0],                                            // Stream Props
    },
    {
        "DualYUV420P010MCXStreamDesc1",                                                  // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatP010,                                                             // Chi Format
        "1",                                                                             // Physical Camera
        3,                                                                               // Num Stream Props
        &DualYUV420P010MCXStreamDescProps[0],                                            // Stream Props
    },
    {
        "DualYUV420P010MCXStreamDesc2",                                                  // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatP010,                                                             // Chi Format
        "2",                                                                             // Physical Camera
        3,                                                                               // Num Stream Props
        &DualYUV420P010MCXStreamDescProps[0],                                            // Stream Props
    },
    {
        "DualYUV420P010MCXStreamDesc3",                                                  // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatP010,                                                             // Chi Format
        "3",                                                                             // Physical Camera
        3,                                                                               // Num Stream Props
        &DualYUV420P010MCXStreamDescProps[0],                                            // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// PhysicalYUV420P010MCXStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiDataSpace PhysicalYUV420P010MCXStreamDescProps0[] = { DataspaceV0JFIF, DataspaceUnknown, DataspaceStandard_BT709 };
constexpr UINT32 PhysicalYUV420P010MCXStreamDescProps1 = 1;

static ChiFeature2Property PhysicalYUV420P010MCXStreamDescProps[] =
{
    { 0, "dataspace", sizeof(PhysicalYUV420P010MCXStreamDescProps0), &PhysicalYUV420P010MCXStreamDescProps0, DataspacePropType },
    { 3, "stream_type", sizeof(PhysicalYUV420P010MCXStreamDescProps1), &PhysicalYUV420P010MCXStreamDescProps1, StreamType }
};

static ChiFeature2StreamDescriptor PhysicalYUV420P010MCXStreamDesc[] =
{
    {
        "PhysicalYUV420P010MCXStreamDesc0",                                              // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatP010,                                                             // Chi Format
        "0",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &PhysicalYUV420P010MCXStreamDescProps[0],                                        // Stream Props
    },
    {
        "PhysicalYUV420P010MCXStreamDesc1",                                              // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatP010,                                                             // Chi Format
        "1",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &PhysicalYUV420P010MCXStreamDescProps[0],                                        // Stream Props
    },
    {
        "PhysicalYUV420P010MCXStreamDesc2",                                              // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatP010,                                                             // Chi Format
        "2",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &PhysicalYUV420P010MCXStreamDescProps[0],                                        // Stream Props
    },
    {
        "PhysicalYUV420P010MCXStreamDesc3",                                              // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatP010,                                                             // Chi Format
        "3",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &PhysicalYUV420P010MCXStreamDescProps[0],                                        // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// ZslImplDefinedMCXPhysicalStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiStreamFormat ZslImplDefinedMCXPhysicalStreamDescProps0[] = { ChiStreamFormatImplDefined, ChiStreamFormatP010, ChiStreamFormatP010Video, ChiStreamFormatYCbCr420_888 };
constexpr UINT32 ZslImplDefinedMCXPhysicalStreamDescProps1 = 1;

static ChiFeature2Property ZslImplDefinedMCXPhysicalStreamDescProps[] =
{
    { 2, "format", sizeof(ZslImplDefinedMCXPhysicalStreamDescProps0), &ZslImplDefinedMCXPhysicalStreamDescProps0, FormatPropType },
    { 3, "stream_type", sizeof(ZslImplDefinedMCXPhysicalStreamDescProps1), &ZslImplDefinedMCXPhysicalStreamDescProps1, StreamType }
};

static ChiFeature2StreamDescriptor ZslImplDefinedMCXPhysicalStreamDesc[] =
{
    {
        "ZslImplDefinedMCXPhysicalStreamDesc0",                                          // Name
        ChiStreamIntentZsl,                                                              // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "0",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &ZslImplDefinedMCXPhysicalStreamDescProps[0],                                    // Stream Props
    },
    {
        "ZslImplDefinedMCXPhysicalStreamDesc1",                                          // Name
        ChiStreamIntentZsl,                                                              // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "1",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &ZslImplDefinedMCXPhysicalStreamDescProps[0],                                    // Stream Props
    },
    {
        "ZslImplDefinedMCXPhysicalStreamDesc2",                                          // Name
        ChiStreamIntentZsl,                                                              // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "2",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &ZslImplDefinedMCXPhysicalStreamDescProps[0],                                    // Stream Props
    },
    {
        "ZslImplDefinedMCXPhysicalStreamDesc3",                                          // Name
        ChiStreamIntentZsl,                                                              // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "3",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &ZslImplDefinedMCXPhysicalStreamDescProps[0],                                    // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// ZslImplDefinedMCXHDRPhysicalStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr ChiStreamFormat ZslImplDefinedMCXHDRPhysicalStreamDescProps0[] = { ChiStreamFormatImplDefined, ChiStreamFormatP010, ChiStreamFormatP010Video, ChiStreamFormatYCbCr420_888 };
constexpr UINT32 ZslImplDefinedMCXHDRPhysicalStreamDescProps1 = 1;

static ChiFeature2Property ZslImplDefinedMCXHDRPhysicalStreamDescProps[] =
{
    { 2, "format", sizeof(ZslImplDefinedMCXHDRPhysicalStreamDescProps0), &ZslImplDefinedMCXHDRPhysicalStreamDescProps0, FormatPropType },
    { 3, "stream_type", sizeof(ZslImplDefinedMCXHDRPhysicalStreamDescProps1), &ZslImplDefinedMCXHDRPhysicalStreamDescProps1, StreamType }
};

static ChiFeature2StreamDescriptor ZslImplDefinedMCXHDRPhysicalStreamDesc[] =
{
    {
        "ZslImplDefinedMCXHDRPhysicalStreamDesc0",                                       // Name
        ChiStreamIntentZsl,                                                              // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "0",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &ZslImplDefinedMCXHDRPhysicalStreamDescProps[0],                                 // Stream Props
    },
    {
        "ZslImplDefinedMCXHDRPhysicalStreamDesc1",                                       // Name
        ChiStreamIntentZsl,                                                              // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "1",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &ZslImplDefinedMCXHDRPhysicalStreamDescProps[0],                                 // Stream Props
    },
    {
        "ZslImplDefinedMCXHDRPhysicalStreamDesc2",                                       // Name
        ChiStreamIntentZsl,                                                              // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "2",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &ZslImplDefinedMCXHDRPhysicalStreamDescProps[0],                                 // Stream Props
    },
    {
        "ZslImplDefinedMCXHDRPhysicalStreamDesc3",                                       // Name
        ChiStreamIntentZsl,                                                              // Stream Intent Mask
        static_cast<ChiStreamFormat>(ChiStreamFormatAny),                                // Chi Format
        "3",                                                                             // Physical Camera
        2,                                                                               // Num Stream Props
        &ZslImplDefinedMCXHDRPhysicalStreamDescProps[0],                                 // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// StillCaptureMCXYUVStreamDesc_1
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

constexpr UINT32 StillCaptureMCXYUVStreamDesc_1Props0 = 1;

static ChiFeature2Property StillCaptureMCXYUVStreamDesc_1Props[] =
{
    { 1, "sequence", sizeof(StillCaptureMCXYUVStreamDesc_1Props0), &StillCaptureMCXYUVStreamDesc_1Props0, SequencePropType }
};

static ChiFeature2StreamDescriptor StillCaptureMCXYUVStreamDesc_1[] =
{
    {
        "StillCaptureMCXYUVStreamDesc0_1",                                               // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "0",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &StillCaptureMCXYUVStreamDesc_1Props[0],                                         // Stream Props
    },
    {
        "StillCaptureMCXYUVStreamDesc1_1",                                               // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "1",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &StillCaptureMCXYUVStreamDesc_1Props[0],                                         // Stream Props
    },
    {
        "StillCaptureMCXYUVStreamDesc2_1",                                               // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "2",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &StillCaptureMCXYUVStreamDesc_1Props[0],                                         // Stream Props
    },
    {
        "StillCaptureMCXYUVStreamDesc3_1",                                               // Name
        ChiStreamIntentStillCapture,                                                     // Stream Intent Mask
        ChiStreamFormatYCbCr420_888,                                                     // Chi Format
        "3",                                                                             // Physical Camera
        1,                                                                               // Num Stream Props
        &StillCaptureMCXYUVStreamDesc_1Props[0],                                         // Stream Props
    }
};

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// MCXDepthStreamDesc
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

static ChiFeature2StreamDescriptor MCXDepthStreamDesc[] =
{
    {
        "MCXDepthStreamDesc0",                                                           // Name
        ChiStreamIntentDepth,                                                            // Stream Intent Mask
        ChiStreamFormatY16,                                                              // Chi Format
        "0",                                                                             // Physical Camera
        0,                                                                               // Num Stream Props
        NULL,                                                                            // Stream Props
    },
    {
        "MCXDepthStreamDesc1",                                                           // Name
        ChiStreamIntentDepth,                                                            // Stream Intent Mask
        ChiStreamFormatY16,                                                              // Chi Format
        "1",                                                                             // Physical Camera
        0,                                                                               // Num Stream Props
        NULL,                                                                            // Stream Props
    },
    {
        "MCXDepthStreamDesc2",                                                           // Name
        ChiStreamIntentDepth,                                                            // Stream Intent Mask
        ChiStreamFormatY16,                                                              // Chi Format
        "2",                                                                             // Physical Camera
        0,                                                                               // Num Stream Props
        NULL,                                                                            // Stream Props
    },
    {
        "MCXDepthStreamDesc3",                                                           // Name
        ChiStreamIntentDepth,                                                            // Stream Intent Mask
        ChiStreamFormatY16,                                                              // Chi Format
        "3",                                                                             // Physical Camera
        0,                                                                               // Num Stream Props
        NULL,                                                                            // Stream Props
    }
};

static constexpr const UINT NUM_STREAM_DESCS_SINGLECAM = 48;
static std::array<std::pair<ChiFeature2StreamDescriptor*, const CHAR*>, NUM_STREAM_DESCS_SINGLECAM> SingleCamStreamDescIds =
{
    {
        { &DepthStreamDesc, "DepthStreamDesc" },
        { &PostviewAppStreamDesc, "PostviewAppStreamDesc" },
        { &PostviewStreamDesc, "PostviewStreamDesc" },
        { &DualStillCaptureYUVStreamDesc, "DualStillCaptureYUVStreamDesc" },
        { &RealTimeTYUVSnapshotStreamDesc, "RealTimeTYUVSnapshotStreamDesc" },
        { &StillCaptureYUVStreamDesc_1, "StillCaptureYUVStreamDesc_1" },
        { &StillCaptureYUVStreamDesc_2, "StillCaptureYUVStreamDesc_2" },
        { &VideoStreamDesc, "VideoStreamDesc" },
        { &YUVReprocessInputStreamDesc, "YUVReprocessInputStreamDesc" },
        { &XHDRVideoStreamDesc, "XHDRVideoStreamDesc" },
        { &YUVInputStreamDesc, "YUVInputStreamDesc" },
        { &MCXLogicalPreviewCBStreamDesc, "MCXLogicalPreviewCBStreamDesc" },
        { &MCXOfflineIFEVideoStreamDesc, "MCXOfflineIFEVideoStreamDesc" },
        { &RawOutputStreamDesc, "RawOutputStreamDesc" },
        { &RawInputStreamDesc, "RawInputStreamDesc" },
        { &ImplSnapshotStreamDesc, "ImplSnapshotStreamDesc" },
        { &ZslStreamDesc, "ZslStreamDesc" },
        { &YUV420P010StreamDesc, "YUV420P010StreamDesc" },
        { &P010StillCaptureStreamDesc, "P010StillCaptureStreamDesc" },
        { &IMPLDefinedReprocessStreamDesc, "IMPLDefinedReprocessStreamDesc" },
        { &MCXOfflineIFEPreviewStreamDesc, "MCXOfflineIFEPreviewStreamDesc" },
        { &RawReprocessStreamDesc, "RawReprocessStreamDesc" },
        { &StillCaptureYUVStreamDesc, "StillCaptureYUVStreamDesc" },
        { &MemcpyOutputStreamDesc, "MemcpyOutputStreamDesc" },
        { &MCXLogicalVideoStreamDesc, "MCXLogicalVideoStreamDesc" },
        { &ThirdPreviewStreamDesc, "ThirdPreviewStreamDesc" },
        { &DualYUVOutputStreamDesc, "DualYUVOutputStreamDesc" },
        { &MCXLogicalPreviewStreamDesc_1, "MCXLogicalPreviewStreamDesc_1" },
        { &PostviewP010StreamDesc, "PostviewP010StreamDesc" },
        { &DualAnalysisStreamDesc, "DualAnalysisStreamDesc" },
        { &JPEGThumbnailStreamDesc, "JPEGThumbnailStreamDesc" },
        { &YUVSnapshotStreamDesc, "YUVSnapshotStreamDesc" },
        { &YUVDsxStreamDesc, "YUVDsxStreamDesc" },
        { &MCXLogicalPreviewStreamDesc, "MCXLogicalPreviewStreamDesc" },
        { &RawStreamDesc, "RawStreamDesc" },
        { &RawStreamDesc1, "RawStreamDesc1" },
        { &RawStreamDesc2, "RawStreamDesc2" },
        { &RawStreamDesc3, "RawStreamDesc3" },
        { &ShortRawStreamDesc, "ShortRawStreamDesc" },
        { &XHDRPreviewStreamDesc, "XHDRPreviewStreamDesc" },
        { &HEICSnapshotStreamDesc, "HEICSnapshotStreamDesc" },
        { &YUVAnalysisStreamDesc, "YUVAnalysisStreamDesc" },
        { &P010AnalysisStreamDesc, "P010AnalysisStreamDesc" },
        { &DualPreviewStreamDesc, "DualPreviewStreamDesc" },
        { &YUVOutputStreamDesc, "YUVOutputStreamDesc" },
        { &MemcpyRawStreamDesc, "MemcpyRawStreamDesc" },
        { &PreviewStreamDesc, "PreviewStreamDesc" },
        { &JPEGSnapshotStreamDesc, "JPEGSnapshotStreamDesc" },
    }};

static constexpr const UINT MCX_STREAM_DESC_SIZE = 4;
static constexpr const UINT NUM_STREAM_DESCS_MCX = 37;
static std::array<std::pair<ChiFeature2StreamDescriptor*, const CHAR*>, NUM_STREAM_DESCS_MCX> MCXStreamDescIds =
{
    {
        { &ZslImplDefinedMCXStreamDesc[0], "ZslImplDefinedMCXStreamDesc" },
        { &ZslImplDefinedMCXHDRStreamDesc[0], "ZslImplDefinedMCXHDRStreamDesc" },
        { &JPEGMCXSnapshotStreamDescPzsl[0], "JPEGMCXSnapshotStreamDescPzsl" },
        { &MCXPhyVideoStreamDesc[0], "MCXPhyVideoStreamDesc" },
        { &ZslImplDefinedMCXStreamDesc_1[0], "ZslImplDefinedMCXStreamDesc_1" },
        { &DualZslImplDefinedMCXHDRStreamDesc[0], "DualZslImplDefinedMCXHDRStreamDesc" },
        { &StillCaptureMCXYUVStreamDesc_2[0], "StillCaptureMCXYUVStreamDesc_2" },
        { &YUVMCXSnapshotStreamDesc[0], "YUVMCXSnapshotStreamDesc" },
        { &YUVMCXSnapshotHDRStreamDesc[0], "YUVMCXSnapshotHDRStreamDesc" },
        { &PhysicalStillCaptureMCXStreamDesc[0], "PhysicalStillCaptureMCXStreamDesc" },
        { &PhysicalYUVDsxMCXStreamDesc[0], "PhysicalYUVDsxMCXStreamDesc" },
        { &DualPhysicalStillCaptureMCXHDRStreamDesc[0], "DualPhysicalStillCaptureMCXHDRStreamDesc" },
        { &PhysicalStillCaptureMCXStreamDesc_1[0], "PhysicalStillCaptureMCXStreamDesc_1" },
        { &PhysicalZslmplMCXStreamDesc_1[0], "PhysicalZslmplMCXStreamDesc_1" },
        { &PhysicalZslmplMCXHDRStreamDesc[0], "PhysicalZslmplMCXHDRStreamDesc" },
        { &JPEGMCXThumbnailStreamDesc[0], "JPEGMCXThumbnailStreamDesc" },
        { &JPEGMCXThumbnailStreamDescPzsl[0], "JPEGMCXThumbnailStreamDescPzsl" },
        { &MCXRawCbStreamDesc[0], "MCXRawCbStreamDesc" },
        { &MCXRawCbHRStreamDesc[0], "MCXRawCbHRStreamDesc" },
        { &MCXShotRawStreamDesc[0], "MCXShotRawStreamDesc" },
        { &HEICMCXSnapshotStreamDescPzsl[0], "HEICMCXSnapshotStreamDescPzsl" },
        { &MCXPostviewStreamDesc[0], "MCXPostviewStreamDesc" },
        { &HEICMCXSnapshotStreamDesc[0], "HEICMCXSnapshotStreamDesc" },
        { &StillCaptureMCXYUVStreamDesc[0], "StillCaptureMCXYUVStreamDesc" },
        { &MCXRaw16CbStreamDesc[0], "MCXRaw16CbStreamDesc" },
        { &MCXRaw16CbHRStreamDesc[0], "MCXRaw16CbHRStreamDesc" },
        { &MCXPhysicalRaw16CbStreamDesc[0], "MCXPhysicalRaw16CbStreamDesc" },
        { &MCXPhyPreviewStreamDesc_1[0], "MCXPhyPreviewStreamDesc_1" },
        { &MCXPhyPreviewStreamDesc[0], "MCXPhyPreviewStreamDesc" },
        { &JPEGMCXSnapshotStreamDesc[0], "JPEGMCXSnapshotStreamDesc" },
        { &YUV420P010MCXStreamDesc[0], "YUV420P010MCXStreamDesc" },
        { &DualYUV420P010MCXStreamDesc[0], "DualYUV420P010MCXStreamDesc" },
        { &PhysicalYUV420P010MCXStreamDesc[0], "PhysicalYUV420P010MCXStreamDesc" },
        { &ZslImplDefinedMCXPhysicalStreamDesc[0], "ZslImplDefinedMCXPhysicalStreamDesc" },
        { &ZslImplDefinedMCXHDRPhysicalStreamDesc[0], "ZslImplDefinedMCXHDRPhysicalStreamDesc" },
        { &StillCaptureMCXYUVStreamDesc_1[0], "StillCaptureMCXYUVStreamDesc_1" },
        { &MCXDepthStreamDesc[0], "MCXDepthStreamDesc" },
    }
};

#endif // G_CHIFEATURE2XMLTYPES_H
