该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
{
static double fAngle ;
short * Point=(short *)pBuffer;
int i ;
for (i=0 ; i < OUT_BUFFER_SIZE / (SAMPLE_BITS*CHANNELS/8) ; i++)
{
fAngle += 2 * PI * Freq / SAMPLE_RATE ;
*Point=(short)0x8000 * sin(fAngle);
Point++;
*Point=(short)0x8000 * sin(fAngle);
Point++;
while (fAngle > 2 * PI)
fAngle -= 2 * PI ;
}
}
void CALLBACK waveOutProc(HWAVEOUT hWaveOut, UINT uMsg,DWORD dwInstance, DWORD dwParam1, DWORD dwParam2)
{
PWAVEHDR pWaveHdr=(PWAVEHDR)dwParam1;
static bool isClose=false;
switch (uMsg)
{
case MM_WOM_DONE:
{
if(!isEnd)
{
FillBuffer (pWaveHdr->lpData, iFreq) ;
waveOutWrite (hWaveOut, pWaveHdr, sizeof (WAVEHDR)) ;
iFreq+=10;
printf("freq=%dn",iFreq);
}
break;
}
case MM_WOM_OPEN:
case MM_WOM_CLOSE:
break;
}
}
void main()
{
LPSTR pBuffer1 = (LPSTR)malloc (OUT_BUFFER_SIZE) ;
LPSTR pBuffer2 = (LPSTR)malloc (OUT_BUFFER_SIZE) ;
WaveHdr1.lpData=pBuffer1;
WaveHdr2.lpData=pBuffer2;
FillBuffer (pBuffer1, iFreq) ;
本文发布于:2024-01-29 01:34:08,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170646325111763.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |