This repository has been archived on 2025-06-06. You can view files and clone it, but cannot push or open issues or pull requests.
Files
android-g900/Start_WM/test6/inc/GFEPP.h
2010-10-16 00:02:07 +06:00

90 lines
2.8 KiB
C
Executable File

/* Copyright (c) 2006 NVIDIA Corporation. All rights reserved.
*
* NVIDIA Corporation and its licensors retain all intellectual property
* and proprietary rights in and to this software, related documentation
* and any modifications thereto. Any use, reproduction, disclosure or
* distribution of this software and related documentation without an
* express license agreement from NVIDIA Corporation is strictly prohibited.
*/
/** @file GFEPP.h
GFSDK EPP API
*/
#ifndef __GFEPP_H__
#define __GFEPP_H__
#ifdef __cplusplus
extern "C"
{
#endif /* __cplusplus */
/** @addtogroup groupEPP EPPAPI EPP API
*/
/*@{*/
typedef struct _GFEPPBUFFERINFO
{
NvU32 flag;
PGFRECT pSrcRect;
void *pLine;
NvU32 alphaValue;
NvU32 numofSurfs;
PGFRMSURFACE *ppSurf;
} GFEPPBUFFERINFO, *PEPPBUFFERINFO;
// Typesafe functions for opening and closing this component
GF_RETTYPE GFEPPOpen(GFRmHandle hRm, GFEPPHandle *phEPP,
GF_STATE_TYPE state, GFRmChHandle hCh);
void GFEPPClose(GFEPPHandle *phEPP);
GF_RETTYPE GFEPPSetBuffers(GFEPPHandle EPPHandle, PEPPBUFFERINFO pBuf);
GF_RETTYPE GFEPPRaiseBuffer(GFEPPHandle EPPHandle, NvU32, NvU32* pCmdS, NvU32* pIndex);
GF_RETTYPE GFEPPRaiseFrame(GFEPPHandle EPPHandle, NvU32, NvU32* pCmdS, NvU32* pIndex);
#define EPPBUFFERINFO_FLAG_SRC_VI 0x00000001
//incoming video from VI
#define EPPBUFFERINFO_FLAG_SRC_SB 0x00000002
//incoming video from SB
#define EPPBUFFERINFO_FLAG_SRC_GC 0x00000003
//incoming video from display
#define EPPBUFFERINFO_FLAG_SRC_MASK 0x0000000F
#define EPPBUFFERINFO_FLAG_SRC_VI_YUV444 0x00000010
//incoming video from VI
#define EPPBUFFERINFO_FLAG_SRC_VI_BAYER 0x00000020
//incoming video from VI, Raw Bayer data
#define EPPBUFFERINFO_FLAG_SRC_VI_RGB 0x00000030
//incoming video from VI, Raw RGB data
#define EPPBUFFERINFO_FLAG_SRC_VI_MASK 0x000000F0
#define EPPBUFFERINFO_FLAG_PRE_PROC 0x00000100
//pre process filter enable
#define EPPBUFFERINFO_FLAG_AVERAGE 0x00000200
//enable average for 420 planar or 444 to 422 conversion.
#define EPPBUFFERINFO_FLAG_C_SIGN 0x00000400
//chroma sign
#define EPPBUFFERINFO_FLAG_DMA 0x00000800
//enable DMA
#define EPPBUFFERINFO_FLAG_DUP 0x00001000
//duplicate
#define EPPBUFFERINFO_FLAG_H_DIRECTION 0x00002000
#define EPPBUFFERINFO_FLAG_V_DIRECTION 0x00004000
#define EPPBUFFERINFO_FLAG_XY_SWAP 0x00008000
#define EPPBUFFERINFO_FLAG_SRC_SB_YUV 0x00010000
#define EPPBUFFERINFO_FLAG_SRC_SB_RGB 0x00020000
#define EPPBUFFERINFO_FLAG_SRC_SB_MASK 0x000F0000
//BE CAREFUL WITH THE STRIDE PROGRAMMING!
/*@}*/
#ifdef __cplusplus
}
#endif
#endif // _GFEPP_H_