⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 saa7112.h

📁 用于TM1300/PNX1300系列DSP(主要用于视频处理)的设备库的源码
💻 H
字号:
/*
 * Copyright (c) 1995,1996,1997 by TriMedia Technologies. 
 *
 * +------------------------------------------------------------------+
 * | This software is furnished under a license and may only be used  |
 * | and copied in accordance with the terms and conditions of  such  |
 * | a license and with the inclusion of this copyright notice. This  |
 * | software or any other copies of this software may not be provided|
 * | or otherwise made available to any other person.  The ownership  |
 * | and title of this software is not transferred.                   |
 * |                                                                  |
 * | The information in this software is subject  to change without   |
 * | any  prior notice and should not be construed as a commitment by |
 * | TriMedia Technologies.                                           |
 * |                                                                  |
 * | this code and information is provided "as is" without any        |
 * | warranty of any kind, either expressed or implied, including but |
 * | not limited to the implied warranties of merchantability and/or  |
 * | fitness for any particular purpose.                              |
 * +------------------------------------------------------------------+
 *
 *  Module name              : saa7112.h    1.10
 *
 *  Last update              : 18:43:44 - 00/11/09
 *
 *  Description              : 
 *
 *  Initialize and control routines for saa7112.
 *
 *
 *  Revision                 :
 *      
 *		
 */

#ifndef _SAA7112_H_
#define _SAA7112_H_

#include <tm1/tmAvFormats.h>
#include <tmlib/tmtypes.h>
#include <tm1/tmBoard.h>	/* for subaddInfo_t */

