Even if no samples are currently needed for writing out to the DirectSound buffer, we still must request 0 samples from BufferedAsync so that it can queue up samples from its base sound provider.

This commit is contained in:
jdpurcell 2015-01-16 04:57:55 +00:00
parent 33c6446fe2
commit 1862ddd927
1 changed files with 2 additions and 2 deletions

View File

@ -218,8 +218,6 @@ namespace BizHawk.Client.EmuHawk
} }
else if (asyncsoundProvider != null) else if (asyncsoundProvider != null)
{ {
if (samplesNeeded == 0)
return;
samples = new short[samplesNeeded]; samples = new short[samplesNeeded];
//if (asyncsoundProvider != null && Muted == false) //if (asyncsoundProvider != null && Muted == false)
//{ //{
@ -227,6 +225,8 @@ namespace BizHawk.Client.EmuHawk
semisync.GetSamples(samples); semisync.GetSamples(samples);
//} //}
//else asyncsoundProvider.DiscardSamples(); //else asyncsoundProvider.DiscardSamples();
if (samplesNeeded == 0)
return;
samplesProvided = samplesNeeded; samplesProvided = samplesNeeded;
} }
else else