..:: PCSX2 Forums ::..

Full Version: SPU2-X v2
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
SPU2-X -- the reverberating SPU2 plugin!

To Download SPU2-X v2 (latest stable release):

Mirror 1 - Pcsx2.net

(See the bottom of this post for older versions and source code)

SPU2-X's Woefully Incomplete User Guide!
---------------------------------------
* Use XAudio2 if you can. It's fast, efficient, and reasonably reliable on both Vista and XP.

* DirectSound will tend to suck on Vista/Windows7. You might be better with WaveOut, actually, if XA2 won't work.

* Modify Timestretch Advanced options at your own risk. If you wonder what they do, visit http://www.surina.net/soundtouch/README.html

* If your PC is really slow (Pentium 4-ish or Core Duo without the "2") then you'll probably want to disable Effects Processing. It's kind of cpu intensive, although still pretty insignificant compared to the rest of Pcsx2 on Duos and Quads.

* Audio Expansion only works with XAudio2 drivers. WaveOut can't expand, period, and DSound does it at the driver level (some soundcard drivers will auto-expand, some won't). DSound can also do expansion as a 3D positioning system, which is way over-complicated and not worth the effort. Sad

* (As of 1.4) Linux support is very preliminary, and may be problematic. Use the attached binary for it at your own risk. (You'll also require PortAudio installed on your system to use it.)
[b]KNOWN BUGS

--------------

* Some DMA and ADMA transfers are timed very poorly. These are commonly used for voices and FMVs, and sometimes they studder or skip. If you have speedhacks on, try turning them off. If you don't have speedhacks on then you're out of luck. Fixing this is on my extensive TODO list.
(Edit: This problem is much less pronounced as of version 1.4.)

DOWNLOADS (including old releases)
---------------------------------------

Various older versions are attached here, for the purposes of regression testing or compatibility. For additional SPU2-X (and pcsx2) downloads, visit the Pcsx2 Downloads page at Googlecode.
Does that mean the SPU is fully emulated? Or are some parts still left out?
I'm sure there will always be something left out. Perfect emulation is like utopia. It doesn't happen very easily. Wink

But at this point SPU2-X is pretty close to complete. There are still some hacks in the ADSR for undocumented formulas, and there are still some known bugs... but other than that, the sound is very very close to the PS2's.
good job! Jake!

there is one minor problem that I noticed in SPU2-x/SPU2ghz, in the exact moment pcsx2 try to read/write to the memory card,the sound go crackling,but after the reading/writing,the sound back to normal.

PEOPS SPU2 doesn't have this problem though.
(02-15-2009, 02:42 PM)beenn Wrote: [ -> ]there is one minor problem that I noticed in SPU2-x/SPU2ghz, in the exact moment pcsx2 try to read/write to the memory card,the sound go crackling,but after the reading/writing,the sound back to normal.

This is most likely caused at the driver level. Try using DirectSound instead, and if it's still problematic, try increasing the DirectSound buffer count (accessible using the 'Configure...' button).

The XAudio2 driver doesn't have a configure button working yet, it's on my todo list. When it's done it will have a TripleBuffering option which may also solve this problem you're having.

A third option, by the way, is to make sure your hard drives are configured for correct performance. It's not uncommon for systems to have hard drives operating in PIO Mode, which is very, very slow. Fixing it can be involved though and is beyond the scope of what I have time to explain. But a quick hint: You have to go into your computer's Devices panel, and find your IDE controllers, and then open up the properties and make sure they're set to use DMA Mode 2 or better (most modern systems should use Mode 4 or 5). PIO mode can really bog down audio systems, and is a common cause of audio cracking when hard drive accesses occur.
also it should be set in the bios
(02-15-2009, 02:52 PM)Air Wrote: [ -> ]
(02-15-2009, 02:42 PM)beenn Wrote: [ -> ]there is one minor problem that I noticed in SPU2-x/SPU2ghz, in the exact moment pcsx2 try to read/write to the memory card,the sound go crackling,but after the reading/writing,the sound back to normal.

This is most likely caused at the driver level. Try using DirectSound instead, and if it's still problematic, try increasing the DirectSound buffer count (accessible using the 'Configure...' button).

The XAudio2 driver doesn't have a configure button working yet, it's on my todo list. When it's done it will have a TripleBuffering option which may also solve this problem you're having.

A third option, by the way, is to make sure your hard drives are configured for correct performance. It's not uncommon for systems to have hard drives operating in PIO Mode, which is very, very slow. Fixing it can be involved though and is beyond the scope of what I have time to explain. But a quick hint: You have to go into your computer's Devices panel, and find your IDE controllers, and then open up the properties and make sure they're set to use DMA Mode 2 or better (most modern systems should use Mode 4 or 5). PIO mode can really bog down audio systems, and is a common cause of audio cracking when hard drive accesses occur.

set dx sound buffer to 8,problem still exist,
check all my IDE controller,all in DMA 5 mode,guess i have to wait for your TripleBuffering option .
The sound problems on memory card access are an overloaded IOP. We need to fine tune the values for it a bit more Tongue2

Latency slider then:
The plugin generates audio into an output buffer. The slider regulates the size of that buffer. If it's too long, audio will arrive too late,
and you'll hear all stuff lagged (very annoying Tongue2 ).
If the buffer is too short, then sudden fps fluctuations will cause a over/underflow, and you'll hear a loop or some silence+a loop (also annoying).
Generally a latency of 100ms can be considered realtime. This is very hard to achieve though, so a value of 140 - 160 might be better.
Ok, to fix sound cracklings in Fmvs set the EE cycle rate hack to 1.5 or default. If set to 2.0 or higher it causes crackling. Tested with FF12 and Shadow Hearts. In both games the FMVs presented sound cracklings if the EE cycle rate was set to values higher than 1.5...
I'll be posting a beta here soon. I've just been busy working out kinks and trying to reduce the overhead of reverb (it was a bit of a CPU hog). Still is, but not quite by so much now. Smile