FMPProperty dwFlags are:
Different types of property sets are:
typedef enum{ REGISTRY_COMMON_SET=1, // registry set common for all board versions REGISTRY_HDTV_SET, // registry set used only for hdtv mode REGISTRY_VGAVENDOR_SET,// registry set used mostly for digital overlay SCANCONVERTER_SET, // property set to access the scan converter EEPROM_SET, // property set to access the scan converter BOARDINFO_SET, // property set to access general properties of the board VIDEO_SET, // property set to access video properties of the board AUDIO_SET, // property set to access audio properties of the board PROPERTY_MAX_SET // property set to maximum }PROPERTY_SETS;
REGISTRY_COMMON_SET use DWORD. ID of property sets are:
typedef enum{ eTvOut, eTvMR0, eDoHwReset, eDisableSpdifOutputInReset, eActiveVideoWidthNtsc, eActiveVideoWidthPal, eForcedProgressiveSourceOff, eForcedProgressiveAlways, eNtscPalFrameDrop, eVGAForcedInterlaced, eAudioOutput, eVolumeRight, eVolumeLeft, eDacType, eAudioDacBitsPerSample, eDoAudioLater, eBrightness, eContrast, eSaturation, eTvBrightness, eTvContrast, eTvSaturation, eDResBitsPerPixel, eDResScreenWidth, eDResScreenHeight, ePreviousHFreq, eTotalPixelsPerLine, eAcpiEnable, eDecoderIsSlave, eZoomEnable, eWindowTvEnable, eWindowHdtvEnable, eOsdVideoIndependent, eMaximumDvclk, eCommonRegMax }REGISTRY_COMMON;
REGISTRY_HDTV set uses DWORD
typedef enum{ eHdtvHFreq, eHdtvVFreq, eHdtvVideoWidth, eHdtvVideoHeight, eHdtvHSyncTotal, eHdtvPreHSync, eHdtvHSyncActive, eHdtvPostHSync, eHdtvVSyncTotal, eHdtvPreVSync, eHdtvVSyncActive, eHdtvPostVSync, eHdtvPixelFreq, eHdtvInterlaced, eHdtvRegMax }REGISTRY_HDTV;
REGISTRY_VGA_VENDOR set uses DWORD
typedef enum{ eInvertField, eVmi_16bits, eCcir_656, eSyncEnable, eVip20, eVgaVendorRegMax }REGISTRY_VGA_VENDOR;
SCANCONVERTER set uses DWORD, few exceptions apply.
typedef enum{ escAccessRegister, // uses RM_WRITE escResetDefault, escBrightness, escContrast, escSaturation, escSharpness, escFlicker, escChromaFilter, escLumaFilter, escNtscPedestal, escMacrovision, escTvStandard, escOutputFormat, escScart, escHwOutputHorzOffsShadow, escHwOutputVertOffsShadow, escTVPixels, escTVLines, escHorizontalPositionOffset, escVerticalPositionOffset, escHorizontalScaleStep, escVerticalScaleStep, escHorizontalPanPosition, escVerticalPanPosition, escZoom, escScanConverterMax }SCANCONVERTER;
EEPROM_SET use DWORD, few exceptions apply.
typedef enum{ eEepromAccess, // uses RM_WRITE eEepromMax }EEPROM;
BOARDINFO_SET uses DWORD.
typedef enum{ ebiDeviceId, ebiSubId, ebiVersion, ebiAPMState, ebiPIOAccess, //access to PIO - danger - GET changes PIO in input, SET changes PIO in output eBoardInfoMax }BOADDINFO;
VIDEO_SET uses DWORD
typedef enum{ evMax }VIDEO_ENUM;
AUDIO_SET uses DWORD
typedef enum{ eAudioFineVcxo, eAudioPllCoef, eaMax }AUDIO_ENUM;
DWORD get_TvBrightness(short *pVal)
{
DWORD sizeOut, fVal;
if (pVal == NULL)
return NOTGOOD;
Get the focus TV output to new standard
if (FMPProperty (KSPROPERTY_TYPE_GET, SCANCONVERTER_SET, escBrightness, 0, &fVal,
sizeof(fVal), &sizeOut) == OK){
if(sizeOut != sizeof(fVal))
return NOTGOOD;pVal = (short) fVal;
}
else{
*pVal = BRT_RESET;
return NOTGOOD;
}
return OK;
}