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

📄 portab.h

📁 基于Linux的ffmepg decoder
💻 H
字号:
/***************************************************************************** *  Common things ****************************************************************************/#if defined(LINUX)	#define __int64		long long	#define __align8 	__attribute__ ((aligned (8)))	#define __align16 	__attribute__ ((aligned (16)))#else		/// CodeWarrior	#define __align16 	__align(16)#endif/* Debug level masks */#define DPRINTF_ERROR		0x00000001#define DPRINTF_STARTCODE	0x00000002#define DPRINTF_HEADER		0x00000004#define DPRINTF_TIMECODE	0x00000008#define DPRINTF_MB			0x00000010#define DPRINTF_COEFF		0x00000020#define DPRINTF_MV			0x00000040#define DPRINTF_DEBUG		0x80000000#define strid_cons			0x1a0#define strid2_cons			0xd0//#define strid_cons		0xf0//#define strid2_cons		0x78/* debug level for this library */#define DPRINTF_LEVEL		0/* Buffer size for non C99 compliant compilers (msvc) */#define DPRINTF_BUF_SZ  	1024/***************************************************************************** *  Types used in XviD sources ****************************************************************************//*---------------------------------------------------------------------------- | Standard Unix include file (sorry, we put all unix into "linux" case) *---------------------------------------------------------------------------*/#ifndef uint8_t#    define boolean int#    define int8_t   char#    define uint8_t  unsigned char#    define int16_t  short#    define uint16_t unsigned short#    define int32_t  int#    define uint32_t unsigned int#    define int64_t  __int64#    define uint64_t unsigned __int64#endif#define bool int/***************************************************************************** *  Some things that are only architecture dependant ****************************************************************************/#    define CACHE_LINE  16#    define ptr_t uint32_t/***************************************************************************** *  Things that must be sorted by compiler and then by architecture ****************************************************************************//***************************************************************************** *  MSVC compiler specific macros, functions ****************************************************************************//*---------------------------------------------------------------------------- | Common gcc stuff *---------------------------------------------------------------------------*//* * As gcc is (mostly) C99 compliant, we define DPRINTF only if it's realy needed * and it's a macro calling fprintf directly */#        define DECLARE_ALIGNED_MATRIX(name,sizex,sizey,type,alignment) \                type name##_storage[(sizex)*(sizey)+(alignment)-1]; \                type * name = (type *) (((int32_t) name##_storage+(alignment - 1)) & ~((int32_t)(alignment)-1))/*---------------------------------------------------------------------------- | gcc SPARC specific macros/functions *---------------------------------------------------------------------------*/#        define BSWAP(a) \                ((a) = (((a) & 0xff) << 24)  | (((a) & 0xff00) << 8) | \                       (((a) >> 8) & 0xff00) | (((a) >> 24) & 0xff))

⌨️ 快捷键说明

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