Initial community commit

This commit is contained in:
Jef
2024-09-24 14:54:57 +02:00
parent 537bcbc862
commit 20d28e80a5
16810 changed files with 4640254 additions and 2 deletions
@@ -0,0 +1,74 @@
/****************************************************************************
*
* Module Title : dct.h
*
* Description : DCT header file.
*
****************************************************************************/
#ifndef __INC_DCT_H
#define __INC_DCT_H
/****************************************************************************
* Header files
****************************************************************************/
#include "type_aliases.h"
/****************************************************************************
* Macros
****************************************************************************/
#define COEFF_MAX 32768 // Max magnitude of DCT coefficient
// Extra bits of precision added to the fdct that have to be stripped off during the quantize
#define FDCT_PRECISION_BITS 1
#define FDCT_PRECISION_NEG_ADJ ((INT16) (1<<FDCT_PRECISION_BITS)-1)
#if 0 // AWG not required any more!!!
/* Cos and Sin constant multipliers used during DCT and IDCT */
extern const double C1S7;
extern const double C2S6;
extern const double C3S5;
extern const double C4S4;
extern const double C5S3;
extern const double C6S2;
extern const double C7S1;
// DCT lookup tables and pointers
extern INT32 * C4S4_TablePtr;
extern INT32 C4S4_Table[(COEFF_MAX * 4) + 1];
extern INT32 * C6S2_TablePtr;
extern INT32 C6S2_Table[(COEFF_MAX * 2) + 1];
extern INT32 * C2S6_TablePtr;
extern INT32 C2S6_Table[(COEFF_MAX * 2) + 1];
extern INT32 * C1S7_TablePtr;
extern INT32 C1S7_Table[(COEFF_MAX * 2) + 1];
extern INT32 * C7S1_TablePtr;
extern INT32 C7S1_Table[(COEFF_MAX * 2) + 1];
extern INT32 * C3S5_TablePtr;
extern INT32 C3S5_Table[(COEFF_MAX * 2) + 1];
extern INT32 * C5S3_TablePtr;
extern INT32 C5S3_Table[(COEFF_MAX * 2) + 1];
#endif
/****************************************************************************
* Exports
****************************************************************************/
#ifdef COMPDLL
// Forward Transform
extern void fdct_slow ( INT32 *InputData, double *OutputData );
#endif
// Reverse Transform
extern void IDctSlow( INT16 *InputData, INT16 *QuantMatrix, INT16 *OutputData );
extern void IDct10 ( INT16 *InputData, INT16 *QuantMatrix, INT16 *OutputData );
extern void IDct1 ( INT16 *InputData, INT16 *QuantMatrix, INT16 *OutputData );
#endif
@@ -0,0 +1,11 @@
#if !defined(_mac_specs_h)
#define _mac_specs_h
#if defined(__cplusplus)
extern "C" {
#endif
int vputil_hasAltivec(void);
int vputil_cpuMhz(void);
#if defined(__cplusplus)
}
#endif
#endif
@@ -0,0 +1,60 @@
/****************************************************************************
*
* Module Title : Reconstruct.h
*
* Description : Block Reconstruction module header
*
* AUTHOR : Paul Wilkins
*
*****************************************************************************
* Revision History
*
* 1.00 PGW 14/10/99 Created
*
*****************************************************************************
*/
#define STRICT /* Strict type checking. */
#ifndef RECONSTRUCT_H
#define RECONSTRUCT_H
#include "type_aliases.h"
/****************************************************************************
* Constants
*****************************************************************************
*/
/****************************************************************************
* Types
*****************************************************************************
*/
/****************************************************************************
* Data structures
*****************************************************************************
*/
/****************************************************************************
* Functions
*****************************************************************************
*/
// Scalar (no mmx) reconstruction functions
extern void ScalarReconIntra( INT16 *TmpDataBuffer, UINT8 * ReconPtr, UINT16 * ChangePtr, UINT32 LineStep );
extern void ScalarReconInter( INT16 *TmpDataBuffer, UINT8 * ReconPtr, UINT8 * RefPtr, INT16 * ChangePtr, UINT32 LineStep );
extern void ScalarReconInterHalfPixel2( INT16 *TmpDataBuffer, UINT8 * ReconPtr,UINT8 * RefPtr1, UINT8 * RefPtr2, INT16 * ChangePtr, UINT32 LineStep );
// MMx versions
extern void MMXReconIntra( INT16 *TmpDataBuffer, UINT8 * ReconPtr, UINT16 * ChangePtr, UINT32 LineStep );
extern void MmxReconInter( INT16 *TmpDataBuffer, UINT8 * ReconPtr, UINT8 * RefPtr, INT16 * ChangePtr, UINT32 LineStep );
extern void MmxReconInterHalfPixel2( INT16 *TmpDataBuffer, UINT8 * ReconPtr, UINT8 * RefPtr1, UINT8 * RefPtr2, INT16 * ChangePtr, UINT32 LineStep );
// WMT versions
extern void WmtReconIntra( INT16 *TmpDataBuffer, UINT8 * ReconPtr, UINT16 * ChangePtr, UINT32 LineStep );
extern void WmtReconInter( INT16 *TmpDataBuffer, UINT8 * ReconPtr, UINT8 * RefPtr, INT16 * ChangePtr, UINT32 LineStep );
extern void WmtReconInterHalfPixel2( INT16 *TmpDataBuffer, UINT8 * ReconPtr, UINT8 * RefPtr1, UINT8 * RefPtr2, INT16 * ChangePtr, UINT32 LineStep );
#endif