X-Git-Url: https://de.git.xonotic.org/?a=blobdiff_plain;f=snd_win.c;h=1fb72b99808199d83b3657f02cc0b20befc99df4;hb=d57be67cb00229acb8564b92c8b7c58eeed8a0cb;hp=c43f57407c3da5383679af8bd200f1bd2d3934ef;hpb=85c8ba9ec06127c46afc95ac0101bd154bd90fb0;p=xonotic%2Fdarkplaces.git diff --git a/snd_win.c b/snd_win.c index c43f5740..1fb72b99 100644 --- a/snd_win.c +++ b/snd_win.c @@ -188,6 +188,7 @@ sndinitstat SNDDMA_InitDirect (void) WAVEFORMATEX format, pformat; HRESULT hresult; int reps; + int i; memset ((void *)&sn, 0, sizeof (sn)); @@ -195,18 +196,20 @@ sndinitstat SNDDMA_InitDirect (void) shm->channels = 2; shm->samplebits = 16; - shm->speed = 11025; + i = COM_CheckParm ("-sndspeed"); // LordHavoc: -sndspeed option + if (i && i != (com_argc - 1)) + shm->speed = atoi(com_argv[i+1]); + else + shm->speed = 11025; memset (&format, 0, sizeof(format)); format.wFormatTag = WAVE_FORMAT_PCM; format.nChannels = shm->channels; format.wBitsPerSample = shm->samplebits; format.nSamplesPerSec = shm->speed; - format.nBlockAlign = format.nChannels - *format.wBitsPerSample / 8; + format.nBlockAlign = format.nChannels * format.wBitsPerSample / 8; format.cbSize = 0; - format.nAvgBytesPerSec = format.nSamplesPerSec - *format.nBlockAlign; + format.nAvgBytesPerSec = format.nSamplesPerSec * format.nBlockAlign; if (!hInstDS) { @@ -359,7 +362,7 @@ sndinitstat SNDDMA_InitDirect (void) if (snd_firsttime) Con_SafePrintf(" %d channel(s)\n" " %d bits/sample\n" - " %d bytes/sec\n", + " %d samples/sec\n", shm->channels, shm->samplebits, shm->speed); gSndBufSize = dsbcaps.dwBufferBytes; @@ -431,7 +434,11 @@ qboolean SNDDMA_InitWav (void) shm->channels = 2; shm->samplebits = 16; - shm->speed = 11025; + i = COM_CheckParm ("-sndspeed"); // LordHavoc: -sndspeed option + if (i && i != (com_argc - 1)) + shm->speed = atoi(com_argv[i+1]); + else + shm->speed = 11025; memset (&format, 0, sizeof(format)); format.wFormatTag = WAVE_FORMAT_PCM;