AG903ライブラリリファレンス
内容インデックスホーム
前へ上へ次へ
AG903_ViaMgrSetInputParameter 関数

フォーマット/カラーモード設定

Syntax
C++
int32_t AG903_ViaMgrSetInputParameter(AG903_ViaMgrInputHandle * handle, uint32_t format, uint32_t mode);
引数 
説明 
AG903_ViaMgrInputHandle * handle 
[in] VIA ハンドル 
uint32_t format 
[in] フォーマット 
uint32_t mode 
[in] カラーモード 

設定結果

返値の詳細 
説明 
正常終了 
-AG903_EINVAL 
handle に不正なアナログビデオ入力ハンドルが指定された場合
format に不正な値が指定された場合
mode に不正な値が指定された場合 

指定されたアナログビデオ入力ハンドルに対してフォーマット、カラーモードを設定します。 

format には「VIAフォーマット」、mode には「VIAカラーモード」を指定してください。

1: int32_t AG903_ViaMgrSetInputParameter(AG903_ViaMgrInputHandle *handle, uint32_t format, uint32_t mode) 2: { 3: 4: if ((handle == NULL) || (handle->id != AG903_VIA_MGR_INPUT_HANDLE_ID)) { 5: return -AG903_EINVAL; 6: } 7: 8: 9: switch (format) { 10: case AG903_VIA_MGR_FORMAT_NTSC_BT: 11: case AG903_VIA_MGR_FORMAT_NTSC_SQ: 12: case AG903_VIA_MGR_FORMAT_NTSC_4F: 13: case AG903_VIA_MGR_FORMAT_PAL_BT: 14: case AG903_VIA_MGR_FORMAT_PAL_SQ: 15: break; 16: default: 17: return -AG903_EINVAL; 18: } 19: 20: 21: switch (mode) { 22: case AG903_VIA_MGR_MODE_COLOR: 23: case AG903_VIA_MGR_MODE_MONOCHROME: 24: break; 25: default: 26: return -AG903_EINVAL; 27: } 28: 29: VIAPrmParamVIASRCSELECT select; 30: select.gcat = GCAT; 31: select.nsck = ViaMode[mode].nsck; 32: select.nsns = NSNS; 33: select.nons = NONS; 34: AG903_ViaPrmSetVIASRCSELECT(handle->port_no, &select); 35: 36: AG903_ViaPrmSetVIASRCFORMAT(handle->port_no, ViaFormat[format].fmt); 37: AG903_ViaPrmSetVIASRCHCYCLE(handle->port_no, ViaFormat[format].hcycle); 38: AG903_ViaPrmSetVIASRCHVALID(handle->port_no, ViaFormat[format].hvalid); 39: AG903_ViaPrmSetVIASRCHDELAY(handle->port_no, ViaFormat[format].hdelay); 40: AG903_ViaPrmSetVIASRCVCYCLE(handle->port_no, ViaFormat[format].vcycle); 41: AG903_ViaPrmSetVIASRCVVALID(handle->port_no, ViaFormat[format].vvalid); 42: AG903_ViaPrmSetVIASRCVDELAY(handle->port_no, ViaFormat[format].vdelay); 43: AG903_ViaPrmSetVIASRCFRMFREQ(handle->port_no, ViaFormat[format].frm); 44: AG903_ViaPrmSetVIASIGYCS(handle->port_no, TRAP, ViaMode[mode].mono); 45: 46: VIAPrmParamVIACHDSETUP3 setup3; 47: setup3.agcen = AGCEN; 48: setup3.accov = ACCOV; 49: setup3.acctc = ACCTC; 50: setup3.accmark = ViaFormat[format].accmark; 51: AG903_ViaPrmSetVIACHDSETUP3(handle->port_no, &setup3); 52: 53: VIAPrmParamVIACHDSETUP5 setup5; 54: setup5.cbpllulth = CBPLLULTH; 55: setup5.cbpllulsv = CBPLLULSV; 56: setup5.agcgainspd = AGCGAINSPD; 57: setup5.agcofstspd = AGCOFSTSPD; 58: setup5.agcpos = AGCPOS; 59: setup5.agcpal = ViaFormat[format].agcpal; 60: setup5.agcgainen = AGCGAINEN; 61: setup5.agcofsten = AGCOFSTEN; 62: AG903_ViaPrmSetVIACHDSETUP5(handle->port_no, &setup5); 63: 64: AG903_ViaPrmSetVIACLAMPLEVEL(handle->port_no, CLAMPOFS); 65: 66: return AG903_ENONE; 67: }
Copyright (c) 2017-2025 Axell Corporation. All rights reserved.