require '_h2ph_pre.ph';

no warnings qw(redefine misc);

unless(defined(&_SYS_VIDEOIO_H_)) {
    eval 'sub _SYS_VIDEOIO_H_ () {1;}' unless defined(&_SYS_VIDEOIO_H_);
    require 'sys/types.ph';
    require 'sys/ioccom.ph';
    require 'sys/time.ph';
    if(defined(&_KERNEL)) {
	require 'compat/sys/time.ph';
    }
    eval 'sub V4L2_SEL_TGT_CROP () {0x;}' unless defined(&V4L2_SEL_TGT_CROP);
    eval 'sub V4L2_SEL_TGT_CROP_DEFAULT () {0x1;}' unless defined(&V4L2_SEL_TGT_CROP_DEFAULT);
    eval 'sub V4L2_SEL_TGT_CROP_BOUNDS () {0x2;}' unless defined(&V4L2_SEL_TGT_CROP_BOUNDS);
    eval 'sub V4L2_SEL_TGT_NATIVE_SIZE () {0x3;}' unless defined(&V4L2_SEL_TGT_NATIVE_SIZE);
    eval 'sub V4L2_SEL_TGT_COMPOSE () {0x100;}' unless defined(&V4L2_SEL_TGT_COMPOSE);
    eval 'sub V4L2_SEL_TGT_COMPOSE_DEFAULT () {0x101;}' unless defined(&V4L2_SEL_TGT_COMPOSE_DEFAULT);
    eval 'sub V4L2_SEL_TGT_COMPOSE_BOUNDS () {0x102;}' unless defined(&V4L2_SEL_TGT_COMPOSE_BOUNDS);
    eval 'sub V4L2_SEL_TGT_COMPOSE_PADDED () {0x103;}' unless defined(&V4L2_SEL_TGT_COMPOSE_PADDED);
    eval 'sub V4L2_SEL_TGT_CROP_ACTIVE () { &V4L2_SEL_TGT_CROP;}' unless defined(&V4L2_SEL_TGT_CROP_ACTIVE);
    eval 'sub V4L2_SEL_TGT_COMPOSE_ACTIVE () { &V4L2_SEL_TGT_COMPOSE;}' unless defined(&V4L2_SEL_TGT_COMPOSE_ACTIVE);
    eval 'sub V4L2_SUBDEV_SEL_TGT_CROP_ACTUAL () { &V4L2_SEL_TGT_CROP;}' unless defined(&V4L2_SUBDEV_SEL_TGT_CROP_ACTUAL);
    eval 'sub V4L2_SUBDEV_SEL_TGT_COMPOSE_ACTUAL () { &V4L2_SEL_TGT_COMPOSE;}' unless defined(&V4L2_SUBDEV_SEL_TGT_COMPOSE_ACTUAL);
    eval 'sub V4L2_SUBDEV_SEL_TGT_CROP_BOUNDS () { &V4L2_SEL_TGT_CROP_BOUNDS;}' unless defined(&V4L2_SUBDEV_SEL_TGT_CROP_BOUNDS);
    eval 'sub V4L2_SUBDEV_SEL_TGT_COMPOSE_BOUNDS () { &V4L2_SEL_TGT_COMPOSE_BOUNDS;}' unless defined(&V4L2_SUBDEV_SEL_TGT_COMPOSE_BOUNDS);
    eval 'sub V4L2_SEL_FLAG_GE () {(1<< 0);}' unless defined(&V4L2_SEL_FLAG_GE);
    eval 'sub V4L2_SEL_FLAG_LE () {(1<< 1);}' unless defined(&V4L2_SEL_FLAG_LE);
    eval 'sub V4L2_SEL_FLAG_KEEP_CONFIG () {(1<< 2);}' unless defined(&V4L2_SEL_FLAG_KEEP_CONFIG);
    eval 'sub V4L2_SUBDEV_SEL_FLAG_SIZE_GE () { &V4L2_SEL_FLAG_GE;}' unless defined(&V4L2_SUBDEV_SEL_FLAG_SIZE_GE);
    eval 'sub V4L2_SUBDEV_SEL_FLAG_SIZE_LE () { &V4L2_SEL_FLAG_LE;}' unless defined(&V4L2_SUBDEV_SEL_FLAG_SIZE_LE);
    eval 'sub V4L2_SUBDEV_SEL_FLAG_KEEP_CONFIG () { &V4L2_SEL_FLAG_KEEP_CONFIG;}' unless defined(&V4L2_SUBDEV_SEL_FLAG_KEEP_CONFIG);
    eval 'sub V4L2_CTRL_CLASS_USER () {0x980000;}' unless defined(&V4L2_CTRL_CLASS_USER);
    eval 'sub V4L2_CTRL_CLASS_MPEG () {0x990000;}' unless defined(&V4L2_CTRL_CLASS_MPEG);
    eval 'sub V4L2_CTRL_CLASS_CAMERA () {0x9a0000;}' unless defined(&V4L2_CTRL_CLASS_CAMERA);
    eval 'sub V4L2_CTRL_CLASS_FM_TX () {0x9b0000;}' unless defined(&V4L2_CTRL_CLASS_FM_TX);
    eval 'sub V4L2_CTRL_CLASS_FLASH () {0x9c0000;}' unless defined(&V4L2_CTRL_CLASS_FLASH);
    eval 'sub V4L2_CTRL_CLASS_JPEG () {0x9d0000;}' unless defined(&V4L2_CTRL_CLASS_JPEG);
    eval 'sub V4L2_CTRL_CLASS_IMAGE_SOURCE () {0x9e0000;}' unless defined(&V4L2_CTRL_CLASS_IMAGE_SOURCE);
    eval 'sub V4L2_CTRL_CLASS_IMAGE_PROC () {0x9f0000;}' unless defined(&V4L2_CTRL_CLASS_IMAGE_PROC);
    eval 'sub V4L2_CTRL_CLASS_DV () {0xa00000;}' unless defined(&V4L2_CTRL_CLASS_DV);
    eval 'sub V4L2_CTRL_CLASS_FM_RX () {0xa10000;}' unless defined(&V4L2_CTRL_CLASS_FM_RX);
    eval 'sub V4L2_CTRL_CLASS_RF_TUNER () {0xa20000;}' unless defined(&V4L2_CTRL_CLASS_RF_TUNER);
    eval 'sub V4L2_CTRL_CLASS_DETECT () {0xa30000;}' unless defined(&V4L2_CTRL_CLASS_DETECT);
    eval 'sub V4L2_CID_BASE () {( &V4L2_CTRL_CLASS_USER | 0x900);}' unless defined(&V4L2_CID_BASE);
    eval 'sub V4L2_CID_USER_BASE () { &V4L2_CID_BASE;}' unless defined(&V4L2_CID_USER_BASE);
    eval 'sub V4L2_CID_USER_CLASS () {( &V4L2_CTRL_CLASS_USER | 1);}' unless defined(&V4L2_CID_USER_CLASS);
    eval 'sub V4L2_CID_BRIGHTNESS () {( &V4L2_CID_BASE+0);}' unless defined(&V4L2_CID_BRIGHTNESS);
    eval 'sub V4L2_CID_CONTRAST () {( &V4L2_CID_BASE+1);}' unless defined(&V4L2_CID_CONTRAST);
    eval 'sub V4L2_CID_SATURATION () {( &V4L2_CID_BASE+2);}' unless defined(&V4L2_CID_SATURATION);
    eval 'sub V4L2_CID_HUE () {( &V4L2_CID_BASE+3);}' unless defined(&V4L2_CID_HUE);
    eval 'sub V4L2_CID_AUDIO_VOLUME () {( &V4L2_CID_BASE+5);}' unless defined(&V4L2_CID_AUDIO_VOLUME);
    eval 'sub V4L2_CID_AUDIO_BALANCE () {( &V4L2_CID_BASE+6);}' unless defined(&V4L2_CID_AUDIO_BALANCE);
    eval 'sub V4L2_CID_AUDIO_BASS () {( &V4L2_CID_BASE+7);}' unless defined(&V4L2_CID_AUDIO_BASS);
    eval 'sub V4L2_CID_AUDIO_TREBLE () {( &V4L2_CID_BASE+8);}' unless defined(&V4L2_CID_AUDIO_TREBLE);
    eval 'sub V4L2_CID_AUDIO_MUTE () {( &V4L2_CID_BASE+9);}' unless defined(&V4L2_CID_AUDIO_MUTE);
    eval 'sub V4L2_CID_AUDIO_LOUDNESS () {( &V4L2_CID_BASE+10);}' unless defined(&V4L2_CID_AUDIO_LOUDNESS);
    eval 'sub V4L2_CID_BLACK_LEVEL () {( &V4L2_CID_BASE+11);}' unless defined(&V4L2_CID_BLACK_LEVEL);
    eval 'sub V4L2_CID_AUTO_WHITE_BALANCE () {( &V4L2_CID_BASE+12);}' unless defined(&V4L2_CID_AUTO_WHITE_BALANCE);
    eval 'sub V4L2_CID_DO_WHITE_BALANCE () {( &V4L2_CID_BASE+13);}' unless defined(&V4L2_CID_DO_WHITE_BALANCE);
    eval 'sub V4L2_CID_RED_BALANCE () {( &V4L2_CID_BASE+14);}' unless defined(&V4L2_CID_RED_BALANCE);
    eval 'sub V4L2_CID_BLUE_BALANCE () {( &V4L2_CID_BASE+15);}' unless defined(&V4L2_CID_BLUE_BALANCE);
    eval 'sub V4L2_CID_GAMMA () {( &V4L2_CID_BASE+16);}' unless defined(&V4L2_CID_GAMMA);
    eval 'sub V4L2_CID_WHITENESS () {( &V4L2_CID_GAMMA);}' unless defined(&V4L2_CID_WHITENESS);
    eval 'sub V4L2_CID_EXPOSURE () {( &V4L2_CID_BASE+17);}' unless defined(&V4L2_CID_EXPOSURE);
    eval 'sub V4L2_CID_AUTOGAIN () {( &V4L2_CID_BASE+18);}' unless defined(&V4L2_CID_AUTOGAIN);
    eval 'sub V4L2_CID_GAIN () {( &V4L2_CID_BASE+19);}' unless defined(&V4L2_CID_GAIN);
    eval 'sub V4L2_CID_HFLIP () {( &V4L2_CID_BASE+20);}' unless defined(&V4L2_CID_HFLIP);
    eval 'sub V4L2_CID_VFLIP () {( &V4L2_CID_BASE+21);}' unless defined(&V4L2_CID_VFLIP);
    eval 'sub V4L2_CID_HCENTER_DEPRECATED () {( &V4L2_CID_BASE + 22);}' unless defined(&V4L2_CID_HCENTER_DEPRECATED);
    eval 'sub V4L2_CID_VCENTER_DEPRECATED () {( &V4L2_CID_BASE + 23);}' unless defined(&V4L2_CID_VCENTER_DEPRECATED);
    eval 'sub V4L2_CID_HCENTER () { &V4L2_CID_HCENTER_DEPRECATED;}' unless defined(&V4L2_CID_HCENTER);
    eval 'sub V4L2_CID_VCENTER () { &V4L2_CID_VCENTER_DEPRECATED;}' unless defined(&V4L2_CID_VCENTER);
    eval 'sub V4L2_CID_POWER_LINE_FREQUENCY () {( &V4L2_CID_BASE+24);}' unless defined(&V4L2_CID_POWER_LINE_FREQUENCY);
    eval("sub V4L2_CID_POWER_LINE_FREQUENCY_DISABLED () { 0; }") unless defined(&V4L2_CID_POWER_LINE_FREQUENCY_DISABLED);
    eval("sub V4L2_CID_POWER_LINE_FREQUENCY_50HZ () { 1; }") unless defined(&V4L2_CID_POWER_LINE_FREQUENCY_50HZ);
    eval("sub V4L2_CID_POWER_LINE_FREQUENCY_60HZ () { 2; }") unless defined(&V4L2_CID_POWER_LINE_FREQUENCY_60HZ);
    eval("sub V4L2_CID_POWER_LINE_FREQUENCY_AUTO () { 3; }") unless defined(&V4L2_CID_POWER_LINE_FREQUENCY_AUTO);
    eval 'sub V4L2_CID_HUE_AUTO () {( &V4L2_CID_BASE+25);}' unless defined(&V4L2_CID_HUE_AUTO);
    eval 'sub V4L2_CID_WHITE_BALANCE_TEMPERATURE () {( &V4L2_CID_BASE+26);}' unless defined(&V4L2_CID_WHITE_BALANCE_TEMPERATURE);
    eval 'sub V4L2_CID_SHARPNESS () {( &V4L2_CID_BASE+27);}' unless defined(&V4L2_CID_SHARPNESS);
    eval 'sub V4L2_CID_BACKLIGHT_COMPENSATION () {( &V4L2_CID_BASE+28);}' unless defined(&V4L2_CID_BACKLIGHT_COMPENSATION);
    eval 'sub V4L2_CID_CHROMA_AGC () {( &V4L2_CID_BASE+29);}' unless defined(&V4L2_CID_CHROMA_AGC);
    eval 'sub V4L2_CID_COLOR_KILLER () {( &V4L2_CID_BASE+30);}' unless defined(&V4L2_CID_COLOR_KILLER);
    eval 'sub V4L2_CID_COLORFX () {( &V4L2_CID_BASE+31);}' unless defined(&V4L2_CID_COLORFX);
    eval("sub V4L2_COLORFX_NONE () { 0; }") unless defined(&V4L2_COLORFX_NONE);
    eval("sub V4L2_COLORFX_BW () { 1; }") unless defined(&V4L2_COLORFX_BW);
    eval("sub V4L2_COLORFX_SEPIA () { 2; }") unless defined(&V4L2_COLORFX_SEPIA);
    eval("sub V4L2_COLORFX_NEGATIVE () { 3; }") unless defined(&V4L2_COLORFX_NEGATIVE);
    eval("sub V4L2_COLORFX_EMBOSS () { 4; }") unless defined(&V4L2_COLORFX_EMBOSS);
    eval("sub V4L2_COLORFX_SKETCH () { 5; }") unless defined(&V4L2_COLORFX_SKETCH);
    eval("sub V4L2_COLORFX_SKY_BLUE () { 6; }") unless defined(&V4L2_COLORFX_SKY_BLUE);
    eval("sub V4L2_COLORFX_GRASS_GREEN () { 7; }") unless defined(&V4L2_COLORFX_GRASS_GREEN);
    eval("sub V4L2_COLORFX_SKIN_WHITEN () { 8; }") unless defined(&V4L2_COLORFX_SKIN_WHITEN);
    eval("sub V4L2_COLORFX_VIVID () { 9; }") unless defined(&V4L2_COLORFX_VIVID);
    eval("sub V4L2_COLORFX_AQUA () { 10; }") unless defined(&V4L2_COLORFX_AQUA);
    eval("sub V4L2_COLORFX_ART_FREEZE () { 11; }") unless defined(&V4L2_COLORFX_ART_FREEZE);
    eval("sub V4L2_COLORFX_SILHOUETTE () { 12; }") unless defined(&V4L2_COLORFX_SILHOUETTE);
    eval("sub V4L2_COLORFX_SOLARIZATION () { 13; }") unless defined(&V4L2_COLORFX_SOLARIZATION);
    eval("sub V4L2_COLORFX_ANTIQUE () { 14; }") unless defined(&V4L2_COLORFX_ANTIQUE);
    eval("sub V4L2_COLORFX_SET_CBCR () { 15; }") unless defined(&V4L2_COLORFX_SET_CBCR);
    eval 'sub V4L2_CID_AUTOBRIGHTNESS () {( &V4L2_CID_BASE+32);}' unless defined(&V4L2_CID_AUTOBRIGHTNESS);
    eval 'sub V4L2_CID_BAND_STOP_FILTER () {( &V4L2_CID_BASE+33);}' unless defined(&V4L2_CID_BAND_STOP_FILTER);
    eval 'sub V4L2_CID_ROTATE () {( &V4L2_CID_BASE+34);}' unless defined(&V4L2_CID_ROTATE);
    eval 'sub V4L2_CID_BG_COLOR () {( &V4L2_CID_BASE+35);}' unless defined(&V4L2_CID_BG_COLOR);
    eval 'sub V4L2_CID_CHROMA_GAIN () {( &V4L2_CID_BASE+36);}' unless defined(&V4L2_CID_CHROMA_GAIN);
    eval 'sub V4L2_CID_ILLUMINATORS_1 () {( &V4L2_CID_BASE+37);}' unless defined(&V4L2_CID_ILLUMINATORS_1);
    eval 'sub V4L2_CID_ILLUMINATORS_2 () {( &V4L2_CID_BASE+38);}' unless defined(&V4L2_CID_ILLUMINATORS_2);
    eval 'sub V4L2_CID_MIN_BUFFERS_FOR_CAPTURE () {( &V4L2_CID_BASE+39);}' unless defined(&V4L2_CID_MIN_BUFFERS_FOR_CAPTURE);
    eval 'sub V4L2_CID_MIN_BUFFERS_FOR_OUTPUT () {( &V4L2_CID_BASE+40);}' unless defined(&V4L2_CID_MIN_BUFFERS_FOR_OUTPUT);
    eval 'sub V4L2_CID_ALPHA_COMPONENT () {( &V4L2_CID_BASE+41);}' unless defined(&V4L2_CID_ALPHA_COMPONENT);
    eval 'sub V4L2_CID_COLORFX_CBCR () {( &V4L2_CID_BASE+42);}' unless defined(&V4L2_CID_COLORFX_CBCR);
    eval 'sub V4L2_CID_LASTP1 () {( &V4L2_CID_BASE+43);}' unless defined(&V4L2_CID_LASTP1);
    eval 'sub V4L2_CID_USER_MEYE_BASE () {( &V4L2_CID_USER_BASE + 0x1000);}' unless defined(&V4L2_CID_USER_MEYE_BASE);
    eval 'sub V4L2_CID_USER_BTTV_BASE () {( &V4L2_CID_USER_BASE + 0x1010);}' unless defined(&V4L2_CID_USER_BTTV_BASE);
    eval 'sub V4L2_CID_USER_S2255_BASE () {( &V4L2_CID_USER_BASE + 0x1030);}' unless defined(&V4L2_CID_USER_S2255_BASE);
    eval 'sub V4L2_CID_USER_SI476X_BASE () {( &V4L2_CID_USER_BASE + 0x1040);}' unless defined(&V4L2_CID_USER_SI476X_BASE);
    eval 'sub V4L2_CID_USER_TI_VPE_BASE () {( &V4L2_CID_USER_BASE + 0x1050);}' unless defined(&V4L2_CID_USER_TI_VPE_BASE);
    eval 'sub V4L2_CID_USER_SAA7134_BASE () {( &V4L2_CID_USER_BASE + 0x1060);}' unless defined(&V4L2_CID_USER_SAA7134_BASE);
    eval 'sub V4L2_CID_USER_ADV7180_BASE () {( &V4L2_CID_USER_BASE + 0x1070);}' unless defined(&V4L2_CID_USER_ADV7180_BASE);
    eval 'sub V4L2_CID_USER_TC358743_BASE () {( &V4L2_CID_USER_BASE + 0x1080);}' unless defined(&V4L2_CID_USER_TC358743_BASE);
    eval 'sub V4L2_CID_MPEG_BASE () {( &V4L2_CTRL_CLASS_MPEG | 0x900);}' unless defined(&V4L2_CID_MPEG_BASE);
    eval 'sub V4L2_CID_MPEG_CLASS () {( &V4L2_CTRL_CLASS_MPEG | 1);}' unless defined(&V4L2_CID_MPEG_CLASS);
    eval 'sub V4L2_CID_MPEG_STREAM_TYPE () {( &V4L2_CID_MPEG_BASE+0);}' unless defined(&V4L2_CID_MPEG_STREAM_TYPE);
    eval("sub V4L2_MPEG_STREAM_TYPE_MPEG2_PS () { 0; }") unless defined(&V4L2_MPEG_STREAM_TYPE_MPEG2_PS);
    eval("sub V4L2_MPEG_STREAM_TYPE_MPEG2_TS () { 1; }") unless defined(&V4L2_MPEG_STREAM_TYPE_MPEG2_TS);
    eval("sub V4L2_MPEG_STREAM_TYPE_MPEG1_SS () { 2; }") unless defined(&V4L2_MPEG_STREAM_TYPE_MPEG1_SS);
    eval("sub V4L2_MPEG_STREAM_TYPE_MPEG2_DVD () { 3; }") unless defined(&V4L2_MPEG_STREAM_TYPE_MPEG2_DVD);
    eval("sub V4L2_MPEG_STREAM_TYPE_MPEG1_VCD () { 4; }") unless defined(&V4L2_MPEG_STREAM_TYPE_MPEG1_VCD);
    eval("sub V4L2_MPEG_STREAM_TYPE_MPEG2_SVCD () { 5; }") unless defined(&V4L2_MPEG_STREAM_TYPE_MPEG2_SVCD);
    eval 'sub V4L2_CID_MPEG_STREAM_PID_PMT () {( &V4L2_CID_MPEG_BASE+1);}' unless defined(&V4L2_CID_MPEG_STREAM_PID_PMT);
    eval 'sub V4L2_CID_MPEG_STREAM_PID_AUDIO () {( &V4L2_CID_MPEG_BASE+2);}' unless defined(&V4L2_CID_MPEG_STREAM_PID_AUDIO);
    eval 'sub V4L2_CID_MPEG_STREAM_PID_VIDEO () {( &V4L2_CID_MPEG_BASE+3);}' unless defined(&V4L2_CID_MPEG_STREAM_PID_VIDEO);
    eval 'sub V4L2_CID_MPEG_STREAM_PID_PCR () {( &V4L2_CID_MPEG_BASE+4);}' unless defined(&V4L2_CID_MPEG_STREAM_PID_PCR);
    eval 'sub V4L2_CID_MPEG_STREAM_PES_ID_AUDIO () {( &V4L2_CID_MPEG_BASE+5);}' unless defined(&V4L2_CID_MPEG_STREAM_PES_ID_AUDIO);
    eval 'sub V4L2_CID_MPEG_STREAM_PES_ID_VIDEO () {( &V4L2_CID_MPEG_BASE+6);}' unless defined(&V4L2_CID_MPEG_STREAM_PES_ID_VIDEO);
    eval 'sub V4L2_CID_MPEG_STREAM_VBI_FMT () {( &V4L2_CID_MPEG_BASE+7);}' unless defined(&V4L2_CID_MPEG_STREAM_VBI_FMT);
    eval("sub V4L2_MPEG_STREAM_VBI_FMT_NONE () { 0; }") unless defined(&V4L2_MPEG_STREAM_VBI_FMT_NONE);
    eval("sub V4L2_MPEG_STREAM_VBI_FMT_IVTV () { 1; }") unless defined(&V4L2_MPEG_STREAM_VBI_FMT_IVTV);
    eval 'sub V4L2_CID_MPEG_AUDIO_SAMPLING_FREQ () {( &V4L2_CID_MPEG_BASE+100);}' unless defined(&V4L2_CID_MPEG_AUDIO_SAMPLING_FREQ);
    eval("sub V4L2_MPEG_AUDIO_SAMPLING_FREQ_44100 () { 0; }") unless defined(&V4L2_MPEG_AUDIO_SAMPLING_FREQ_44100);
    eval("sub V4L2_MPEG_AUDIO_SAMPLING_FREQ_48000 () { 1; }") unless defined(&V4L2_MPEG_AUDIO_SAMPLING_FREQ_48000);
    eval("sub V4L2_MPEG_AUDIO_SAMPLING_FREQ_32000 () { 2; }") unless defined(&V4L2_MPEG_AUDIO_SAMPLING_FREQ_32000);
    eval 'sub V4L2_CID_MPEG_AUDIO_ENCODING () {( &V4L2_CID_MPEG_BASE+101);}' unless defined(&V4L2_CID_MPEG_AUDIO_ENCODING);
    eval("sub V4L2_MPEG_AUDIO_ENCODING_LAYER_1 () { 0; }") unless defined(&V4L2_MPEG_AUDIO_ENCODING_LAYER_1);
    eval("sub V4L2_MPEG_AUDIO_ENCODING_LAYER_2 () { 1; }") unless defined(&V4L2_MPEG_AUDIO_ENCODING_LAYER_2);
    eval("sub V4L2_MPEG_AUDIO_ENCODING_LAYER_3 () { 2; }") unless defined(&V4L2_MPEG_AUDIO_ENCODING_LAYER_3);
    eval("sub V4L2_MPEG_AUDIO_ENCODING_AAC () { 3; }") unless defined(&V4L2_MPEG_AUDIO_ENCODING_AAC);
    eval("sub V4L2_MPEG_AUDIO_ENCODING_AC3 () { 4; }") unless defined(&V4L2_MPEG_AUDIO_ENCODING_AC3);
    eval 'sub V4L2_CID_MPEG_AUDIO_L1_BITRATE () {( &V4L2_CID_MPEG_BASE+102);}' unless defined(&V4L2_CID_MPEG_AUDIO_L1_BITRATE);
    eval("sub V4L2_MPEG_AUDIO_L1_BITRATE_32K () { 0; }") unless defined(&V4L2_MPEG_AUDIO_L1_BITRATE_32K);
    eval("sub V4L2_MPEG_AUDIO_L1_BITRATE_64K () { 1; }") unless defined(&V4L2_MPEG_AUDIO_L1_BITRATE_64K);
    eval("sub V4L2_MPEG_AUDIO_L1_BITRATE_96K () { 2; }") unless defined(&V4L2_MPEG_AUDIO_L1_BITRATE_96K);
    eval("sub V4L2_MPEG_AUDIO_L1_BITRATE_128K () { 3; }") unless defined(&V4L2_MPEG_AUDIO_L1_BITRATE_128K);
    eval("sub V4L2_MPEG_AUDIO_L1_BITRATE_160K () { 4; }") unless defined(&V4L2_MPEG_AUDIO_L1_BITRATE_160K);
    eval("sub V4L2_MPEG_AUDIO_L1_BITRATE_192K () { 5; }") unless defined(&V4L2_MPEG_AUDIO_L1_BITRATE_192K);
    eval("sub V4L2_MPEG_AUDIO_L1_BITRATE_224K () { 6; }") unless defined(&V4L2_MPEG_AUDIO_L1_BITRATE_224K);
    eval("sub V4L2_MPEG_AUDIO_L1_BITRATE_256K () { 7; }") unless defined(&V4L2_MPEG_AUDIO_L1_BITRATE_256K);
    eval("sub V4L2_MPEG_AUDIO_L1_BITRATE_288K () { 8; }") unless defined(&V4L2_MPEG_AUDIO_L1_BITRATE_288K);
    eval("sub V4L2_MPEG_AUDIO_L1_BITRATE_320K () { 9; }") unless defined(&V4L2_MPEG_AUDIO_L1_BITRATE_320K);
    eval("sub V4L2_MPEG_AUDIO_L1_BITRATE_352K () { 10; }") unless defined(&V4L2_MPEG_AUDIO_L1_BITRATE_352K);
    eval("sub V4L2_MPEG_AUDIO_L1_BITRATE_384K () { 11; }") unless defined(&V4L2_MPEG_AUDIO_L1_BITRATE_384K);
    eval("sub V4L2_MPEG_AUDIO_L1_BITRATE_416K () { 12; }") unless defined(&V4L2_MPEG_AUDIO_L1_BITRATE_416K);
    eval("sub V4L2_MPEG_AUDIO_L1_BITRATE_448K () { 13; }") unless defined(&V4L2_MPEG_AUDIO_L1_BITRATE_448K);
    eval 'sub V4L2_CID_MPEG_AUDIO_L2_BITRATE () {( &V4L2_CID_MPEG_BASE+103);}' unless defined(&V4L2_CID_MPEG_AUDIO_L2_BITRATE);
    eval("sub V4L2_MPEG_AUDIO_L2_BITRATE_32K () { 0; }") unless defined(&V4L2_MPEG_AUDIO_L2_BITRATE_32K);
    eval("sub V4L2_MPEG_AUDIO_L2_BITRATE_48K () { 1; }") unless defined(&V4L2_MPEG_AUDIO_L2_BITRATE_48K);
    eval("sub V4L2_MPEG_AUDIO_L2_BITRATE_56K () { 2; }") unless defined(&V4L2_MPEG_AUDIO_L2_BITRATE_56K);
    eval("sub V4L2_MPEG_AUDIO_L2_BITRATE_64K () { 3; }") unless defined(&V4L2_MPEG_AUDIO_L2_BITRATE_64K);
    eval("sub V4L2_MPEG_AUDIO_L2_BITRATE_80K () { 4; }") unless defined(&V4L2_MPEG_AUDIO_L2_BITRATE_80K);
    eval("sub V4L2_MPEG_AUDIO_L2_BITRATE_96K () { 5; }") unless defined(&V4L2_MPEG_AUDIO_L2_BITRATE_96K);
    eval("sub V4L2_MPEG_AUDIO_L2_BITRATE_112K () { 6; }") unless defined(&V4L2_MPEG_AUDIO_L2_BITRATE_112K);
    eval("sub V4L2_MPEG_AUDIO_L2_BITRATE_128K () { 7; }") unless defined(&V4L2_MPEG_AUDIO_L2_BITRATE_128K);
    eval("sub V4L2_MPEG_AUDIO_L2_BITRATE_160K () { 8; }") unless defined(&V4L2_MPEG_AUDIO_L2_BITRATE_160K);
    eval("sub V4L2_MPEG_AUDIO_L2_BITRATE_192K () { 9; }") unless defined(&V4L2_MPEG_AUDIO_L2_BITRATE_192K);
    eval("sub V4L2_MPEG_AUDIO_L2_BITRATE_224K () { 10; }") unless defined(&V4L2_MPEG_AUDIO_L2_BITRATE_224K);
    eval("sub V4L2_MPEG_AUDIO_L2_BITRATE_256K () { 11; }") unless defined(&V4L2_MPEG_AUDIO_L2_BITRATE_256K);
    eval("sub V4L2_MPEG_AUDIO_L2_BITRATE_320K () { 12; }") unless defined(&V4L2_MPEG_AUDIO_L2_BITRATE_320K);
    eval("sub V4L2_MPEG_AUDIO_L2_BITRATE_384K () { 13; }") unless defined(&V4L2_MPEG_AUDIO_L2_BITRATE_384K);
    eval 'sub V4L2_CID_MPEG_AUDIO_L3_BITRATE () {( &V4L2_CID_MPEG_BASE+104);}' unless defined(&V4L2_CID_MPEG_AUDIO_L3_BITRATE);
    eval("sub V4L2_MPEG_AUDIO_L3_BITRATE_32K () { 0; }") unless defined(&V4L2_MPEG_AUDIO_L3_BITRATE_32K);
    eval("sub V4L2_MPEG_AUDIO_L3_BITRATE_40K () { 1; }") unless defined(&V4L2_MPEG_AUDIO_L3_BITRATE_40K);
    eval("sub V4L2_MPEG_AUDIO_L3_BITRATE_48K () { 2; }") unless defined(&V4L2_MPEG_AUDIO_L3_BITRATE_48K);
    eval("sub V4L2_MPEG_AUDIO_L3_BITRATE_56K () { 3; }") unless defined(&V4L2_MPEG_AUDIO_L3_BITRATE_56K);
    eval("sub V4L2_MPEG_AUDIO_L3_BITRATE_64K () { 4; }") unless defined(&V4L2_MPEG_AUDIO_L3_BITRATE_64K);
    eval("sub V4L2_MPEG_AUDIO_L3_BITRATE_80K () { 5; }") unless defined(&V4L2_MPEG_AUDIO_L3_BITRATE_80K);
    eval("sub V4L2_MPEG_AUDIO_L3_BITRATE_96K () { 6; }") unless defined(&V4L2_MPEG_AUDIO_L3_BITRATE_96K);
    eval("sub V4L2_MPEG_AUDIO_L3_BITRATE_112K () { 7; }") unless defined(&V4L2_MPEG_AUDIO_L3_BITRATE_112K);
    eval("sub V4L2_MPEG_AUDIO_L3_BITRATE_128K () { 8; }") unless defined(&V4L2_MPEG_AUDIO_L3_BITRATE_128K);
    eval("sub V4L2_MPEG_AUDIO_L3_BITRATE_160K () { 9; }") unless defined(&V4L2_MPEG_AUDIO_L3_BITRATE_160K);
    eval("sub V4L2_MPEG_AUDIO_L3_BITRATE_192K () { 10; }") unless defined(&V4L2_MPEG_AUDIO_L3_BITRATE_192K);
    eval("sub V4L2_MPEG_AUDIO_L3_BITRATE_224K () { 11; }") unless defined(&V4L2_MPEG_AUDIO_L3_BITRATE_224K);
    eval("sub V4L2_MPEG_AUDIO_L3_BITRATE_256K () { 12; }") unless defined(&V4L2_MPEG_AUDIO_L3_BITRATE_256K);
    eval("sub V4L2_MPEG_AUDIO_L3_BITRATE_320K () { 13; }") unless defined(&V4L2_MPEG_AUDIO_L3_BITRATE_320K);
    eval 'sub V4L2_CID_MPEG_AUDIO_MODE () {( &V4L2_CID_MPEG_BASE+105);}' unless defined(&V4L2_CID_MPEG_AUDIO_MODE);
    eval("sub V4L2_MPEG_AUDIO_MODE_STEREO () { 0; }") unless defined(&V4L2_MPEG_AUDIO_MODE_STEREO);
    eval("sub V4L2_MPEG_AUDIO_MODE_JOINT_STEREO () { 1; }") unless defined(&V4L2_MPEG_AUDIO_MODE_JOINT_STEREO);
    eval("sub V4L2_MPEG_AUDIO_MODE_DUAL () { 2; }") unless defined(&V4L2_MPEG_AUDIO_MODE_DUAL);
    eval("sub V4L2_MPEG_AUDIO_MODE_MONO () { 3; }") unless defined(&V4L2_MPEG_AUDIO_MODE_MONO);
    eval 'sub V4L2_CID_MPEG_AUDIO_MODE_EXTENSION () {( &V4L2_CID_MPEG_BASE+106);}' unless defined(&V4L2_CID_MPEG_AUDIO_MODE_EXTENSION);
    eval("sub V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_4 () { 0; }") unless defined(&V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_4);
    eval("sub V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_8 () { 1; }") unless defined(&V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_8);
    eval("sub V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_12 () { 2; }") unless defined(&V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_12);
    eval("sub V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_16 () { 3; }") unless defined(&V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_16);
    eval 'sub V4L2_CID_MPEG_AUDIO_EMPHASIS () {( &V4L2_CID_MPEG_BASE+107);}' unless defined(&V4L2_CID_MPEG_AUDIO_EMPHASIS);
    eval("sub V4L2_MPEG_AUDIO_EMPHASIS_NONE () { 0; }") unless defined(&V4L2_MPEG_AUDIO_EMPHASIS_NONE);
    eval("sub V4L2_MPEG_AUDIO_EMPHASIS_50_DIV_15_uS () { 1; }") unless defined(&V4L2_MPEG_AUDIO_EMPHASIS_50_DIV_15_uS);
    eval("sub V4L2_MPEG_AUDIO_EMPHASIS_CCITT_J17 () { 2; }") unless defined(&V4L2_MPEG_AUDIO_EMPHASIS_CCITT_J17);
    eval 'sub V4L2_CID_MPEG_AUDIO_CRC () {( &V4L2_CID_MPEG_BASE+108);}' unless defined(&V4L2_CID_MPEG_AUDIO_CRC);
    eval("sub V4L2_MPEG_AUDIO_CRC_NONE () { 0; }") unless defined(&V4L2_MPEG_AUDIO_CRC_NONE);
    eval("sub V4L2_MPEG_AUDIO_CRC_CRC16 () { 1; }") unless defined(&V4L2_MPEG_AUDIO_CRC_CRC16);
    eval 'sub V4L2_CID_MPEG_AUDIO_MUTE () {( &V4L2_CID_MPEG_BASE+109);}' unless defined(&V4L2_CID_MPEG_AUDIO_MUTE);
    eval 'sub V4L2_CID_MPEG_AUDIO_AAC_BITRATE () {( &V4L2_CID_MPEG_BASE+110);}' unless defined(&V4L2_CID_MPEG_AUDIO_AAC_BITRATE);
    eval 'sub V4L2_CID_MPEG_AUDIO_AC3_BITRATE () {( &V4L2_CID_MPEG_BASE+111);}' unless defined(&V4L2_CID_MPEG_AUDIO_AC3_BITRATE);
    eval("sub V4L2_MPEG_AUDIO_AC3_BITRATE_32K () { 0; }") unless defined(&V4L2_MPEG_AUDIO_AC3_BITRATE_32K);
    eval("sub V4L2_MPEG_AUDIO_AC3_BITRATE_40K () { 1; }") unless defined(&V4L2_MPEG_AUDIO_AC3_BITRATE_40K);
    eval("sub V4L2_MPEG_AUDIO_AC3_BITRATE_48K () { 2; }") unless defined(&V4L2_MPEG_AUDIO_AC3_BITRATE_48K);
    eval("sub V4L2_MPEG_AUDIO_AC3_BITRATE_56K () { 3; }") unless defined(&V4L2_MPEG_AUDIO_AC3_BITRATE_56K);
    eval("sub V4L2_MPEG_AUDIO_AC3_BITRATE_64K () { 4; }") unless defined(&V4L2_MPEG_AUDIO_AC3_BITRATE_64K);
    eval("sub V4L2_MPEG_AUDIO_AC3_BITRATE_80K () { 5; }") unless defined(&V4L2_MPEG_AUDIO_AC3_BITRATE_80K);
    eval("sub V4L2_MPEG_AUDIO_AC3_BITRATE_96K () { 6; }") unless defined(&V4L2_MPEG_AUDIO_AC3_BITRATE_96K);
    eval("sub V4L2_MPEG_AUDIO_AC3_BITRATE_112K () { 7; }") unless defined(&V4L2_MPEG_AUDIO_AC3_BITRATE_112K);
    eval("sub V4L2_MPEG_AUDIO_AC3_BITRATE_128K () { 8; }") unless defined(&V4L2_MPEG_AUDIO_AC3_BITRATE_128K);
    eval("sub V4L2_MPEG_AUDIO_AC3_BITRATE_160K () { 9; }") unless defined(&V4L2_MPEG_AUDIO_AC3_BITRATE_160K);
    eval("sub V4L2_MPEG_AUDIO_AC3_BITRATE_192K () { 10; }") unless defined(&V4L2_MPEG_AUDIO_AC3_BITRATE_192K);
    eval("sub V4L2_MPEG_AUDIO_AC3_BITRATE_224K () { 11; }") unless defined(&V4L2_MPEG_AUDIO_AC3_BITRATE_224K);
    eval("sub V4L2_MPEG_AUDIO_AC3_BITRATE_256K () { 12; }") unless defined(&V4L2_MPEG_AUDIO_AC3_BITRATE_256K);
    eval("sub V4L2_MPEG_AUDIO_AC3_BITRATE_320K () { 13; }") unless defined(&V4L2_MPEG_AUDIO_AC3_BITRATE_320K);
    eval("sub V4L2_MPEG_AUDIO_AC3_BITRATE_384K () { 14; }") unless defined(&V4L2_MPEG_AUDIO_AC3_BITRATE_384K);
    eval("sub V4L2_MPEG_AUDIO_AC3_BITRATE_448K () { 15; }") unless defined(&V4L2_MPEG_AUDIO_AC3_BITRATE_448K);
    eval("sub V4L2_MPEG_AUDIO_AC3_BITRATE_512K () { 16; }") unless defined(&V4L2_MPEG_AUDIO_AC3_BITRATE_512K);
    eval("sub V4L2_MPEG_AUDIO_AC3_BITRATE_576K () { 17; }") unless defined(&V4L2_MPEG_AUDIO_AC3_BITRATE_576K);
    eval("sub V4L2_MPEG_AUDIO_AC3_BITRATE_640K () { 18; }") unless defined(&V4L2_MPEG_AUDIO_AC3_BITRATE_640K);
    eval 'sub V4L2_CID_MPEG_AUDIO_DEC_PLAYBACK () {( &V4L2_CID_MPEG_BASE+112);}' unless defined(&V4L2_CID_MPEG_AUDIO_DEC_PLAYBACK);
    eval("sub V4L2_MPEG_AUDIO_DEC_PLAYBACK_AUTO () { 0; }") unless defined(&V4L2_MPEG_AUDIO_DEC_PLAYBACK_AUTO);
    eval("sub V4L2_MPEG_AUDIO_DEC_PLAYBACK_STEREO () { 1; }") unless defined(&V4L2_MPEG_AUDIO_DEC_PLAYBACK_STEREO);
    eval("sub V4L2_MPEG_AUDIO_DEC_PLAYBACK_LEFT () { 2; }") unless defined(&V4L2_MPEG_AUDIO_DEC_PLAYBACK_LEFT);
    eval("sub V4L2_MPEG_AUDIO_DEC_PLAYBACK_RIGHT () { 3; }") unless defined(&V4L2_MPEG_AUDIO_DEC_PLAYBACK_RIGHT);
    eval("sub V4L2_MPEG_AUDIO_DEC_PLAYBACK_MONO () { 4; }") unless defined(&V4L2_MPEG_AUDIO_DEC_PLAYBACK_MONO);
    eval("sub V4L2_MPEG_AUDIO_DEC_PLAYBACK_SWAPPED_STEREO () { 5; }") unless defined(&V4L2_MPEG_AUDIO_DEC_PLAYBACK_SWAPPED_STEREO);
    eval 'sub V4L2_CID_MPEG_AUDIO_DEC_MULTILINGUAL_PLAYBACK () {( &V4L2_CID_MPEG_BASE+113);}' unless defined(&V4L2_CID_MPEG_AUDIO_DEC_MULTILINGUAL_PLAYBACK);
    eval 'sub V4L2_CID_MPEG_VIDEO_ENCODING () {( &V4L2_CID_MPEG_BASE+200);}' unless defined(&V4L2_CID_MPEG_VIDEO_ENCODING);
    eval("sub V4L2_MPEG_VIDEO_ENCODING_MPEG_1 () { 0; }") unless defined(&V4L2_MPEG_VIDEO_ENCODING_MPEG_1);
    eval("sub V4L2_MPEG_VIDEO_ENCODING_MPEG_2 () { 1; }") unless defined(&V4L2_MPEG_VIDEO_ENCODING_MPEG_2);
    eval("sub V4L2_MPEG_VIDEO_ENCODING_MPEG_4_AVC () { 2; }") unless defined(&V4L2_MPEG_VIDEO_ENCODING_MPEG_4_AVC);
    eval 'sub V4L2_CID_MPEG_VIDEO_ASPECT () {( &V4L2_CID_MPEG_BASE+201);}' unless defined(&V4L2_CID_MPEG_VIDEO_ASPECT);
    eval("sub V4L2_MPEG_VIDEO_ASPECT_1x1 () { 0; }") unless defined(&V4L2_MPEG_VIDEO_ASPECT_1x1);
    eval("sub V4L2_MPEG_VIDEO_ASPECT_4x3 () { 1; }") unless defined(&V4L2_MPEG_VIDEO_ASPECT_4x3);
    eval("sub V4L2_MPEG_VIDEO_ASPECT_16x9 () { 2; }") unless defined(&V4L2_MPEG_VIDEO_ASPECT_16x9);
    eval("sub V4L2_MPEG_VIDEO_ASPECT_221x100 () { 3; }") unless defined(&V4L2_MPEG_VIDEO_ASPECT_221x100);
    eval 'sub V4L2_CID_MPEG_VIDEO_B_FRAMES () {( &V4L2_CID_MPEG_BASE+202);}' unless defined(&V4L2_CID_MPEG_VIDEO_B_FRAMES);
    eval 'sub V4L2_CID_MPEG_VIDEO_GOP_SIZE () {( &V4L2_CID_MPEG_BASE+203);}' unless defined(&V4L2_CID_MPEG_VIDEO_GOP_SIZE);
    eval 'sub V4L2_CID_MPEG_VIDEO_GOP_CLOSURE () {( &V4L2_CID_MPEG_BASE+204);}' unless defined(&V4L2_CID_MPEG_VIDEO_GOP_CLOSURE);
    eval 'sub V4L2_CID_MPEG_VIDEO_PULLDOWN () {( &V4L2_CID_MPEG_BASE+205);}' unless defined(&V4L2_CID_MPEG_VIDEO_PULLDOWN);
    eval 'sub V4L2_CID_MPEG_VIDEO_BITRATE_MODE () {( &V4L2_CID_MPEG_BASE+206);}' unless defined(&V4L2_CID_MPEG_VIDEO_BITRATE_MODE);
    eval("sub V4L2_MPEG_VIDEO_BITRATE_MODE_VBR () { 0; }") unless defined(&V4L2_MPEG_VIDEO_BITRATE_MODE_VBR);
    eval("sub V4L2_MPEG_VIDEO_BITRATE_MODE_CBR () { 1; }") unless defined(&V4L2_MPEG_VIDEO_BITRATE_MODE_CBR);
    eval 'sub V4L2_CID_MPEG_VIDEO_BITRATE () {( &V4L2_CID_MPEG_BASE+207);}' unless defined(&V4L2_CID_MPEG_VIDEO_BITRATE);
    eval 'sub V4L2_CID_MPEG_VIDEO_BITRATE_PEAK () {( &V4L2_CID_MPEG_BASE+208);}' unless defined(&V4L2_CID_MPEG_VIDEO_BITRATE_PEAK);
    eval 'sub V4L2_CID_MPEG_VIDEO_TEMPORAL_DECIMATION () {( &V4L2_CID_MPEG_BASE+209);}' unless defined(&V4L2_CID_MPEG_VIDEO_TEMPORAL_DECIMATION);
    eval 'sub V4L2_CID_MPEG_VIDEO_MUTE () {( &V4L2_CID_MPEG_BASE+210);}' unless defined(&V4L2_CID_MPEG_VIDEO_MUTE);
    eval 'sub V4L2_CID_MPEG_VIDEO_MUTE_YUV () {( &V4L2_CID_MPEG_BASE+211);}' unless defined(&V4L2_CID_MPEG_VIDEO_MUTE_YUV);
    eval 'sub V4L2_CID_MPEG_VIDEO_DECODER_SLICE_INTERFACE () {( &V4L2_CID_MPEG_BASE+212);}' unless defined(&V4L2_CID_MPEG_VIDEO_DECODER_SLICE_INTERFACE);
    eval 'sub V4L2_CID_MPEG_VIDEO_DECODER_MPEG4_DEBLOCK_FILTER () {( &V4L2_CID_MPEG_BASE+213);}' unless defined(&V4L2_CID_MPEG_VIDEO_DECODER_MPEG4_DEBLOCK_FILTER);
    eval 'sub V4L2_CID_MPEG_VIDEO_CYCLIC_INTRA_REFRESH_MB () {( &V4L2_CID_MPEG_BASE+214);}' unless defined(&V4L2_CID_MPEG_VIDEO_CYCLIC_INTRA_REFRESH_MB);
    eval 'sub V4L2_CID_MPEG_VIDEO_FRAME_RC_ENABLE () {( &V4L2_CID_MPEG_BASE+215);}' unless defined(&V4L2_CID_MPEG_VIDEO_FRAME_RC_ENABLE);
    eval 'sub V4L2_CID_MPEG_VIDEO_HEADER_MODE () {( &V4L2_CID_MPEG_BASE+216);}' unless defined(&V4L2_CID_MPEG_VIDEO_HEADER_MODE);
    eval("sub V4L2_MPEG_VIDEO_HEADER_MODE_SEPARATE () { 0; }") unless defined(&V4L2_MPEG_VIDEO_HEADER_MODE_SEPARATE);
    eval("sub V4L2_MPEG_VIDEO_HEADER_MODE_JOINED_WITH_1ST_FRAME () { 1; }") unless defined(&V4L2_MPEG_VIDEO_HEADER_MODE_JOINED_WITH_1ST_FRAME);
    eval 'sub V4L2_CID_MPEG_VIDEO_MAX_REF_PIC () {( &V4L2_CID_MPEG_BASE+217);}' unless defined(&V4L2_CID_MPEG_VIDEO_MAX_REF_PIC);
    eval 'sub V4L2_CID_MPEG_VIDEO_MB_RC_ENABLE () {( &V4L2_CID_MPEG_BASE+218);}' unless defined(&V4L2_CID_MPEG_VIDEO_MB_RC_ENABLE);
    eval 'sub V4L2_CID_MPEG_VIDEO_MULTI_SLICE_MAX_BYTES () {( &V4L2_CID_MPEG_BASE+219);}' unless defined(&V4L2_CID_MPEG_VIDEO_MULTI_SLICE_MAX_BYTES);
    eval 'sub V4L2_CID_MPEG_VIDEO_MULTI_SLICE_MAX_MB () {( &V4L2_CID_MPEG_BASE+220);}' unless defined(&V4L2_CID_MPEG_VIDEO_MULTI_SLICE_MAX_MB);
    eval 'sub V4L2_CID_MPEG_VIDEO_MULTI_SLICE_MODE () {( &V4L2_CID_MPEG_BASE+221);}' unless defined(&V4L2_CID_MPEG_VIDEO_MULTI_SLICE_MODE);
    eval("sub V4L2_MPEG_VIDEO_MULTI_SLICE_MODE_SINGLE () { 0; }") unless defined(&V4L2_MPEG_VIDEO_MULTI_SLICE_MODE_SINGLE);
    eval("sub V4L2_MPEG_VIDEO_MULTI_SICE_MODE_MAX_MB () { 1; }") unless defined(&V4L2_MPEG_VIDEO_MULTI_SICE_MODE_MAX_MB);
    eval("sub V4L2_MPEG_VIDEO_MULTI_SICE_MODE_MAX_BYTES () { 2; }") unless defined(&V4L2_MPEG_VIDEO_MULTI_SICE_MODE_MAX_BYTES);
    eval 'sub V4L2_CID_MPEG_VIDEO_VBV_SIZE () {( &V4L2_CID_MPEG_BASE+222);}' unless defined(&V4L2_CID_MPEG_VIDEO_VBV_SIZE);
    eval 'sub V4L2_CID_MPEG_VIDEO_DEC_PTS () {( &V4L2_CID_MPEG_BASE+223);}' unless defined(&V4L2_CID_MPEG_VIDEO_DEC_PTS);
    eval 'sub V4L2_CID_MPEG_VIDEO_DEC_FRAME () {( &V4L2_CID_MPEG_BASE+224);}' unless defined(&V4L2_CID_MPEG_VIDEO_DEC_FRAME);
    eval 'sub V4L2_CID_MPEG_VIDEO_VBV_DELAY () {( &V4L2_CID_MPEG_BASE+225);}' unless defined(&V4L2_CID_MPEG_VIDEO_VBV_DELAY);
    eval 'sub V4L2_CID_MPEG_VIDEO_REPEAT_SEQ_HEADER () {( &V4L2_CID_MPEG_BASE+226);}' unless defined(&V4L2_CID_MPEG_VIDEO_REPEAT_SEQ_HEADER);
    eval 'sub V4L2_CID_MPEG_VIDEO_MV_H_SEARCH_RANGE () {( &V4L2_CID_MPEG_BASE+227);}' unless defined(&V4L2_CID_MPEG_VIDEO_MV_H_SEARCH_RANGE);
    eval 'sub V4L2_CID_MPEG_VIDEO_MV_V_SEARCH_RANGE () {( &V4L2_CID_MPEG_BASE+228);}' unless defined(&V4L2_CID_MPEG_VIDEO_MV_V_SEARCH_RANGE);
    eval 'sub V4L2_CID_MPEG_VIDEO_FORCE_KEY_FRAME () {( &V4L2_CID_MPEG_BASE+229);}' unless defined(&V4L2_CID_MPEG_VIDEO_FORCE_KEY_FRAME);
    eval 'sub V4L2_CID_MPEG_VIDEO_H263_I_FRAME_QP () {( &V4L2_CID_MPEG_BASE+300);}' unless defined(&V4L2_CID_MPEG_VIDEO_H263_I_FRAME_QP);
    eval 'sub V4L2_CID_MPEG_VIDEO_H263_P_FRAME_QP () {( &V4L2_CID_MPEG_BASE+301);}' unless defined(&V4L2_CID_MPEG_VIDEO_H263_P_FRAME_QP);
    eval 'sub V4L2_CID_MPEG_VIDEO_H263_B_FRAME_QP () {( &V4L2_CID_MPEG_BASE+302);}' unless defined(&V4L2_CID_MPEG_VIDEO_H263_B_FRAME_QP);
    eval 'sub V4L2_CID_MPEG_VIDEO_H263_MIN_QP () {( &V4L2_CID_MPEG_BASE+303);}' unless defined(&V4L2_CID_MPEG_VIDEO_H263_MIN_QP);
    eval 'sub V4L2_CID_MPEG_VIDEO_H263_MAX_QP () {( &V4L2_CID_MPEG_BASE+304);}' unless defined(&V4L2_CID_MPEG_VIDEO_H263_MAX_QP);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_I_FRAME_QP () {( &V4L2_CID_MPEG_BASE+350);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_I_FRAME_QP);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_P_FRAME_QP () {( &V4L2_CID_MPEG_BASE+351);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_P_FRAME_QP);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_B_FRAME_QP () {( &V4L2_CID_MPEG_BASE+352);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_B_FRAME_QP);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_MIN_QP () {( &V4L2_CID_MPEG_BASE+353);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_MIN_QP);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_MAX_QP () {( &V4L2_CID_MPEG_BASE+354);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_MAX_QP);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_8X8_TRANSFORM () {( &V4L2_CID_MPEG_BASE+355);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_8X8_TRANSFORM);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_CPB_SIZE () {( &V4L2_CID_MPEG_BASE+356);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_CPB_SIZE);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_ENTROPY_MODE () {( &V4L2_CID_MPEG_BASE+357);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_ENTROPY_MODE);
    eval("sub V4L2_MPEG_VIDEO_H264_ENTROPY_MODE_CAVLC () { 0; }") unless defined(&V4L2_MPEG_VIDEO_H264_ENTROPY_MODE_CAVLC);
    eval("sub V4L2_MPEG_VIDEO_H264_ENTROPY_MODE_CABAC () { 1; }") unless defined(&V4L2_MPEG_VIDEO_H264_ENTROPY_MODE_CABAC);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_I_PERIOD () {( &V4L2_CID_MPEG_BASE+358);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_I_PERIOD);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_LEVEL () {( &V4L2_CID_MPEG_BASE+359);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_LEVEL);
    eval("sub V4L2_MPEG_VIDEO_H264_LEVEL_1_0 () { 0; }") unless defined(&V4L2_MPEG_VIDEO_H264_LEVEL_1_0);
    eval("sub V4L2_MPEG_VIDEO_H264_LEVEL_1B () { 1; }") unless defined(&V4L2_MPEG_VIDEO_H264_LEVEL_1B);
    eval("sub V4L2_MPEG_VIDEO_H264_LEVEL_1_1 () { 2; }") unless defined(&V4L2_MPEG_VIDEO_H264_LEVEL_1_1);
    eval("sub V4L2_MPEG_VIDEO_H264_LEVEL_1_2 () { 3; }") unless defined(&V4L2_MPEG_VIDEO_H264_LEVEL_1_2);
    eval("sub V4L2_MPEG_VIDEO_H264_LEVEL_1_3 () { 4; }") unless defined(&V4L2_MPEG_VIDEO_H264_LEVEL_1_3);
    eval("sub V4L2_MPEG_VIDEO_H264_LEVEL_2_0 () { 5; }") unless defined(&V4L2_MPEG_VIDEO_H264_LEVEL_2_0);
    eval("sub V4L2_MPEG_VIDEO_H264_LEVEL_2_1 () { 6; }") unless defined(&V4L2_MPEG_VIDEO_H264_LEVEL_2_1);
    eval("sub V4L2_MPEG_VIDEO_H264_LEVEL_2_2 () { 7; }") unless defined(&V4L2_MPEG_VIDEO_H264_LEVEL_2_2);
    eval("sub V4L2_MPEG_VIDEO_H264_LEVEL_3_0 () { 8; }") unless defined(&V4L2_MPEG_VIDEO_H264_LEVEL_3_0);
    eval("sub V4L2_MPEG_VIDEO_H264_LEVEL_3_1 () { 9; }") unless defined(&V4L2_MPEG_VIDEO_H264_LEVEL_3_1);
    eval("sub V4L2_MPEG_VIDEO_H264_LEVEL_3_2 () { 10; }") unless defined(&V4L2_MPEG_VIDEO_H264_LEVEL_3_2);
    eval("sub V4L2_MPEG_VIDEO_H264_LEVEL_4_0 () { 11; }") unless defined(&V4L2_MPEG_VIDEO_H264_LEVEL_4_0);
    eval("sub V4L2_MPEG_VIDEO_H264_LEVEL_4_1 () { 12; }") unless defined(&V4L2_MPEG_VIDEO_H264_LEVEL_4_1);
    eval("sub V4L2_MPEG_VIDEO_H264_LEVEL_4_2 () { 13; }") unless defined(&V4L2_MPEG_VIDEO_H264_LEVEL_4_2);
    eval("sub V4L2_MPEG_VIDEO_H264_LEVEL_5_0 () { 14; }") unless defined(&V4L2_MPEG_VIDEO_H264_LEVEL_5_0);
    eval("sub V4L2_MPEG_VIDEO_H264_LEVEL_5_1 () { 15; }") unless defined(&V4L2_MPEG_VIDEO_H264_LEVEL_5_1);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_LOOP_FILTER_ALPHA () {( &V4L2_CID_MPEG_BASE+360);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_LOOP_FILTER_ALPHA);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_LOOP_FILTER_BETA () {( &V4L2_CID_MPEG_BASE+361);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_LOOP_FILTER_BETA);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_LOOP_FILTER_MODE () {( &V4L2_CID_MPEG_BASE+362);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_LOOP_FILTER_MODE);
    eval("sub V4L2_MPEG_VIDEO_H264_LOOP_FILTER_MODE_ENABLED () { 0; }") unless defined(&V4L2_MPEG_VIDEO_H264_LOOP_FILTER_MODE_ENABLED);
    eval("sub V4L2_MPEG_VIDEO_H264_LOOP_FILTER_MODE_DISABLED () { 1; }") unless defined(&V4L2_MPEG_VIDEO_H264_LOOP_FILTER_MODE_DISABLED);
    eval("sub V4L2_MPEG_VIDEO_H264_LOOP_FILTER_MODE_DISABLED_AT_SLICE_BOUNDARY () { 2; }") unless defined(&V4L2_MPEG_VIDEO_H264_LOOP_FILTER_MODE_DISABLED_AT_SLICE_BOUNDARY);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_PROFILE () {( &V4L2_CID_MPEG_BASE+363);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_PROFILE);
    eval("sub V4L2_MPEG_VIDEO_H264_PROFILE_BASELINE () { 0; }") unless defined(&V4L2_MPEG_VIDEO_H264_PROFILE_BASELINE);
    eval("sub V4L2_MPEG_VIDEO_H264_PROFILE_CONSTRAINED_BASELINE () { 1; }") unless defined(&V4L2_MPEG_VIDEO_H264_PROFILE_CONSTRAINED_BASELINE);
    eval("sub V4L2_MPEG_VIDEO_H264_PROFILE_MAIN () { 2; }") unless defined(&V4L2_MPEG_VIDEO_H264_PROFILE_MAIN);
    eval("sub V4L2_MPEG_VIDEO_H264_PROFILE_EXTENDED () { 3; }") unless defined(&V4L2_MPEG_VIDEO_H264_PROFILE_EXTENDED);
    eval("sub V4L2_MPEG_VIDEO_H264_PROFILE_HIGH () { 4; }") unless defined(&V4L2_MPEG_VIDEO_H264_PROFILE_HIGH);
    eval("sub V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_10 () { 5; }") unless defined(&V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_10);
    eval("sub V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_422 () { 6; }") unless defined(&V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_422);
    eval("sub V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_444_PREDICTIVE () { 7; }") unless defined(&V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_444_PREDICTIVE);
    eval("sub V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_10_INTRA () { 8; }") unless defined(&V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_10_INTRA);
    eval("sub V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_422_INTRA () { 9; }") unless defined(&V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_422_INTRA);
    eval("sub V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_444_INTRA () { 10; }") unless defined(&V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_444_INTRA);
    eval("sub V4L2_MPEG_VIDEO_H264_PROFILE_CAVLC_444_INTRA () { 11; }") unless defined(&V4L2_MPEG_VIDEO_H264_PROFILE_CAVLC_444_INTRA);
    eval("sub V4L2_MPEG_VIDEO_H264_PROFILE_SCALABLE_BASELINE () { 12; }") unless defined(&V4L2_MPEG_VIDEO_H264_PROFILE_SCALABLE_BASELINE);
    eval("sub V4L2_MPEG_VIDEO_H264_PROFILE_SCALABLE_HIGH () { 13; }") unless defined(&V4L2_MPEG_VIDEO_H264_PROFILE_SCALABLE_HIGH);
    eval("sub V4L2_MPEG_VIDEO_H264_PROFILE_SCALABLE_HIGH_INTRA () { 14; }") unless defined(&V4L2_MPEG_VIDEO_H264_PROFILE_SCALABLE_HIGH_INTRA);
    eval("sub V4L2_MPEG_VIDEO_H264_PROFILE_STEREO_HIGH () { 15; }") unless defined(&V4L2_MPEG_VIDEO_H264_PROFILE_STEREO_HIGH);
    eval("sub V4L2_MPEG_VIDEO_H264_PROFILE_MULTIVIEW_HIGH () { 16; }") unless defined(&V4L2_MPEG_VIDEO_H264_PROFILE_MULTIVIEW_HIGH);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_VUI_EXT_SAR_HEIGHT () {( &V4L2_CID_MPEG_BASE+364);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_VUI_EXT_SAR_HEIGHT);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_VUI_EXT_SAR_WIDTH () {( &V4L2_CID_MPEG_BASE+365);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_VUI_EXT_SAR_WIDTH);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_VUI_SAR_ENABLE () {( &V4L2_CID_MPEG_BASE+366);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_VUI_SAR_ENABLE);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_VUI_SAR_IDC () {( &V4L2_CID_MPEG_BASE+367);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_VUI_SAR_IDC);
    eval("sub V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_UNSPECIFIED () { 0; }") unless defined(&V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_UNSPECIFIED);
    eval("sub V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_1x1 () { 1; }") unless defined(&V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_1x1);
    eval("sub V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_12x11 () { 2; }") unless defined(&V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_12x11);
    eval("sub V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_10x11 () { 3; }") unless defined(&V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_10x11);
    eval("sub V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_16x11 () { 4; }") unless defined(&V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_16x11);
    eval("sub V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_40x33 () { 5; }") unless defined(&V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_40x33);
    eval("sub V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_24x11 () { 6; }") unless defined(&V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_24x11);
    eval("sub V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_20x11 () { 7; }") unless defined(&V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_20x11);
    eval("sub V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_32x11 () { 8; }") unless defined(&V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_32x11);
    eval("sub V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_80x33 () { 9; }") unless defined(&V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_80x33);
    eval("sub V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_18x11 () { 10; }") unless defined(&V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_18x11);
    eval("sub V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_15x11 () { 11; }") unless defined(&V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_15x11);
    eval("sub V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_64x33 () { 12; }") unless defined(&V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_64x33);
    eval("sub V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_160x99 () { 13; }") unless defined(&V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_160x99);
    eval("sub V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_4x3 () { 14; }") unless defined(&V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_4x3);
    eval("sub V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_3x2 () { 15; }") unless defined(&V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_3x2);
    eval("sub V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_2x1 () { 16; }") unless defined(&V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_2x1);
    eval("sub V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_EXTENDED () { 17; }") unless defined(&V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_EXTENDED);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_SEI_FRAME_PACKING () {( &V4L2_CID_MPEG_BASE+368);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_SEI_FRAME_PACKING);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_SEI_FP_CURRENT_FRAME_0 () {( &V4L2_CID_MPEG_BASE+369);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_SEI_FP_CURRENT_FRAME_0);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE () {( &V4L2_CID_MPEG_BASE+370);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE);
    eval("sub V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_CHECKERBOARD () { 0; }") unless defined(&V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_CHECKERBOARD);
    eval("sub V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_COLUMN () { 1; }") unless defined(&V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_COLUMN);
    eval("sub V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_ROW () { 2; }") unless defined(&V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_ROW);
    eval("sub V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_SIDE_BY_SIDE () { 3; }") unless defined(&V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_SIDE_BY_SIDE);
    eval("sub V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_TOP_BOTTOM () { 4; }") unless defined(&V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_TOP_BOTTOM);
    eval("sub V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_TEMPORAL () { 5; }") unless defined(&V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_TEMPORAL);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_FMO () {( &V4L2_CID_MPEG_BASE+371);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_FMO);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_FMO_MAP_TYPE () {( &V4L2_CID_MPEG_BASE+372);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_FMO_MAP_TYPE);
    eval("sub V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_INTERLEAVED_SLICES () { 0; }") unless defined(&V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_INTERLEAVED_SLICES);
    eval("sub V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_SCATTERED_SLICES () { 1; }") unless defined(&V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_SCATTERED_SLICES);
    eval("sub V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_FOREGROUND_WITH_LEFT_OVER () { 2; }") unless defined(&V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_FOREGROUND_WITH_LEFT_OVER);
    eval("sub V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_BOX_OUT () { 3; }") unless defined(&V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_BOX_OUT);
    eval("sub V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_RASTER_SCAN () { 4; }") unless defined(&V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_RASTER_SCAN);
    eval("sub V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_WIPE_SCAN () { 5; }") unless defined(&V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_WIPE_SCAN);
    eval("sub V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_EXPLICIT () { 6; }") unless defined(&V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_EXPLICIT);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_FMO_SLICE_GROUP () {( &V4L2_CID_MPEG_BASE+373);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_FMO_SLICE_GROUP);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_FMO_CHANGE_DIRECTION () {( &V4L2_CID_MPEG_BASE+374);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_FMO_CHANGE_DIRECTION);
    eval("sub V4L2_MPEG_VIDEO_H264_FMO_CHANGE_DIR_RIGHT () { 0; }") unless defined(&V4L2_MPEG_VIDEO_H264_FMO_CHANGE_DIR_RIGHT);
    eval("sub V4L2_MPEG_VIDEO_H264_FMO_CHANGE_DIR_LEFT () { 1; }") unless defined(&V4L2_MPEG_VIDEO_H264_FMO_CHANGE_DIR_LEFT);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_FMO_CHANGE_RATE () {( &V4L2_CID_MPEG_BASE+375);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_FMO_CHANGE_RATE);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_FMO_RUN_LENGTH () {( &V4L2_CID_MPEG_BASE+376);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_FMO_RUN_LENGTH);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_ASO () {( &V4L2_CID_MPEG_BASE+377);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_ASO);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_ASO_SLICE_ORDER () {( &V4L2_CID_MPEG_BASE+378);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_ASO_SLICE_ORDER);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_HIERARCHICAL_CODING () {( &V4L2_CID_MPEG_BASE+379);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_HIERARCHICAL_CODING);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_HIERARCHICAL_CODING_TYPE () {( &V4L2_CID_MPEG_BASE+380);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_HIERARCHICAL_CODING_TYPE);
    eval("sub V4L2_MPEG_VIDEO_H264_HIERARCHICAL_CODING_B () { 0; }") unless defined(&V4L2_MPEG_VIDEO_H264_HIERARCHICAL_CODING_B);
    eval("sub V4L2_MPEG_VIDEO_H264_HIERARCHICAL_CODING_P () { 1; }") unless defined(&V4L2_MPEG_VIDEO_H264_HIERARCHICAL_CODING_P);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_HIERARCHICAL_CODING_LAYER () {( &V4L2_CID_MPEG_BASE+381);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_HIERARCHICAL_CODING_LAYER);
    eval 'sub V4L2_CID_MPEG_VIDEO_H264_HIERARCHICAL_CODING_LAYER_QP () {( &V4L2_CID_MPEG_BASE+382);}' unless defined(&V4L2_CID_MPEG_VIDEO_H264_HIERARCHICAL_CODING_LAYER_QP);
    eval 'sub V4L2_CID_MPEG_VIDEO_MPEG4_I_FRAME_QP () {( &V4L2_CID_MPEG_BASE+400);}' unless defined(&V4L2_CID_MPEG_VIDEO_MPEG4_I_FRAME_QP);
    eval 'sub V4L2_CID_MPEG_VIDEO_MPEG4_P_FRAME_QP () {( &V4L2_CID_MPEG_BASE+401);}' unless defined(&V4L2_CID_MPEG_VIDEO_MPEG4_P_FRAME_QP);
    eval 'sub V4L2_CID_MPEG_VIDEO_MPEG4_B_FRAME_QP () {( &V4L2_CID_MPEG_BASE+402);}' unless defined(&V4L2_CID_MPEG_VIDEO_MPEG4_B_FRAME_QP);
    eval 'sub V4L2_CID_MPEG_VIDEO_MPEG4_MIN_QP () {( &V4L2_CID_MPEG_BASE+403);}' unless defined(&V4L2_CID_MPEG_VIDEO_MPEG4_MIN_QP);
    eval 'sub V4L2_CID_MPEG_VIDEO_MPEG4_MAX_QP () {( &V4L2_CID_MPEG_BASE+404);}' unless defined(&V4L2_CID_MPEG_VIDEO_MPEG4_MAX_QP);
    eval 'sub V4L2_CID_MPEG_VIDEO_MPEG4_LEVEL () {( &V4L2_CID_MPEG_BASE+405);}' unless defined(&V4L2_CID_MPEG_VIDEO_MPEG4_LEVEL);
    eval("sub V4L2_MPEG_VIDEO_MPEG4_LEVEL_0 () { 0; }") unless defined(&V4L2_MPEG_VIDEO_MPEG4_LEVEL_0);
    eval("sub V4L2_MPEG_VIDEO_MPEG4_LEVEL_0B () { 1; }") unless defined(&V4L2_MPEG_VIDEO_MPEG4_LEVEL_0B);
    eval("sub V4L2_MPEG_VIDEO_MPEG4_LEVEL_1 () { 2; }") unless defined(&V4L2_MPEG_VIDEO_MPEG4_LEVEL_1);
    eval("sub V4L2_MPEG_VIDEO_MPEG4_LEVEL_2 () { 3; }") unless defined(&V4L2_MPEG_VIDEO_MPEG4_LEVEL_2);
    eval("sub V4L2_MPEG_VIDEO_MPEG4_LEVEL_3 () { 4; }") unless defined(&V4L2_MPEG_VIDEO_MPEG4_LEVEL_3);
    eval("sub V4L2_MPEG_VIDEO_MPEG4_LEVEL_3B () { 5; }") unless defined(&V4L2_MPEG_VIDEO_MPEG4_LEVEL_3B);
    eval("sub V4L2_MPEG_VIDEO_MPEG4_LEVEL_4 () { 6; }") unless defined(&V4L2_MPEG_VIDEO_MPEG4_LEVEL_4);
    eval("sub V4L2_MPEG_VIDEO_MPEG4_LEVEL_5 () { 7; }") unless defined(&V4L2_MPEG_VIDEO_MPEG4_LEVEL_5);
    eval 'sub V4L2_CID_MPEG_VIDEO_MPEG4_PROFILE () {( &V4L2_CID_MPEG_BASE+406);}' unless defined(&V4L2_CID_MPEG_VIDEO_MPEG4_PROFILE);
    eval("sub V4L2_MPEG_VIDEO_MPEG4_PROFILE_SIMPLE () { 0; }") unless defined(&V4L2_MPEG_VIDEO_MPEG4_PROFILE_SIMPLE);
    eval("sub V4L2_MPEG_VIDEO_MPEG4_PROFILE_ADVANCED_SIMPLE () { 1; }") unless defined(&V4L2_MPEG_VIDEO_MPEG4_PROFILE_ADVANCED_SIMPLE);
    eval("sub V4L2_MPEG_VIDEO_MPEG4_PROFILE_CORE () { 2; }") unless defined(&V4L2_MPEG_VIDEO_MPEG4_PROFILE_CORE);
    eval("sub V4L2_MPEG_VIDEO_MPEG4_PROFILE_SIMPLE_SCALABLE () { 3; }") unless defined(&V4L2_MPEG_VIDEO_MPEG4_PROFILE_SIMPLE_SCALABLE);
    eval("sub V4L2_MPEG_VIDEO_MPEG4_PROFILE_ADVANCED_CODING_EFFICIENCY () { 4; }") unless defined(&V4L2_MPEG_VIDEO_MPEG4_PROFILE_ADVANCED_CODING_EFFICIENCY);
    eval 'sub V4L2_CID_MPEG_VIDEO_MPEG4_QPEL () {( &V4L2_CID_MPEG_BASE+407);}' unless defined(&V4L2_CID_MPEG_VIDEO_MPEG4_QPEL);
    eval 'sub V4L2_CID_MPEG_VIDEO_VPX_NUM_PARTITIONS () {( &V4L2_CID_MPEG_BASE+500);}' unless defined(&V4L2_CID_MPEG_VIDEO_VPX_NUM_PARTITIONS);
    eval("sub V4L2_CID_MPEG_VIDEO_VPX_1_PARTITION () { 0; }") unless defined(&V4L2_CID_MPEG_VIDEO_VPX_1_PARTITION);
    eval("sub V4L2_CID_MPEG_VIDEO_VPX_2_PARTITIONS () { 1; }") unless defined(&V4L2_CID_MPEG_VIDEO_VPX_2_PARTITIONS);
    eval("sub V4L2_CID_MPEG_VIDEO_VPX_4_PARTITIONS () { 2; }") unless defined(&V4L2_CID_MPEG_VIDEO_VPX_4_PARTITIONS);
    eval("sub V4L2_CID_MPEG_VIDEO_VPX_8_PARTITIONS () { 3; }") unless defined(&V4L2_CID_MPEG_VIDEO_VPX_8_PARTITIONS);
    eval 'sub V4L2_CID_MPEG_VIDEO_VPX_IMD_DISABLE_4X4 () {( &V4L2_CID_MPEG_BASE+501);}' unless defined(&V4L2_CID_MPEG_VIDEO_VPX_IMD_DISABLE_4X4);
    eval 'sub V4L2_CID_MPEG_VIDEO_VPX_NUM_REF_FRAMES () {( &V4L2_CID_MPEG_BASE+502);}' unless defined(&V4L2_CID_MPEG_VIDEO_VPX_NUM_REF_FRAMES);
    eval("sub V4L2_CID_MPEG_VIDEO_VPX_1_REF_FRAME () { 0; }") unless defined(&V4L2_CID_MPEG_VIDEO_VPX_1_REF_FRAME);
    eval("sub V4L2_CID_MPEG_VIDEO_VPX_2_REF_FRAME () { 1; }") unless defined(&V4L2_CID_MPEG_VIDEO_VPX_2_REF_FRAME);
    eval("sub V4L2_CID_MPEG_VIDEO_VPX_3_REF_FRAME () { 2; }") unless defined(&V4L2_CID_MPEG_VIDEO_VPX_3_REF_FRAME);
    eval 'sub V4L2_CID_MPEG_VIDEO_VPX_FILTER_LEVEL () {( &V4L2_CID_MPEG_BASE+503);}' unless defined(&V4L2_CID_MPEG_VIDEO_VPX_FILTER_LEVEL);
    eval 'sub V4L2_CID_MPEG_VIDEO_VPX_FILTER_SHARPNESS () {( &V4L2_CID_MPEG_BASE+504);}' unless defined(&V4L2_CID_MPEG_VIDEO_VPX_FILTER_SHARPNESS);
    eval 'sub V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_REF_PERIOD () {( &V4L2_CID_MPEG_BASE+505);}' unless defined(&V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_REF_PERIOD);
    eval 'sub V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_SEL () {( &V4L2_CID_MPEG_BASE+506);}' unless defined(&V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_SEL);
    eval("sub V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_USE_PREV () { 0; }") unless defined(&V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_USE_PREV);
    eval("sub V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_USE_REF_PERIOD () { 1; }") unless defined(&V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_USE_REF_PERIOD);
    eval 'sub V4L2_CID_MPEG_VIDEO_VPX_MIN_QP () {( &V4L2_CID_MPEG_BASE+507);}' unless defined(&V4L2_CID_MPEG_VIDEO_VPX_MIN_QP);
    eval 'sub V4L2_CID_MPEG_VIDEO_VPX_MAX_QP () {( &V4L2_CID_MPEG_BASE+508);}' unless defined(&V4L2_CID_MPEG_VIDEO_VPX_MAX_QP);
    eval 'sub V4L2_CID_MPEG_VIDEO_VPX_I_FRAME_QP () {( &V4L2_CID_MPEG_BASE+509);}' unless defined(&V4L2_CID_MPEG_VIDEO_VPX_I_FRAME_QP);
    eval 'sub V4L2_CID_MPEG_VIDEO_VPX_P_FRAME_QP () {( &V4L2_CID_MPEG_BASE+510);}' unless defined(&V4L2_CID_MPEG_VIDEO_VPX_P_FRAME_QP);
    eval 'sub V4L2_CID_MPEG_VIDEO_VPX_PROFILE () {( &V4L2_CID_MPEG_BASE+511);}' unless defined(&V4L2_CID_MPEG_VIDEO_VPX_PROFILE);
    eval 'sub V4L2_CID_MPEG_CX2341X_BASE () {( &V4L2_CTRL_CLASS_MPEG | 0x1000);}' unless defined(&V4L2_CID_MPEG_CX2341X_BASE);
    eval 'sub V4L2_CID_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE () {( &V4L2_CID_MPEG_CX2341X_BASE+0);}' unless defined(&V4L2_CID_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE);
    eval("sub V4L2_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE_MANUAL () { 0; }") unless defined(&V4L2_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE_MANUAL);
    eval("sub V4L2_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE_AUTO () { 1; }") unless defined(&V4L2_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE_AUTO);
    eval 'sub V4L2_CID_MPEG_CX2341X_VIDEO_SPATIAL_FILTER () {( &V4L2_CID_MPEG_CX2341X_BASE+1);}' unless defined(&V4L2_CID_MPEG_CX2341X_VIDEO_SPATIAL_FILTER);
    eval 'sub V4L2_CID_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE () {( &V4L2_CID_MPEG_CX2341X_BASE+2);}' unless defined(&V4L2_CID_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE);
    eval("sub V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_OFF () { 0; }") unless defined(&V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_OFF);
    eval("sub V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_1D_HOR () { 1; }") unless defined(&V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_1D_HOR);
    eval("sub V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_1D_VERT () { 2; }") unless defined(&V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_1D_VERT);
    eval("sub V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_2D_HV_SEPARABLE () { 3; }") unless defined(&V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_2D_HV_SEPARABLE);
    eval("sub V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_2D_SYM_NON_SEPARABLE () { 4; }") unless defined(&V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_2D_SYM_NON_SEPARABLE);
    eval 'sub V4L2_CID_MPEG_CX2341X_VIDEO_CHROMA_SPATIAL_FILTER_TYPE () {( &V4L2_CID_MPEG_CX2341X_BASE+3);}' unless defined(&V4L2_CID_MPEG_CX2341X_VIDEO_CHROMA_SPATIAL_FILTER_TYPE);
    eval("sub V4L2_MPEG_CX2341X_VIDEO_CHROMA_SPATIAL_FILTER_TYPE_OFF () { 0; }") unless defined(&V4L2_MPEG_CX2341X_VIDEO_CHROMA_SPATIAL_FILTER_TYPE_OFF);
    eval("sub V4L2_MPEG_CX2341X_VIDEO_CHROMA_SPATIAL_FILTER_TYPE_1D_HOR () { 1; }") unless defined(&V4L2_MPEG_CX2341X_VIDEO_CHROMA_SPATIAL_FILTER_TYPE_1D_HOR);
    eval 'sub V4L2_CID_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER_MODE () {( &V4L2_CID_MPEG_CX2341X_BASE+4);}' unless defined(&V4L2_CID_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER_MODE);
    eval("sub V4L2_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER_MODE_MANUAL () { 0; }") unless defined(&V4L2_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER_MODE_MANUAL);
    eval("sub V4L2_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER_MODE_AUTO () { 1; }") unless defined(&V4L2_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER_MODE_AUTO);
    eval 'sub V4L2_CID_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER () {( &V4L2_CID_MPEG_CX2341X_BASE+5);}' unless defined(&V4L2_CID_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER);
    eval 'sub V4L2_CID_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE () {( &V4L2_CID_MPEG_CX2341X_BASE+6);}' unless defined(&V4L2_CID_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE);
    eval("sub V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_OFF () { 0; }") unless defined(&V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_OFF);
    eval("sub V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_HOR () { 1; }") unless defined(&V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_HOR);
    eval("sub V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_VERT () { 2; }") unless defined(&V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_VERT);
    eval("sub V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_HOR_VERT () { 3; }") unless defined(&V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_HOR_VERT);
    eval("sub V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_DIAG () { 4; }") unless defined(&V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_DIAG);
    eval 'sub V4L2_CID_MPEG_CX2341X_VIDEO_LUMA_MEDIAN_FILTER_BOTTOM () {( &V4L2_CID_MPEG_CX2341X_BASE+7);}' unless defined(&V4L2_CID_MPEG_CX2341X_VIDEO_LUMA_MEDIAN_FILTER_BOTTOM);
    eval 'sub V4L2_CID_MPEG_CX2341X_VIDEO_LUMA_MEDIAN_FILTER_TOP () {( &V4L2_CID_MPEG_CX2341X_BASE+8);}' unless defined(&V4L2_CID_MPEG_CX2341X_VIDEO_LUMA_MEDIAN_FILTER_TOP);
    eval 'sub V4L2_CID_MPEG_CX2341X_VIDEO_CHROMA_MEDIAN_FILTER_BOTTOM () {( &V4L2_CID_MPEG_CX2341X_BASE+9);}' unless defined(&V4L2_CID_MPEG_CX2341X_VIDEO_CHROMA_MEDIAN_FILTER_BOTTOM);
    eval 'sub V4L2_CID_MPEG_CX2341X_VIDEO_CHROMA_MEDIAN_FILTER_TOP () {( &V4L2_CID_MPEG_CX2341X_BASE+10);}' unless defined(&V4L2_CID_MPEG_CX2341X_VIDEO_CHROMA_MEDIAN_FILTER_TOP);
    eval 'sub V4L2_CID_MPEG_CX2341X_STREAM_INSERT_NAV_PACKETS () {( &V4L2_CID_MPEG_CX2341X_BASE+11);}' unless defined(&V4L2_CID_MPEG_CX2341X_STREAM_INSERT_NAV_PACKETS);
    eval 'sub V4L2_CID_MPEG_MFC51_BASE () {( &V4L2_CTRL_CLASS_MPEG | 0x1100);}' unless defined(&V4L2_CID_MPEG_MFC51_BASE);
    eval 'sub V4L2_CID_MPEG_MFC51_VIDEO_DECODER_H264_DISPLAY_DELAY () {( &V4L2_CID_MPEG_MFC51_BASE+0);}' unless defined(&V4L2_CID_MPEG_MFC51_VIDEO_DECODER_H264_DISPLAY_DELAY);
    eval 'sub V4L2_CID_MPEG_MFC51_VIDEO_DECODER_H264_DISPLAY_DELAY_ENABLE () {( &V4L2_CID_MPEG_MFC51_BASE+1);}' unless defined(&V4L2_CID_MPEG_MFC51_VIDEO_DECODER_H264_DISPLAY_DELAY_ENABLE);
    eval 'sub V4L2_CID_MPEG_MFC51_VIDEO_FRAME_SKIP_MODE () {( &V4L2_CID_MPEG_MFC51_BASE+2);}' unless defined(&V4L2_CID_MPEG_MFC51_VIDEO_FRAME_SKIP_MODE);
    eval("sub V4L2_MPEG_MFC51_VIDEO_FRAME_SKIP_MODE_DISABLED () { 0; }") unless defined(&V4L2_MPEG_MFC51_VIDEO_FRAME_SKIP_MODE_DISABLED);
    eval("sub V4L2_MPEG_MFC51_VIDEO_FRAME_SKIP_MODE_LEVEL_LIMIT () { 1; }") unless defined(&V4L2_MPEG_MFC51_VIDEO_FRAME_SKIP_MODE_LEVEL_LIMIT);
    eval("sub V4L2_MPEG_MFC51_VIDEO_FRAME_SKIP_MODE_BUF_LIMIT () { 2; }") unless defined(&V4L2_MPEG_MFC51_VIDEO_FRAME_SKIP_MODE_BUF_LIMIT);
    eval 'sub V4L2_CID_MPEG_MFC51_VIDEO_FORCE_FRAME_TYPE () {( &V4L2_CID_MPEG_MFC51_BASE+3);}' unless defined(&V4L2_CID_MPEG_MFC51_VIDEO_FORCE_FRAME_TYPE);
    eval("sub V4L2_MPEG_MFC51_VIDEO_FORCE_FRAME_TYPE_DISABLED () { 0; }") unless defined(&V4L2_MPEG_MFC51_VIDEO_FORCE_FRAME_TYPE_DISABLED);
    eval("sub V4L2_MPEG_MFC51_VIDEO_FORCE_FRAME_TYPE_I_FRAME () { 1; }") unless defined(&V4L2_MPEG_MFC51_VIDEO_FORCE_FRAME_TYPE_I_FRAME);
    eval("sub V4L2_MPEG_MFC51_VIDEO_FORCE_FRAME_TYPE_NOT_CODED () { 2; }") unless defined(&V4L2_MPEG_MFC51_VIDEO_FORCE_FRAME_TYPE_NOT_CODED);
    eval 'sub V4L2_CID_MPEG_MFC51_VIDEO_PADDING () {( &V4L2_CID_MPEG_MFC51_BASE+4);}' unless defined(&V4L2_CID_MPEG_MFC51_VIDEO_PADDING);
    eval 'sub V4L2_CID_MPEG_MFC51_VIDEO_PADDING_YUV () {( &V4L2_CID_MPEG_MFC51_BASE+5);}' unless defined(&V4L2_CID_MPEG_MFC51_VIDEO_PADDING_YUV);
    eval 'sub V4L2_CID_MPEG_MFC51_VIDEO_RC_FIXED_TARGET_BIT () {( &V4L2_CID_MPEG_MFC51_BASE+6);}' unless defined(&V4L2_CID_MPEG_MFC51_VIDEO_RC_FIXED_TARGET_BIT);
    eval 'sub V4L2_CID_MPEG_MFC51_VIDEO_RC_REACTION_COEFF () {( &V4L2_CID_MPEG_MFC51_BASE+7);}' unless defined(&V4L2_CID_MPEG_MFC51_VIDEO_RC_REACTION_COEFF);
    eval 'sub V4L2_CID_MPEG_MFC51_VIDEO_H264_ADAPTIVE_RC_ACTIVITY () {( &V4L2_CID_MPEG_MFC51_BASE+50);}' unless defined(&V4L2_CID_MPEG_MFC51_VIDEO_H264_ADAPTIVE_RC_ACTIVITY);
    eval 'sub V4L2_CID_MPEG_MFC51_VIDEO_H264_ADAPTIVE_RC_DARK () {( &V4L2_CID_MPEG_MFC51_BASE+51);}' unless defined(&V4L2_CID_MPEG_MFC51_VIDEO_H264_ADAPTIVE_RC_DARK);
    eval 'sub V4L2_CID_MPEG_MFC51_VIDEO_H264_ADAPTIVE_RC_SMOOTH () {( &V4L2_CID_MPEG_MFC51_BASE+52);}' unless defined(&V4L2_CID_MPEG_MFC51_VIDEO_H264_ADAPTIVE_RC_SMOOTH);
    eval 'sub V4L2_CID_MPEG_MFC51_VIDEO_H264_ADAPTIVE_RC_STATIC () {( &V4L2_CID_MPEG_MFC51_BASE+53);}' unless defined(&V4L2_CID_MPEG_MFC51_VIDEO_H264_ADAPTIVE_RC_STATIC);
    eval 'sub V4L2_CID_MPEG_MFC51_VIDEO_H264_NUM_REF_PIC_FOR_P () {( &V4L2_CID_MPEG_MFC51_BASE+54);}' unless defined(&V4L2_CID_MPEG_MFC51_VIDEO_H264_NUM_REF_PIC_FOR_P);
    eval 'sub V4L2_CID_CAMERA_CLASS_BASE () {( &V4L2_CTRL_CLASS_CAMERA | 0x900);}' unless defined(&V4L2_CID_CAMERA_CLASS_BASE);
    eval 'sub V4L2_CID_CAMERA_CLASS () {( &V4L2_CTRL_CLASS_CAMERA | 1);}' unless defined(&V4L2_CID_CAMERA_CLASS);
    eval 'sub V4L2_CID_EXPOSURE_AUTO () {( &V4L2_CID_CAMERA_CLASS_BASE+1);}' unless defined(&V4L2_CID_EXPOSURE_AUTO);
    eval("sub V4L2_EXPOSURE_AUTO () { 0; }") unless defined(&V4L2_EXPOSURE_AUTO);
    eval("sub V4L2_EXPOSURE_MANUAL () { 1; }") unless defined(&V4L2_EXPOSURE_MANUAL);
    eval("sub V4L2_EXPOSURE_SHUTTER_PRIORITY () { 2; }") unless defined(&V4L2_EXPOSURE_SHUTTER_PRIORITY);
    eval("sub V4L2_EXPOSURE_APERTURE_PRIORITY () { 3; }") unless defined(&V4L2_EXPOSURE_APERTURE_PRIORITY);
    eval 'sub V4L2_CID_EXPOSURE_ABSOLUTE () {( &V4L2_CID_CAMERA_CLASS_BASE+2);}' unless defined(&V4L2_CID_EXPOSURE_ABSOLUTE);
    eval 'sub V4L2_CID_EXPOSURE_AUTO_PRIORITY () {( &V4L2_CID_CAMERA_CLASS_BASE+3);}' unless defined(&V4L2_CID_EXPOSURE_AUTO_PRIORITY);
    eval 'sub V4L2_CID_PAN_RELATIVE () {( &V4L2_CID_CAMERA_CLASS_BASE+4);}' unless defined(&V4L2_CID_PAN_RELATIVE);
    eval 'sub V4L2_CID_TILT_RELATIVE () {( &V4L2_CID_CAMERA_CLASS_BASE+5);}' unless defined(&V4L2_CID_TILT_RELATIVE);
    eval 'sub V4L2_CID_PAN_RESET () {( &V4L2_CID_CAMERA_CLASS_BASE+6);}' unless defined(&V4L2_CID_PAN_RESET);
    eval 'sub V4L2_CID_TILT_RESET () {( &V4L2_CID_CAMERA_CLASS_BASE+7);}' unless defined(&V4L2_CID_TILT_RESET);
    eval 'sub V4L2_CID_PAN_ABSOLUTE () {( &V4L2_CID_CAMERA_CLASS_BASE+8);}' unless defined(&V4L2_CID_PAN_ABSOLUTE);
    eval 'sub V4L2_CID_TILT_ABSOLUTE () {( &V4L2_CID_CAMERA_CLASS_BASE+9);}' unless defined(&V4L2_CID_TILT_ABSOLUTE);
    eval 'sub V4L2_CID_FOCUS_ABSOLUTE () {( &V4L2_CID_CAMERA_CLASS_BASE+10);}' unless defined(&V4L2_CID_FOCUS_ABSOLUTE);
    eval 'sub V4L2_CID_FOCUS_RELATIVE () {( &V4L2_CID_CAMERA_CLASS_BASE+11);}' unless defined(&V4L2_CID_FOCUS_RELATIVE);
    eval 'sub V4L2_CID_FOCUS_AUTO () {( &V4L2_CID_CAMERA_CLASS_BASE+12);}' unless defined(&V4L2_CID_FOCUS_AUTO);
    eval 'sub V4L2_CID_ZOOM_ABSOLUTE () {( &V4L2_CID_CAMERA_CLASS_BASE+13);}' unless defined(&V4L2_CID_ZOOM_ABSOLUTE);
    eval 'sub V4L2_CID_ZOOM_RELATIVE () {( &V4L2_CID_CAMERA_CLASS_BASE+14);}' unless defined(&V4L2_CID_ZOOM_RELATIVE);
    eval 'sub V4L2_CID_ZOOM_CONTINUOUS () {( &V4L2_CID_CAMERA_CLASS_BASE+15);}' unless defined(&V4L2_CID_ZOOM_CONTINUOUS);
    eval 'sub V4L2_CID_PRIVACY () {( &V4L2_CID_CAMERA_CLASS_BASE+16);}' unless defined(&V4L2_CID_PRIVACY);
    eval 'sub V4L2_CID_IRIS_ABSOLUTE () {( &V4L2_CID_CAMERA_CLASS_BASE+17);}' unless defined(&V4L2_CID_IRIS_ABSOLUTE);
    eval 'sub V4L2_CID_IRIS_RELATIVE () {( &V4L2_CID_CAMERA_CLASS_BASE+18);}' unless defined(&V4L2_CID_IRIS_RELATIVE);
    eval 'sub V4L2_CID_AUTO_EXPOSURE_BIAS () {( &V4L2_CID_CAMERA_CLASS_BASE+19);}' unless defined(&V4L2_CID_AUTO_EXPOSURE_BIAS);
    eval 'sub V4L2_CID_AUTO_N_PRESET_WHITE_BALANCE () {( &V4L2_CID_CAMERA_CLASS_BASE+20);}' unless defined(&V4L2_CID_AUTO_N_PRESET_WHITE_BALANCE);
    eval("sub V4L2_WHITE_BALANCE_MANUAL () { 0; }") unless defined(&V4L2_WHITE_BALANCE_MANUAL);
    eval("sub V4L2_WHITE_BALANCE_AUTO () { 1; }") unless defined(&V4L2_WHITE_BALANCE_AUTO);
    eval("sub V4L2_WHITE_BALANCE_INCANDESCENT () { 2; }") unless defined(&V4L2_WHITE_BALANCE_INCANDESCENT);
    eval("sub V4L2_WHITE_BALANCE_FLUORESCENT () { 3; }") unless defined(&V4L2_WHITE_BALANCE_FLUORESCENT);
    eval("sub V4L2_WHITE_BALANCE_FLUORESCENT_H () { 4; }") unless defined(&V4L2_WHITE_BALANCE_FLUORESCENT_H);
    eval("sub V4L2_WHITE_BALANCE_HORIZON () { 5; }") unless defined(&V4L2_WHITE_BALANCE_HORIZON);
    eval("sub V4L2_WHITE_BALANCE_DAYLIGHT () { 6; }") unless defined(&V4L2_WHITE_BALANCE_DAYLIGHT);
    eval("sub V4L2_WHITE_BALANCE_FLASH () { 7; }") unless defined(&V4L2_WHITE_BALANCE_FLASH);
    eval("sub V4L2_WHITE_BALANCE_CLOUDY () { 8; }") unless defined(&V4L2_WHITE_BALANCE_CLOUDY);
    eval("sub V4L2_WHITE_BALANCE_SHADE () { 9; }") unless defined(&V4L2_WHITE_BALANCE_SHADE);
    eval 'sub V4L2_CID_WIDE_DYNAMIC_RANGE () {( &V4L2_CID_CAMERA_CLASS_BASE+21);}' unless defined(&V4L2_CID_WIDE_DYNAMIC_RANGE);
    eval 'sub V4L2_CID_IMAGE_STABILIZATION () {( &V4L2_CID_CAMERA_CLASS_BASE+22);}' unless defined(&V4L2_CID_IMAGE_STABILIZATION);
    eval 'sub V4L2_CID_ISO_SENSITIVITY () {( &V4L2_CID_CAMERA_CLASS_BASE+23);}' unless defined(&V4L2_CID_ISO_SENSITIVITY);
    eval 'sub V4L2_CID_ISO_SENSITIVITY_AUTO () {( &V4L2_CID_CAMERA_CLASS_BASE+24);}' unless defined(&V4L2_CID_ISO_SENSITIVITY_AUTO);
    eval("sub V4L2_ISO_SENSITIVITY_MANUAL () { 0; }") unless defined(&V4L2_ISO_SENSITIVITY_MANUAL);
    eval("sub V4L2_ISO_SENSITIVITY_AUTO () { 1; }") unless defined(&V4L2_ISO_SENSITIVITY_AUTO);
    eval 'sub V4L2_CID_EXPOSURE_METERING () {( &V4L2_CID_CAMERA_CLASS_BASE+25);}' unless defined(&V4L2_CID_EXPOSURE_METERING);
    eval("sub V4L2_EXPOSURE_METERING_AVERAGE () { 0; }") unless defined(&V4L2_EXPOSURE_METERING_AVERAGE);
    eval("sub V4L2_EXPOSURE_METERING_CENTER_WEIGHTED () { 1; }") unless defined(&V4L2_EXPOSURE_METERING_CENTER_WEIGHTED);
    eval("sub V4L2_EXPOSURE_METERING_SPOT () { 2; }") unless defined(&V4L2_EXPOSURE_METERING_SPOT);
    eval("sub V4L2_EXPOSURE_METERING_MATRIX () { 3; }") unless defined(&V4L2_EXPOSURE_METERING_MATRIX);
    eval 'sub V4L2_CID_SCENE_MODE () {( &V4L2_CID_CAMERA_CLASS_BASE+26);}' unless defined(&V4L2_CID_SCENE_MODE);
    eval("sub V4L2_SCENE_MODE_NONE () { 0; }") unless defined(&V4L2_SCENE_MODE_NONE);
    eval("sub V4L2_SCENE_MODE_BACKLIGHT () { 1; }") unless defined(&V4L2_SCENE_MODE_BACKLIGHT);
    eval("sub V4L2_SCENE_MODE_BEACH_SNOW () { 2; }") unless defined(&V4L2_SCENE_MODE_BEACH_SNOW);
    eval("sub V4L2_SCENE_MODE_CANDLE_LIGHT () { 3; }") unless defined(&V4L2_SCENE_MODE_CANDLE_LIGHT);
    eval("sub V4L2_SCENE_MODE_DAWN_DUSK () { 4; }") unless defined(&V4L2_SCENE_MODE_DAWN_DUSK);
    eval("sub V4L2_SCENE_MODE_FALL_COLORS () { 5; }") unless defined(&V4L2_SCENE_MODE_FALL_COLORS);
    eval("sub V4L2_SCENE_MODE_FIREWORKS () { 6; }") unless defined(&V4L2_SCENE_MODE_FIREWORKS);
    eval("sub V4L2_SCENE_MODE_LANDSCAPE () { 7; }") unless defined(&V4L2_SCENE_MODE_LANDSCAPE);
    eval("sub V4L2_SCENE_MODE_NIGHT () { 8; }") unless defined(&V4L2_SCENE_MODE_NIGHT);
    eval("sub V4L2_SCENE_MODE_PARTY_INDOOR () { 9; }") unless defined(&V4L2_SCENE_MODE_PARTY_INDOOR);
    eval("sub V4L2_SCENE_MODE_PORTRAIT () { 10; }") unless defined(&V4L2_SCENE_MODE_PORTRAIT);
    eval("sub V4L2_SCENE_MODE_SPORTS () { 11; }") unless defined(&V4L2_SCENE_MODE_SPORTS);
    eval("sub V4L2_SCENE_MODE_SUNSET () { 12; }") unless defined(&V4L2_SCENE_MODE_SUNSET);
    eval("sub V4L2_SCENE_MODE_TEXT () { 13; }") unless defined(&V4L2_SCENE_MODE_TEXT);
    eval 'sub V4L2_CID_3A_LOCK () {( &V4L2_CID_CAMERA_CLASS_BASE+27);}' unless defined(&V4L2_CID_3A_LOCK);
    eval 'sub V4L2_LOCK_EXPOSURE () {(1<< 0);}' unless defined(&V4L2_LOCK_EXPOSURE);
    eval 'sub V4L2_LOCK_WHITE_BALANCE () {(1<< 1);}' unless defined(&V4L2_LOCK_WHITE_BALANCE);
    eval 'sub V4L2_LOCK_FOCUS () {(1<< 2);}' unless defined(&V4L2_LOCK_FOCUS);
    eval 'sub V4L2_CID_AUTO_FOCUS_START () {( &V4L2_CID_CAMERA_CLASS_BASE+28);}' unless defined(&V4L2_CID_AUTO_FOCUS_START);
    eval 'sub V4L2_CID_AUTO_FOCUS_STOP () {( &V4L2_CID_CAMERA_CLASS_BASE+29);}' unless defined(&V4L2_CID_AUTO_FOCUS_STOP);
    eval 'sub V4L2_CID_AUTO_FOCUS_STATUS () {( &V4L2_CID_CAMERA_CLASS_BASE+30);}' unless defined(&V4L2_CID_AUTO_FOCUS_STATUS);
    eval 'sub V4L2_AUTO_FOCUS_STATUS_IDLE () {(0<< 0);}' unless defined(&V4L2_AUTO_FOCUS_STATUS_IDLE);
    eval 'sub V4L2_AUTO_FOCUS_STATUS_BUSY () {(1<< 0);}' unless defined(&V4L2_AUTO_FOCUS_STATUS_BUSY);
    eval 'sub V4L2_AUTO_FOCUS_STATUS_REACHED () {(1<< 1);}' unless defined(&V4L2_AUTO_FOCUS_STATUS_REACHED);
    eval 'sub V4L2_AUTO_FOCUS_STATUS_FAILED () {(1<< 2);}' unless defined(&V4L2_AUTO_FOCUS_STATUS_FAILED);
    eval 'sub V4L2_CID_AUTO_FOCUS_RANGE () {( &V4L2_CID_CAMERA_CLASS_BASE+31);}' unless defined(&V4L2_CID_AUTO_FOCUS_RANGE);
    eval("sub V4L2_AUTO_FOCUS_RANGE_AUTO () { 0; }") unless defined(&V4L2_AUTO_FOCUS_RANGE_AUTO);
    eval("sub V4L2_AUTO_FOCUS_RANGE_NORMAL () { 1; }") unless defined(&V4L2_AUTO_FOCUS_RANGE_NORMAL);
    eval("sub V4L2_AUTO_FOCUS_RANGE_MACRO () { 2; }") unless defined(&V4L2_AUTO_FOCUS_RANGE_MACRO);
    eval("sub V4L2_AUTO_FOCUS_RANGE_INFINITY () { 3; }") unless defined(&V4L2_AUTO_FOCUS_RANGE_INFINITY);
    eval 'sub V4L2_CID_PAN_SPEED () {( &V4L2_CID_CAMERA_CLASS_BASE+32);}' unless defined(&V4L2_CID_PAN_SPEED);
    eval 'sub V4L2_CID_TILT_SPEED () {( &V4L2_CID_CAMERA_CLASS_BASE+33);}' unless defined(&V4L2_CID_TILT_SPEED);
    eval 'sub V4L2_CID_FM_TX_CLASS_BASE () {( &V4L2_CTRL_CLASS_FM_TX | 0x900);}' unless defined(&V4L2_CID_FM_TX_CLASS_BASE);
    eval 'sub V4L2_CID_FM_TX_CLASS () {( &V4L2_CTRL_CLASS_FM_TX | 1);}' unless defined(&V4L2_CID_FM_TX_CLASS);
    eval 'sub V4L2_CID_RDS_TX_DEVIATION () {( &V4L2_CID_FM_TX_CLASS_BASE + 1);}' unless defined(&V4L2_CID_RDS_TX_DEVIATION);
    eval 'sub V4L2_CID_RDS_TX_PI () {( &V4L2_CID_FM_TX_CLASS_BASE + 2);}' unless defined(&V4L2_CID_RDS_TX_PI);
    eval 'sub V4L2_CID_RDS_TX_PTY () {( &V4L2_CID_FM_TX_CLASS_BASE + 3);}' unless defined(&V4L2_CID_RDS_TX_PTY);
    eval 'sub V4L2_CID_RDS_TX_PS_NAME () {( &V4L2_CID_FM_TX_CLASS_BASE + 5);}' unless defined(&V4L2_CID_RDS_TX_PS_NAME);
    eval 'sub V4L2_CID_RDS_TX_RADIO_TEXT () {( &V4L2_CID_FM_TX_CLASS_BASE + 6);}' unless defined(&V4L2_CID_RDS_TX_RADIO_TEXT);
    eval 'sub V4L2_CID_RDS_TX_MONO_STEREO () {( &V4L2_CID_FM_TX_CLASS_BASE + 7);}' unless defined(&V4L2_CID_RDS_TX_MONO_STEREO);
    eval 'sub V4L2_CID_RDS_TX_ARTIFICIAL_HEAD () {( &V4L2_CID_FM_TX_CLASS_BASE + 8);}' unless defined(&V4L2_CID_RDS_TX_ARTIFICIAL_HEAD);
    eval 'sub V4L2_CID_RDS_TX_COMPRESSED () {( &V4L2_CID_FM_TX_CLASS_BASE + 9);}' unless defined(&V4L2_CID_RDS_TX_COMPRESSED);
    eval 'sub V4L2_CID_RDS_TX_DYNAMIC_PTY () {( &V4L2_CID_FM_TX_CLASS_BASE + 10);}' unless defined(&V4L2_CID_RDS_TX_DYNAMIC_PTY);
    eval 'sub V4L2_CID_RDS_TX_TRAFFIC_ANNOUNCEMENT () {( &V4L2_CID_FM_TX_CLASS_BASE + 11);}' unless defined(&V4L2_CID_RDS_TX_TRAFFIC_ANNOUNCEMENT);
    eval 'sub V4L2_CID_RDS_TX_TRAFFIC_PROGRAM () {( &V4L2_CID_FM_TX_CLASS_BASE + 12);}' unless defined(&V4L2_CID_RDS_TX_TRAFFIC_PROGRAM);
    eval 'sub V4L2_CID_RDS_TX_MUSIC_SPEECH () {( &V4L2_CID_FM_TX_CLASS_BASE + 13);}' unless defined(&V4L2_CID_RDS_TX_MUSIC_SPEECH);
    eval 'sub V4L2_CID_RDS_TX_ALT_FREQS_ENABLE () {( &V4L2_CID_FM_TX_CLASS_BASE + 14);}' unless defined(&V4L2_CID_RDS_TX_ALT_FREQS_ENABLE);
    eval 'sub V4L2_CID_RDS_TX_ALT_FREQS () {( &V4L2_CID_FM_TX_CLASS_BASE + 15);}' unless defined(&V4L2_CID_RDS_TX_ALT_FREQS);
    eval 'sub V4L2_CID_AUDIO_LIMITER_ENABLED () {( &V4L2_CID_FM_TX_CLASS_BASE + 64);}' unless defined(&V4L2_CID_AUDIO_LIMITER_ENABLED);
    eval 'sub V4L2_CID_AUDIO_LIMITER_RELEASE_TIME () {( &V4L2_CID_FM_TX_CLASS_BASE + 65);}' unless defined(&V4L2_CID_AUDIO_LIMITER_RELEASE_TIME);
    eval 'sub V4L2_CID_AUDIO_LIMITER_DEVIATION () {( &V4L2_CID_FM_TX_CLASS_BASE + 66);}' unless defined(&V4L2_CID_AUDIO_LIMITER_DEVIATION);
    eval 'sub V4L2_CID_AUDIO_COMPRESSION_ENABLED () {( &V4L2_CID_FM_TX_CLASS_BASE + 80);}' unless defined(&V4L2_CID_AUDIO_COMPRESSION_ENABLED);
    eval 'sub V4L2_CID_AUDIO_COMPRESSION_GAIN () {( &V4L2_CID_FM_TX_CLASS_BASE + 81);}' unless defined(&V4L2_CID_AUDIO_COMPRESSION_GAIN);
    eval 'sub V4L2_CID_AUDIO_COMPRESSION_THRESHOLD () {( &V4L2_CID_FM_TX_CLASS_BASE + 82);}' unless defined(&V4L2_CID_AUDIO_COMPRESSION_THRESHOLD);
    eval 'sub V4L2_CID_AUDIO_COMPRESSION_ATTACK_TIME () {( &V4L2_CID_FM_TX_CLASS_BASE + 83);}' unless defined(&V4L2_CID_AUDIO_COMPRESSION_ATTACK_TIME);
    eval 'sub V4L2_CID_AUDIO_COMPRESSION_RELEASE_TIME () {( &V4L2_CID_FM_TX_CLASS_BASE + 84);}' unless defined(&V4L2_CID_AUDIO_COMPRESSION_RELEASE_TIME);
    eval 'sub V4L2_CID_PILOT_TONE_ENABLED () {( &V4L2_CID_FM_TX_CLASS_BASE + 96);}' unless defined(&V4L2_CID_PILOT_TONE_ENABLED);
    eval 'sub V4L2_CID_PILOT_TONE_DEVIATION () {( &V4L2_CID_FM_TX_CLASS_BASE + 97);}' unless defined(&V4L2_CID_PILOT_TONE_DEVIATION);
    eval 'sub V4L2_CID_PILOT_TONE_FREQUENCY () {( &V4L2_CID_FM_TX_CLASS_BASE + 98);}' unless defined(&V4L2_CID_PILOT_TONE_FREQUENCY);
    eval 'sub V4L2_CID_TUNE_PREEMPHASIS () {( &V4L2_CID_FM_TX_CLASS_BASE + 112);}' unless defined(&V4L2_CID_TUNE_PREEMPHASIS);
    eval("sub V4L2_PREEMPHASIS_DISABLED () { 0; }") unless defined(&V4L2_PREEMPHASIS_DISABLED);
    eval("sub V4L2_PREEMPHASIS_50_uS () { 1; }") unless defined(&V4L2_PREEMPHASIS_50_uS);
    eval("sub V4L2_PREEMPHASIS_75_uS () { 2; }") unless defined(&V4L2_PREEMPHASIS_75_uS);
    eval 'sub V4L2_CID_TUNE_POWER_LEVEL () {( &V4L2_CID_FM_TX_CLASS_BASE + 113);}' unless defined(&V4L2_CID_TUNE_POWER_LEVEL);
    eval 'sub V4L2_CID_TUNE_ANTENNA_CAPACITOR () {( &V4L2_CID_FM_TX_CLASS_BASE + 114);}' unless defined(&V4L2_CID_TUNE_ANTENNA_CAPACITOR);
    eval 'sub V4L2_CID_FLASH_CLASS_BASE () {( &V4L2_CTRL_CLASS_FLASH | 0x900);}' unless defined(&V4L2_CID_FLASH_CLASS_BASE);
    eval 'sub V4L2_CID_FLASH_CLASS () {( &V4L2_CTRL_CLASS_FLASH | 1);}' unless defined(&V4L2_CID_FLASH_CLASS);
    eval 'sub V4L2_CID_FLASH_LED_MODE () {( &V4L2_CID_FLASH_CLASS_BASE + 1);}' unless defined(&V4L2_CID_FLASH_LED_MODE);
    eval("sub V4L2_FLASH_LED_MODE_NONE () { 0; }") unless defined(&V4L2_FLASH_LED_MODE_NONE);
    eval("sub V4L2_FLASH_LED_MODE_FLASH () { 1; }") unless defined(&V4L2_FLASH_LED_MODE_FLASH);
    eval("sub V4L2_FLASH_LED_MODE_TORCH () { 2; }") unless defined(&V4L2_FLASH_LED_MODE_TORCH);
    eval 'sub V4L2_CID_FLASH_STROBE_SOURCE () {( &V4L2_CID_FLASH_CLASS_BASE + 2);}' unless defined(&V4L2_CID_FLASH_STROBE_SOURCE);
    eval("sub V4L2_FLASH_STROBE_SOURCE_SOFTWARE () { 0; }") unless defined(&V4L2_FLASH_STROBE_SOURCE_SOFTWARE);
    eval("sub V4L2_FLASH_STROBE_SOURCE_EXTERNAL () { 1; }") unless defined(&V4L2_FLASH_STROBE_SOURCE_EXTERNAL);
    eval 'sub V4L2_CID_FLASH_STROBE () {( &V4L2_CID_FLASH_CLASS_BASE + 3);}' unless defined(&V4L2_CID_FLASH_STROBE);
    eval 'sub V4L2_CID_FLASH_STROBE_STOP () {( &V4L2_CID_FLASH_CLASS_BASE + 4);}' unless defined(&V4L2_CID_FLASH_STROBE_STOP);
    eval 'sub V4L2_CID_FLASH_STROBE_STATUS () {( &V4L2_CID_FLASH_CLASS_BASE + 5);}' unless defined(&V4L2_CID_FLASH_STROBE_STATUS);
    eval 'sub V4L2_CID_FLASH_TIMEOUT () {( &V4L2_CID_FLASH_CLASS_BASE + 6);}' unless defined(&V4L2_CID_FLASH_TIMEOUT);
    eval 'sub V4L2_CID_FLASH_INTENSITY () {( &V4L2_CID_FLASH_CLASS_BASE + 7);}' unless defined(&V4L2_CID_FLASH_INTENSITY);
    eval 'sub V4L2_CID_FLASH_TORCH_INTENSITY () {( &V4L2_CID_FLASH_CLASS_BASE + 8);}' unless defined(&V4L2_CID_FLASH_TORCH_INTENSITY);
    eval 'sub V4L2_CID_FLASH_INDICATOR_INTENSITY () {( &V4L2_CID_FLASH_CLASS_BASE + 9);}' unless defined(&V4L2_CID_FLASH_INDICATOR_INTENSITY);
    eval 'sub V4L2_CID_FLASH_FAULT () {( &V4L2_CID_FLASH_CLASS_BASE + 10);}' unless defined(&V4L2_CID_FLASH_FAULT);
    eval 'sub V4L2_FLASH_FAULT_OVER_VOLTAGE () {(1<< 0);}' unless defined(&V4L2_FLASH_FAULT_OVER_VOLTAGE);
    eval 'sub V4L2_FLASH_FAULT_TIMEOUT () {(1<< 1);}' unless defined(&V4L2_FLASH_FAULT_TIMEOUT);
    eval 'sub V4L2_FLASH_FAULT_OVER_TEMPERATURE () {(1<< 2);}' unless defined(&V4L2_FLASH_FAULT_OVER_TEMPERATURE);
    eval 'sub V4L2_FLASH_FAULT_SHORT_CIRCUIT () {(1<< 3);}' unless defined(&V4L2_FLASH_FAULT_SHORT_CIRCUIT);
    eval 'sub V4L2_FLASH_FAULT_OVER_CURRENT () {(1<< 4);}' unless defined(&V4L2_FLASH_FAULT_OVER_CURRENT);
    eval 'sub V4L2_FLASH_FAULT_INDICATOR () {(1<< 5);}' unless defined(&V4L2_FLASH_FAULT_INDICATOR);
    eval 'sub V4L2_FLASH_FAULT_UNDER_VOLTAGE () {(1<< 6);}' unless defined(&V4L2_FLASH_FAULT_UNDER_VOLTAGE);
    eval 'sub V4L2_FLASH_FAULT_INPUT_VOLTAGE () {(1<< 7);}' unless defined(&V4L2_FLASH_FAULT_INPUT_VOLTAGE);
    eval 'sub V4L2_FLASH_FAULT_LED_OVER_TEMPERATURE () {(1<< 8);}' unless defined(&V4L2_FLASH_FAULT_LED_OVER_TEMPERATURE);
    eval 'sub V4L2_CID_FLASH_CHARGE () {( &V4L2_CID_FLASH_CLASS_BASE + 11);}' unless defined(&V4L2_CID_FLASH_CHARGE);
    eval 'sub V4L2_CID_FLASH_READY () {( &V4L2_CID_FLASH_CLASS_BASE + 12);}' unless defined(&V4L2_CID_FLASH_READY);
    eval 'sub V4L2_CID_JPEG_CLASS_BASE () {( &V4L2_CTRL_CLASS_JPEG | 0x900);}' unless defined(&V4L2_CID_JPEG_CLASS_BASE);
    eval 'sub V4L2_CID_JPEG_CLASS () {( &V4L2_CTRL_CLASS_JPEG | 1);}' unless defined(&V4L2_CID_JPEG_CLASS);
    eval 'sub V4L2_CID_JPEG_CHROMA_SUBSAMPLING () {( &V4L2_CID_JPEG_CLASS_BASE + 1);}' unless defined(&V4L2_CID_JPEG_CHROMA_SUBSAMPLING);
    eval("sub V4L2_JPEG_CHROMA_SUBSAMPLING_444 () { 0; }") unless defined(&V4L2_JPEG_CHROMA_SUBSAMPLING_444);
    eval("sub V4L2_JPEG_CHROMA_SUBSAMPLING_422 () { 1; }") unless defined(&V4L2_JPEG_CHROMA_SUBSAMPLING_422);
    eval("sub V4L2_JPEG_CHROMA_SUBSAMPLING_420 () { 2; }") unless defined(&V4L2_JPEG_CHROMA_SUBSAMPLING_420);
    eval("sub V4L2_JPEG_CHROMA_SUBSAMPLING_411 () { 3; }") unless defined(&V4L2_JPEG_CHROMA_SUBSAMPLING_411);
    eval("sub V4L2_JPEG_CHROMA_SUBSAMPLING_410 () { 4; }") unless defined(&V4L2_JPEG_CHROMA_SUBSAMPLING_410);
    eval("sub V4L2_JPEG_CHROMA_SUBSAMPLING_GRAY () { 5; }") unless defined(&V4L2_JPEG_CHROMA_SUBSAMPLING_GRAY);
    eval 'sub V4L2_CID_JPEG_RESTART_INTERVAL () {( &V4L2_CID_JPEG_CLASS_BASE + 2);}' unless defined(&V4L2_CID_JPEG_RESTART_INTERVAL);
    eval 'sub V4L2_CID_JPEG_COMPRESSION_QUALITY () {( &V4L2_CID_JPEG_CLASS_BASE + 3);}' unless defined(&V4L2_CID_JPEG_COMPRESSION_QUALITY);
    eval 'sub V4L2_CID_JPEG_ACTIVE_MARKER () {( &V4L2_CID_JPEG_CLASS_BASE + 4);}' unless defined(&V4L2_CID_JPEG_ACTIVE_MARKER);
    eval 'sub V4L2_JPEG_ACTIVE_MARKER_APP0 () {(1<< 0);}' unless defined(&V4L2_JPEG_ACTIVE_MARKER_APP0);
    eval 'sub V4L2_JPEG_ACTIVE_MARKER_APP1 () {(1<< 1);}' unless defined(&V4L2_JPEG_ACTIVE_MARKER_APP1);
    eval 'sub V4L2_JPEG_ACTIVE_MARKER_COM () {(1<< 16);}' unless defined(&V4L2_JPEG_ACTIVE_MARKER_COM);
    eval 'sub V4L2_JPEG_ACTIVE_MARKER_DQT () {(1<< 17);}' unless defined(&V4L2_JPEG_ACTIVE_MARKER_DQT);
    eval 'sub V4L2_JPEG_ACTIVE_MARKER_DHT () {(1<< 18);}' unless defined(&V4L2_JPEG_ACTIVE_MARKER_DHT);
    eval 'sub V4L2_CID_IMAGE_SOURCE_CLASS_BASE () {( &V4L2_CTRL_CLASS_IMAGE_SOURCE | 0x900);}' unless defined(&V4L2_CID_IMAGE_SOURCE_CLASS_BASE);
    eval 'sub V4L2_CID_IMAGE_SOURCE_CLASS () {( &V4L2_CTRL_CLASS_IMAGE_SOURCE | 1);}' unless defined(&V4L2_CID_IMAGE_SOURCE_CLASS);
    eval 'sub V4L2_CID_VBLANK () {( &V4L2_CID_IMAGE_SOURCE_CLASS_BASE + 1);}' unless defined(&V4L2_CID_VBLANK);
    eval 'sub V4L2_CID_HBLANK () {( &V4L2_CID_IMAGE_SOURCE_CLASS_BASE + 2);}' unless defined(&V4L2_CID_HBLANK);
    eval 'sub V4L2_CID_ANALOGUE_GAIN () {( &V4L2_CID_IMAGE_SOURCE_CLASS_BASE + 3);}' unless defined(&V4L2_CID_ANALOGUE_GAIN);
    eval 'sub V4L2_CID_TEST_PATTERN_RED () {( &V4L2_CID_IMAGE_SOURCE_CLASS_BASE + 4);}' unless defined(&V4L2_CID_TEST_PATTERN_RED);
    eval 'sub V4L2_CID_TEST_PATTERN_GREENR () {( &V4L2_CID_IMAGE_SOURCE_CLASS_BASE + 5);}' unless defined(&V4L2_CID_TEST_PATTERN_GREENR);
    eval 'sub V4L2_CID_TEST_PATTERN_BLUE () {( &V4L2_CID_IMAGE_SOURCE_CLASS_BASE + 6);}' unless defined(&V4L2_CID_TEST_PATTERN_BLUE);
    eval 'sub V4L2_CID_TEST_PATTERN_GREENB () {( &V4L2_CID_IMAGE_SOURCE_CLASS_BASE + 7);}' unless defined(&V4L2_CID_TEST_PATTERN_GREENB);
    eval 'sub V4L2_CID_IMAGE_PROC_CLASS_BASE () {( &V4L2_CTRL_CLASS_IMAGE_PROC | 0x900);}' unless defined(&V4L2_CID_IMAGE_PROC_CLASS_BASE);
    eval 'sub V4L2_CID_IMAGE_PROC_CLASS () {( &V4L2_CTRL_CLASS_IMAGE_PROC | 1);}' unless defined(&V4L2_CID_IMAGE_PROC_CLASS);
    eval 'sub V4L2_CID_LINK_FREQ () {( &V4L2_CID_IMAGE_PROC_CLASS_BASE + 1);}' unless defined(&V4L2_CID_LINK_FREQ);
    eval 'sub V4L2_CID_PIXEL_RATE () {( &V4L2_CID_IMAGE_PROC_CLASS_BASE + 2);}' unless defined(&V4L2_CID_PIXEL_RATE);
    eval 'sub V4L2_CID_TEST_PATTERN () {( &V4L2_CID_IMAGE_PROC_CLASS_BASE + 3);}' unless defined(&V4L2_CID_TEST_PATTERN);
    eval 'sub V4L2_CID_DEINTERLACING_MODE () {( &V4L2_CID_IMAGE_PROC_CLASS_BASE + 4);}' unless defined(&V4L2_CID_DEINTERLACING_MODE);
    eval 'sub V4L2_CID_DV_CLASS_BASE () {( &V4L2_CTRL_CLASS_DV | 0x900);}' unless defined(&V4L2_CID_DV_CLASS_BASE);
    eval 'sub V4L2_CID_DV_CLASS () {( &V4L2_CTRL_CLASS_DV | 1);}' unless defined(&V4L2_CID_DV_CLASS);
    eval 'sub V4L2_CID_DV_TX_HOTPLUG () {( &V4L2_CID_DV_CLASS_BASE + 1);}' unless defined(&V4L2_CID_DV_TX_HOTPLUG);
    eval 'sub V4L2_CID_DV_TX_RXSENSE () {( &V4L2_CID_DV_CLASS_BASE + 2);}' unless defined(&V4L2_CID_DV_TX_RXSENSE);
    eval 'sub V4L2_CID_DV_TX_EDID_PRESENT () {( &V4L2_CID_DV_CLASS_BASE + 3);}' unless defined(&V4L2_CID_DV_TX_EDID_PRESENT);
    eval 'sub V4L2_CID_DV_TX_MODE () {( &V4L2_CID_DV_CLASS_BASE + 4);}' unless defined(&V4L2_CID_DV_TX_MODE);
    eval("sub V4L2_DV_TX_MODE_DVI_D () { 0; }") unless defined(&V4L2_DV_TX_MODE_DVI_D);
    eval("sub V4L2_DV_TX_MODE_HDMI () { 1; }") unless defined(&V4L2_DV_TX_MODE_HDMI);
    eval 'sub V4L2_CID_DV_TX_RGB_RANGE () {( &V4L2_CID_DV_CLASS_BASE + 5);}' unless defined(&V4L2_CID_DV_TX_RGB_RANGE);
    eval("sub V4L2_DV_RGB_RANGE_AUTO () { 0; }") unless defined(&V4L2_DV_RGB_RANGE_AUTO);
    eval("sub V4L2_DV_RGB_RANGE_LIMITED () { 1; }") unless defined(&V4L2_DV_RGB_RANGE_LIMITED);
    eval("sub V4L2_DV_RGB_RANGE_FULL () { 2; }") unless defined(&V4L2_DV_RGB_RANGE_FULL);
    eval 'sub V4L2_CID_DV_TX_IT_CONTENT_TYPE () {( &V4L2_CID_DV_CLASS_BASE + 6);}' unless defined(&V4L2_CID_DV_TX_IT_CONTENT_TYPE);
    eval("sub V4L2_DV_IT_CONTENT_TYPE_GRAPHICS () { 0; }") unless defined(&V4L2_DV_IT_CONTENT_TYPE_GRAPHICS);
    eval("sub V4L2_DV_IT_CONTENT_TYPE_PHOTO () { 1; }") unless defined(&V4L2_DV_IT_CONTENT_TYPE_PHOTO);
    eval("sub V4L2_DV_IT_CONTENT_TYPE_CINEMA () { 2; }") unless defined(&V4L2_DV_IT_CONTENT_TYPE_CINEMA);
    eval("sub V4L2_DV_IT_CONTENT_TYPE_GAME () { 3; }") unless defined(&V4L2_DV_IT_CONTENT_TYPE_GAME);
    eval("sub V4L2_DV_IT_CONTENT_TYPE_NO_ITC () { 4; }") unless defined(&V4L2_DV_IT_CONTENT_TYPE_NO_ITC);
    eval 'sub V4L2_CID_DV_RX_POWER_PRESENT () {( &V4L2_CID_DV_CLASS_BASE + 100);}' unless defined(&V4L2_CID_DV_RX_POWER_PRESENT);
    eval 'sub V4L2_CID_DV_RX_RGB_RANGE () {( &V4L2_CID_DV_CLASS_BASE + 101);}' unless defined(&V4L2_CID_DV_RX_RGB_RANGE);
    eval 'sub V4L2_CID_DV_RX_IT_CONTENT_TYPE () {( &V4L2_CID_DV_CLASS_BASE + 102);}' unless defined(&V4L2_CID_DV_RX_IT_CONTENT_TYPE);
    eval 'sub V4L2_CID_FM_RX_CLASS_BASE () {( &V4L2_CTRL_CLASS_FM_RX | 0x900);}' unless defined(&V4L2_CID_FM_RX_CLASS_BASE);
    eval 'sub V4L2_CID_FM_RX_CLASS () {( &V4L2_CTRL_CLASS_FM_RX | 1);}' unless defined(&V4L2_CID_FM_RX_CLASS);
    eval 'sub V4L2_CID_TUNE_DEEMPHASIS () {( &V4L2_CID_FM_RX_CLASS_BASE + 1);}' unless defined(&V4L2_CID_TUNE_DEEMPHASIS);
    eval("sub V4L2_DEEMPHASIS_DISABLED () { V4L2_PREEMPHASIS_DISABLED; }") unless defined(&V4L2_DEEMPHASIS_DISABLED);
    eval("sub V4L2_DEEMPHASIS_50_uS () { V4L2_PREEMPHASIS_50_uS; }") unless defined(&V4L2_DEEMPHASIS_50_uS);
    eval("sub V4L2_DEEMPHASIS_75_uS () { V4L2_PREEMPHASIS_75_uS; }") unless defined(&V4L2_DEEMPHASIS_75_uS);
    eval 'sub V4L2_CID_RDS_RECEPTION () {( &V4L2_CID_FM_RX_CLASS_BASE + 2);}' unless defined(&V4L2_CID_RDS_RECEPTION);
    eval 'sub V4L2_CID_RDS_RX_PTY () {( &V4L2_CID_FM_RX_CLASS_BASE + 3);}' unless defined(&V4L2_CID_RDS_RX_PTY);
    eval 'sub V4L2_CID_RDS_RX_PS_NAME () {( &V4L2_CID_FM_RX_CLASS_BASE + 4);}' unless defined(&V4L2_CID_RDS_RX_PS_NAME);
    eval 'sub V4L2_CID_RDS_RX_RADIO_TEXT () {( &V4L2_CID_FM_RX_CLASS_BASE + 5);}' unless defined(&V4L2_CID_RDS_RX_RADIO_TEXT);
    eval 'sub V4L2_CID_RDS_RX_TRAFFIC_ANNOUNCEMENT () {( &V4L2_CID_FM_RX_CLASS_BASE + 6);}' unless defined(&V4L2_CID_RDS_RX_TRAFFIC_ANNOUNCEMENT);
    eval 'sub V4L2_CID_RDS_RX_TRAFFIC_PROGRAM () {( &V4L2_CID_FM_RX_CLASS_BASE + 7);}' unless defined(&V4L2_CID_RDS_RX_TRAFFIC_PROGRAM);
    eval 'sub V4L2_CID_RDS_RX_MUSIC_SPEECH () {( &V4L2_CID_FM_RX_CLASS_BASE + 8);}' unless defined(&V4L2_CID_RDS_RX_MUSIC_SPEECH);
    eval 'sub V4L2_CID_RF_TUNER_CLASS_BASE () {( &V4L2_CTRL_CLASS_RF_TUNER | 0x900);}' unless defined(&V4L2_CID_RF_TUNER_CLASS_BASE);
    eval 'sub V4L2_CID_RF_TUNER_CLASS () {( &V4L2_CTRL_CLASS_RF_TUNER | 1);}' unless defined(&V4L2_CID_RF_TUNER_CLASS);
    eval 'sub V4L2_CID_RF_TUNER_BANDWIDTH_AUTO () {( &V4L2_CID_RF_TUNER_CLASS_BASE + 11);}' unless defined(&V4L2_CID_RF_TUNER_BANDWIDTH_AUTO);
    eval 'sub V4L2_CID_RF_TUNER_BANDWIDTH () {( &V4L2_CID_RF_TUNER_CLASS_BASE + 12);}' unless defined(&V4L2_CID_RF_TUNER_BANDWIDTH);
    eval 'sub V4L2_CID_RF_TUNER_RF_GAIN () {( &V4L2_CID_RF_TUNER_CLASS_BASE + 32);}' unless defined(&V4L2_CID_RF_TUNER_RF_GAIN);
    eval 'sub V4L2_CID_RF_TUNER_LNA_GAIN_AUTO () {( &V4L2_CID_RF_TUNER_CLASS_BASE + 41);}' unless defined(&V4L2_CID_RF_TUNER_LNA_GAIN_AUTO);
    eval 'sub V4L2_CID_RF_TUNER_LNA_GAIN () {( &V4L2_CID_RF_TUNER_CLASS_BASE + 42);}' unless defined(&V4L2_CID_RF_TUNER_LNA_GAIN);
    eval 'sub V4L2_CID_RF_TUNER_MIXER_GAIN_AUTO () {( &V4L2_CID_RF_TUNER_CLASS_BASE + 51);}' unless defined(&V4L2_CID_RF_TUNER_MIXER_GAIN_AUTO);
    eval 'sub V4L2_CID_RF_TUNER_MIXER_GAIN () {( &V4L2_CID_RF_TUNER_CLASS_BASE + 52);}' unless defined(&V4L2_CID_RF_TUNER_MIXER_GAIN);
    eval 'sub V4L2_CID_RF_TUNER_IF_GAIN_AUTO () {( &V4L2_CID_RF_TUNER_CLASS_BASE + 61);}' unless defined(&V4L2_CID_RF_TUNER_IF_GAIN_AUTO);
    eval 'sub V4L2_CID_RF_TUNER_IF_GAIN () {( &V4L2_CID_RF_TUNER_CLASS_BASE + 62);}' unless defined(&V4L2_CID_RF_TUNER_IF_GAIN);
    eval 'sub V4L2_CID_RF_TUNER_PLL_LOCK () {( &V4L2_CID_RF_TUNER_CLASS_BASE + 91);}' unless defined(&V4L2_CID_RF_TUNER_PLL_LOCK);
    eval 'sub V4L2_CID_DETECT_CLASS_BASE () {( &V4L2_CTRL_CLASS_DETECT | 0x900);}' unless defined(&V4L2_CID_DETECT_CLASS_BASE);
    eval 'sub V4L2_CID_DETECT_CLASS () {( &V4L2_CTRL_CLASS_DETECT | 1);}' unless defined(&V4L2_CID_DETECT_CLASS);
    eval 'sub V4L2_CID_DETECT_MD_MODE () {( &V4L2_CID_DETECT_CLASS_BASE + 1);}' unless defined(&V4L2_CID_DETECT_MD_MODE);
    eval("sub V4L2_DETECT_MD_MODE_DISABLED () { 0; }") unless defined(&V4L2_DETECT_MD_MODE_DISABLED);
    eval("sub V4L2_DETECT_MD_MODE_GLOBAL () { 1; }") unless defined(&V4L2_DETECT_MD_MODE_GLOBAL);
    eval("sub V4L2_DETECT_MD_MODE_THRESHOLD_GRID () { 2; }") unless defined(&V4L2_DETECT_MD_MODE_THRESHOLD_GRID);
    eval("sub V4L2_DETECT_MD_MODE_REGION_GRID () { 3; }") unless defined(&V4L2_DETECT_MD_MODE_REGION_GRID);
    eval 'sub V4L2_CID_DETECT_MD_GLOBAL_THRESHOLD () {( &V4L2_CID_DETECT_CLASS_BASE + 2);}' unless defined(&V4L2_CID_DETECT_MD_GLOBAL_THRESHOLD);
    eval 'sub V4L2_CID_DETECT_MD_THRESHOLD_GRID () {( &V4L2_CID_DETECT_CLASS_BASE + 3);}' unless defined(&V4L2_CID_DETECT_MD_THRESHOLD_GRID);
    eval 'sub V4L2_CID_DETECT_MD_REGION_GRID () {( &V4L2_CID_DETECT_CLASS_BASE + 4);}' unless defined(&V4L2_CID_DETECT_MD_REGION_GRID);
    unless(defined(&__user)) {
	eval 'sub __user () {1;}' unless defined(&__user);
    }
    eval 'sub VIDEO_MAX_FRAME () {32;}' unless defined(&VIDEO_MAX_FRAME);
    eval 'sub VIDEO_MAX_PLANES () {8;}' unless defined(&VIDEO_MAX_PLANES);
    eval 'sub v4l2_fourcc {
        my($a, $b, $c, $d) = @_;
	    eval q((( &u_int32_t)($a) | (( &u_int32_t)($b) << 8) | (( &u_int32_t)($c) << 16) | (( &u_int32_t)($d) << 24)));
    }' unless defined(&v4l2_fourcc);
    eval 'sub v4l2_fourcc_be {
        my($a, $b, $c, $d) = @_;
	    eval q(( &v4l2_fourcc($a, $b, $c, $d) | (1<< 31)));
    }' unless defined(&v4l2_fourcc_be);
    eval("sub V4L2_FIELD_ANY () { 0; }") unless defined(&V4L2_FIELD_ANY);
    eval("sub V4L2_FIELD_NONE () { 1; }") unless defined(&V4L2_FIELD_NONE);
    eval("sub V4L2_FIELD_TOP () { 2; }") unless defined(&V4L2_FIELD_TOP);
    eval("sub V4L2_FIELD_BOTTOM () { 3; }") unless defined(&V4L2_FIELD_BOTTOM);
    eval("sub V4L2_FIELD_INTERLACED () { 4; }") unless defined(&V4L2_FIELD_INTERLACED);
    eval("sub V4L2_FIELD_SEQ_TB () { 5; }") unless defined(&V4L2_FIELD_SEQ_TB);
    eval("sub V4L2_FIELD_SEQ_BT () { 6; }") unless defined(&V4L2_FIELD_SEQ_BT);
    eval("sub V4L2_FIELD_ALTERNATE () { 7; }") unless defined(&V4L2_FIELD_ALTERNATE);
    eval("sub V4L2_FIELD_INTERLACED_TB () { 8; }") unless defined(&V4L2_FIELD_INTERLACED_TB);
    eval("sub V4L2_FIELD_INTERLACED_BT () { 9; }") unless defined(&V4L2_FIELD_INTERLACED_BT);
    eval 'sub V4L2_FIELD_HAS_TOP {
        my($field) = @_;
	    eval q((($field) ==  &V4L2_FIELD_TOP || ($field) ==  &V4L2_FIELD_INTERLACED || ($field) ==  &V4L2_FIELD_INTERLACED_TB || ($field) ==  &V4L2_FIELD_INTERLACED_BT || ($field) ==  &V4L2_FIELD_SEQ_TB || ($field) ==  &V4L2_FIELD_SEQ_BT));
    }' unless defined(&V4L2_FIELD_HAS_TOP);
    eval 'sub V4L2_FIELD_HAS_BOTTOM {
        my($field) = @_;
	    eval q((($field) ==  &V4L2_FIELD_BOTTOM || ($field) ==  &V4L2_FIELD_INTERLACED || ($field) ==  &V4L2_FIELD_INTERLACED_TB || ($field) ==  &V4L2_FIELD_INTERLACED_BT || ($field) ==  &V4L2_FIELD_SEQ_TB || ($field) ==  &V4L2_FIELD_SEQ_BT));
    }' unless defined(&V4L2_FIELD_HAS_BOTTOM);
    eval 'sub V4L2_FIELD_HAS_BOTH {
        my($field) = @_;
	    eval q((($field) ==  &V4L2_FIELD_INTERLACED || ($field) ==  &V4L2_FIELD_INTERLACED_TB || ($field) ==  &V4L2_FIELD_INTERLACED_BT || ($field) ==  &V4L2_FIELD_SEQ_TB || ($field) ==  &V4L2_FIELD_SEQ_BT));
    }' unless defined(&V4L2_FIELD_HAS_BOTH);
    eval 'sub V4L2_FIELD_HAS_T_OR_B {
        my($field) = @_;
	    eval q((($field) ==  &V4L2_FIELD_BOTTOM || ($field) ==  &V4L2_FIELD_TOP || ($field) ==  &V4L2_FIELD_ALTERNATE));
    }' unless defined(&V4L2_FIELD_HAS_T_OR_B);
    eval("sub V4L2_BUF_TYPE_VIDEO_CAPTURE () { 1; }") unless defined(&V4L2_BUF_TYPE_VIDEO_CAPTURE);
    eval("sub V4L2_BUF_TYPE_VIDEO_OUTPUT () { 2; }") unless defined(&V4L2_BUF_TYPE_VIDEO_OUTPUT);
    eval("sub V4L2_BUF_TYPE_VIDEO_OVERLAY () { 3; }") unless defined(&V4L2_BUF_TYPE_VIDEO_OVERLAY);
    eval("sub V4L2_BUF_TYPE_VBI_CAPTURE () { 4; }") unless defined(&V4L2_BUF_TYPE_VBI_CAPTURE);
    eval("sub V4L2_BUF_TYPE_VBI_OUTPUT () { 5; }") unless defined(&V4L2_BUF_TYPE_VBI_OUTPUT);
    eval("sub V4L2_BUF_TYPE_SLICED_VBI_CAPTURE () { 6; }") unless defined(&V4L2_BUF_TYPE_SLICED_VBI_CAPTURE);
    eval("sub V4L2_BUF_TYPE_SLICED_VBI_OUTPUT () { 7; }") unless defined(&V4L2_BUF_TYPE_SLICED_VBI_OUTPUT);
    eval("sub V4L2_BUF_TYPE_VIDEO_OUTPUT_OVERLAY () { 8; }") unless defined(&V4L2_BUF_TYPE_VIDEO_OUTPUT_OVERLAY);
    eval("sub V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE () { 9; }") unless defined(&V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE);
    eval("sub V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE () { 10; }") unless defined(&V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE);
    eval("sub V4L2_BUF_TYPE_SDR_CAPTURE () { 11; }") unless defined(&V4L2_BUF_TYPE_SDR_CAPTURE);
    eval("sub V4L2_BUF_TYPE_SDR_OUTPUT () { 12; }") unless defined(&V4L2_BUF_TYPE_SDR_OUTPUT);
    eval("sub V4L2_BUF_TYPE_PRIVATE () { 0x80; }") unless defined(&V4L2_BUF_TYPE_PRIVATE);
    eval 'sub V4L2_TYPE_IS_MULTIPLANAR {
        my($type) = @_;
	    eval q((($type) ==  &V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE || ($type) ==  &V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE));
    }' unless defined(&V4L2_TYPE_IS_MULTIPLANAR);
    eval 'sub V4L2_TYPE_IS_OUTPUT {
        my($type) = @_;
	    eval q((($type) ==  &V4L2_BUF_TYPE_VIDEO_OUTPUT || ($type) ==  &V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE || ($type) ==  &V4L2_BUF_TYPE_VIDEO_OVERLAY || ($type) ==  &V4L2_BUF_TYPE_VIDEO_OUTPUT_OVERLAY || ($type) ==  &V4L2_BUF_TYPE_VBI_OUTPUT || ($type) ==  &V4L2_BUF_TYPE_SLICED_VBI_OUTPUT || ($type) ==  &V4L2_BUF_TYPE_SDR_OUTPUT));
    }' unless defined(&V4L2_TYPE_IS_OUTPUT);
    eval("sub V4L2_TUNER_RADIO () { 1; }") unless defined(&V4L2_TUNER_RADIO);
    eval("sub V4L2_TUNER_ANALOG_TV () { 2; }") unless defined(&V4L2_TUNER_ANALOG_TV);
    eval("sub V4L2_TUNER_DIGITAL_TV () { 3; }") unless defined(&V4L2_TUNER_DIGITAL_TV);
    eval("sub V4L2_TUNER_SDR () { 4; }") unless defined(&V4L2_TUNER_SDR);
    eval("sub V4L2_TUNER_RF () { 5; }") unless defined(&V4L2_TUNER_RF);
    eval 'sub V4L2_TUNER_ADC () { &V4L2_TUNER_SDR;}' unless defined(&V4L2_TUNER_ADC);
    eval("sub V4L2_MEMORY_MMAP () { 1; }") unless defined(&V4L2_MEMORY_MMAP);
    eval("sub V4L2_MEMORY_USERPTR () { 2; }") unless defined(&V4L2_MEMORY_USERPTR);
    eval("sub V4L2_MEMORY_OVERLAY () { 3; }") unless defined(&V4L2_MEMORY_OVERLAY);
    eval("sub V4L2_MEMORY_DMABUF () { 4; }") unless defined(&V4L2_MEMORY_DMABUF);
    eval("sub V4L2_COLORSPACE_DEFAULT () { 0; }") unless defined(&V4L2_COLORSPACE_DEFAULT);
    eval("sub V4L2_COLORSPACE_SMPTE170M () { 1; }") unless defined(&V4L2_COLORSPACE_SMPTE170M);
    eval("sub V4L2_COLORSPACE_SMPTE240M () { 2; }") unless defined(&V4L2_COLORSPACE_SMPTE240M);
    eval("sub V4L2_COLORSPACE_REC709 () { 3; }") unless defined(&V4L2_COLORSPACE_REC709);
    eval("sub V4L2_COLORSPACE_BT878 () { 4; }") unless defined(&V4L2_COLORSPACE_BT878);
    eval("sub V4L2_COLORSPACE_470_SYSTEM_M () { 5; }") unless defined(&V4L2_COLORSPACE_470_SYSTEM_M);
    eval("sub V4L2_COLORSPACE_470_SYSTEM_BG () { 6; }") unless defined(&V4L2_COLORSPACE_470_SYSTEM_BG);
    eval("sub V4L2_COLORSPACE_JPEG () { 7; }") unless defined(&V4L2_COLORSPACE_JPEG);
    eval("sub V4L2_COLORSPACE_SRGB () { 8; }") unless defined(&V4L2_COLORSPACE_SRGB);
    eval("sub V4L2_COLORSPACE_ADOBERGB () { 9; }") unless defined(&V4L2_COLORSPACE_ADOBERGB);
    eval("sub V4L2_COLORSPACE_BT2020 () { 10; }") unless defined(&V4L2_COLORSPACE_BT2020);
    eval("sub V4L2_COLORSPACE_RAW () { 11; }") unless defined(&V4L2_COLORSPACE_RAW);
    eval("sub V4L2_COLORSPACE_DCI_P3 () { 12; }") unless defined(&V4L2_COLORSPACE_DCI_P3);
    eval 'sub V4L2_MAP_COLORSPACE_DEFAULT {
        my($is_sdtv, $is_hdtv) = @_;
	    eval q((($is_sdtv) ?  &V4L2_COLORSPACE_SMPTE170M : (($is_hdtv) ?  &V4L2_COLORSPACE_REC709 :  &V4L2_COLORSPACE_SRGB)));
    }' unless defined(&V4L2_MAP_COLORSPACE_DEFAULT);
    eval("sub V4L2_XFER_FUNC_DEFAULT () { 0; }") unless defined(&V4L2_XFER_FUNC_DEFAULT);
    eval("sub V4L2_XFER_FUNC_709 () { 1; }") unless defined(&V4L2_XFER_FUNC_709);
    eval("sub V4L2_XFER_FUNC_SRGB () { 2; }") unless defined(&V4L2_XFER_FUNC_SRGB);
    eval("sub V4L2_XFER_FUNC_ADOBERGB () { 3; }") unless defined(&V4L2_XFER_FUNC_ADOBERGB);
    eval("sub V4L2_XFER_FUNC_SMPTE240M () { 4; }") unless defined(&V4L2_XFER_FUNC_SMPTE240M);
    eval("sub V4L2_XFER_FUNC_NONE () { 5; }") unless defined(&V4L2_XFER_FUNC_NONE);
    eval("sub V4L2_XFER_FUNC_DCI_P3 () { 6; }") unless defined(&V4L2_XFER_FUNC_DCI_P3);
    eval("sub V4L2_XFER_FUNC_SMPTE2084 () { 7; }") unless defined(&V4L2_XFER_FUNC_SMPTE2084);
    eval 'sub V4L2_MAP_XFER_FUNC_DEFAULT {
        my($colsp) = @_;
	    eval q((($colsp) ==  &V4L2_COLORSPACE_ADOBERGB ?  &V4L2_XFER_FUNC_ADOBERGB : (($colsp) ==  &V4L2_COLORSPACE_SMPTE240M ?  &V4L2_XFER_FUNC_SMPTE240M : (($colsp) ==  &V4L2_COLORSPACE_DCI_P3 ?  &V4L2_XFER_FUNC_DCI_P3 : (($colsp) ==  &V4L2_COLORSPACE_RAW ?  &V4L2_XFER_FUNC_NONE : (($colsp) ==  &V4L2_COLORSPACE_SRGB || ($colsp) ==  &V4L2_COLORSPACE_JPEG ?  &V4L2_XFER_FUNC_SRGB :  &V4L2_XFER_FUNC_709))))));
    }' unless defined(&V4L2_MAP_XFER_FUNC_DEFAULT);
    eval("sub V4L2_YCBCR_ENC_DEFAULT () { 0; }") unless defined(&V4L2_YCBCR_ENC_DEFAULT);
    eval("sub V4L2_YCBCR_ENC_601 () { 1; }") unless defined(&V4L2_YCBCR_ENC_601);
    eval("sub V4L2_YCBCR_ENC_709 () { 2; }") unless defined(&V4L2_YCBCR_ENC_709);
    eval("sub V4L2_YCBCR_ENC_XV601 () { 3; }") unless defined(&V4L2_YCBCR_ENC_XV601);
    eval("sub V4L2_YCBCR_ENC_XV709 () { 4; }") unless defined(&V4L2_YCBCR_ENC_XV709);
    eval("sub V4L2_YCBCR_ENC_BT2020 () { 6; }") unless defined(&V4L2_YCBCR_ENC_BT2020);
    eval("sub V4L2_YCBCR_ENC_BT2020_CONST_LUM () { 7; }") unless defined(&V4L2_YCBCR_ENC_BT2020_CONST_LUM);
    eval("sub V4L2_YCBCR_ENC_SMPTE240M () { 8; }") unless defined(&V4L2_YCBCR_ENC_SMPTE240M);
    eval("sub V4L2_HSV_ENC_180 () { 128; }") unless defined(&V4L2_HSV_ENC_180);
    eval("sub V4L2_HSV_ENC_256 () { 129; }") unless defined(&V4L2_HSV_ENC_256);
    eval 'sub V4L2_MAP_YCBCR_ENC_DEFAULT {
        my($colsp) = @_;
	    eval q(((($colsp) ==  &V4L2_COLORSPACE_REC709 || ($colsp) ==  &V4L2_COLORSPACE_DCI_P3) ?  &V4L2_YCBCR_ENC_709 : (($colsp) ==  &V4L2_COLORSPACE_BT2020 ?  &V4L2_YCBCR_ENC_BT2020 : (($colsp) ==  &V4L2_COLORSPACE_SMPTE240M ?  &V4L2_YCBCR_ENC_SMPTE240M :  &V4L2_YCBCR_ENC_601))));
    }' unless defined(&V4L2_MAP_YCBCR_ENC_DEFAULT);
    eval("sub V4L2_QUANTIZATION_DEFAULT () { 0; }") unless defined(&V4L2_QUANTIZATION_DEFAULT);
    eval("sub V4L2_QUANTIZATION_FULL_RANGE () { 1; }") unless defined(&V4L2_QUANTIZATION_FULL_RANGE);
    eval("sub V4L2_QUANTIZATION_LIM_RANGE () { 2; }") unless defined(&V4L2_QUANTIZATION_LIM_RANGE);
    eval 'sub V4L2_MAP_QUANTIZATION_DEFAULT {
        my($is_rgb_or_hsv, $colsp, $ycbcr_enc) = @_;
	    eval q(((($is_rgb_or_hsv)  && ($colsp) ==  &V4L2_COLORSPACE_BT2020) ?  &V4L2_QUANTIZATION_LIM_RANGE : ((($is_rgb_or_hsv) || ($ycbcr_enc) ==  &V4L2_YCBCR_ENC_XV601 || ($ycbcr_enc) ==  &V4L2_YCBCR_ENC_XV709 || ($colsp) ==  &V4L2_COLORSPACE_JPEG) || ($colsp) ==  &V4L2_COLORSPACE_ADOBERGB || ($colsp) ==  &V4L2_COLORSPACE_SRGB ?  &V4L2_QUANTIZATION_FULL_RANGE :  &V4L2_QUANTIZATION_LIM_RANGE)));
    }' unless defined(&V4L2_MAP_QUANTIZATION_DEFAULT);
    eval("sub V4L2_PRIORITY_UNSET () { 0; }") unless defined(&V4L2_PRIORITY_UNSET);
    eval("sub V4L2_PRIORITY_BACKGROUND () { 1; }") unless defined(&V4L2_PRIORITY_BACKGROUND);
    eval("sub V4L2_PRIORITY_INTERACTIVE () { 2; }") unless defined(&V4L2_PRIORITY_INTERACTIVE);
    eval("sub V4L2_PRIORITY_RECORD () { 3; }") unless defined(&V4L2_PRIORITY_RECORD);
    eval("sub V4L2_PRIORITY_DEFAULT () { V4L2_PRIORITY_INTERACTIVE; }") unless defined(&V4L2_PRIORITY_DEFAULT);
    eval 'sub V4L2_CAP_VIDEO_CAPTURE () {0x1;}' unless defined(&V4L2_CAP_VIDEO_CAPTURE);
    eval 'sub V4L2_CAP_VIDEO_OUTPUT () {0x2;}' unless defined(&V4L2_CAP_VIDEO_OUTPUT);
    eval 'sub V4L2_CAP_VIDEO_OVERLAY () {0x4;}' unless defined(&V4L2_CAP_VIDEO_OVERLAY);
    eval 'sub V4L2_CAP_VBI_CAPTURE () {0x10;}' unless defined(&V4L2_CAP_VBI_CAPTURE);
    eval 'sub V4L2_CAP_VBI_OUTPUT () {0x20;}' unless defined(&V4L2_CAP_VBI_OUTPUT);
    eval 'sub V4L2_CAP_SLICED_VBI_CAPTURE () {0x40;}' unless defined(&V4L2_CAP_SLICED_VBI_CAPTURE);
    eval 'sub V4L2_CAP_SLICED_VBI_OUTPUT () {0x80;}' unless defined(&V4L2_CAP_SLICED_VBI_OUTPUT);
    eval 'sub V4L2_CAP_RDS_CAPTURE () {0x100;}' unless defined(&V4L2_CAP_RDS_CAPTURE);
    eval 'sub V4L2_CAP_VIDEO_OUTPUT_OVERLAY () {0x200;}' unless defined(&V4L2_CAP_VIDEO_OUTPUT_OVERLAY);
    eval 'sub V4L2_CAP_HW_FREQ_SEEK () {0x400;}' unless defined(&V4L2_CAP_HW_FREQ_SEEK);
    eval 'sub V4L2_CAP_RDS_OUTPUT () {0x800;}' unless defined(&V4L2_CAP_RDS_OUTPUT);
    eval 'sub V4L2_CAP_VIDEO_CAPTURE_MPLANE () {0x1000;}' unless defined(&V4L2_CAP_VIDEO_CAPTURE_MPLANE);
    eval 'sub V4L2_CAP_VIDEO_OUTPUT_MPLANE () {0x2000;}' unless defined(&V4L2_CAP_VIDEO_OUTPUT_MPLANE);
    eval 'sub V4L2_CAP_VIDEO_M2M_MPLANE () {0x4000;}' unless defined(&V4L2_CAP_VIDEO_M2M_MPLANE);
    eval 'sub V4L2_CAP_VIDEO_M2M () {0x8000;}' unless defined(&V4L2_CAP_VIDEO_M2M);
    eval 'sub V4L2_CAP_TUNER () {0x10000;}' unless defined(&V4L2_CAP_TUNER);
    eval 'sub V4L2_CAP_AUDIO () {0x20000;}' unless defined(&V4L2_CAP_AUDIO);
    eval 'sub V4L2_CAP_RADIO () {0x40000;}' unless defined(&V4L2_CAP_RADIO);
    eval 'sub V4L2_CAP_MODULATOR () {0x80000;}' unless defined(&V4L2_CAP_MODULATOR);
    eval 'sub V4L2_CAP_SDR_CAPTURE () {0x100000;}' unless defined(&V4L2_CAP_SDR_CAPTURE);
    eval 'sub V4L2_CAP_EXT_PIX_FORMAT () {0x200000;}' unless defined(&V4L2_CAP_EXT_PIX_FORMAT);
    eval 'sub V4L2_CAP_SDR_OUTPUT () {0x400000;}' unless defined(&V4L2_CAP_SDR_OUTPUT);
    eval 'sub V4L2_CAP_READWRITE () {0x1000000;}' unless defined(&V4L2_CAP_READWRITE);
    eval 'sub V4L2_CAP_ASYNCIO () {0x2000000;}' unless defined(&V4L2_CAP_ASYNCIO);
    eval 'sub V4L2_CAP_STREAMING () {0x4000000;}' unless defined(&V4L2_CAP_STREAMING);
    eval 'sub V4L2_CAP_TOUCH () {0x10000000;}' unless defined(&V4L2_CAP_TOUCH);
    eval 'sub V4L2_CAP_DEVICE_CAPS () {0x80000000;}' unless defined(&V4L2_CAP_DEVICE_CAPS);
    eval 'sub V4L2_CAP_BITMASK () {"\\20\\1VIDEO_CAPTURE\\2VIDEO_OUTPUT\\3VIDEO_OVERLAY" "\\5VBI_CAPTURE\\6VBI_OUTPUT\\10RDS_CAPTURE" "\\21TUNER\\22AUDIO\\31READWRITE" "\\32ASYNCIO\\33STREAMING\\35TOUCH";}' unless defined(&V4L2_CAP_BITMASK);
    eval 'sub V4L2_PIX_FMT_RGB332 () { &v4l2_fourcc(ord(\'R\', \'G\', \'B\', \'1\'));}' unless defined(&V4L2_PIX_FMT_RGB332);
    eval 'sub V4L2_PIX_FMT_RGB444 () { &v4l2_fourcc(ord(\'R\', \'4\', \'4\', \'4\'));}' unless defined(&V4L2_PIX_FMT_RGB444);
    eval 'sub V4L2_PIX_FMT_ARGB444 () { &v4l2_fourcc(ord(\'A\', \'R\', \'1\', \'2\'));}' unless defined(&V4L2_PIX_FMT_ARGB444);
    eval 'sub V4L2_PIX_FMT_XRGB444 () { &v4l2_fourcc(ord(\'X\', \'R\', \'1\', \'2\'));}' unless defined(&V4L2_PIX_FMT_XRGB444);
    eval 'sub V4L2_PIX_FMT_RGB555 () { &v4l2_fourcc(ord(\'R\', \'G\', \'B\', \'O\'));}' unless defined(&V4L2_PIX_FMT_RGB555);
    eval 'sub V4L2_PIX_FMT_ARGB555 () { &v4l2_fourcc(ord(\'A\', \'R\', \'1\', \'5\'));}' unless defined(&V4L2_PIX_FMT_ARGB555);
    eval 'sub V4L2_PIX_FMT_XRGB555 () { &v4l2_fourcc(ord(\'X\', \'R\', \'1\', \'5\'));}' unless defined(&V4L2_PIX_FMT_XRGB555);
    eval 'sub V4L2_PIX_FMT_RGB565 () { &v4l2_fourcc(ord(\'R\', \'G\', \'B\', \'P\'));}' unless defined(&V4L2_PIX_FMT_RGB565);
    eval 'sub V4L2_PIX_FMT_RGB555X () { &v4l2_fourcc(ord(\'R\', \'G\', \'B\', \'Q\'));}' unless defined(&V4L2_PIX_FMT_RGB555X);
    eval 'sub V4L2_PIX_FMT_ARGB555X () { &v4l2_fourcc_be(ord(\'A\', \'R\', \'1\', \'5\'));}' unless defined(&V4L2_PIX_FMT_ARGB555X);
    eval 'sub V4L2_PIX_FMT_XRGB555X () { &v4l2_fourcc_be(ord(\'X\', \'R\', \'1\', \'5\'));}' unless defined(&V4L2_PIX_FMT_XRGB555X);
    eval 'sub V4L2_PIX_FMT_RGB565X () { &v4l2_fourcc(ord(\'R\', \'G\', \'B\', \'R\'));}' unless defined(&V4L2_PIX_FMT_RGB565X);
    eval 'sub V4L2_PIX_FMT_BGR666 () { &v4l2_fourcc(ord(\'B\', \'G\', \'R\', \'H\'));}' unless defined(&V4L2_PIX_FMT_BGR666);
    eval 'sub V4L2_PIX_FMT_BGR24 () { &v4l2_fourcc(ord(\'B\', \'G\', \'R\', \'3\'));}' unless defined(&V4L2_PIX_FMT_BGR24);
    eval 'sub V4L2_PIX_FMT_RGB24 () { &v4l2_fourcc(ord(\'R\', \'G\', \'B\', \'3\'));}' unless defined(&V4L2_PIX_FMT_RGB24);
    eval 'sub V4L2_PIX_FMT_BGR32 () { &v4l2_fourcc(ord(\'B\', \'G\', \'R\', \'4\'));}' unless defined(&V4L2_PIX_FMT_BGR32);
    eval 'sub V4L2_PIX_FMT_ABGR32 () { &v4l2_fourcc(ord(\'A\', \'R\', \'2\', \'4\'));}' unless defined(&V4L2_PIX_FMT_ABGR32);
    eval 'sub V4L2_PIX_FMT_XBGR32 () { &v4l2_fourcc(ord(\'X\', \'R\', \'2\', \'4\'));}' unless defined(&V4L2_PIX_FMT_XBGR32);
    eval 'sub V4L2_PIX_FMT_RGB32 () { &v4l2_fourcc(ord(\'R\', \'G\', \'B\', \'4\'));}' unless defined(&V4L2_PIX_FMT_RGB32);
    eval 'sub V4L2_PIX_FMT_ARGB32 () { &v4l2_fourcc(ord(\'B\', \'A\', \'2\', \'4\'));}' unless defined(&V4L2_PIX_FMT_ARGB32);
    eval 'sub V4L2_PIX_FMT_XRGB32 () { &v4l2_fourcc(ord(\'B\', \'X\', \'2\', \'4\'));}' unless defined(&V4L2_PIX_FMT_XRGB32);
    eval 'sub V4L2_PIX_FMT_GREY () { &v4l2_fourcc(ord(\'G\', \'R\', \'E\', \'Y\'));}' unless defined(&V4L2_PIX_FMT_GREY);
    eval 'sub V4L2_PIX_FMT_Y4 () { &v4l2_fourcc(ord(\'Y\', \'0\', \'4\', \' \'));}' unless defined(&V4L2_PIX_FMT_Y4);
    eval 'sub V4L2_PIX_FMT_Y6 () { &v4l2_fourcc(ord(\'Y\', \'0\', \'6\', \' \'));}' unless defined(&V4L2_PIX_FMT_Y6);
    eval 'sub V4L2_PIX_FMT_Y10 () { &v4l2_fourcc(ord(\'Y\', \'1\', \'0\', \' \'));}' unless defined(&V4L2_PIX_FMT_Y10);
    eval 'sub V4L2_PIX_FMT_Y12 () { &v4l2_fourcc(ord(\'Y\', \'1\', \'2\', \' \'));}' unless defined(&V4L2_PIX_FMT_Y12);
    eval 'sub V4L2_PIX_FMT_Y16 () { &v4l2_fourcc(ord(\'Y\', \'1\', \'6\', \' \'));}' unless defined(&V4L2_PIX_FMT_Y16);
    eval 'sub V4L2_PIX_FMT_Y16_BE () { &v4l2_fourcc_be(ord(\'Y\', \'1\', \'6\', \' \'));}' unless defined(&V4L2_PIX_FMT_Y16_BE);
    eval 'sub V4L2_PIX_FMT_Y10BPACK () { &v4l2_fourcc(ord(\'Y\', \'1\', \'0\', \'B\'));}' unless defined(&V4L2_PIX_FMT_Y10BPACK);
    eval 'sub V4L2_PIX_FMT_PAL8 () { &v4l2_fourcc(ord(\'P\', \'A\', \'L\', \'8\'));}' unless defined(&V4L2_PIX_FMT_PAL8);
    eval 'sub V4L2_PIX_FMT_UV8 () { &v4l2_fourcc(ord(\'U\', \'V\', \'8\', \' \'));}' unless defined(&V4L2_PIX_FMT_UV8);
    eval 'sub V4L2_PIX_FMT_YUYV () { &v4l2_fourcc(ord(\'Y\', \'U\', \'Y\', \'V\'));}' unless defined(&V4L2_PIX_FMT_YUYV);
    eval 'sub V4L2_PIX_FMT_YYUV () { &v4l2_fourcc(ord(\'Y\', \'Y\', \'U\', \'V\'));}' unless defined(&V4L2_PIX_FMT_YYUV);
    eval 'sub V4L2_PIX_FMT_YVYU () { &v4l2_fourcc(ord(\'Y\', \'V\', \'Y\', \'U\'));}' unless defined(&V4L2_PIX_FMT_YVYU);
    eval 'sub V4L2_PIX_FMT_UYVY () { &v4l2_fourcc(ord(\'U\', \'Y\', \'V\', \'Y\'));}' unless defined(&V4L2_PIX_FMT_UYVY);
    eval 'sub V4L2_PIX_FMT_VYUY () { &v4l2_fourcc(ord(\'V\', \'Y\', \'U\', \'Y\'));}' unless defined(&V4L2_PIX_FMT_VYUY);
    eval 'sub V4L2_PIX_FMT_Y41P () { &v4l2_fourcc(ord(\'Y\', \'4\', \'1\', \'P\'));}' unless defined(&V4L2_PIX_FMT_Y41P);
    eval 'sub V4L2_PIX_FMT_YUV444 () { &v4l2_fourcc(ord(\'Y\', \'4\', \'4\', \'4\'));}' unless defined(&V4L2_PIX_FMT_YUV444);
    eval 'sub V4L2_PIX_FMT_YUV555 () { &v4l2_fourcc(ord(\'Y\', \'U\', \'V\', \'O\'));}' unless defined(&V4L2_PIX_FMT_YUV555);
    eval 'sub V4L2_PIX_FMT_YUV565 () { &v4l2_fourcc(ord(\'Y\', \'U\', \'V\', \'P\'));}' unless defined(&V4L2_PIX_FMT_YUV565);
    eval 'sub V4L2_PIX_FMT_YUV32 () { &v4l2_fourcc(ord(\'Y\', \'U\', \'V\', \'4\'));}' unless defined(&V4L2_PIX_FMT_YUV32);
    eval 'sub V4L2_PIX_FMT_HI240 () { &v4l2_fourcc(ord(\'H\', \'I\', \'2\', \'4\'));}' unless defined(&V4L2_PIX_FMT_HI240);
    eval 'sub V4L2_PIX_FMT_HM12 () { &v4l2_fourcc(ord(\'H\', \'M\', \'1\', \'2\'));}' unless defined(&V4L2_PIX_FMT_HM12);
    eval 'sub V4L2_PIX_FMT_M420 () { &v4l2_fourcc(ord(\'M\', \'4\', \'2\', \'0\'));}' unless defined(&V4L2_PIX_FMT_M420);
    eval 'sub V4L2_PIX_FMT_NV12 () { &v4l2_fourcc(ord(\'N\', \'V\', \'1\', \'2\'));}' unless defined(&V4L2_PIX_FMT_NV12);
    eval 'sub V4L2_PIX_FMT_NV21 () { &v4l2_fourcc(ord(\'N\', \'V\', \'2\', \'1\'));}' unless defined(&V4L2_PIX_FMT_NV21);
    eval 'sub V4L2_PIX_FMT_NV16 () { &v4l2_fourcc(ord(\'N\', \'V\', \'1\', \'6\'));}' unless defined(&V4L2_PIX_FMT_NV16);
    eval 'sub V4L2_PIX_FMT_NV61 () { &v4l2_fourcc(ord(\'N\', \'V\', \'6\', \'1\'));}' unless defined(&V4L2_PIX_FMT_NV61);
    eval 'sub V4L2_PIX_FMT_NV24 () { &v4l2_fourcc(ord(\'N\', \'V\', \'2\', \'4\'));}' unless defined(&V4L2_PIX_FMT_NV24);
    eval 'sub V4L2_PIX_FMT_NV42 () { &v4l2_fourcc(ord(\'N\', \'V\', \'4\', \'2\'));}' unless defined(&V4L2_PIX_FMT_NV42);
    eval 'sub V4L2_PIX_FMT_NV12M () { &v4l2_fourcc(ord(\'N\', \'M\', \'1\', \'2\'));}' unless defined(&V4L2_PIX_FMT_NV12M);
    eval 'sub V4L2_PIX_FMT_NV21M () { &v4l2_fourcc(ord(\'N\', \'M\', \'2\', \'1\'));}' unless defined(&V4L2_PIX_FMT_NV21M);
    eval 'sub V4L2_PIX_FMT_NV16M () { &v4l2_fourcc(ord(\'N\', \'M\', \'1\', \'6\'));}' unless defined(&V4L2_PIX_FMT_NV16M);
    eval 'sub V4L2_PIX_FMT_NV61M () { &v4l2_fourcc(ord(\'N\', \'M\', \'6\', \'1\'));}' unless defined(&V4L2_PIX_FMT_NV61M);
    eval 'sub V4L2_PIX_FMT_NV12MT () { &v4l2_fourcc(ord(\'T\', \'M\', \'1\', \'2\'));}' unless defined(&V4L2_PIX_FMT_NV12MT);
    eval 'sub V4L2_PIX_FMT_NV12MT_16X16 () { &v4l2_fourcc(ord(\'V\', \'M\', \'1\', \'2\'));}' unless defined(&V4L2_PIX_FMT_NV12MT_16X16);
    eval 'sub V4L2_PIX_FMT_YUV410 () { &v4l2_fourcc(ord(\'Y\', \'U\', \'V\', \'9\'));}' unless defined(&V4L2_PIX_FMT_YUV410);
    eval 'sub V4L2_PIX_FMT_YVU410 () { &v4l2_fourcc(ord(\'Y\', \'V\', \'U\', \'9\'));}' unless defined(&V4L2_PIX_FMT_YVU410);
    eval 'sub V4L2_PIX_FMT_YUV411P () { &v4l2_fourcc(ord(\'4\', \'1\', \'1\', \'P\'));}' unless defined(&V4L2_PIX_FMT_YUV411P);
    eval 'sub V4L2_PIX_FMT_YUV420 () { &v4l2_fourcc(ord(\'Y\', \'U\', \'1\', \'2\'));}' unless defined(&V4L2_PIX_FMT_YUV420);
    eval 'sub V4L2_PIX_FMT_YVU420 () { &v4l2_fourcc(ord(\'Y\', \'V\', \'1\', \'2\'));}' unless defined(&V4L2_PIX_FMT_YVU420);
    eval 'sub V4L2_PIX_FMT_YUV422P () { &v4l2_fourcc(ord(\'4\', \'2\', \'2\', \'P\'));}' unless defined(&V4L2_PIX_FMT_YUV422P);
    eval 'sub V4L2_PIX_FMT_YUV420M () { &v4l2_fourcc(ord(\'Y\', \'M\', \'1\', \'2\'));}' unless defined(&V4L2_PIX_FMT_YUV420M);
    eval 'sub V4L2_PIX_FMT_YVU420M () { &v4l2_fourcc(ord(\'Y\', \'M\', \'2\', \'1\'));}' unless defined(&V4L2_PIX_FMT_YVU420M);
    eval 'sub V4L2_PIX_FMT_YUV422M () { &v4l2_fourcc(ord(\'Y\', \'M\', \'1\', \'6\'));}' unless defined(&V4L2_PIX_FMT_YUV422M);
    eval 'sub V4L2_PIX_FMT_YVU422M () { &v4l2_fourcc(ord(\'Y\', \'M\', \'6\', \'1\'));}' unless defined(&V4L2_PIX_FMT_YVU422M);
    eval 'sub V4L2_PIX_FMT_YUV444M () { &v4l2_fourcc(ord(\'Y\', \'M\', \'2\', \'4\'));}' unless defined(&V4L2_PIX_FMT_YUV444M);
    eval 'sub V4L2_PIX_FMT_YVU444M () { &v4l2_fourcc(ord(\'Y\', \'M\', \'4\', \'2\'));}' unless defined(&V4L2_PIX_FMT_YVU444M);
    eval 'sub V4L2_PIX_FMT_SBGGR8 () { &v4l2_fourcc(ord(\'B\', \'A\', \'8\', \'1\'));}' unless defined(&V4L2_PIX_FMT_SBGGR8);
    eval 'sub V4L2_PIX_FMT_SGBRG8 () { &v4l2_fourcc(ord(\'G\', \'B\', \'R\', \'G\'));}' unless defined(&V4L2_PIX_FMT_SGBRG8);
    eval 'sub V4L2_PIX_FMT_SGRBG8 () { &v4l2_fourcc(ord(\'G\', \'R\', \'B\', \'G\'));}' unless defined(&V4L2_PIX_FMT_SGRBG8);
    eval 'sub V4L2_PIX_FMT_SRGGB8 () { &v4l2_fourcc(ord(\'R\', \'G\', \'G\', \'B\'));}' unless defined(&V4L2_PIX_FMT_SRGGB8);
    eval 'sub V4L2_PIX_FMT_SBGGR10 () { &v4l2_fourcc(ord(\'B\', \'G\', \'1\', \'0\'));}' unless defined(&V4L2_PIX_FMT_SBGGR10);
    eval 'sub V4L2_PIX_FMT_SGBRG10 () { &v4l2_fourcc(ord(\'G\', \'B\', \'1\', \'0\'));}' unless defined(&V4L2_PIX_FMT_SGBRG10);
    eval 'sub V4L2_PIX_FMT_SGRBG10 () { &v4l2_fourcc(ord(\'B\', \'A\', \'1\', \'0\'));}' unless defined(&V4L2_PIX_FMT_SGRBG10);
    eval 'sub V4L2_PIX_FMT_SRGGB10 () { &v4l2_fourcc(ord(\'R\', \'G\', \'1\', \'0\'));}' unless defined(&V4L2_PIX_FMT_SRGGB10);
    eval 'sub V4L2_PIX_FMT_SBGGR10P () { &v4l2_fourcc(ord(\'p\', \'B\', \'A\', \'A\'));}' unless defined(&V4L2_PIX_FMT_SBGGR10P);
    eval 'sub V4L2_PIX_FMT_SGBRG10P () { &v4l2_fourcc(ord(\'p\', \'G\', \'A\', \'A\'));}' unless defined(&V4L2_PIX_FMT_SGBRG10P);
    eval 'sub V4L2_PIX_FMT_SGRBG10P () { &v4l2_fourcc(ord(\'p\', \'g\', \'A\', \'A\'));}' unless defined(&V4L2_PIX_FMT_SGRBG10P);
    eval 'sub V4L2_PIX_FMT_SRGGB10P () { &v4l2_fourcc(ord(\'p\', \'R\', \'A\', \'A\'));}' unless defined(&V4L2_PIX_FMT_SRGGB10P);
    eval 'sub V4L2_PIX_FMT_SBGGR10ALAW8 () { &v4l2_fourcc(ord(\'a\', \'B\', \'A\', \'8\'));}' unless defined(&V4L2_PIX_FMT_SBGGR10ALAW8);
    eval 'sub V4L2_PIX_FMT_SGBRG10ALAW8 () { &v4l2_fourcc(ord(\'a\', \'G\', \'A\', \'8\'));}' unless defined(&V4L2_PIX_FMT_SGBRG10ALAW8);
    eval 'sub V4L2_PIX_FMT_SGRBG10ALAW8 () { &v4l2_fourcc(ord(\'a\', \'g\', \'A\', \'8\'));}' unless defined(&V4L2_PIX_FMT_SGRBG10ALAW8);
    eval 'sub V4L2_PIX_FMT_SRGGB10ALAW8 () { &v4l2_fourcc(ord(\'a\', \'R\', \'A\', \'8\'));}' unless defined(&V4L2_PIX_FMT_SRGGB10ALAW8);
    eval 'sub V4L2_PIX_FMT_SBGGR10DPCM8 () { &v4l2_fourcc(ord(\'b\', \'B\', \'A\', \'8\'));}' unless defined(&V4L2_PIX_FMT_SBGGR10DPCM8);
    eval 'sub V4L2_PIX_FMT_SGBRG10DPCM8 () { &v4l2_fourcc(ord(\'b\', \'G\', \'A\', \'8\'));}' unless defined(&V4L2_PIX_FMT_SGBRG10DPCM8);
    eval 'sub V4L2_PIX_FMT_SGRBG10DPCM8 () { &v4l2_fourcc(ord(\'B\', \'D\', \'1\', \'0\'));}' unless defined(&V4L2_PIX_FMT_SGRBG10DPCM8);
    eval 'sub V4L2_PIX_FMT_SRGGB10DPCM8 () { &v4l2_fourcc(ord(\'b\', \'R\', \'A\', \'8\'));}' unless defined(&V4L2_PIX_FMT_SRGGB10DPCM8);
    eval 'sub V4L2_PIX_FMT_SBGGR12 () { &v4l2_fourcc(ord(\'B\', \'G\', \'1\', \'2\'));}' unless defined(&V4L2_PIX_FMT_SBGGR12);
    eval 'sub V4L2_PIX_FMT_SGBRG12 () { &v4l2_fourcc(ord(\'G\', \'B\', \'1\', \'2\'));}' unless defined(&V4L2_PIX_FMT_SGBRG12);
    eval 'sub V4L2_PIX_FMT_SGRBG12 () { &v4l2_fourcc(ord(\'B\', \'A\', \'1\', \'2\'));}' unless defined(&V4L2_PIX_FMT_SGRBG12);
    eval 'sub V4L2_PIX_FMT_SRGGB12 () { &v4l2_fourcc(ord(\'R\', \'G\', \'1\', \'2\'));}' unless defined(&V4L2_PIX_FMT_SRGGB12);
    eval 'sub V4L2_PIX_FMT_SBGGR16 () { &v4l2_fourcc(ord(\'B\', \'Y\', \'R\', \'2\'));}' unless defined(&V4L2_PIX_FMT_SBGGR16);
    eval 'sub V4L2_PIX_FMT_SGBRG16 () { &v4l2_fourcc(ord(\'G\', \'B\', \'1\', \'6\'));}' unless defined(&V4L2_PIX_FMT_SGBRG16);
    eval 'sub V4L2_PIX_FMT_SGRBG16 () { &v4l2_fourcc(ord(\'G\', \'R\', \'1\', \'6\'));}' unless defined(&V4L2_PIX_FMT_SGRBG16);
    eval 'sub V4L2_PIX_FMT_SRGGB16 () { &v4l2_fourcc(ord(\'R\', \'G\', \'1\', \'6\'));}' unless defined(&V4L2_PIX_FMT_SRGGB16);
    eval 'sub V4L2_PIX_FMT_HSV24 () { &v4l2_fourcc(ord(\'H\', \'S\', \'V\', \'3\'));}' unless defined(&V4L2_PIX_FMT_HSV24);
    eval 'sub V4L2_PIX_FMT_HSV32 () { &v4l2_fourcc(ord(\'H\', \'S\', \'V\', \'4\'));}' unless defined(&V4L2_PIX_FMT_HSV32);
    eval 'sub V4L2_PIX_FMT_MJPEG () { &v4l2_fourcc(ord(\'M\', \'J\', \'P\', \'G\'));}' unless defined(&V4L2_PIX_FMT_MJPEG);
    eval 'sub V4L2_PIX_FMT_JPEG () { &v4l2_fourcc(ord(\'J\', \'P\', \'E\', \'G\'));}' unless defined(&V4L2_PIX_FMT_JPEG);
    eval 'sub V4L2_PIX_FMT_DV () { &v4l2_fourcc(ord(\'d\', \'v\', \'s\', \'d\'));}' unless defined(&V4L2_PIX_FMT_DV);
    eval 'sub V4L2_PIX_FMT_MPEG () { &v4l2_fourcc(ord(\'M\', \'P\', \'E\', \'G\'));}' unless defined(&V4L2_PIX_FMT_MPEG);
    eval 'sub V4L2_PIX_FMT_H264 () { &v4l2_fourcc(ord(\'H\', \'2\', \'6\', \'4\'));}' unless defined(&V4L2_PIX_FMT_H264);
    eval 'sub V4L2_PIX_FMT_H264_NO_SC () { &v4l2_fourcc(ord(\'A\', \'V\', \'C\', \'1\'));}' unless defined(&V4L2_PIX_FMT_H264_NO_SC);
    eval 'sub V4L2_PIX_FMT_H264_MVC () { &v4l2_fourcc(ord(\'M\', \'2\', \'6\', \'4\'));}' unless defined(&V4L2_PIX_FMT_H264_MVC);
    eval 'sub V4L2_PIX_FMT_H263 () { &v4l2_fourcc(ord(\'H\', \'2\', \'6\', \'3\'));}' unless defined(&V4L2_PIX_FMT_H263);
    eval 'sub V4L2_PIX_FMT_MPEG1 () { &v4l2_fourcc(ord(\'M\', \'P\', \'G\', \'1\'));}' unless defined(&V4L2_PIX_FMT_MPEG1);
    eval 'sub V4L2_PIX_FMT_MPEG2 () { &v4l2_fourcc(ord(\'M\', \'P\', \'G\', \'2\'));}' unless defined(&V4L2_PIX_FMT_MPEG2);
    eval 'sub V4L2_PIX_FMT_MPEG4 () { &v4l2_fourcc(ord(\'M\', \'P\', \'G\', \'4\'));}' unless defined(&V4L2_PIX_FMT_MPEG4);
    eval 'sub V4L2_PIX_FMT_XVID () { &v4l2_fourcc(ord(\'X\', \'V\', \'I\', \'D\'));}' unless defined(&V4L2_PIX_FMT_XVID);
    eval 'sub V4L2_PIX_FMT_VC1_ANNEX_G () { &v4l2_fourcc(ord(\'V\', \'C\', \'1\', \'G\'));}' unless defined(&V4L2_PIX_FMT_VC1_ANNEX_G);
    eval 'sub V4L2_PIX_FMT_VC1_ANNEX_L () { &v4l2_fourcc(ord(\'V\', \'C\', \'1\', \'L\'));}' unless defined(&V4L2_PIX_FMT_VC1_ANNEX_L);
    eval 'sub V4L2_PIX_FMT_VP8 () { &v4l2_fourcc(ord(\'V\', \'P\', \'8\', \'0\'));}' unless defined(&V4L2_PIX_FMT_VP8);
    eval 'sub V4L2_PIX_FMT_VP9 () { &v4l2_fourcc(ord(\'V\', \'P\', \'9\', \'0\'));}' unless defined(&V4L2_PIX_FMT_VP9);
    eval 'sub V4L2_PIX_FMT_CPIA1 () { &v4l2_fourcc(ord(\'C\', \'P\', \'I\', \'A\'));}' unless defined(&V4L2_PIX_FMT_CPIA1);
    eval 'sub V4L2_PIX_FMT_WNVA () { &v4l2_fourcc(ord(\'W\', \'N\', \'V\', \'A\'));}' unless defined(&V4L2_PIX_FMT_WNVA);
    eval 'sub V4L2_PIX_FMT_SN9C10X () { &v4l2_fourcc(ord(\'S\', \'9\', \'1\', \'0\'));}' unless defined(&V4L2_PIX_FMT_SN9C10X);
    eval 'sub V4L2_PIX_FMT_SN9C20X_I420 () { &v4l2_fourcc(ord(\'S\', \'9\', \'2\', \'0\'));}' unless defined(&V4L2_PIX_FMT_SN9C20X_I420);
    eval 'sub V4L2_PIX_FMT_PWC1 () { &v4l2_fourcc(ord(\'P\', \'W\', \'C\', \'1\'));}' unless defined(&V4L2_PIX_FMT_PWC1);
    eval 'sub V4L2_PIX_FMT_PWC2 () { &v4l2_fourcc(ord(\'P\', \'W\', \'C\', \'2\'));}' unless defined(&V4L2_PIX_FMT_PWC2);
    eval 'sub V4L2_PIX_FMT_ET61X251 () { &v4l2_fourcc(ord(\'E\', \'6\', \'2\', \'5\'));}' unless defined(&V4L2_PIX_FMT_ET61X251);
    eval 'sub V4L2_PIX_FMT_SPCA501 () { &v4l2_fourcc(ord(\'S\', \'5\', \'0\', \'1\'));}' unless defined(&V4L2_PIX_FMT_SPCA501);
    eval 'sub V4L2_PIX_FMT_SPCA505 () { &v4l2_fourcc(ord(\'S\', \'5\', \'0\', \'5\'));}' unless defined(&V4L2_PIX_FMT_SPCA505);
    eval 'sub V4L2_PIX_FMT_SPCA508 () { &v4l2_fourcc(ord(\'S\', \'5\', \'0\', \'8\'));}' unless defined(&V4L2_PIX_FMT_SPCA508);
    eval 'sub V4L2_PIX_FMT_SPCA561 () { &v4l2_fourcc(ord(\'S\', \'5\', \'6\', \'1\'));}' unless defined(&V4L2_PIX_FMT_SPCA561);
    eval 'sub V4L2_PIX_FMT_PAC207 () { &v4l2_fourcc(ord(\'P\', \'2\', \'0\', \'7\'));}' unless defined(&V4L2_PIX_FMT_PAC207);
    eval 'sub V4L2_PIX_FMT_MR97310A () { &v4l2_fourcc(ord(\'M\', \'3\', \'1\', \'0\'));}' unless defined(&V4L2_PIX_FMT_MR97310A);
    eval 'sub V4L2_PIX_FMT_JL2005BCD () { &v4l2_fourcc(ord(\'J\', \'L\', \'2\', \'0\'));}' unless defined(&V4L2_PIX_FMT_JL2005BCD);
    eval 'sub V4L2_PIX_FMT_SN9C2028 () { &v4l2_fourcc(ord(\'S\', \'O\', \'N\', \'X\'));}' unless defined(&V4L2_PIX_FMT_SN9C2028);
    eval 'sub V4L2_PIX_FMT_SQ905C () { &v4l2_fourcc(ord(\'9\', \'0\', \'5\', \'C\'));}' unless defined(&V4L2_PIX_FMT_SQ905C);
    eval 'sub V4L2_PIX_FMT_PJPG () { &v4l2_fourcc(ord(\'P\', \'J\', \'P\', \'G\'));}' unless defined(&V4L2_PIX_FMT_PJPG);
    eval 'sub V4L2_PIX_FMT_OV511 () { &v4l2_fourcc(ord(\'O\', \'5\', \'1\', \'1\'));}' unless defined(&V4L2_PIX_FMT_OV511);
    eval 'sub V4L2_PIX_FMT_OV518 () { &v4l2_fourcc(ord(\'O\', \'5\', \'1\', \'8\'));}' unless defined(&V4L2_PIX_FMT_OV518);
    eval 'sub V4L2_PIX_FMT_STV0680 () { &v4l2_fourcc(ord(\'S\', \'6\', \'8\', \'0\'));}' unless defined(&V4L2_PIX_FMT_STV0680);
    eval 'sub V4L2_PIX_FMT_TM6000 () { &v4l2_fourcc(ord(\'T\', \'M\', \'6\', \'0\'));}' unless defined(&V4L2_PIX_FMT_TM6000);
    eval 'sub V4L2_PIX_FMT_CIT_YYVYUY () { &v4l2_fourcc(ord(\'C\', \'I\', \'T\', \'V\'));}' unless defined(&V4L2_PIX_FMT_CIT_YYVYUY);
    eval 'sub V4L2_PIX_FMT_KONICA420 () { &v4l2_fourcc(ord(\'K\', \'O\', \'N\', \'I\'));}' unless defined(&V4L2_PIX_FMT_KONICA420);
    eval 'sub V4L2_PIX_FMT_JPGL () { &v4l2_fourcc(ord(\'J\', \'P\', \'G\', \'L\'));}' unless defined(&V4L2_PIX_FMT_JPGL);
    eval 'sub V4L2_PIX_FMT_SE401 () { &v4l2_fourcc(ord(\'S\', \'4\', \'0\', \'1\'));}' unless defined(&V4L2_PIX_FMT_SE401);
    eval 'sub V4L2_PIX_FMT_S5C_UYVY_JPG () { &v4l2_fourcc(ord(\'S\', \'5\', \'C\', \'I\'));}' unless defined(&V4L2_PIX_FMT_S5C_UYVY_JPG);
    eval 'sub V4L2_PIX_FMT_Y8I () { &v4l2_fourcc(ord(\'Y\', \'8\', \'I\', \' \'));}' unless defined(&V4L2_PIX_FMT_Y8I);
    eval 'sub V4L2_PIX_FMT_Y12I () { &v4l2_fourcc(ord(\'Y\', \'1\', \'2\', \'I\'));}' unless defined(&V4L2_PIX_FMT_Y12I);
    eval 'sub V4L2_PIX_FMT_Z16 () { &v4l2_fourcc(ord(\'Z\', \'1\', \'6\', \' \'));}' unless defined(&V4L2_PIX_FMT_Z16);
    eval 'sub V4L2_PIX_FMT_MT21C () { &v4l2_fourcc(ord(\'M\', \'T\', \'2\', \'1\'));}' unless defined(&V4L2_PIX_FMT_MT21C);
    eval 'sub V4L2_SDR_FMT_CU8 () { &v4l2_fourcc(ord(\'C\', \'U\', \'0\', \'8\'));}' unless defined(&V4L2_SDR_FMT_CU8);
    eval 'sub V4L2_SDR_FMT_CU16LE () { &v4l2_fourcc(ord(\'C\', \'U\', \'1\', \'6\'));}' unless defined(&V4L2_SDR_FMT_CU16LE);
    eval 'sub V4L2_SDR_FMT_CS8 () { &v4l2_fourcc(ord(\'C\', \'S\', \'0\', \'8\'));}' unless defined(&V4L2_SDR_FMT_CS8);
    eval 'sub V4L2_SDR_FMT_CS14LE () { &v4l2_fourcc(ord(\'C\', \'S\', \'1\', \'4\'));}' unless defined(&V4L2_SDR_FMT_CS14LE);
    eval 'sub V4L2_SDR_FMT_RU12LE () { &v4l2_fourcc(ord(\'R\', \'U\', \'1\', \'2\'));}' unless defined(&V4L2_SDR_FMT_RU12LE);
    eval 'sub V4L2_TCH_FMT_DELTA_TD16 () { &v4l2_fourcc(ord(\'T\', \'D\', \'1\', \'6\'));}' unless defined(&V4L2_TCH_FMT_DELTA_TD16);
    eval 'sub V4L2_TCH_FMT_DELTA_TD08 () { &v4l2_fourcc(ord(\'T\', \'D\', \'0\', \'8\'));}' unless defined(&V4L2_TCH_FMT_DELTA_TD08);
    eval 'sub V4L2_TCH_FMT_TU16 () { &v4l2_fourcc(ord(\'T\', \'U\', \'1\', \'6\'));}' unless defined(&V4L2_TCH_FMT_TU16);
    eval 'sub V4L2_TCH_FMT_TU08 () { &v4l2_fourcc(ord(\'T\', \'U\', \'0\', \'8\'));}' unless defined(&V4L2_TCH_FMT_TU08);
    eval 'sub V4L2_PIX_FMT_PRIV_MAGIC () {0xfeedcafe;}' unless defined(&V4L2_PIX_FMT_PRIV_MAGIC);
    eval 'sub V4L2_PIX_FMT_FLAG_PREMUL_ALPHA () {0x1;}' unless defined(&V4L2_PIX_FMT_FLAG_PREMUL_ALPHA);
    eval 'sub V4L2_FMT_FLAG_COMPRESSED () {0x1;}' unless defined(&V4L2_FMT_FLAG_COMPRESSED);
    eval 'sub V4L2_FMT_FLAG_EMULATED () {0x2;}' unless defined(&V4L2_FMT_FLAG_EMULATED);
    eval("sub V4L2_FRMSIZE_TYPE_DISCRETE () { 1; }") unless defined(&V4L2_FRMSIZE_TYPE_DISCRETE);
    eval("sub V4L2_FRMSIZE_TYPE_CONTINUOUS () { 2; }") unless defined(&V4L2_FRMSIZE_TYPE_CONTINUOUS);
    eval("sub V4L2_FRMSIZE_TYPE_STEPWISE () { 3; }") unless defined(&V4L2_FRMSIZE_TYPE_STEPWISE);
    eval("sub V4L2_FRMIVAL_TYPE_DISCRETE () { 1; }") unless defined(&V4L2_FRMIVAL_TYPE_DISCRETE);
    eval("sub V4L2_FRMIVAL_TYPE_CONTINUOUS () { 2; }") unless defined(&V4L2_FRMIVAL_TYPE_CONTINUOUS);
    eval("sub V4L2_FRMIVAL_TYPE_STEPWISE () { 3; }") unless defined(&V4L2_FRMIVAL_TYPE_STEPWISE);
    eval 'sub V4L2_TC_TYPE_24FPS () {1;}' unless defined(&V4L2_TC_TYPE_24FPS);
    eval 'sub V4L2_TC_TYPE_25FPS () {2;}' unless defined(&V4L2_TC_TYPE_25FPS);
    eval 'sub V4L2_TC_TYPE_30FPS () {3;}' unless defined(&V4L2_TC_TYPE_30FPS);
    eval 'sub V4L2_TC_TYPE_50FPS () {4;}' unless defined(&V4L2_TC_TYPE_50FPS);
    eval 'sub V4L2_TC_TYPE_60FPS () {5;}' unless defined(&V4L2_TC_TYPE_60FPS);
    eval 'sub V4L2_TC_FLAG_DROPFRAME () {0x1;}' unless defined(&V4L2_TC_FLAG_DROPFRAME);
    eval 'sub V4L2_TC_FLAG_COLORFRAME () {0x2;}' unless defined(&V4L2_TC_FLAG_COLORFRAME);
    eval 'sub V4L2_TC_USERBITS_field () {0xc;}' unless defined(&V4L2_TC_USERBITS_field);
    eval 'sub V4L2_TC_USERBITS_USERDEFINED () {0x;}' unless defined(&V4L2_TC_USERBITS_USERDEFINED);
    eval 'sub V4L2_TC_USERBITS_8BITCHARS () {0x8;}' unless defined(&V4L2_TC_USERBITS_8BITCHARS);
    eval 'sub V4L2_JPEG_MARKER_DHT () {(1<<3);}' unless defined(&V4L2_JPEG_MARKER_DHT);
    eval 'sub V4L2_JPEG_MARKER_DQT () {(1<<4);}' unless defined(&V4L2_JPEG_MARKER_DQT);
    eval 'sub V4L2_JPEG_MARKER_DRI () {(1<<5);}' unless defined(&V4L2_JPEG_MARKER_DRI);
    eval 'sub V4L2_JPEG_MARKER_COM () {(1<<6);}' unless defined(&V4L2_JPEG_MARKER_COM);
    eval 'sub V4L2_JPEG_MARKER_APP () {(1<<7);}' unless defined(&V4L2_JPEG_MARKER_APP);
    if(defined(&_KERNEL)) {
    }
    eval 'sub V4L2_BUF_FLAG_MAPPED () {0x1;}' unless defined(&V4L2_BUF_FLAG_MAPPED);
    eval 'sub V4L2_BUF_FLAG_QUEUED () {0x2;}' unless defined(&V4L2_BUF_FLAG_QUEUED);
    eval 'sub V4L2_BUF_FLAG_DONE () {0x4;}' unless defined(&V4L2_BUF_FLAG_DONE);
    eval 'sub V4L2_BUF_FLAG_KEYFRAME () {0x8;}' unless defined(&V4L2_BUF_FLAG_KEYFRAME);
    eval 'sub V4L2_BUF_FLAG_PFRAME () {0x10;}' unless defined(&V4L2_BUF_FLAG_PFRAME);
    eval 'sub V4L2_BUF_FLAG_BFRAME () {0x20;}' unless defined(&V4L2_BUF_FLAG_BFRAME);
    eval 'sub V4L2_BUF_FLAG_ERROR () {0x40;}' unless defined(&V4L2_BUF_FLAG_ERROR);
    eval 'sub V4L2_BUF_FLAG_TIMECODE () {0x100;}' unless defined(&V4L2_BUF_FLAG_TIMECODE);
    eval 'sub V4L2_BUF_FLAG_PREPARED () {0x400;}' unless defined(&V4L2_BUF_FLAG_PREPARED);
    eval 'sub V4L2_BUF_FLAG_NO_CACHE_INVALIDATE () {0x800;}' unless defined(&V4L2_BUF_FLAG_NO_CACHE_INVALIDATE);
    eval 'sub V4L2_BUF_FLAG_NO_CACHE_CLEAN () {0x1000;}' unless defined(&V4L2_BUF_FLAG_NO_CACHE_CLEAN);
    eval 'sub V4L2_BUF_FLAG_TIMESTAMP_MASK () {0xe000;}' unless defined(&V4L2_BUF_FLAG_TIMESTAMP_MASK);
    eval 'sub V4L2_BUF_FLAG_TIMESTAMP_UNKNOWN () {0x;}' unless defined(&V4L2_BUF_FLAG_TIMESTAMP_UNKNOWN);
    eval 'sub V4L2_BUF_FLAG_TIMESTAMP_MONOTONIC () {0x2000;}' unless defined(&V4L2_BUF_FLAG_TIMESTAMP_MONOTONIC);
    eval 'sub V4L2_BUF_FLAG_TIMESTAMP_COPY () {0x4000;}' unless defined(&V4L2_BUF_FLAG_TIMESTAMP_COPY);
    eval 'sub V4L2_BUF_FLAG_TSTAMP_SRC_MASK () {0x70000;}' unless defined(&V4L2_BUF_FLAG_TSTAMP_SRC_MASK);
    eval 'sub V4L2_BUF_FLAG_TSTAMP_SRC_EOF () {0x;}' unless defined(&V4L2_BUF_FLAG_TSTAMP_SRC_EOF);
    eval 'sub V4L2_BUF_FLAG_TSTAMP_SRC_SOE () {0x10000;}' unless defined(&V4L2_BUF_FLAG_TSTAMP_SRC_SOE);
    eval 'sub V4L2_BUF_FLAG_LAST () {0x100000;}' unless defined(&V4L2_BUF_FLAG_LAST);
    eval 'sub V4L2_FBUF_CAP_EXTERNOVERLAY () {0x1;}' unless defined(&V4L2_FBUF_CAP_EXTERNOVERLAY);
    eval 'sub V4L2_FBUF_CAP_CHROMAKEY () {0x2;}' unless defined(&V4L2_FBUF_CAP_CHROMAKEY);
    eval 'sub V4L2_FBUF_CAP_LIST_CLIPPING () {0x4;}' unless defined(&V4L2_FBUF_CAP_LIST_CLIPPING);
    eval 'sub V4L2_FBUF_CAP_BITMAP_CLIPPING () {0x8;}' unless defined(&V4L2_FBUF_CAP_BITMAP_CLIPPING);
    eval 'sub V4L2_FBUF_CAP_LOCAL_ALPHA () {0x10;}' unless defined(&V4L2_FBUF_CAP_LOCAL_ALPHA);
    eval 'sub V4L2_FBUF_CAP_GLOBAL_ALPHA () {0x20;}' unless defined(&V4L2_FBUF_CAP_GLOBAL_ALPHA);
    eval 'sub V4L2_FBUF_CAP_LOCAL_INV_ALPHA () {0x40;}' unless defined(&V4L2_FBUF_CAP_LOCAL_INV_ALPHA);
    eval 'sub V4L2_FBUF_CAP_SRC_CHROMAKEY () {0x80;}' unless defined(&V4L2_FBUF_CAP_SRC_CHROMAKEY);
    eval 'sub V4L2_FBUF_FLAG_PRIMARY () {0x1;}' unless defined(&V4L2_FBUF_FLAG_PRIMARY);
    eval 'sub V4L2_FBUF_FLAG_OVERLAY () {0x2;}' unless defined(&V4L2_FBUF_FLAG_OVERLAY);
    eval 'sub V4L2_FBUF_FLAG_CHROMAKEY () {0x4;}' unless defined(&V4L2_FBUF_FLAG_CHROMAKEY);
    eval 'sub V4L2_FBUF_FLAG_LOCAL_ALPHA () {0x8;}' unless defined(&V4L2_FBUF_FLAG_LOCAL_ALPHA);
    eval 'sub V4L2_FBUF_FLAG_GLOBAL_ALPHA () {0x10;}' unless defined(&V4L2_FBUF_FLAG_GLOBAL_ALPHA);
    eval 'sub V4L2_FBUF_FLAG_LOCAL_INV_ALPHA () {0x20;}' unless defined(&V4L2_FBUF_FLAG_LOCAL_INV_ALPHA);
    eval 'sub V4L2_FBUF_FLAG_SRC_CHROMAKEY () {0x40;}' unless defined(&V4L2_FBUF_FLAG_SRC_CHROMAKEY);
    eval 'sub V4L2_MODE_HIGHQUALITY () {0x1;}' unless defined(&V4L2_MODE_HIGHQUALITY);
    eval 'sub V4L2_CAP_TIMEPERFRAME () {0x1000;}' unless defined(&V4L2_CAP_TIMEPERFRAME);
    eval 'sub V4L2_STD_PAL_B () {(( &v4l2_std_id)0x1);}' unless defined(&V4L2_STD_PAL_B);
    eval 'sub V4L2_STD_PAL_B1 () {(( &v4l2_std_id)0x2);}' unless defined(&V4L2_STD_PAL_B1);
    eval 'sub V4L2_STD_PAL_G () {(( &v4l2_std_id)0x4);}' unless defined(&V4L2_STD_PAL_G);
    eval 'sub V4L2_STD_PAL_H () {(( &v4l2_std_id)0x8);}' unless defined(&V4L2_STD_PAL_H);
    eval 'sub V4L2_STD_PAL_I () {(( &v4l2_std_id)0x10);}' unless defined(&V4L2_STD_PAL_I);
    eval 'sub V4L2_STD_PAL_D () {(( &v4l2_std_id)0x20);}' unless defined(&V4L2_STD_PAL_D);
    eval 'sub V4L2_STD_PAL_D1 () {(( &v4l2_std_id)0x40);}' unless defined(&V4L2_STD_PAL_D1);
    eval 'sub V4L2_STD_PAL_K () {(( &v4l2_std_id)0x80);}' unless defined(&V4L2_STD_PAL_K);
    eval 'sub V4L2_STD_PAL_M () {(( &v4l2_std_id)0x100);}' unless defined(&V4L2_STD_PAL_M);
    eval 'sub V4L2_STD_PAL_N () {(( &v4l2_std_id)0x200);}' unless defined(&V4L2_STD_PAL_N);
    eval 'sub V4L2_STD_PAL_Nc () {(( &v4l2_std_id)0x400);}' unless defined(&V4L2_STD_PAL_Nc);
    eval 'sub V4L2_STD_PAL_60 () {(( &v4l2_std_id)0x800);}' unless defined(&V4L2_STD_PAL_60);
    eval 'sub V4L2_STD_NTSC_M () {(( &v4l2_std_id)0x1000);}' unless defined(&V4L2_STD_NTSC_M);
    eval 'sub V4L2_STD_NTSC_M_JP () {(( &v4l2_std_id)0x2000);}' unless defined(&V4L2_STD_NTSC_M_JP);
    eval 'sub V4L2_STD_NTSC_443 () {(( &v4l2_std_id)0x4000);}' unless defined(&V4L2_STD_NTSC_443);
    eval 'sub V4L2_STD_NTSC_M_KR () {(( &v4l2_std_id)0x8000);}' unless defined(&V4L2_STD_NTSC_M_KR);
    eval 'sub V4L2_STD_SECAM_B () {(( &v4l2_std_id)0x10000);}' unless defined(&V4L2_STD_SECAM_B);
    eval 'sub V4L2_STD_SECAM_D () {(( &v4l2_std_id)0x20000);}' unless defined(&V4L2_STD_SECAM_D);
    eval 'sub V4L2_STD_SECAM_G () {(( &v4l2_std_id)0x40000);}' unless defined(&V4L2_STD_SECAM_G);
    eval 'sub V4L2_STD_SECAM_H () {(( &v4l2_std_id)0x80000);}' unless defined(&V4L2_STD_SECAM_H);
    eval 'sub V4L2_STD_SECAM_K () {(( &v4l2_std_id)0x100000);}' unless defined(&V4L2_STD_SECAM_K);
    eval 'sub V4L2_STD_SECAM_K1 () {(( &v4l2_std_id)0x200000);}' unless defined(&V4L2_STD_SECAM_K1);
    eval 'sub V4L2_STD_SECAM_L () {(( &v4l2_std_id)0x400000);}' unless defined(&V4L2_STD_SECAM_L);
    eval 'sub V4L2_STD_SECAM_LC () {(( &v4l2_std_id)0x800000);}' unless defined(&V4L2_STD_SECAM_LC);
    eval 'sub V4L2_STD_ATSC_8_VSB () {(( &v4l2_std_id)0x1000000);}' unless defined(&V4L2_STD_ATSC_8_VSB);
    eval 'sub V4L2_STD_ATSC_16_VSB () {(( &v4l2_std_id)0x2000000);}' unless defined(&V4L2_STD_ATSC_16_VSB);
    eval 'sub V4L2_STD_NTSC () {( &V4L2_STD_NTSC_M |  &V4L2_STD_NTSC_M_JP |  &V4L2_STD_NTSC_M_KR);}' unless defined(&V4L2_STD_NTSC);
    eval 'sub V4L2_STD_SECAM_DK () {( &V4L2_STD_SECAM_D |  &V4L2_STD_SECAM_K |  &V4L2_STD_SECAM_K1);}' unless defined(&V4L2_STD_SECAM_DK);
    eval 'sub V4L2_STD_SECAM () {( &V4L2_STD_SECAM_B |  &V4L2_STD_SECAM_G |  &V4L2_STD_SECAM_H |  &V4L2_STD_SECAM_DK |  &V4L2_STD_SECAM_L |  &V4L2_STD_SECAM_LC);}' unless defined(&V4L2_STD_SECAM);
    eval 'sub V4L2_STD_PAL_BG () {( &V4L2_STD_PAL_B |  &V4L2_STD_PAL_B1 |  &V4L2_STD_PAL_G);}' unless defined(&V4L2_STD_PAL_BG);
    eval 'sub V4L2_STD_PAL_DK () {( &V4L2_STD_PAL_D |  &V4L2_STD_PAL_D1 |  &V4L2_STD_PAL_K);}' unless defined(&V4L2_STD_PAL_DK);
    eval 'sub V4L2_STD_PAL () {( &V4L2_STD_PAL_BG |  &V4L2_STD_PAL_DK |  &V4L2_STD_PAL_H |  &V4L2_STD_PAL_I);}' unless defined(&V4L2_STD_PAL);
    eval 'sub V4L2_STD_B () {( &V4L2_STD_PAL_B |  &V4L2_STD_PAL_B1 |  &V4L2_STD_SECAM_B);}' unless defined(&V4L2_STD_B);
    eval 'sub V4L2_STD_G () {( &V4L2_STD_PAL_G |  &V4L2_STD_SECAM_G);}' unless defined(&V4L2_STD_G);
    eval 'sub V4L2_STD_H () {( &V4L2_STD_PAL_H |  &V4L2_STD_SECAM_H);}' unless defined(&V4L2_STD_H);
    eval 'sub V4L2_STD_L () {( &V4L2_STD_SECAM_L |  &V4L2_STD_SECAM_LC);}' unless defined(&V4L2_STD_L);
    eval 'sub V4L2_STD_GH () {( &V4L2_STD_G |  &V4L2_STD_H);}' unless defined(&V4L2_STD_GH);
    eval 'sub V4L2_STD_DK () {( &V4L2_STD_PAL_DK |  &V4L2_STD_SECAM_DK);}' unless defined(&V4L2_STD_DK);
    eval 'sub V4L2_STD_BG () {( &V4L2_STD_B |  &V4L2_STD_G);}' unless defined(&V4L2_STD_BG);
    eval 'sub V4L2_STD_MN () {( &V4L2_STD_PAL_M |  &V4L2_STD_PAL_N |  &V4L2_STD_PAL_Nc |  &V4L2_STD_NTSC);}' unless defined(&V4L2_STD_MN);
    eval 'sub V4L2_STD_MTS () {( &V4L2_STD_NTSC_M |  &V4L2_STD_PAL_M |  &V4L2_STD_PAL_N |  &V4L2_STD_PAL_Nc);}' unless defined(&V4L2_STD_MTS);
    eval 'sub V4L2_STD_525_60 () {( &V4L2_STD_PAL_M |  &V4L2_STD_PAL_60 |  &V4L2_STD_NTSC |  &V4L2_STD_NTSC_443);}' unless defined(&V4L2_STD_525_60);
    eval 'sub V4L2_STD_625_50 () {( &V4L2_STD_PAL |  &V4L2_STD_PAL_N |  &V4L2_STD_PAL_Nc |  &V4L2_STD_SECAM);}' unless defined(&V4L2_STD_625_50);
    eval 'sub V4L2_STD_ATSC () {( &V4L2_STD_ATSC_8_VSB |  &V4L2_STD_ATSC_16_VSB);}' unless defined(&V4L2_STD_ATSC);
    eval 'sub V4L2_STD_UNKNOWN () {0;}' unless defined(&V4L2_STD_UNKNOWN);
    eval 'sub V4L2_STD_ALL () {( &V4L2_STD_525_60 |  &V4L2_STD_625_50);}' unless defined(&V4L2_STD_ALL);
    eval 'sub V4L2_DV_PROGRESSIVE () {0;}' unless defined(&V4L2_DV_PROGRESSIVE);
    eval 'sub V4L2_DV_INTERLACED () {1;}' unless defined(&V4L2_DV_INTERLACED);
    eval 'sub V4L2_DV_VSYNC_POS_POL () {0x1;}' unless defined(&V4L2_DV_VSYNC_POS_POL);
    eval 'sub V4L2_DV_HSYNC_POS_POL () {0x2;}' unless defined(&V4L2_DV_HSYNC_POS_POL);
    eval 'sub V4L2_DV_BT_STD_CEA861 () {(1<< 0);}' unless defined(&V4L2_DV_BT_STD_CEA861);
    eval 'sub V4L2_DV_BT_STD_DMT () {(1<< 1);}' unless defined(&V4L2_DV_BT_STD_DMT);
    eval 'sub V4L2_DV_BT_STD_CVT () {(1<< 2);}' unless defined(&V4L2_DV_BT_STD_CVT);
    eval 'sub V4L2_DV_BT_STD_GTF () {(1<< 3);}' unless defined(&V4L2_DV_BT_STD_GTF);
    eval 'sub V4L2_DV_BT_STD_SDI () {(1<< 4);}' unless defined(&V4L2_DV_BT_STD_SDI);
    eval 'sub V4L2_DV_FL_REDUCED_BLANKING () {(1<< 0);}' unless defined(&V4L2_DV_FL_REDUCED_BLANKING);
    eval 'sub V4L2_DV_FL_CAN_REDUCE_FPS () {(1<< 1);}' unless defined(&V4L2_DV_FL_CAN_REDUCE_FPS);
    eval 'sub V4L2_DV_FL_REDUCED_FPS () {(1<< 2);}' unless defined(&V4L2_DV_FL_REDUCED_FPS);
    eval 'sub V4L2_DV_FL_HALF_LINE () {(1<< 3);}' unless defined(&V4L2_DV_FL_HALF_LINE);
    eval 'sub V4L2_DV_FL_IS_CE_VIDEO () {(1<< 4);}' unless defined(&V4L2_DV_FL_IS_CE_VIDEO);
    eval 'sub V4L2_DV_FL_FIRST_FIELD_EXTRA_LINE () {(1<< 5);}' unless defined(&V4L2_DV_FL_FIRST_FIELD_EXTRA_LINE);
    eval 'sub V4L2_DV_FL_HAS_PICTURE_ASPECT () {(1<< 6);}' unless defined(&V4L2_DV_FL_HAS_PICTURE_ASPECT);
    eval 'sub V4L2_DV_FL_HAS_CEA861_VIC () {(1<< 7);}' unless defined(&V4L2_DV_FL_HAS_CEA861_VIC);
    eval 'sub V4L2_DV_FL_HAS_HDMI_VIC () {(1<< 8);}' unless defined(&V4L2_DV_FL_HAS_HDMI_VIC);
    eval 'sub V4L2_DV_BT_BLANKING_WIDTH {
        my($bt) = @_;
	    eval q((($bt)-> &hfrontporch + ($bt)-> &hsync + ($bt)-> &hbackporch));
    }' unless defined(&V4L2_DV_BT_BLANKING_WIDTH);
    eval 'sub V4L2_DV_BT_FRAME_WIDTH {
        my($bt) = @_;
	    eval q((($bt)-> &width +  &V4L2_DV_BT_BLANKING_WIDTH($bt)));
    }' unless defined(&V4L2_DV_BT_FRAME_WIDTH);
    eval 'sub V4L2_DV_BT_BLANKING_HEIGHT {
        my($bt) = @_;
	    eval q((($bt)-> &vfrontporch + ($bt)-> &vsync + ($bt)-> &vbackporch + ($bt)-> &il_vfrontporch + ($bt)-> &il_vsync + ($bt)-> &il_vbackporch));
    }' unless defined(&V4L2_DV_BT_BLANKING_HEIGHT);
    eval 'sub V4L2_DV_BT_FRAME_HEIGHT {
        my($bt) = @_;
	    eval q((($bt)-> &height +  &V4L2_DV_BT_BLANKING_HEIGHT($bt)));
    }' unless defined(&V4L2_DV_BT_FRAME_HEIGHT);
    eval 'sub V4L2_DV_BT_656_1120 () {0;}' unless defined(&V4L2_DV_BT_656_1120);
    eval 'sub V4L2_DV_BT_CAP_INTERLACED () {(1<< 0);}' unless defined(&V4L2_DV_BT_CAP_INTERLACED);
    eval 'sub V4L2_DV_BT_CAP_PROGRESSIVE () {(1<< 1);}' unless defined(&V4L2_DV_BT_CAP_PROGRESSIVE);
    eval 'sub V4L2_DV_BT_CAP_REDUCED_BLANKING () {(1<< 2);}' unless defined(&V4L2_DV_BT_CAP_REDUCED_BLANKING);
    eval 'sub V4L2_DV_BT_CAP_CUSTOM () {(1<< 3);}' unless defined(&V4L2_DV_BT_CAP_CUSTOM);
    eval 'sub V4L2_INPUT_TYPE_TUNER () {1;}' unless defined(&V4L2_INPUT_TYPE_TUNER);
    eval 'sub V4L2_INPUT_TYPE_CAMERA () {2;}' unless defined(&V4L2_INPUT_TYPE_CAMERA);
    eval 'sub V4L2_INPUT_TYPE_TOUCH () {3;}' unless defined(&V4L2_INPUT_TYPE_TOUCH);
    eval 'sub V4L2_IN_ST_NO_POWER () {0x1;}' unless defined(&V4L2_IN_ST_NO_POWER);
    eval 'sub V4L2_IN_ST_NO_SIGNAL () {0x2;}' unless defined(&V4L2_IN_ST_NO_SIGNAL);
    eval 'sub V4L2_IN_ST_NO_COLOR () {0x4;}' unless defined(&V4L2_IN_ST_NO_COLOR);
    eval 'sub V4L2_IN_ST_HFLIP () {0x10;}' unless defined(&V4L2_IN_ST_HFLIP);
    eval 'sub V4L2_IN_ST_VFLIP () {0x20;}' unless defined(&V4L2_IN_ST_VFLIP);
    eval 'sub V4L2_IN_ST_NO_H_LOCK () {0x100;}' unless defined(&V4L2_IN_ST_NO_H_LOCK);
    eval 'sub V4L2_IN_ST_COLOR_KILL () {0x200;}' unless defined(&V4L2_IN_ST_COLOR_KILL);
    eval 'sub V4L2_IN_ST_NO_V_LOCK () {0x400;}' unless defined(&V4L2_IN_ST_NO_V_LOCK);
    eval 'sub V4L2_IN_ST_NO_STD_LOCK () {0x800;}' unless defined(&V4L2_IN_ST_NO_STD_LOCK);
    eval 'sub V4L2_IN_ST_NO_SYNC () {0x10000;}' unless defined(&V4L2_IN_ST_NO_SYNC);
    eval 'sub V4L2_IN_ST_NO_EQU () {0x20000;}' unless defined(&V4L2_IN_ST_NO_EQU);
    eval 'sub V4L2_IN_ST_NO_CARRIER () {0x40000;}' unless defined(&V4L2_IN_ST_NO_CARRIER);
    eval 'sub V4L2_IN_ST_MACROVISION () {0x1000000;}' unless defined(&V4L2_IN_ST_MACROVISION);
    eval 'sub V4L2_IN_ST_NO_ACCESS () {0x2000000;}' unless defined(&V4L2_IN_ST_NO_ACCESS);
    eval 'sub V4L2_IN_ST_VTR () {0x4000000;}' unless defined(&V4L2_IN_ST_VTR);
    eval 'sub V4L2_IN_CAP_DV_TIMINGS () {0x2;}' unless defined(&V4L2_IN_CAP_DV_TIMINGS);
    eval 'sub V4L2_IN_CAP_CUSTOM_TIMINGS () { &V4L2_IN_CAP_DV_TIMINGS;}' unless defined(&V4L2_IN_CAP_CUSTOM_TIMINGS);
    eval 'sub V4L2_IN_CAP_STD () {0x4;}' unless defined(&V4L2_IN_CAP_STD);
    eval 'sub V4L2_IN_CAP_NATIVE_SIZE () {0x8;}' unless defined(&V4L2_IN_CAP_NATIVE_SIZE);
    eval 'sub V4L2_OUTPUT_TYPE_MODULATOR () {1;}' unless defined(&V4L2_OUTPUT_TYPE_MODULATOR);
    eval 'sub V4L2_OUTPUT_TYPE_ANALOG () {2;}' unless defined(&V4L2_OUTPUT_TYPE_ANALOG);
    eval 'sub V4L2_OUTPUT_TYPE_ANALOGVGAOVERLAY () {3;}' unless defined(&V4L2_OUTPUT_TYPE_ANALOGVGAOVERLAY);
    eval 'sub V4L2_OUT_CAP_DV_TIMINGS () {0x2;}' unless defined(&V4L2_OUT_CAP_DV_TIMINGS);
    eval 'sub V4L2_OUT_CAP_CUSTOM_TIMINGS () { &V4L2_OUT_CAP_DV_TIMINGS;}' unless defined(&V4L2_OUT_CAP_CUSTOM_TIMINGS);
    eval 'sub V4L2_OUT_CAP_STD () {0x4;}' unless defined(&V4L2_OUT_CAP_STD);
    eval 'sub V4L2_OUT_CAP_NATIVE_SIZE () {0x8;}' unless defined(&V4L2_OUT_CAP_NATIVE_SIZE);
    unless(defined(&_KERNEL)) {
    }
    eval 'sub V4L2_CTRL_ID_MASK () {(0xfffffff);}' unless defined(&V4L2_CTRL_ID_MASK);
    eval 'sub V4L2_CTRL_ID2CID {
        my($id) = @_;
	    eval q(($id & 0xffff));
    }' unless defined(&V4L2_CTRL_ID2CID);
    unless(defined(&_KERNEL)) {
	eval 'sub V4L2_CTRL_ID2CLASS {
	    my($id) = @_;
    	    eval q((($id) & 0xfff0000));
	}' unless defined(&V4L2_CTRL_ID2CLASS);
    }
    eval 'sub V4L2_CTRL_ID2WHICH {
        my($id) = @_;
	    eval q((($id) & 0xfff0000));
    }' unless defined(&V4L2_CTRL_ID2WHICH);
    eval 'sub V4L2_CTRL_DRIVER_PRIV {
        my($id) = @_;
	    eval q(((($id) & 0xffff) >= 0x1000));
    }' unless defined(&V4L2_CTRL_DRIVER_PRIV);
    eval 'sub V4L2_CTRL_MAX_DIMS () {(4);}' unless defined(&V4L2_CTRL_MAX_DIMS);
    eval 'sub V4L2_CTRL_WHICH_CUR_VAL () {0;}' unless defined(&V4L2_CTRL_WHICH_CUR_VAL);
    eval 'sub V4L2_CTRL_WHICH_DEF_VAL () {0xf000000;}' unless defined(&V4L2_CTRL_WHICH_DEF_VAL);
    eval("sub V4L2_CTRL_TYPE_INTEGER () { 1; }") unless defined(&V4L2_CTRL_TYPE_INTEGER);
    eval("sub V4L2_CTRL_TYPE_BOOLEAN () { 2; }") unless defined(&V4L2_CTRL_TYPE_BOOLEAN);
    eval("sub V4L2_CTRL_TYPE_MENU () { 3; }") unless defined(&V4L2_CTRL_TYPE_MENU);
    eval("sub V4L2_CTRL_TYPE_BUTTON () { 4; }") unless defined(&V4L2_CTRL_TYPE_BUTTON);
    eval("sub V4L2_CTRL_TYPE_INTEGER64 () { 5; }") unless defined(&V4L2_CTRL_TYPE_INTEGER64);
    eval("sub V4L2_CTRL_TYPE_CTRL_CLASS () { 6; }") unless defined(&V4L2_CTRL_TYPE_CTRL_CLASS);
    eval("sub V4L2_CTRL_TYPE_STRING () { 7; }") unless defined(&V4L2_CTRL_TYPE_STRING);
    eval("sub V4L2_CTRL_TYPE_BITMASK () { 8; }") unless defined(&V4L2_CTRL_TYPE_BITMASK);
    eval("sub V4L2_CTRL_TYPE_INTEGER_MENU () { 9; }") unless defined(&V4L2_CTRL_TYPE_INTEGER_MENU);
    eval("sub V4L2_CTRL_COMPOUND_TYPES () { 0x0100; }") unless defined(&V4L2_CTRL_COMPOUND_TYPES);
    eval("sub V4L2_CTRL_TYPE_U8 () { 0x0100; }") unless defined(&V4L2_CTRL_TYPE_U8);
    eval("sub V4L2_CTRL_TYPE_U16 () { 0x0101; }") unless defined(&V4L2_CTRL_TYPE_U16);
    eval("sub V4L2_CTRL_TYPE_U32 () { 0x0102; }") unless defined(&V4L2_CTRL_TYPE_U32);
    eval 'sub V4L2_CTRL_FLAG_DISABLED () {0x1;}' unless defined(&V4L2_CTRL_FLAG_DISABLED);
    eval 'sub V4L2_CTRL_FLAG_GRABBED () {0x2;}' unless defined(&V4L2_CTRL_FLAG_GRABBED);
    eval 'sub V4L2_CTRL_FLAG_READ_ONLY () {0x4;}' unless defined(&V4L2_CTRL_FLAG_READ_ONLY);
    eval 'sub V4L2_CTRL_FLAG_UPDATE () {0x8;}' unless defined(&V4L2_CTRL_FLAG_UPDATE);
    eval 'sub V4L2_CTRL_FLAG_INACTIVE () {0x10;}' unless defined(&V4L2_CTRL_FLAG_INACTIVE);
    eval 'sub V4L2_CTRL_FLAG_SLIDER () {0x20;}' unless defined(&V4L2_CTRL_FLAG_SLIDER);
    eval 'sub V4L2_CTRL_FLAG_WRITE_ONLY () {0x40;}' unless defined(&V4L2_CTRL_FLAG_WRITE_ONLY);
    eval 'sub V4L2_CTRL_FLAG_VOLATILE () {0x80;}' unless defined(&V4L2_CTRL_FLAG_VOLATILE);
    eval 'sub V4L2_CTRL_FLAG_HAS_PAYLOAD () {0x100;}' unless defined(&V4L2_CTRL_FLAG_HAS_PAYLOAD);
    eval 'sub V4L2_CTRL_FLAG_EXECUTE_ON_WRITE () {0x200;}' unless defined(&V4L2_CTRL_FLAG_EXECUTE_ON_WRITE);
    eval 'sub V4L2_CTRL_FLAG_NEXT_CTRL () {0x80000000;}' unless defined(&V4L2_CTRL_FLAG_NEXT_CTRL);
    eval 'sub V4L2_CTRL_FLAG_NEXT_COMPOUND () {0x40000000;}' unless defined(&V4L2_CTRL_FLAG_NEXT_COMPOUND);
    eval 'sub V4L2_CID_MAX_CTRLS () {1024;}' unless defined(&V4L2_CID_MAX_CTRLS);
    eval 'sub V4L2_CID_PRIVATE_BASE () {0x8000000;}' unless defined(&V4L2_CID_PRIVATE_BASE);
    eval 'sub V4L2_TUNER_CAP_LOW () {0x1;}' unless defined(&V4L2_TUNER_CAP_LOW);
    eval 'sub V4L2_TUNER_CAP_NORM () {0x2;}' unless defined(&V4L2_TUNER_CAP_NORM);
    eval 'sub V4L2_TUNER_CAP_HWSEEK_BOUNDED () {0x4;}' unless defined(&V4L2_TUNER_CAP_HWSEEK_BOUNDED);
    eval 'sub V4L2_TUNER_CAP_HWSEEK_WRAP () {0x8;}' unless defined(&V4L2_TUNER_CAP_HWSEEK_WRAP);
    eval 'sub V4L2_TUNER_CAP_STEREO () {0x10;}' unless defined(&V4L2_TUNER_CAP_STEREO);
    eval 'sub V4L2_TUNER_CAP_LANG2 () {0x20;}' unless defined(&V4L2_TUNER_CAP_LANG2);
    eval 'sub V4L2_TUNER_CAP_SAP () {0x20;}' unless defined(&V4L2_TUNER_CAP_SAP);
    eval 'sub V4L2_TUNER_CAP_LANG1 () {0x40;}' unless defined(&V4L2_TUNER_CAP_LANG1);
    eval 'sub V4L2_TUNER_CAP_RDS () {0x80;}' unless defined(&V4L2_TUNER_CAP_RDS);
    eval 'sub V4L2_TUNER_CAP_RDS_BLOCK_IO () {0x100;}' unless defined(&V4L2_TUNER_CAP_RDS_BLOCK_IO);
    eval 'sub V4L2_TUNER_CAP_RDS_CONTROLS () {0x200;}' unless defined(&V4L2_TUNER_CAP_RDS_CONTROLS);
    eval 'sub V4L2_TUNER_CAP_FREQ_BANDS () {0x400;}' unless defined(&V4L2_TUNER_CAP_FREQ_BANDS);
    eval 'sub V4L2_TUNER_CAP_HWSEEK_PROG_LIM () {0x800;}' unless defined(&V4L2_TUNER_CAP_HWSEEK_PROG_LIM);
    eval 'sub V4L2_TUNER_CAP_1HZ () {0x1000;}' unless defined(&V4L2_TUNER_CAP_1HZ);
    eval 'sub V4L2_TUNER_SUB_MONO () {0x1;}' unless defined(&V4L2_TUNER_SUB_MONO);
    eval 'sub V4L2_TUNER_SUB_STEREO () {0x2;}' unless defined(&V4L2_TUNER_SUB_STEREO);
    eval 'sub V4L2_TUNER_SUB_LANG2 () {0x4;}' unless defined(&V4L2_TUNER_SUB_LANG2);
    eval 'sub V4L2_TUNER_SUB_SAP () {0x4;}' unless defined(&V4L2_TUNER_SUB_SAP);
    eval 'sub V4L2_TUNER_SUB_LANG1 () {0x8;}' unless defined(&V4L2_TUNER_SUB_LANG1);
    eval 'sub V4L2_TUNER_SUB_RDS () {0x10;}' unless defined(&V4L2_TUNER_SUB_RDS);
    eval 'sub V4L2_TUNER_MODE_MONO () {0x;}' unless defined(&V4L2_TUNER_MODE_MONO);
    eval 'sub V4L2_TUNER_MODE_STEREO () {0x1;}' unless defined(&V4L2_TUNER_MODE_STEREO);
    eval 'sub V4L2_TUNER_MODE_LANG2 () {0x2;}' unless defined(&V4L2_TUNER_MODE_LANG2);
    eval 'sub V4L2_TUNER_MODE_SAP () {0x2;}' unless defined(&V4L2_TUNER_MODE_SAP);
    eval 'sub V4L2_TUNER_MODE_LANG1 () {0x3;}' unless defined(&V4L2_TUNER_MODE_LANG1);
    eval 'sub V4L2_TUNER_MODE_LANG1_LANG2 () {0x4;}' unless defined(&V4L2_TUNER_MODE_LANG1_LANG2);
    eval 'sub V4L2_BAND_MODULATION_VSB () {(1<< 1);}' unless defined(&V4L2_BAND_MODULATION_VSB);
    eval 'sub V4L2_BAND_MODULATION_FM () {(1<< 2);}' unless defined(&V4L2_BAND_MODULATION_FM);
    eval 'sub V4L2_BAND_MODULATION_AM () {(1<< 3);}' unless defined(&V4L2_BAND_MODULATION_AM);
    eval 'sub V4L2_RDS_BLOCK_MSK () {0x7;}' unless defined(&V4L2_RDS_BLOCK_MSK);
    eval 'sub V4L2_RDS_BLOCK_A () {0;}' unless defined(&V4L2_RDS_BLOCK_A);
    eval 'sub V4L2_RDS_BLOCK_B () {1;}' unless defined(&V4L2_RDS_BLOCK_B);
    eval 'sub V4L2_RDS_BLOCK_C () {2;}' unless defined(&V4L2_RDS_BLOCK_C);
    eval 'sub V4L2_RDS_BLOCK_D () {3;}' unless defined(&V4L2_RDS_BLOCK_D);
    eval 'sub V4L2_RDS_BLOCK_C_ALT () {4;}' unless defined(&V4L2_RDS_BLOCK_C_ALT);
    eval 'sub V4L2_RDS_BLOCK_INVALID () {7;}' unless defined(&V4L2_RDS_BLOCK_INVALID);
    eval 'sub V4L2_RDS_BLOCK_CORRECTED () {0x40;}' unless defined(&V4L2_RDS_BLOCK_CORRECTED);
    eval 'sub V4L2_RDS_BLOCK_ERROR () {0x80;}' unless defined(&V4L2_RDS_BLOCK_ERROR);
    eval 'sub V4L2_AUDCAP_STEREO () {0x1;}' unless defined(&V4L2_AUDCAP_STEREO);
    eval 'sub V4L2_AUDCAP_AVL () {0x2;}' unless defined(&V4L2_AUDCAP_AVL);
    eval 'sub V4L2_AUDMODE_AVL () {0x1;}' unless defined(&V4L2_AUDMODE_AVL);
    if(1) {
	eval 'sub V4L2_ENC_IDX_FRAME_I () {(0);}' unless defined(&V4L2_ENC_IDX_FRAME_I);
	eval 'sub V4L2_ENC_IDX_FRAME_P () {(1);}' unless defined(&V4L2_ENC_IDX_FRAME_P);
	eval 'sub V4L2_ENC_IDX_FRAME_B () {(2);}' unless defined(&V4L2_ENC_IDX_FRAME_B);
	eval 'sub V4L2_ENC_IDX_FRAME_MASK () {(0xf);}' unless defined(&V4L2_ENC_IDX_FRAME_MASK);
	eval 'sub V4L2_ENC_IDX_ENTRIES () {(64);}' unless defined(&V4L2_ENC_IDX_ENTRIES);
	eval 'sub V4L2_ENC_CMD_START () {(0);}' unless defined(&V4L2_ENC_CMD_START);
	eval 'sub V4L2_ENC_CMD_STOP () {(1);}' unless defined(&V4L2_ENC_CMD_STOP);
	eval 'sub V4L2_ENC_CMD_PAUSE () {(2);}' unless defined(&V4L2_ENC_CMD_PAUSE);
	eval 'sub V4L2_ENC_CMD_RESUME () {(3);}' unless defined(&V4L2_ENC_CMD_RESUME);
	eval 'sub V4L2_ENC_CMD_STOP_AT_GOP_END () {(1<< 0);}' unless defined(&V4L2_ENC_CMD_STOP_AT_GOP_END);
	eval 'sub V4L2_DEC_CMD_START () {(0);}' unless defined(&V4L2_DEC_CMD_START);
	eval 'sub V4L2_DEC_CMD_STOP () {(1);}' unless defined(&V4L2_DEC_CMD_STOP);
	eval 'sub V4L2_DEC_CMD_PAUSE () {(2);}' unless defined(&V4L2_DEC_CMD_PAUSE);
	eval 'sub V4L2_DEC_CMD_RESUME () {(3);}' unless defined(&V4L2_DEC_CMD_RESUME);
	eval 'sub V4L2_DEC_CMD_START_MUTE_AUDIO () {(1<< 0);}' unless defined(&V4L2_DEC_CMD_START_MUTE_AUDIO);
	eval 'sub V4L2_DEC_CMD_PAUSE_TO_BLACK () {(1<< 0);}' unless defined(&V4L2_DEC_CMD_PAUSE_TO_BLACK);
	eval 'sub V4L2_DEC_CMD_STOP_TO_BLACK () {(1<< 0);}' unless defined(&V4L2_DEC_CMD_STOP_TO_BLACK);
	eval 'sub V4L2_DEC_CMD_STOP_IMMEDIATELY () {(1<< 1);}' unless defined(&V4L2_DEC_CMD_STOP_IMMEDIATELY);
	eval 'sub V4L2_DEC_START_FMT_NONE () {(0);}' unless defined(&V4L2_DEC_START_FMT_NONE);
	eval 'sub V4L2_DEC_START_FMT_GOP () {(1);}' unless defined(&V4L2_DEC_START_FMT_GOP);
    }
    eval 'sub V4L2_VBI_UNSYNC () {(1<< 0);}' unless defined(&V4L2_VBI_UNSYNC);
    eval 'sub V4L2_VBI_INTERLACED () {(1<< 1);}' unless defined(&V4L2_VBI_INTERLACED);
    eval 'sub V4L2_VBI_ITU_525_F1_START () {(1);}' unless defined(&V4L2_VBI_ITU_525_F1_START);
    eval 'sub V4L2_VBI_ITU_525_F2_START () {(264);}' unless defined(&V4L2_VBI_ITU_525_F2_START);
    eval 'sub V4L2_VBI_ITU_625_F1_START () {(1);}' unless defined(&V4L2_VBI_ITU_625_F1_START);
    eval 'sub V4L2_VBI_ITU_625_F2_START () {(314);}' unless defined(&V4L2_VBI_ITU_625_F2_START);
    eval 'sub V4L2_SLICED_TELETEXT_B () {(0x1);}' unless defined(&V4L2_SLICED_TELETEXT_B);
    eval 'sub V4L2_SLICED_VPS () {(0x400);}' unless defined(&V4L2_SLICED_VPS);
    eval 'sub V4L2_SLICED_CAPTION_525 () {(0x1000);}' unless defined(&V4L2_SLICED_CAPTION_525);
    eval 'sub V4L2_SLICED_WSS_625 () {(0x4000);}' unless defined(&V4L2_SLICED_WSS_625);
    eval 'sub V4L2_SLICED_VBI_525 () {( &V4L2_SLICED_CAPTION_525);}' unless defined(&V4L2_SLICED_VBI_525);
    eval 'sub V4L2_SLICED_VBI_625 () {( &V4L2_SLICED_TELETEXT_B |  &V4L2_SLICED_VPS |  &V4L2_SLICED_WSS_625);}' unless defined(&V4L2_SLICED_VBI_625);
    eval 'sub V4L2_MPEG_VBI_IVTV_TELETEXT_B () {(1);}' unless defined(&V4L2_MPEG_VBI_IVTV_TELETEXT_B);
    eval 'sub V4L2_MPEG_VBI_IVTV_CAPTION_525 () {(4);}' unless defined(&V4L2_MPEG_VBI_IVTV_CAPTION_525);
    eval 'sub V4L2_MPEG_VBI_IVTV_WSS_625 () {(5);}' unless defined(&V4L2_MPEG_VBI_IVTV_WSS_625);
    eval 'sub V4L2_MPEG_VBI_IVTV_VPS () {(7);}' unless defined(&V4L2_MPEG_VBI_IVTV_VPS);
    eval 'sub V4L2_MPEG_VBI_IVTV_MAGIC0 () {"itv0";}' unless defined(&V4L2_MPEG_VBI_IVTV_MAGIC0);
    eval 'sub V4L2_MPEG_VBI_IVTV_MAGIC1 () {"ITV0";}' unless defined(&V4L2_MPEG_VBI_IVTV_MAGIC1);
    eval 'sub V4L2_EVENT_ALL () {0;}' unless defined(&V4L2_EVENT_ALL);
    eval 'sub V4L2_EVENT_VSYNC () {1;}' unless defined(&V4L2_EVENT_VSYNC);
    eval 'sub V4L2_EVENT_EOS () {2;}' unless defined(&V4L2_EVENT_EOS);
    eval 'sub V4L2_EVENT_CTRL () {3;}' unless defined(&V4L2_EVENT_CTRL);
    eval 'sub V4L2_EVENT_FRAME_SYNC () {4;}' unless defined(&V4L2_EVENT_FRAME_SYNC);
    eval 'sub V4L2_EVENT_SOURCE_CHANGE () {5;}' unless defined(&V4L2_EVENT_SOURCE_CHANGE);
    eval 'sub V4L2_EVENT_MOTION_DET () {6;}' unless defined(&V4L2_EVENT_MOTION_DET);
    eval 'sub V4L2_EVENT_PRIVATE_START () {0x8000000;}' unless defined(&V4L2_EVENT_PRIVATE_START);
    eval 'sub V4L2_EVENT_CTRL_CH_VALUE () {(1<< 0);}' unless defined(&V4L2_EVENT_CTRL_CH_VALUE);
    eval 'sub V4L2_EVENT_CTRL_CH_FLAGS () {(1<< 1);}' unless defined(&V4L2_EVENT_CTRL_CH_FLAGS);
    eval 'sub V4L2_EVENT_CTRL_CH_RANGE () {(1<< 2);}' unless defined(&V4L2_EVENT_CTRL_CH_RANGE);
    eval 'sub V4L2_EVENT_SRC_CH_RESOLUTION () {(1<< 0);}' unless defined(&V4L2_EVENT_SRC_CH_RESOLUTION);
    eval 'sub V4L2_EVENT_MD_FL_HAVE_FRAME_SEQ () {(1<< 0);}' unless defined(&V4L2_EVENT_MD_FL_HAVE_FRAME_SEQ);
    eval 'sub V4L2_EVENT_SUB_FL_SEND_INITIAL () {(1<< 0);}' unless defined(&V4L2_EVENT_SUB_FL_SEND_INITIAL);
    eval 'sub V4L2_EVENT_SUB_FL_ALLOW_FEEDBACK () {(1<< 1);}' unless defined(&V4L2_EVENT_SUB_FL_ALLOW_FEEDBACK);
    eval 'sub V4L2_CHIP_MATCH_BRIDGE () {0;}' unless defined(&V4L2_CHIP_MATCH_BRIDGE);
    eval 'sub V4L2_CHIP_MATCH_SUBDEV () {4;}' unless defined(&V4L2_CHIP_MATCH_SUBDEV);
    eval 'sub V4L2_CHIP_MATCH_HOST () { &V4L2_CHIP_MATCH_BRIDGE;}' unless defined(&V4L2_CHIP_MATCH_HOST);
    eval 'sub V4L2_CHIP_MATCH_I2C_DRIVER () {1;}' unless defined(&V4L2_CHIP_MATCH_I2C_DRIVER);
    eval 'sub V4L2_CHIP_MATCH_I2C_ADDR () {2;}' unless defined(&V4L2_CHIP_MATCH_I2C_ADDR);
    eval 'sub V4L2_CHIP_MATCH_AC97 () {3;}' unless defined(&V4L2_CHIP_MATCH_AC97);
    eval 'sub V4L2_CHIP_FL_READABLE () {(1<< 0);}' unless defined(&V4L2_CHIP_FL_READABLE);
    eval 'sub V4L2_CHIP_FL_WRITABLE () {(1<< 1);}' unless defined(&V4L2_CHIP_FL_WRITABLE);
    eval 'sub VIDIOC_QUERYCAP () { &_IOR(ord(\'V\'), 0, \'struct v4l2_capability\');}' unless defined(&VIDIOC_QUERYCAP);
    eval 'sub VIDIOC_RESERVED () { &_IO(ord(\'V\'), 1);}' unless defined(&VIDIOC_RESERVED);
    eval 'sub VIDIOC_ENUM_FMT () { &_IOWR(ord(\'V\'), 2, \'struct v4l2_fmtdesc\');}' unless defined(&VIDIOC_ENUM_FMT);
    eval 'sub VIDIOC_G_FMT () { &_IOWR(ord(\'V\'), 4, \'struct v4l2_format\');}' unless defined(&VIDIOC_G_FMT);
    eval 'sub VIDIOC_S_FMT () { &_IOWR(ord(\'V\'), 5, \'struct v4l2_format\');}' unless defined(&VIDIOC_S_FMT);
    eval 'sub VIDIOC_REQBUFS () { &_IOWR(ord(\'V\'), 8, \'struct v4l2_requestbuffers\');}' unless defined(&VIDIOC_REQBUFS);
    eval 'sub VIDIOC_QUERYBUF () { &_IOWR(ord(\'V\'), 9, \'struct v4l2_buffer\');}' unless defined(&VIDIOC_QUERYBUF);
    eval 'sub VIDIOC_G_FBUF () { &_IOR(ord(\'V\'), 10, \'struct v4l2_framebuffer\');}' unless defined(&VIDIOC_G_FBUF);
    eval 'sub VIDIOC_S_FBUF () { &_IOW(ord(\'V\'), 11, \'struct v4l2_framebuffer\');}' unless defined(&VIDIOC_S_FBUF);
    eval 'sub VIDIOC_OVERLAY () { &_IOW(ord(\'V\'), 14, \'int\');}' unless defined(&VIDIOC_OVERLAY);
    eval 'sub VIDIOC_QBUF () { &_IOWR(ord(\'V\'), 15, \'struct v4l2_buffer\');}' unless defined(&VIDIOC_QBUF);
    eval 'sub VIDIOC_EXPBUF () { &_IOWR(ord(\'V\'), 16, \'struct v4l2_exportbuffer\');}' unless defined(&VIDIOC_EXPBUF);
    eval 'sub VIDIOC_DQBUF () { &_IOWR(ord(\'V\'), 17, \'struct v4l2_buffer\');}' unless defined(&VIDIOC_DQBUF);
    eval 'sub VIDIOC_STREAMON () { &_IOW(ord(\'V\'), 18, \'int\');}' unless defined(&VIDIOC_STREAMON);
    eval 'sub VIDIOC_STREAMOFF () { &_IOW(ord(\'V\'), 19, \'int\');}' unless defined(&VIDIOC_STREAMOFF);
    eval 'sub VIDIOC_G_PARM () { &_IOWR(ord(\'V\'), 21, \'struct v4l2_streamparm\');}' unless defined(&VIDIOC_G_PARM);
    eval 'sub VIDIOC_S_PARM () { &_IOWR(ord(\'V\'), 22, \'struct v4l2_streamparm\');}' unless defined(&VIDIOC_S_PARM);
    eval 'sub VIDIOC_G_STD () { &_IOR(ord(\'V\'), 23,  &v4l2_std_id);}' unless defined(&VIDIOC_G_STD);
    eval 'sub VIDIOC_S_STD () { &_IOW(ord(\'V\'), 24,  &v4l2_std_id);}' unless defined(&VIDIOC_S_STD);
    eval 'sub VIDIOC_ENUMSTD () { &_IOWR(ord(\'V\'), 25, \'struct v4l2_standard\');}' unless defined(&VIDIOC_ENUMSTD);
    eval 'sub VIDIOC_ENUMINPUT () { &_IOWR(ord(\'V\'), 26, \'struct v4l2_input\');}' unless defined(&VIDIOC_ENUMINPUT);
    eval 'sub VIDIOC_G_CTRL () { &_IOWR(ord(\'V\'), 27, \'struct v4l2_control\');}' unless defined(&VIDIOC_G_CTRL);
    eval 'sub VIDIOC_S_CTRL () { &_IOWR(ord(\'V\'), 28, \'struct v4l2_control\');}' unless defined(&VIDIOC_S_CTRL);
    eval 'sub VIDIOC_G_TUNER () { &_IOWR(ord(\'V\'), 29, \'struct v4l2_tuner\');}' unless defined(&VIDIOC_G_TUNER);
    eval 'sub VIDIOC_S_TUNER () { &_IOW(ord(\'V\'), 30, \'struct v4l2_tuner\');}' unless defined(&VIDIOC_S_TUNER);
    eval 'sub VIDIOC_G_AUDIO () { &_IOR(ord(\'V\'), 33, \'struct v4l2_audio\');}' unless defined(&VIDIOC_G_AUDIO);
    eval 'sub VIDIOC_S_AUDIO () { &_IOW(ord(\'V\'), 34, \'struct v4l2_audio\');}' unless defined(&VIDIOC_S_AUDIO);
    eval 'sub VIDIOC_QUERYCTRL () { &_IOWR(ord(\'V\'), 36, \'struct v4l2_queryctrl\');}' unless defined(&VIDIOC_QUERYCTRL);
    eval 'sub VIDIOC_QUERYMENU () { &_IOWR(ord(\'V\'), 37, \'struct v4l2_querymenu\');}' unless defined(&VIDIOC_QUERYMENU);
    eval 'sub VIDIOC_G_INPUT () { &_IOR(ord(\'V\'), 38, \'int\');}' unless defined(&VIDIOC_G_INPUT);
    eval 'sub VIDIOC_S_INPUT () { &_IOWR(ord(\'V\'), 39, \'int\');}' unless defined(&VIDIOC_S_INPUT);
    eval 'sub VIDIOC_G_EDID () { &_IOWR(ord(\'V\'), 40, \'struct v4l2_edid\');}' unless defined(&VIDIOC_G_EDID);
    eval 'sub VIDIOC_S_EDID () { &_IOWR(ord(\'V\'), 41, \'struct v4l2_edid\');}' unless defined(&VIDIOC_S_EDID);
    eval 'sub VIDIOC_G_OUTPUT () { &_IOR(ord(\'V\'), 46, \'int\');}' unless defined(&VIDIOC_G_OUTPUT);
    eval 'sub VIDIOC_S_OUTPUT () { &_IOWR(ord(\'V\'), 47, \'int\');}' unless defined(&VIDIOC_S_OUTPUT);
    eval 'sub VIDIOC_ENUMOUTPUT () { &_IOWR(ord(\'V\'), 48, \'struct v4l2_output\');}' unless defined(&VIDIOC_ENUMOUTPUT);
    eval 'sub VIDIOC_G_AUDOUT () { &_IOR(ord(\'V\'), 49, \'struct v4l2_audioout\');}' unless defined(&VIDIOC_G_AUDOUT);
    eval 'sub VIDIOC_S_AUDOUT () { &_IOW(ord(\'V\'), 50, \'struct v4l2_audioout\');}' unless defined(&VIDIOC_S_AUDOUT);
    eval 'sub VIDIOC_G_MODULATOR () { &_IOWR(ord(\'V\'), 54, \'struct v4l2_modulator\');}' unless defined(&VIDIOC_G_MODULATOR);
    eval 'sub VIDIOC_S_MODULATOR () { &_IOW(ord(\'V\'), 55, \'struct v4l2_modulator\');}' unless defined(&VIDIOC_S_MODULATOR);
    eval 'sub VIDIOC_G_FREQUENCY () { &_IOWR(ord(\'V\'), 56, \'struct v4l2_frequency\');}' unless defined(&VIDIOC_G_FREQUENCY);
    eval 'sub VIDIOC_S_FREQUENCY () { &_IOW(ord(\'V\'), 57, \'struct v4l2_frequency\');}' unless defined(&VIDIOC_S_FREQUENCY);
    eval 'sub VIDIOC_CROPCAP () { &_IOWR(ord(\'V\'), 58, \'struct v4l2_cropcap\');}' unless defined(&VIDIOC_CROPCAP);
    eval 'sub VIDIOC_G_CROP () { &_IOWR(ord(\'V\'), 59, \'struct v4l2_crop\');}' unless defined(&VIDIOC_G_CROP);
    eval 'sub VIDIOC_S_CROP () { &_IOW(ord(\'V\'), 60, \'struct v4l2_crop\');}' unless defined(&VIDIOC_S_CROP);
    eval 'sub VIDIOC_G_JPEGCOMP () { &_IOR(ord(\'V\'), 61, \'struct v4l2_jpegcompression\');}' unless defined(&VIDIOC_G_JPEGCOMP);
    eval 'sub VIDIOC_S_JPEGCOMP () { &_IOW(ord(\'V\'), 62, \'struct v4l2_jpegcompression\');}' unless defined(&VIDIOC_S_JPEGCOMP);
    eval 'sub VIDIOC_QUERYSTD () { &_IOR(ord(\'V\'), 63,  &v4l2_std_id);}' unless defined(&VIDIOC_QUERYSTD);
    eval 'sub VIDIOC_TRY_FMT () { &_IOWR(ord(\'V\'), 64, \'struct v4l2_format\');}' unless defined(&VIDIOC_TRY_FMT);
    eval 'sub VIDIOC_ENUMAUDIO () { &_IOWR(ord(\'V\'), 65, \'struct v4l2_audio\');}' unless defined(&VIDIOC_ENUMAUDIO);
    eval 'sub VIDIOC_ENUMAUDOUT () { &_IOWR(ord(\'V\'), 66, \'struct v4l2_audioout\');}' unless defined(&VIDIOC_ENUMAUDOUT);
    eval 'sub VIDIOC_G_PRIORITY () { &_IOR(ord(\'V\'), 67,  &u_int32_t);}' unless defined(&VIDIOC_G_PRIORITY);
    eval 'sub VIDIOC_S_PRIORITY () { &_IOW(ord(\'V\'), 68,  &u_int32_t);}' unless defined(&VIDIOC_S_PRIORITY);
    eval 'sub VIDIOC_G_SLICED_VBI_CAP () { &_IOWR(ord(\'V\'), 69, \'struct v4l2_sliced_vbi_cap\');}' unless defined(&VIDIOC_G_SLICED_VBI_CAP);
    eval 'sub VIDIOC_LOG_STATUS () { &_IO(ord(\'V\'), 70);}' unless defined(&VIDIOC_LOG_STATUS);
    eval 'sub VIDIOC_G_EXT_CTRLS () { &_IOWR(ord(\'V\'), 71, \'struct v4l2_ext_controls\');}' unless defined(&VIDIOC_G_EXT_CTRLS);
    eval 'sub VIDIOC_S_EXT_CTRLS () { &_IOWR(ord(\'V\'), 72, \'struct v4l2_ext_controls\');}' unless defined(&VIDIOC_S_EXT_CTRLS);
    eval 'sub VIDIOC_TRY_EXT_CTRLS () { &_IOWR(ord(\'V\'), 73, \'struct v4l2_ext_controls\');}' unless defined(&VIDIOC_TRY_EXT_CTRLS);
    eval 'sub VIDIOC_ENUM_FRAMESIZES () { &_IOWR(ord(\'V\'), 74, \'struct v4l2_frmsizeenum\');}' unless defined(&VIDIOC_ENUM_FRAMESIZES);
    eval 'sub VIDIOC_ENUM_FRAMEINTERVALS () { &_IOWR(ord(\'V\'), 75, \'struct v4l2_frmivalenum\');}' unless defined(&VIDIOC_ENUM_FRAMEINTERVALS);
    eval 'sub VIDIOC_G_ENC_INDEX () { &_IOR(ord(\'V\'), 76, \'struct v4l2_enc_idx\');}' unless defined(&VIDIOC_G_ENC_INDEX);
    eval 'sub VIDIOC_ENCODER_CMD () { &_IOWR(ord(\'V\'), 77, \'struct v4l2_encoder_cmd\');}' unless defined(&VIDIOC_ENCODER_CMD);
    eval 'sub VIDIOC_TRY_ENCODER_CMD () { &_IOWR(ord(\'V\'), 78, \'struct v4l2_encoder_cmd\');}' unless defined(&VIDIOC_TRY_ENCODER_CMD);
    eval 'sub VIDIOC_DBG_S_REGISTER () { &_IOW(ord(\'V\'), 79, \'struct v4l2_dbg_register\');}' unless defined(&VIDIOC_DBG_S_REGISTER);
    eval 'sub VIDIOC_DBG_G_REGISTER () { &_IOWR(ord(\'V\'), 80, \'struct v4l2_dbg_register\');}' unless defined(&VIDIOC_DBG_G_REGISTER);
    eval 'sub VIDIOC_S_HW_FREQ_SEEK () { &_IOW(ord(\'V\'), 82, \'struct v4l2_hw_freq_seek\');}' unless defined(&VIDIOC_S_HW_FREQ_SEEK);
    eval 'sub VIDIOC_S_DV_TIMINGS () { &_IOWR(ord(\'V\'), 87, \'struct v4l2_dv_timings\');}' unless defined(&VIDIOC_S_DV_TIMINGS);
    eval 'sub VIDIOC_G_DV_TIMINGS () { &_IOWR(ord(\'V\'), 88, \'struct v4l2_dv_timings\');}' unless defined(&VIDIOC_G_DV_TIMINGS);
    eval 'sub VIDIOC_DQEVENT () { &_IOR(ord(\'V\'), 89, \'struct v4l2_event\');}' unless defined(&VIDIOC_DQEVENT);
    eval 'sub VIDIOC_SUBSCRIBE_EVENT () { &_IOW(ord(\'V\'), 90, \'struct v4l2_event_subscription\');}' unless defined(&VIDIOC_SUBSCRIBE_EVENT);
    eval 'sub VIDIOC_UNSUBSCRIBE_EVENT () { &_IOW(ord(\'V\'), 91, \'struct v4l2_event_subscription\');}' unless defined(&VIDIOC_UNSUBSCRIBE_EVENT);
    eval 'sub VIDIOC_CREATE_BUFS () { &_IOWR(ord(\'V\'), 92, \'struct v4l2_create_buffers\');}' unless defined(&VIDIOC_CREATE_BUFS);
    eval 'sub VIDIOC_PREPARE_BUF () { &_IOWR(ord(\'V\'), 93, \'struct v4l2_buffer\');}' unless defined(&VIDIOC_PREPARE_BUF);
    eval 'sub VIDIOC_G_SELECTION () { &_IOWR(ord(\'V\'), 94, \'struct v4l2_selection\');}' unless defined(&VIDIOC_G_SELECTION);
    eval 'sub VIDIOC_S_SELECTION () { &_IOWR(ord(\'V\'), 95, \'struct v4l2_selection\');}' unless defined(&VIDIOC_S_SELECTION);
    eval 'sub VIDIOC_DECODER_CMD () { &_IOWR(ord(\'V\'), 96, \'struct v4l2_decoder_cmd\');}' unless defined(&VIDIOC_DECODER_CMD);
    eval 'sub VIDIOC_TRY_DECODER_CMD () { &_IOWR(ord(\'V\'), 97, \'struct v4l2_decoder_cmd\');}' unless defined(&VIDIOC_TRY_DECODER_CMD);
    eval 'sub VIDIOC_ENUM_DV_TIMINGS () { &_IOWR(ord(\'V\'), 98, \'struct v4l2_enum_dv_timings\');}' unless defined(&VIDIOC_ENUM_DV_TIMINGS);
    eval 'sub VIDIOC_QUERY_DV_TIMINGS () { &_IOR(ord(\'V\'), 99, \'struct v4l2_dv_timings\');}' unless defined(&VIDIOC_QUERY_DV_TIMINGS);
    eval 'sub VIDIOC_DV_TIMINGS_CAP () { &_IOWR(ord(\'V\'), 100, \'struct v4l2_dv_timings_cap\');}' unless defined(&VIDIOC_DV_TIMINGS_CAP);
    eval 'sub VIDIOC_ENUM_FREQ_BANDS () { &_IOWR(ord(\'V\'), 101, \'struct v4l2_frequency_band\');}' unless defined(&VIDIOC_ENUM_FREQ_BANDS);
    eval 'sub VIDIOC_DBG_G_CHIP_INFO () { &_IOWR(ord(\'V\'), 102, \'struct v4l2_dbg_chip_info\');}' unless defined(&VIDIOC_DBG_G_CHIP_INFO);
    eval 'sub VIDIOC_QUERY_EXT_CTRL () { &_IOWR(ord(\'V\'), 103, \'struct v4l2_query_ext_ctrl\');}' unless defined(&VIDIOC_QUERY_EXT_CTRL);
    eval 'sub BASE_VIDIOC_PRIVATE () {192;}' unless defined(&BASE_VIDIOC_PRIVATE);
    if(defined(&_KERNEL)) {
	eval 'sub VIDIOC_QUERYBUF50 () { &_IOWR(ord(\'V\'), 9, \'struct v4l2_buffer50\');}' unless defined(&VIDIOC_QUERYBUF50);
	eval 'sub VIDIOC_QBUF50 () { &_IOWR(ord(\'V\'), 15, \'struct v4l2_buffer50\');}' unless defined(&VIDIOC_QBUF50);
	eval 'sub VIDIOC_DQBUF50 () { &_IOWR(ord(\'V\'), 17, \'struct v4l2_buffer50\');}' unless defined(&VIDIOC_DQBUF50);
    }
}
1;
