OpenCore  1.0.4
OpenCore Bootloader
Loading...
Searching...
No Matches
polyphase.c File Reference
#include "coder.h"
#include "assembly.h"

Go to the source code of this file.

Macros

#define DEF_NFRACBITS   (DQ_FRACBITS_OUT - 2 - 2 - 15)
 
#define CSHIFT   12 /* coefficients have 12 leading sign bits for early-terminating mulitplies */
 
#define MC0M(x)
 
#define MC1M(x)
 
#define MC2M(x)
 
#define MC0S(x)
 
#define MC1S(x)
 
#define MC2S(x)
 

Functions

void PolyphaseMono (short *pcm, int *vbuf, const int *coefBase)
 
void PolyphaseStereo (short *pcm, int *vbuf, const int *coefBase)
 

Macro Definition Documentation

◆ CSHIFT

#define CSHIFT   12 /* coefficients have 12 leading sign bits for early-terminating mulitplies */

Definition at line 57 of file polyphase.c.

◆ DEF_NFRACBITS

#define DEF_NFRACBITS   (DQ_FRACBITS_OUT - 2 - 2 - 15)

Definition at line 56 of file polyphase.c.

◆ MC0M

#define MC0M ( x)
Value:
{ \
c1 = *coef; coef++; c2 = *coef; coef++; \
vLo = *(vb1+(x)); vHi = *(vb1+(23-(x))); \
sum1L = MADD64(sum1L, vLo, c1); sum1L = MADD64(sum1L, vHi, -c2); \
}
UINT16 x
Definition BmfFile.h:83

Definition at line 74 of file polyphase.c.

◆ MC0S

#define MC0S ( x)
Value:
{ \
c1 = *coef; coef++; c2 = *coef; coef++; \
vLo = *(vb1+(x)); vHi = *(vb1+(23-(x))); \
sum1L = MADD64(sum1L, vLo, c1); sum1L = MADD64(sum1L, vHi, -c2); \
vLo = *(vb1+32+(x)); vHi = *(vb1+32+(23-(x))); \
sum1R = MADD64(sum1R, vLo, c1); sum1R = MADD64(sum1R, vHi, -c2); \
}

Definition at line 179 of file polyphase.c.

◆ MC1M

#define MC1M ( x)
Value:
{ \
c1 = *coef; coef++; \
vLo = *(vb1+(x)); \
sum1L = MADD64(sum1L, vLo, c1); \
}

Definition at line 80 of file polyphase.c.

◆ MC1S

#define MC1S ( x)
Value:
{ \
c1 = *coef; coef++; \
vLo = *(vb1+(x)); \
sum1L = MADD64(sum1L, vLo, c1); \
vLo = *(vb1+32+(x)); \
sum1R = MADD64(sum1R, vLo, c1); \
}

Definition at line 187 of file polyphase.c.

◆ MC2M

#define MC2M ( x)
Value:
{ \
c1 = *coef; coef++; c2 = *coef; coef++; \
vLo = *(vb1+(x)); vHi = *(vb1+(23-(x))); \
sum1L = MADD64(sum1L, vLo, c1); sum2L = MADD64(sum2L, vLo, c2); \
sum1L = MADD64(sum1L, vHi, -c2); sum2L = MADD64(sum2L, vHi, c1); \
}

Definition at line 86 of file polyphase.c.

◆ MC2S

#define MC2S ( x)
Value:
{ \
c1 = *coef; coef++; c2 = *coef; coef++; \
vLo = *(vb1+(x)); vHi = *(vb1+(23-(x))); \
sum1L = MADD64(sum1L, vLo, c1); sum2L = MADD64(sum2L, vLo, c2); \
sum1L = MADD64(sum1L, vHi, -c2); sum2L = MADD64(sum2L, vHi, c1); \
vLo = *(vb1+32+(x)); vHi = *(vb1+32+(23-(x))); \
sum1R = MADD64(sum1R, vLo, c1); sum2R = MADD64(sum2R, vLo, c2); \
sum1R = MADD64(sum1R, vHi, -c2); sum2R = MADD64(sum2R, vHi, c1); \
}

Definition at line 195 of file polyphase.c.

Function Documentation

◆ PolyphaseMono()

void PolyphaseMono ( short * pcm,
int * vbuf,
const int * coefBase )

Definition at line 112 of file polyphase.c.

◆ PolyphaseStereo()

void PolyphaseStereo ( short * pcm,
int * vbuf,
const int * coefBase )

Definition at line 225 of file polyphase.c.