![]() |
Observations regarding Audio Interface emulation in PJ64 Legacy 1.6.2 - Printable Version +- Project64 Legacy Dev Forum (https://www.project64-legacy.com/dev) +-- Forum: W.I.P Dev (https://www.project64-legacy.com/dev/forumdisplay.php?fid=5) +--- Forum: Project 64 1.6.x Dev (https://www.project64-legacy.com/dev/forumdisplay.php?fid=35) +--- Thread: Observations regarding Audio Interface emulation in PJ64 Legacy 1.6.2 (/showthread.php?tid=384) |
Observations regarding Audio Interface emulation in PJ64 Legacy 1.6.2 - Fanatic 64 - 03-14-2022 The current version of the emulator has an Emulate AI option, which is disabled by default but enabled by the RDS for a few games which benefit from it to fix speech, etc. There's also an Emulate Audio Interface option in Azimer's audio plugin, which is enabled by default for all games. From my testing, these two options exhibit the following behavior: Having AI emulation disabled in both the emulator and Azimer's plugin (or using Jabo's plugin) results in things like the speech in TWINE, audio in FMVs of RE2, audio in Twisted Edge etc. being broken, plus most games having constant pops/crackles (which can be removed by using Prevent Buffer Overruns in Azimer's or Sync game to Audio in Jabo's, at the cost of lower FPS). Having AI emulation enabled in either the emulator (with Azimer's or Jabos's plugin) OR in Azimer's plugin appears to be functionally equivalent in terms of audio, with none of the issues described above (though there seems to be a slight difference in audio quality/smoothness, with it being Azimer's AI>Emulator's AI with Jabo's>Emulator's AI with Azimer's). However, there is one notable functional difference between the two, which is that the emulator's AI emulation breaks the random number generation of certain games, making it entirely deterministic ( [To see links please register here] and[To see links please register here] both had this same issue), but with Azimer's AI emulation this doesn't happen, RNGs still works fine. (Good RNG is better for normal play, but determinism is better for netplay.)Having AI emulation enabled in both the emulator and Azimer's plugin works practically the same as having it enabled only in the emulator (in terms of audio and the RNG thing), but occasionally seems to cause some stutters. And I actually came across something Azimer wrote where he said that Emulate Audio Interface should only be used for emulators that don't implement AI emulation themselves... but just as easily as I found that, I lost it. I'll do some digging to see if I can find it again. Side note: Jabo's audio plugin has an issue in that it sounds choppy in The World is Not Enough. This doesn't happen in vanilla PJ64 1.6, but a similar issue was introduced in PJ64 2.X by [To see links please register here] [To see links please register here] commits, and was discussed[To see links please register here] . Now, I don't know if the issue in PJ64 Legacy 1.6.2 is caused by something similar, but I just figured I'd point it out. |