Merge pull request #2092 from oioitff/audio-fix

Finally fix choppy cg audio, bgm, and even some missing bgm, voice, se.
This commit is contained in:
Henrik Rydgård 2013-06-05 08:25:36 -07:00
commit 1c1104538b

View file

@ -110,7 +110,10 @@ u32 sceAudioOutputPannedBlocking(u32 chan, int leftvol, int rightvol, u32 sample
chans[chan].rightVolume = rightvol;
}
chans[chan].sampleAddress = samplePtr;
return __AudioEnqueue(chans[chan], chan, true);
int ret = __AudioEnqueue(chans[chan], chan, true);
if (chans[chan].waitingThreads.size() == 0)
return hleDelayResult(ret, "output block", 1000);
return ret;
}
}
@ -321,7 +324,10 @@ u32 sceAudioOutput2OutputBlocking(u32 vol, u32 dataPtr){
chans[PSP_AUDIO_CHANNEL_OUTPUT2].leftVolume = vol;
chans[PSP_AUDIO_CHANNEL_OUTPUT2].rightVolume = vol;
chans[PSP_AUDIO_CHANNEL_OUTPUT2].sampleAddress = dataPtr;
return __AudioEnqueue(chans[PSP_AUDIO_CHANNEL_OUTPUT2], PSP_AUDIO_CHANNEL_OUTPUT2, true);
int ret = __AudioEnqueue(chans[PSP_AUDIO_CHANNEL_OUTPUT2], PSP_AUDIO_CHANNEL_OUTPUT2, true);
if (chans[PSP_AUDIO_CHANNEL_OUTPUT2].waitingThreads.size() == 0)
return hleDelayResult(ret, "output block", 1000);
return ret;
}
u32 sceAudioOutput2ChangeLength(u32 sampleCount){