2 * msacmdrv.h - Declarations for MSACM driver
5 #ifndef __WINE_MSACMDRV_H
6 #define __WINE_MSACMDRV_H
11 /***********************************************************************
15 /***********************************************************************
19 #define MAKE_ACM_VERSION(mjr, mnr, bld) \
20 (((long)(mjr)<<24) | ((long)(mnr)<<16) | ((long)bld))
22 #define ACMDRVOPENDESC_SECTIONNAME_CHARS
24 #define ACMDM_DRIVER_NOTIFY (ACMDM_BASE + 1)
25 #define ACMDM_DRIVER_DETAILS (ACMDM_BASE + 10)
27 #define ACMDM_HARDWARE_WAVE_CAPS_INPUT (ACMDM_BASE + 20)
28 #define ACMDM_HARDWARE_WAVE_CAPS_OUTPUT (ACMDM_BASE + 21)
30 #define ACMDM_FORMATTAG_DETAILS (ACMDM_BASE + 25)
31 #define ACMDM_FORMAT_DETAILS (ACMDM_BASE + 26)
32 #define ACMDM_FORMAT_SUGGEST (ACMDM_BASE + 27)
34 #define ACMDM_FILTERTAG_DETAILS (ACMDM_BASE + 50)
35 #define ACMDM_FILTER_DETAILS (ACMDM_BASE + 51)
37 #define ACMDM_STREAM_OPEN (ACMDM_BASE + 76)
38 #define ACMDM_STREAM_CLOSE (ACMDM_BASE + 77)
39 #define ACMDM_STREAM_SIZE (ACMDM_BASE + 78)
40 #define ACMDM_STREAM_CONVERT (ACMDM_BASE + 79)
41 #define ACMDM_STREAM_RESET (ACMDM_BASE + 80)
42 #define ACMDM_STREAM_PREPARE (ACMDM_BASE + 81)
43 #define ACMDM_STREAM_UNPREPARE (ACMDM_BASE + 82)
44 #define ACMDM_STREAM_UPDATE (ACMDM_BASE + 83)
46 /***********************************************************************
50 typedef struct _ACMDRVOPENDESC32A
58 LPCSTR pszSectionName
;
61 } ACMDRVOPENDESC32A
, *PACMDRVOPENDESC32A
;
63 typedef struct _ACMDRVOPENDESC32W
71 LPCWSTR pszSectionName
;
74 } ACMDRVOPENDESC32W
, *PACMDRVOPENDESC32W
;
76 typedef struct _ACMDRVOPENDESC16
84 LPCSTR pszSectionName
;
87 } ACMDRVOPENDESC16
, *NPACMDRVOPENDESC16
, *LPACMDRVOPENDESC16
;
89 typedef struct _ACMDRVSTREAMINSTANCE16
92 LPWAVEFORMATEX16 pwfxSrc
;
93 LPWAVEFORMATEX16 pwfxDst
;
94 LPWAVEFILTER16 pwfltr
;
101 } ACMDRVSTREAMINSTANCE16
, *NPACMDRVSTREAMINSTANCE16
, *LPACMDRVSTREAMINSTANCE16
;
103 typedef struct _ACMDRVSTREAMINSTANCE32
106 PWAVEFORMATEX32 pwfxSrc
;
107 PWAVEFORMATEX32 pwfxDst
;
108 PWAVEFILTER32 pwfltr
;
115 } ACMDRVSTREAMINSTANCE32
, *PACMDRVSTREAMINSTANCE32
;
118 typedef struct _ACMDRVSTREAMHEADER16
*LPACMDRVSTREAMHEADER16
;
119 typedef struct _ACMDRVSTREAMHEADER16
{
125 DWORD cbSrcLengthUsed
;
129 DWORD cbDstLengthUsed
;
133 LPACMDRVSTREAMHEADER16
*padshNext
;
137 /* Internal fields for ACM */
140 LPBYTE pbPreparedSrc
;
141 DWORD cbPreparedSrcLength
;
142 LPBYTE pbPreparedDst
;
143 DWORD cbPreparedDstLength
;
144 } ACMDRVSTREAMHEADER16
, *NPACMDRVSTREAMHEADER16
;
146 typedef struct _ACMDRVSTREAMHEADER32
*PACMDRVSTREAMHEADER32
;
147 typedef struct _ACMDRVSTREAMHEADER32
{
153 DWORD cbSrcLengthUsed
;
157 DWORD cbDstLengthUsed
;
161 PACMDRVSTREAMHEADER32
*padshNext
;
165 /* Internal fields for ACM */
168 LPBYTE pbPreparedSrc
;
169 DWORD cbPreparedSrcLength
;
170 LPBYTE pbPreparedDst
;
171 DWORD cbPreparedDstLength
;
172 } ACMDRVSTREAMHEADER32
;
174 typedef struct _ACMDRVSTREAMSIZE
180 } ACMDRVSTREAMSIZE16
, *NPACMDRVSTREAMSIZE16
, *LPACMDRVSTREAMSIZE16
,
181 ACMDRVSTREAMSIZE32
, *PACMDRVSTREAMSIZE
;
183 typedef struct _ACMDRVFORMATSUGGEST16
187 LPWAVEFORMATEX16 pwfxSrc
;
189 LPWAVEFORMATEX16 pwfxDst
;
191 } ACMDRVFORMATSUGGEST16
, *NPACMDRVFORMATSUGGEST
, *LPACMDRVFORMATSUGGEST
;
193 typedef struct _ACMDRVFORMATSUGGEST32
197 PWAVEFORMATEX32 pwfxSrc
;
199 PWAVEFORMATEX32 pwfxDst
;
201 } ACMDRVFORMATSUGGEST32
, *PACMDRVFORMATSUGGEST32
;
203 #endif /* __WINE_MSACMDRV_H */