A new topic seems to make sense to me so I can update post 1 with download links as and when.
So, Ultrasound v0.42:
http://www.ficedula.co.uk/voices/Ultrasound_0_42.zipChanges since v0.41:
-Added 7H plugin support
Changes since v0.4:
-Support for voicing choices on popup/selection
Changes since v0.3:
-OpenAL output
-OGG support
-Support selecting audio files based on party members
Changes since v0.2:
-Lower latency on sound playback
-Fix a few crashes
-Add Pan and Volume properties to sounds
-Add Ambient sounds, optionally looping
How to use the options:
See audio\Ultrasound.xml in the download
But to go into detail:
Ambient sounds are sounds that are triggered to play not because FF7 was playing a sound effect, but because some variable in the game (so far - FieldID or PPV) changed.
Currently only one ambient sound is playing at a time - whenever the FieldID/PPV changes, Ultrasound checks its list of ambient sounds, and finds the first one whose conditions match. It stops any sound that's already playing, and then plays the new sound (if any!).
(The only kind-of exception so that is that if the new sound filename is the same as the old one, it just updates the existing sound with a new pan/volume - it doesn't actually stop and then start the same sound playing.)
So, for example;
<Ambient FieldIDs="195" Loop="true">ultrasound\rain-heavy.mp3</Ambient>
<Ambient FieldIDs="202" Loop="true" Volume="0.5">ultrasound\rain-heavy.mp3</Ambient>
...if FieldID is 195, it plays the rain-heavy file (on loop). When you go into FieldID 202 (which is indoors), it carrys on playing the same sound, but at 50% volume.
If you need to set a pan, an attribute called Pan sets the panning; 0 = Full left, 1 = Full right, 0.5=Middle (default). It won't have any effect on stereo files though!
You can set Volume on replacement sound effects, but Pan won't work - Ultrasound uses whatever pan FF7 has set on the sound instead.