comparison alt_audio_convert.h @ 380:44ed8bdeba74

More fixes from Frank.
author Ryan C. Gordon <icculus@icculus.org>
date Wed, 03 Jul 2002 04:33:23 +0000
parents 24a610dfbbfd
children fb519e6028e3
comparison
equal deleted inserted replaced
379:7e49f4901ceb 380:44ed8bdeba74
30 30
31 #include "SDL_audio.h" 31 #include "SDL_audio.h"
32 #define Sound_AI_Loop 0x2 32 #define Sound_AI_Loop 0x2
33 #define _fsize 32 33 #define _fsize 32
34 34
35 typedef struct{
36 Sint16 numerator;
37 Sint16 denominator;
38 } Fraction;
35 39
36 typedef struct{ 40 typedef struct{
37 Sint16 c[16][4*_fsize]; 41 Sint16 c[16][4*_fsize];
38 Uint8 incr[16]; 42 Uint8 incr[16];
39 int denominator; 43 Fraction ratio;
40 int numerator;
41 Uint32 zero; 44 Uint32 zero;
42 int mask; 45 int mask;
43 } VarFilter; 46 } VarFilter;
44 47
45 typedef struct{ 48 typedef struct{
46 Uint8* buffer; 49 Uint8* buffer;
47 int mode; 50 int mode;
48 VarFilter *filter; 51 VarFilter *filter;
49 } AdapterC; 52 } AdapterC;
50 53
54 typedef int (*Adapter) ( AdapterC Data, int length );
55
51 typedef struct{ 56 typedef struct{
52 VarFilter filter; 57 VarFilter filter;
53 int (*adapter[32]) ( AdapterC Data, int length ); 58 Adapter adapter[32];
54 /* buffer must be len*len_mult(+len_add) big */ 59 /* buffer must be len*len_mult(+len_add) big */
55 int len_mult; 60 int len_mult;
56 int len_add; 61 int len_add;
57 double add; 62 double add;
58 63