#include "codec.h"

Ir al código fuente de este archivo.
Definiciones | |
| #define | ZY2_K0 0x3800 |
| #define | ZY2_K1 0x5600 |
| #define | ZY2_ADAPT(data, bsign, bmag) |
| #define | ZY2_TOADPCM(Edata, data, bsign, bmag) |
| #define | ZY3_K0 0x399a |
| #define | ZY3_K1 0x3a9f |
| #define | ZY3_K2 0x4d14 |
| #define | ZY3_K3 0x6607 |
| #define | ZY3_ADAPT(data, bsign, bmag1, bmag0) |
| #define | ZY3_TOADPCM(Edata, data, bsign, bmag1, bmag0) |
Funciones | |
| PUBLIC SPL_VOID XAPI | adpcm_idvi_reset (ADPCM_IDVI *a) |
| PUBLIC SPL_VOID XAPI | adpcm_idvi_code (ADPCM_IDVI *a, pINT16 v16, pUINT8 v8, SPL_INT nd) |
| PUBLIC SPL_VOID XAPI | adpcm_idvi_decode (ADPCM_IDVI *a, pUINT8 v8, pINT16 v16, SPL_INT nd) |
| PUBLIC SPL_VOID XAPI | adpcm_zy2_reset (ADPCM_ZY2 *a) |
| PUBLIC SPL_VOID XAPI | adpcm_zy2_code (ADPCM_ZY2 *a, pINT16 v16, pUINT8 v8, SPL_INT nd) |
| PUBLIC SPL_VOID XAPI | adpcm_zy2_decode (ADPCM_ZY2 *a, pUINT8 v8, pINT16 v16, SPL_INT nd) |
| PUBLIC SPL_VOID XAPI | adpcm_zy3_reset (ADPCM_ZY3 *a) |
| PUBLIC SPL_VOID XAPI | adpcm_zy3_code (ADPCM_ZY3 *a, pINT16 v16, pUINT8 v8, SPL_INT nd) |
| PUBLIC SPL_VOID XAPI | adpcm_zy3_decode (ADPCM_ZY3 *a, pUINT8 v8, pINT16 v16, SPL_INT nd) |
Variables | |
| PRIVATE INT | _adpcm_idvi_idxtab [16] |
| PRIVATE INT16 | _adpcm_idvi_steptab [89] |
| #define ZY2_ADAPT | ( | data, | |||
| bsign, | |||||
| bmag | ) |
Valor:
{ \
if (data&bsign) { /* decrece */ \
if (data&bmag) { /* mag=1 */ \
a->ExtMax -= (a->Delta + (a->Delta>>1)); \
a->Delta = (INT16)(((INT32)a->Delta*ZY2_K1+8192)>>14); \
} \
else { /* mag=0 */ \
a->ExtMax -= (a->Delta>>1); \
a->Delta = (INT16)(((INT32)a->Delta*ZY2_K0+8192)>>14); \
} \
} \
else { /* crece */ \
/* a->Delta impar, incrementa en uno... no entiendo muy bien */ \
if (a->Delta&1) \
a->ExtMax++; \
if (data&bmag) { /* mag=1 */ \
a->ExtMax += (a->Delta + (a->Delta>>1)); \
a->Delta = (INT16)(((INT32)a->Delta*ZY2_K1+8192)>>14); \
} \
else { /* mag=0 */ \
a->ExtMax += (a->Delta>>1); \
a->Delta = (INT16)(((INT32)a->Delta*ZY2_K0+8192)>>14); \
} \
} \
}
| #define ZY2_TOADPCM | ( | Edata, | |||
| data, | |||||
| bsign, | |||||
| bmag | ) |
| #define ZY3_TOADPCM | ( | Edata, | |||
| data, | |||||
| bsign, | |||||
| bmag1, | |||||
| bmag0 | ) |
| PUBLIC SPL_VOID XAPI adpcm_idvi_reset | ( | ADPCM_IDVI * | a | ) |
| PUBLIC SPL_VOID XAPI adpcm_idvi_code | ( | ADPCM_IDVI * | a, | |
| pINT16 | v16, | |||
| pUINT8 | v8, | |||
| SPL_INT | nd | |||
| ) |
| PUBLIC SPL_VOID XAPI adpcm_idvi_decode | ( | ADPCM_IDVI * | a, | |
| pUINT8 | v8, | |||
| pINT16 | v16, | |||
| SPL_INT | nd | |||
| ) |
| PUBLIC SPL_VOID XAPI adpcm_zy2_reset | ( | ADPCM_ZY2 * | a | ) |
| PUBLIC SPL_VOID XAPI adpcm_zy2_code | ( | ADPCM_ZY2 * | a, | |
| pINT16 | v16, | |||
| pUINT8 | v8, | |||
| SPL_INT | nd | |||
| ) |
| PUBLIC SPL_VOID XAPI adpcm_zy2_decode | ( | ADPCM_ZY2 * | a, | |
| pUINT8 | v8, | |||
| pINT16 | v16, | |||
| SPL_INT | nd | |||
| ) |
| PUBLIC SPL_VOID XAPI adpcm_zy3_reset | ( | ADPCM_ZY3 * | a | ) |
| PUBLIC SPL_VOID XAPI adpcm_zy3_code | ( | ADPCM_ZY3 * | a, | |
| pINT16 | v16, | |||
| pUINT8 | v8, | |||
| SPL_INT | nd | |||
| ) |
| PUBLIC SPL_VOID XAPI adpcm_zy3_decode | ( | ADPCM_ZY3 * | a, | |
| pUINT8 | v8, | |||
| pINT16 | v16, | |||
| SPL_INT | nd | |||
| ) |
| PRIVATE INT _adpcm_idvi_idxtab[16] |
| PRIVATE INT16 _adpcm_idvi_steptab[89] |
Valor inicial:
{
7, 8, 9, 10, 11, 12, 13, 14, 16, 17,
19, 21, 23, 25, 28, 31, 34, 37, 41, 45,
50, 55, 60, 66, 73, 80, 88, 97, 107, 118,
130, 143, 157, 173, 190, 209, 230, 253, 279, 307,
337, 371, 408, 449, 494, 544, 598, 658, 724, 796,
876, 963, 1060, 1166, 1282, 1411, 1552, 1707, 1878, 2066,
2272, 2499, 2749, 3024, 3327, 3660, 4026, 4428, 4871, 5358,
5894, 6484, 7132, 7845, 8630, 9493, 10442, 11487, 12635, 13899,
15289, 16818, 18500, 20350, 22385, 24623, 27086, 29794, 32767
}
1.5.6