]> icculus.org git repositories - taylor/freespace2.git/blob - include/acm.h
Initial revision
[taylor/freespace2.git] / include / acm.h
1 /*
2  * $Logfile: /Freespace2/code/Sound/acm.h $
3  * $Revision$
4  * $Date$
5  * $Author$
6  *
7  * Header file for interface to Audio Compression Manager functions
8  *
9  * $Log$
10  * Revision 1.1  2002/05/03 03:28:12  root
11  * Initial revision
12  *
13  * 
14  * 2     10/07/98 10:53a Dave
15  * Initial checkin.
16  * 
17  * 1     10/07/98 10:51a Dave
18  * 
19  * 5     2/18/98 5:49p Lawrance
20  * Even if the ADPCM codec is unavailable, allow game to continue.
21  * 
22  * 4     11/28/97 2:09p Lawrance
23  * Overhaul how ADPCM conversion works... use much less memory... safer
24  * too.
25  * 
26  * 3     11/22/97 11:32p Lawrance
27  * decompress ADPCM data into 8 bit (not 16bit) for regular sounds (ie not
28  * music)
29  * 
30  * 2     5/29/97 12:03p Lawrance
31  * creation of file to hold AudioCompressionManager specific code
32  *
33  * $NoKeywords: $
34  */
35
36 #ifndef __FREESPACE_ACM_H__
37 #define __FREESPACE_ACM_H__
38
39 #include <mmreg.h>
40 #include <msacm.h>
41 #include "pstypes.h"
42
43 int     ACM_convert_ADPCM_to_PCM(WAVEFORMATEX *pwfxSrc, ubyte *src, int src_len, ubyte **dest, int max_dest_bytes, int *dest_len, unsigned int *src_bytes_used, unsigned short dest_bps=16);
44 int     ACM_init();
45 void    ACM_close();
46 int     ACM_is_inited();
47
48
49 int ACM_stream_open(WAVEFORMATEX *pwfxSrc, WAVEFORMATEX *pwfxDest, void **stream, int dest_bps=16);
50 int ACM_stream_close(void *stream);
51 int ACM_query_source_size(void *stream, int dest_len);
52 int ACM_query_dest_size(void *stream, int src_len);
53
54 int ACM_convert(void *stream, ubyte *src, int src_len, ubyte *dest, int max_dest_bytes, unsigned int *dest_len, unsigned int *src_bytes_used);
55
56
57 #endif /* __ACM_H__ */
58