#if defined(__cplusplus)
extern "C" {
#endif

#define SAA7112_SUPPORTED_STANDARDS	(vasNTSC | vasPAL)
#define SAA7112_SUPPORTED_ADAPTERS	(vaaCVBS | vaaSvideo)
#define SAA7112_CAPABILITIES_FLAGS  (vcapNone)
#define SAA7112_OUTPUT_FORMATS      (vdfNone)

extern tmLibdevErr_t saa7112Init (pboardVIParam_t param);

extern tmLibdevErr_t saa7112Configure(UInt32 subaddr, UInt32 value);

extern tmLibdevErr_t saa7112GetStandard(tmVideoAnalogStandard_t *standard);
extern tmLibdevErr_t saa7112GetBrightness(UInt *val);
extern tmLibdevErr_t saa7112SetBrightness(UInt val);
extern tmLibdevErr_t saa7112GetContrast(UInt *val);
extern tmLibdevErr_t saa7112SetContrast(UInt val);
extern tmLibdevErr_t saa7112GetSaturation(UInt *val);
extern tmLibdevErr_t saa7112SetSaturation(UInt val);
extern tmLibdevErr_t saa7112GetHue(UInt *val);
extern tmLibdevErr_t saa7112SetHue(UInt val);

/********************************************************************************************/
extern tmLibdevErr_t saa7112InitM(pboardVIDec_t pVD, pboardVIParam_t param);

extern tmLibdevErr_t saa7112ConfigureM(pboardVIDec_t pVD, UInt32 subaddr, UInt32 value);

extern tmLibdevErr_t saa7112GetStandardM(pboardVIDec_t pVD, tmVideoAnalogStandard_t *standard);
extern tmLibdevErr_t saa7112GetBrightnessM(pboardVIDec_t pVD, UInt *val);
extern tmLibdevErr_t saa7112SetBrightnessM(pboardVIDec_t pVD, UInt val);
extern tmLibdevErr_t saa7112GetContrastM(pboardVIDec_t pVD, UInt *val);
extern tmLibdevErr_t saa7112SetContrastM(pboardVIDec_t pVD, UInt val);
extern tmLibdevErr_t saa7112GetSaturationM(pboardVIDec_t pVD, UInt *val);
extern tmLibdevErr_t saa7112SetSaturationM(pboardVIDec_t pVD, UInt val);
extern tmLibdevErr_t saa7112GetHueM(pboardVIDec_t pVD, UInt *val);
extern tmLibdevErr_t saa7112SetHueM(pboardVIDec_t pVD, UInt val);

/********************************************************************************************/
extern tmLibdevErr_t saa7112GetVSyncFallingEdge(pboardVIDec_t pVD, UInt *lineNumber);
extern tmLibdevErr_t saa7112GetSlicedData(pboardVIDec_t pVD, UInt8 *Y, UInt8 *U, UInt8 *V, tmVideoDataService_t service, UInt sizeY, UInt8 *data, UInt8 *dataSize);
extern tmLibdevErr_t saa7112GetStatus(pboardVIDec_t pVD, tmVideoStatusType_t type, UInt *state);
extern tmLibdevErr_t saa7112GetSupportedDataServices(tmVideoDataService_t fieldOne[], tmVideoDataService_t fieldTwo[], UInt8 tblSize);
extern tmLibdevErr_t saa7112SetDataServices(pboardVIDec_t pVD, tmVideoDataService_t fieldOne[], tmVideoDataService_t fieldTwo[], UInt8 tblSize);
extern tmLibdevErr_t saa7112GetSlicerLineFlags(pboardVIDec_t pVD, Bool fieldOne[], Bool fieldTwo[], UInt8 tblSize);
extern tmLibdevErr_t saa7112EnableSlicing(pboardVIDec_t pVD, Bool enable);
extern tmLibdevErr_t saa7112SetSlicerVideoStandard(pboardVIDec_t pVD, tmVideoAnalogStandard_t standard);
extern tmLibdevErr_t saa7112GetSlicerVideoStandard(pboardVIDec_t pVD, tmVideoAnalogStandard_t *standard);
extern tmLibdevErr_t saa7112ToggleFieldID(pboardVIDec_t pVD, Bool toggle);
extern tmLibdevErr_t saa7112SetSlicerInput(pboardVIDec_t pVD, UInt num);
extern tmLibdevErr_t saa7112GetSlicerInput(pboardVIDec_t pVD, UInt *num);
extern tmLibdevErr_t saa7112SetVideoColor(pboardVIDec_t pVD, tmVideoColor_t color, UInt val);
extern tmLibdevErr_t saa7112GetVideoColor(pboardVIDec_t pVD, tmVideoColor_t color, UInt *val);
extern tmLibdevErr_t saa7112SetAnalogInput(pboardVIDec_t pVD, UInt num);
extern tmLibdevErr_t saa7112GetAnalogInput(pboardVIDec_t pVD, UInt *num);
extern tmLibdevErr_t saa7112SetStandard(pboardVIDec_t pVD, tmVideoAnalogStandard_t standard);
extern tmLibdevErr_t saa7112SetSourceType(pboardVIDec_t pVD, tmVideoSourceType_t type);
extern tmLibdevErr_t saa7112GetSourceType(pboardVIDec_t pVD, tmVideoSourceType_t *type);
extern tmLibdevErr_t saa7112SetOutputFormat(pboardVIDec_t pVD, tmVideoRGBYUVFormat_t format);
extern tmLibdevErr_t saa7112GetOutputFormat(pboardVIDec_t pVD, tmVideoRGBYUVFormat_t *format);
extern tmLibdevErr_t saa7112SetAcquisitionWnd(pboardVIDec_t pVD, UInt beginX, UInt beginY, UInt endX, UInt endY);
extern tmLibdevErr_t saa7112GetAcquisitionWnd(pboardVIDec_t pVD, UInt *beginX, UInt *beginY, UInt *endX, UInt *endY);
extern tmLibdevErr_t saa7112GetDefaultAcquisitionWnd(pboardVIDec_t pVD, UInt *beginX, UInt *beginY, UInt *endX, UInt *endY);
extern tmLibdevErr_t saa7112SetOutputSize(pboardVIDec_t pVD, UInt width, UInt height);
extern tmLibdevErr_t saa7112SetInterlaceMode(pboardVIDec_t pVD, Bool interlace);
extern tmLibdevErr_t saa7112DisableDecoder(pboardVIDec_t pVD, Bool disable);
extern tmLibdevErr_t saa7112EnablePowerSaveMode(pboardVIDec_t pVD, Bool enable);
extern tmLibdevErr_t saa7112GetGPIOCount(pboardVIDec_t pVD, UInt *num);
extern tmLibdevErr_t saa7112SetGPIOState(pboardVIDec_t pVD, UInt pin, Bool state);
extern tmLibdevErr_t saa7112GetGPIOState(pboardVIDec_t pVD, UInt pin, Bool *state);
extern tmLibdevErr_t saa7112OpenVBI(pboardVIDec_t pVD, UInt sampleFreq, UInt startLine, UInt numLines);
extern tmLibdevErr_t saa7112EnableVBI(pboardVIDec_t pVD, Bool enable);
extern tmLibdevErr_t saa7112SetVBIMode(pboardVIDec_t pVD, tmVideoVBIMode_t mode);
extern tmLibdevErr_t saa7112SetSlicerMode(pboardVIDec_t pVD, tmVideoSlicerMode_t mode);
extern tmLibdevErr_t saa7112CloseVBI(pboardVIDec_t pVD);
extern tmLibdevErr_t saa7112GetSlicerLineFlags(pboardVIDec_t pVD, Bool fieldOne[], Bool fieldTwo[], UInt8 tblSize);
extern tmLibdevErr_t saa7112GetAdapterVideoStandard(pboardVIDec_t pVD, tmVideoAnalogAdapter_t adapter, UInt adapterNum, tmVideoAnalogStandard_t *std);

#if defined(__cplusplus)
}
#endif

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -