Commit 24fa177c authored by Anton Baskanov's avatar Anton Baskanov Committed by Alexandre Julliard

dsound: Enable Doppler shift.

parent 3c349125
......@@ -167,6 +167,7 @@ void DSOUND_Calc3DBuffer(IDirectSoundBufferImpl *dsb)
int i, num_main_speakers;
float a, ingain;
/* doppler shift related stuff */
D3DVALUE flFreq, flBufferVel, flListenerVel;
TRACE("(%p)\n",dsb);
......@@ -290,10 +291,6 @@ void DSOUND_Calc3DBuffer(IDirectSoundBufferImpl *dsb)
dsb->freq = dsb->ds3db_freq;
/* FIXME: Doppler Effect disabled since i have no idea which frequency to change and how to do it */
if(0)
{
D3DVALUE flFreq, flBufferVel, flListenerVel;
/* doppler shift*/
if (!VectorMagnitude(&dsb->ds3db_ds3db.vVelocity) && !VectorMagnitude(&dsb->device->ds3dl.vVelocity))
{
......@@ -317,7 +314,6 @@ if(0)
flBufferVel, flListenerVel, dsb->ds3db_freq, flFreq);
dsb->freq = flFreq;
}
}
DSOUND_RecalcFormat(dsb);
......
......@@ -1436,9 +1436,9 @@ static void test_doppler(GUID *guid, BOOL play)
check_doppler(dsound, listener, play, DS3DMODE_NORMAL, 0, 0, 1, 0, 22050, 22050);
check_doppler(dsound, listener, play, DS3DMODE_NORMAL, 0, -90, 1, -90, 22050, 22050);
/* Wine TODO: Doppler shift is missing. */
/* Wine TODO: The frequency is slightly off. */
check_doppler(dsound, listener, play, DS3DMODE_NORMAL, 0, 0, 1, -90, 22050, 29400);
/* Wine TODO: Doppler shift is missing. */
/* Wine TODO: The frequency is slightly off. */
check_doppler(dsound, listener, play, DS3DMODE_NORMAL, 0, 0, 1, 90, 22050, 17640);
IDirectSound3DListener_Release(listener);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment