I got the code from here:
http://www.techmind.org/wave/[
^]
I tried the code at the site provided.
but i get tons of errors...and to my confusion its in the mmsystem.h
anyone know whats wrong?, i am confused whats wrong with the compiler.
code:
#include <mmsystem.h>
const int NUMPTS = 44100 * 10;
int sampleRate = 44100;
short int waveIn[NUMPTS];
HWAVEIN hWaveIn;
WAVEHDR WaveInHdr;
MMRESULT result;
WAVEFORMATEX pFormat;
pFormat.wFormatTag=WAVE_FORMAT_PCM;
pFormat.nChannels=1;
pFormat.nSamplesPerSec=sampleRate;
pFormat.nAvgBytesPerSec=sampleRate*2;
pFormat.nBlockAlign=2;
pFormat.wBitsPerSample=16;
pFormat.cbSize=0;
result = waveInOpen(&hWaveIn, WAVE_MAPPER,&pFormat,
0L, 0L, WAVE_FORMAT_DIRECT);
if (result)
{
char fault[256];
waveInGetErrorText(result, fault, 256);
Application->MessageBox(fault, "Failed to open waveform input device.",
MB_OK | MB_ICONEXCLAMATION);
return;
}
WaveInHdr.lpData = (LPSTR)waveIn;
WaveInHdr.dwBufferLength = NUMPTS*2;
WaveInHdr.dwBytesRecorded=0;
WaveInHdr.dwUser = 0L;
WaveInHdr.dwFlags = 0L;
WaveInHdr.dwLoops = 0L;
waveInPrepareHeader(hWaveIn, &WaveInHdr, sizeof(WAVEHDR));
result = waveInAddBuffer(hWaveIn, &WaveInHdr, sizeof(WAVEHDR));
if (result)
{
MessageBox(Application->Handle, "Failed to read block from device",
NULL, MB_OK | MB_ICONEXCLAMATION);
return;
}
result = waveInStart(hWaveIn);
if (result)
{
MessageBox(Application->Handle, "Failed to start recording",
NULL, MB_OK | MB_ICONEXCLAMATION);
return;
}
do {} while (waveInUnprepareHeader(hWaveIn, &WaveInHdr, sizeof(WAVEHDR))==WAVERR_STILLPLAYING);
ERROR:
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|905|error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MCIERROR'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|906|error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MCIDEVICEID'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|907|error: expected ')' before '*' token|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|908|error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MMVERSION'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|909|error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MMRESULT'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|911|error: expected specifier-qualifier-list before 'UINT'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|933|error: expected specifier-qualifier-list before 'DWORD'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|938|error: expected specifier-qualifier-list before 'DWORD'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|943|error: expected ')' before '*' token|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|944|error: expected ')' before 'DRVCALLBACK'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|945|error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|946|error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|950|error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|951|error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|952|error: expected '=', ',', ';', 'asm' or '__attribute__' before 'WAVECALLBACK'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|953|error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|955|error: expected specifier-qualifier-list before 'LPSTR'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|965|error: expected specifier-qualifier-list before 'WORD'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|975|error: expected specifier-qualifier-list before 'WORD'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|985|error: expected specifier-qualifier-list before 'WORD'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|994|error: expected specifier-qualifier-list before 'WORD'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|1003|error: expected specifier-qualifier-list before 'WORD'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|1011|error: expected specifier-qualifier-list before 'WORD'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|1017|error: expected specifier-qualifier-list before 'WORD'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|1031|error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|1032|error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|1033|error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|1034|error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|1035|error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MIDICALLBACK'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|1036|error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|1037|error: expected '=', ',', ';', 'asm' or '__attribute__' before 'PATCHARRAY'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|1038|error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|1039|error: expected '=', ',', ';', 'asm' or '__attribute__' before 'KEYARRAY'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|1040|error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|1042|error: expected specifier-qualifier-list before 'WORD'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|1053|error: expected specifier-qualifier-list before 'WORD'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|1064|error: expected specifier-qualifier-list before 'WORD'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|1071|error: expected specifier-qualifier-list before 'WORD'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|1078|error: expected specifier-qualifier-list before 'LPSTR'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|1089|error: expected specifier-qualifier-list before 'DWORD'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|1095|error: expected specifier-qualifier-list before 'DWORD'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|1100|error: expected specifier-qualifier-list before 'DWORD'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|1104|error: expected specifier-qualifier-list before 'DWORD'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|1108|error: expected specifier-qualifier-list before 'WORD'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|1117|error: expected specifier-qualifier-list before 'WORD'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|1126|error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|1128|error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|1130|error: expected specifier-qualifier-list before 'WORD'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|1138|error: expected specifier-qualifier-list before 'WORD'|
c:\mingw\bin\..\lib\gcc\mingw32\4.5.2\..\..\..\..\include\mmsystem.h|1146|error: expected specifier-qualifier-list before 'DWORD'|
||More errors follow but not being shown.|
||Edit the max errors limit in compiler options...|
||=== Build finished: 50 errors, 0 warnings ===|</pre>