mirror of
https://github.com/ENSL/NS.git
synced 2025-02-02 14:01:35 +00:00
1446 lines
76 KiB
Text
1446 lines
76 KiB
Text
|
|
======================================================================================
|
|
REVISION HISTORY : FireMOD : Copyright (c) Firelight Technologies, Pty, Ltd, 1994-2005
|
|
http://www.fmod.org
|
|
======================================================================================
|
|
+ Added feature or noticable improvement
|
|
- Bug fix or something removed
|
|
* Changed or Information
|
|
======================================================================================
|
|
|
|
02/10/06 3.75
|
|
-------------
|
|
- Linux - Fixed net streaming crash when trying to connect to a URL with a
|
|
port in which nothing is listening.
|
|
|
|
05/05/06 3.75
|
|
-------------
|
|
|
|
+ WII - Added Nintendo Wii support.
|
|
|
|
15/12/05 3.75
|
|
------------
|
|
|
|
+ PSP - Added PSP support! Contact sales@fmod.org for evaluation versions!
|
|
+ XBOX - Added FSOUND_INIT_XBOX_REMOVEHEADROOM for 2D sounds to disable the xbox
|
|
directsound 6db attenuation on all voices (to avoid clipping).
|
|
|
|
- ALL - Fixed rare timing crash, mainly on HyperThreaded or Multi-Processor
|
|
machines, when calling FSOUND_Stream_SetPosition or FSOUND_Stream_Play.
|
|
- ALL - Sounds not starting paused properly issue fixed.
|
|
- ALL - Stability increase calling stream related commands from a sync callback.
|
|
- ALL - IMA ADPCM compressed multichannel FSB files with channel count = 2
|
|
played as static fixed.
|
|
- ALL - Removed any references to ctype.h so linux has an easier time linking
|
|
on old glibc versions.
|
|
- ALL - .IT format - Pitch envelope under 'amiga frequencies' issue fixed.
|
|
- ALL - .IT format - Pan envelope not panning left issue fixed.
|
|
- ALL - .IT format - some songs with extremely high pitch notes were being
|
|
clamped by fmod's internal setfrequency function, so that has been
|
|
fixed.
|
|
- ALL - Fixed stream not opening with FSOUND_NONBLOCKING if
|
|
FSOUND_OUTPUT_NOSOUND_NONREALTIME was the output mode.
|
|
- ALL - Fixed rare stream crash if FSOUND_NONBLOCKING was used and ran out
|
|
of memory.
|
|
- ALL - Fixed ogg vorbis seeking causing odd audible playback for a few ms.
|
|
- ALL - Removed stall on FSOUND_Stream_SetSubStream or
|
|
FSOUND_Stream_SetSubStreamSentence if other streams were playing
|
|
simultaneously.
|
|
- ALL - Fixed FSOUND_SetMute not taking FSOUND_SetVolumeAbsolute into account
|
|
when unmuting.
|
|
- ALL - Fixed recording returning an error if fmod was closed then reinitialized
|
|
- ALL - Fixed rare failures in FSOUND_Sample_Load if a stream was openened
|
|
beforehand.
|
|
- LINUX - More OSS and ALSA compatibility fixes, should handle most cards without
|
|
a problem now.
|
|
- LINUX - Fixed lock on cd device after FSOUND_Close was called so tray wouldnt
|
|
eject.
|
|
- LINUX - ALSA output now cooperates with other applications better.
|
|
- WIN32/
|
|
WIN64/
|
|
WINCE - Fixed thread leak if recording was started and stopped.
|
|
- WINCE - Fixed last few milliseconds of mp3 files not playing.
|
|
- WINCE - Fixed new streams not being able to be started if memory card or
|
|
removable media was removed during playback.
|
|
- WINCE - Fixed memory leak.
|
|
- PS2 - Mute wasn't muting hardware voices properly.
|
|
- PS2 - Free up streams in FSOUND_Close to avoid hang.
|
|
- PS2 - Fixed memory leak when using FSOUND_NONBLOCKING and sample list feature
|
|
in FMUSIC_LoadSongEx.
|
|
- PS2 - Removed rare chance of buzzing noise if FSOUND_SetSpeakerMode was set
|
|
and FSOUND_Init had 0 software channels specified.
|
|
- PS2 - Fixed FSOUND_STEREOPAN coming out in right speaker with mono sounds.
|
|
- PS2 - Unblocked FSOUND_Stream_SetEndCallback from possibly causing a stall.
|
|
- MAC - Fixed critical section issues on OS9.
|
|
- XBOX - Fixed loop point clicking on PCM based hardware sounds.
|
|
- FSBANK - Fixed command line version not returning correct error code to dos.
|
|
Also stopped messagebox popping up when -h was specified.
|
|
|
|
* WIN32 - CDDA streams now return -3 from FSOUND_Stream_GetOpenState when cd is
|
|
ejected.
|
|
* PS2 - FSOUND_IsDiskBusy now accepts a parameter to determine if a stream is
|
|
in the middle of a close (because stream close can cause blocking in
|
|
other functions if they are called while a stream is closing)
|
|
|
|
11/11/04 3.741 (Mac only)
|
|
-------------------------
|
|
|
|
- MAC - Fixed problems with playing Ogg Vorbis files.
|
|
- MAC - Fixed threading issues which was causing problems in mac classic.
|
|
- MAC - Added "Classic" target to all examples.
|
|
|
|
18/10/04 3.74
|
|
-------------
|
|
|
|
+ GC - Added FSOUND_GC_PrepareForReset (see fmodgc.h) to prepare for software reset.
|
|
This kills streams so FSOUND_Close can be called safely even with the tray
|
|
door open.
|
|
+ GC - Added FSOUND_GetFreeHWRam to find out how much ARAM is free.
|
|
+ GC - Memory footprint lowered.
|
|
+ XBOX - FSOUND_Stream_OpenFromHandle added to allow dashboard tracks to be played
|
|
after using XOpenSoundtrackSong.
|
|
|
|
- ALL - FSOUND_Stream_Play is now faster.
|
|
- ALL - Fixed FSOUND_SIGNED / FSOUND_UNSIGNED being ignored when FSOUND_LOADRAW in
|
|
FSOUND_Sample_Load/Ex.
|
|
- ALL - Stream fix when a stream opened with FSOUND_NONBLOCKING runs out of memory.
|
|
- ALL - Memory leak fixed in certain error situations trying to open a stream.
|
|
- ALL - Remove rare stream crash.
|
|
- ALL - Corruption when using compressed streams and stream loop points in rare cases
|
|
fixed.
|
|
- ALL - FSOUND_SetVolumeAbsolute not working on software mixed 3D voices or PS2/GC
|
|
hardware 3D voices.
|
|
- ALL - Fixed S3M arpeggio.
|
|
- ALL - Fixed an issue where on some platforms (xbox/gc/dsound) hardware voices would
|
|
enter an inconsistent state if channel that had played and ended was paused.
|
|
- WIN32 - ASIO Crash fix.
|
|
- LINUX - Fixed hang on OSS output if another device was using the same device.
|
|
- LINUX - Fixed crash when using ALSA by upgrading to the latest ALSA library.
|
|
(It was an ALSA crash not fmod!)
|
|
- MAC - Fixed crash on OS9 support.
|
|
- XBOX - FSOUND_IsPlaying / FSOUND_GetNumChannelsPlaying fixed when FSOUND_SetPaused
|
|
was used.
|
|
- XBOX - Sounds going quiet if FSOUND_Reverb_SetChannelProperties was called on 2d
|
|
channels fix. Now reverb channel properties are ignored if it is a 2d voice,
|
|
as the properties related to a 3d environment anyway.
|
|
- PS2 - Fixed crash on streams with loop points in VAG format.
|
|
- PS2 - Fixed stream priorities being 0 instead of 256 due to a sifcmd optimization
|
|
which lead to the undesirable effect of streams being stealable by the
|
|
channel priority system.
|
|
- GC - 3D sound rolloff algorithm updated to be consistant with other platforms.
|
|
- GC - Fixed unpaused sounds playing through all of ARAM in some cases.
|
|
- GC - Fixed audible glitch upon startup in certain cases.
|
|
- FSBANK - Fixed program stealing window focus when in hidden mode.
|
|
|
|
* ALL - FMUSIC_SetSample now allows hardware samples specified for music files. This
|
|
means you can do things like use hardware VAG samples on PS2 in mod files.
|
|
* ALL - Renamed stream2 to userstream.
|
|
* PS2 - Exposed FSOUND_SetDiskBusy on IOP interface for IOP programmers.
|
|
* GC - Reduced memory fragmentation.
|
|
|
|
01/06/04 3.73
|
|
-------------
|
|
|
|
+ ALL - FSOUND_CD_TrayOpen added. Now close or open is specified manually.
|
|
+ WIN32 - Added CD TOC retrieval as an FMOD tag. CDDB diskid generation added
|
|
to CDDA example.
|
|
+ WIN32 - Extended ASF/WMA tag support added.
|
|
|
|
- ALL - FSOUND_Stream_GetTime and stream syncpoint fixes.
|
|
- WIN32 - CDDA pausing between tracks fix.
|
|
- FSBANK - Command line calls and list file parsing fix.
|
|
- GC - Memory alignment crash fix
|
|
- PS2 - FSOUND_Init/Close restart fix if FSOUND_INIT_PS2_USEVOLUMERAMPING was specified.
|
|
- ALL - FSOUND_CD_Eject removed in favour of FSOUND_CD_TrayOpen.
|
|
|
|
* FSBANK - If FSOUND_HW3D is specified on a stereo sample an error is displayed.
|
|
|
|
|
|
23/04/04 3.72
|
|
-------------
|
|
|
|
+ WIN64 - AMD64 version of fmod available! fmod64.dll.
|
|
Runs in Windows XP 64 / Windows Server 2003.
|
|
+ ALL - FSOUND_Sample_SetDefaultsEx / FSOUND_Sample_GetDefaultsEx added.
|
|
Now includes random variation settings for frequency, volume and pan!
|
|
+ ALL - FSOUND_3D_SetMinMaxDistance / FSOUND_3D_GetMinMaxDistance added for per channel
|
|
min/max distance control.
|
|
+ ALL - 'fsb' example added. Shows loading of an FSB file as a non blocking sample bank,
|
|
then plays back the contents using the new random variation
|
|
+ WIN32 - Faster DirectSound support, due to many driver calls eliminated. This was
|
|
probably the cause of worse performance in FSOUND_HW3D mode than using the
|
|
FMOD software mixer. The software mixing mode probably still wins, but it
|
|
is better than it used to be.
|
|
+ WIN32 - WMA, ASF and WMV now run through FMOD DSP engine / streamer! You can now load
|
|
WMA files as samples, do DSP effects and spectrum analysis on these files.
|
|
+ WIN32 - ASIO output channels made enumerable and selectable through FSOUND_SetDriver.
|
|
+ PS2 - Optimizations on EE<->IOP communication with more EE side caching
|
|
+ PS2 - Added FSOUND_IOP_Alloc/Free.
|
|
+ PS2 - Added FSOUND_SPU2_Alloc/Free.
|
|
+ PS2 - Added FSOUND_SetADSR and FSOUND_SetADSRKeyoff
|
|
+ PS2 - Added FSOUND_SetSifCommandInfo, and a similar IOP mechanism for users wanting
|
|
to make FMOD cooperate with their own EE<->IOP sif command handlers.
|
|
+ PS2 - Stream2 example now shows VAG/ADPCM Hardware playback as well as PCM playback
|
|
and has an improved interface.
|
|
+ PS2 - 'streamwithdata' example added. This shows using FSOUND_SetDiskBusy, and also
|
|
loads game data at the same time without affecting the framerate.
|
|
+ PS2 - ShellMpeg example added! This example makes the Sony Shell mpeg movie player
|
|
example use FMOD via PCM or ADPCM using a custom FMOD stream.
|
|
+ PS2 - Added FMUSIC_SetRowCallback, FMUSIC_SetOrderCallback, FMUSIC_SetZxxCallback and
|
|
FMUSIC_SetInstCallback support.
|
|
+ PS2 - Added fmodps2iop.h to expose FMOD file and memory routines to IOP programmers.
|
|
+ XBOX - Reverb on 2d voices is now possible by calling FSOUND_Reverb_SetChannelProperties.
|
|
+ XBOX - FSOUND_Output_XBox_GetEffectImageDesc added in fmodxbox.h
|
|
+ CE - FSOUND_File_HasFatalErrorOccurred and FSOUND_HasPowerOnOccurred added in fmodce.h.
|
|
|
|
+ FSBANK - Now available as a programmers library! Make your own FSB files without
|
|
fsbank.exe! See fsbank.lib, fsbank.h and fsbank.chm.
|
|
+ FSBANK - FSBank now allows list files to specify sample defaults and randomization parameters per sound.
|
|
|
|
- ALL - FSOUND_Sample_SetMaxPlaybacks fixed when using hardware samples.
|
|
- ALL - Voice stealing fix with FSOUND_FREE.
|
|
- ALL - FSOUND_IsPlaying / endcallbacks on streams not reacting in time when
|
|
FSOUND_INIT_STREAM_FROM_MAIN_THREAD bugfix.
|
|
- ALL - mod/s3m/xm fix with pattern loop.
|
|
- ALL - mod/s3m/xm/it. Non looping songs now play the very last row instead of cutting it off.
|
|
- ALL - .it files now respect the FMUSIC_SetLooping command!
|
|
- ALL - FMUSIC_SetOrder now cleans up/resets old channels so skipping to a new part of the song
|
|
doesn't cause weird playback issues.
|
|
- ALL - FMUSIC_GetRealChannel fix for non playing music channels.
|
|
- ALL - Loop points on natively compressed sounds (xadpcm,gcadpcm,vag) working again.
|
|
- ALL - ADPCM compressed FSB support fixed.
|
|
- WIN32 - Analogue and Digital CDROM support fixes.
|
|
- WIN32 - FSOUND_HW3D support now drops back to directsound software buffers instead of fmod
|
|
software mixed buffers to remove the issue of latency and possible skipping on
|
|
some soundcards due to bad drivers. It avoids the need to have to play with the
|
|
mixer buffersize (FSOUND_SetBufferSize). 32 'hardware' voices are now reported
|
|
if the card actually has no voices.
|
|
- GC - Bugfixes. Stereo sound fixes, crash fixes, pause/unpause fixes and more.
|
|
- PS2 - IRX files symbol stripped, now around 130k smaller for each file.
|
|
- PS2 - FSOUND_GetPaused fixed with streams that are started paused.
|
|
- PS2 - FSOUND_SetDiskBusy now does not block other FMOD commands if executed from another
|
|
thread asynchronously. (ie if the game has a threaded filesystem).
|
|
- PS2 - Memory saving. 200k on the EE.
|
|
- LINUX - Ensoniq 1371 latency fix.
|
|
- LINUX - FSOUND_Init stalls/timeouts removed from various dodgy soundcards.
|
|
- LINUX - OSS Recording bugs fixed.
|
|
- CE - Streams now stop gracefully instead of hanging the thread if a poweron occurs and the file handle
|
|
to the stream on a CF card or external medium is lost.
|
|
- FSBANK - Many bugfixes.
|
|
|
|
* ALL - FSOUND_GetNumHardwareChannels renamed to FSOUND_GetNumHWChannels to give more
|
|
information including 2d and 3d channels seperately.
|
|
* ALL - FSB files now allow mixture of mono and stereo sounds in the one bank.
|
|
FSOUND_Stream_SetSubStreamSentence will fail if it encounters a sentence with mixed
|
|
formats but functions like FSOUND_Stream_SetSubStream will work.
|
|
* ALL - FSOUND_INIT_ENABLEOUTPUTFX renamed to FSOUND_INIT_ENABLESYSTEMCHANNELFX.
|
|
|
|
14/11/03 3.71
|
|
-------------
|
|
+ WIN32 - CDDA support. Now you can perform cd ripping, spectrum analysis or DSP effects
|
|
on CD audio. See FSOUND_Stream_Open and FSOUND_Stream_SetSubStream.
|
|
+ PS2 - New FSOUND_SPEAKERMODE_PROLOGIC2_INTERIOR speakermode added as an alternative
|
|
to FSOUND_SPEAKERMODE_PROLOGIC2. This method cuts number of sound playbacks to
|
|
24 at once instead of 48, but supports interior panning. Probably not needed in
|
|
most games.
|
|
|
|
- ALL - FSOUND_Close and stream thread safety fixes for extra stability especially when
|
|
using end callbacks.
|
|
- ALL - Buffered file system fix to avoid strangely playing streams.
|
|
- ALL - Using FSOUND_Stream_SetTime in conjunction with FSOUND_FORCEMONO fix.
|
|
- ALL - (except CE and PS2) - Chirping noise fix when not using FSOUND_MPEGACCURATE when
|
|
seeking in an mp3.
|
|
- ALL - Possible OXM format memory leaks removed.
|
|
- WIN32 - WMA tag support fix.
|
|
- WIN32 - MP3 static fixed, when playing 2 mp3s at once or loading an mp3 sample while
|
|
streaming an mp3 simultaneously, on hyperthreaded cpus.
|
|
- LINUX - FSOUND_Close hang fixed.
|
|
- PS2 - Sync callback support added
|
|
- PS2 - IOP memory leak in the kernel if FSOUND_Init and FSOUND_Close was called
|
|
- PS2 - Corruption noise removed in streams if the stream buffersize wasnt big enough and
|
|
a stream tried to restart after buffer underrun.
|
|
- PS2 - Prologic 2 support fixes in the original PL2 mode.
|
|
- CE - Small glitch noise removed when stopping and starting an mp3 stream.
|
|
- MAC - linker issues resolved with mach-o build on certain versions of OSX.
|
|
- MAC/GC - endian issue fixed with noisy samples in .IT files.
|
|
|
|
* ALL - specifying FSOUND_8BITS in loading a sample will now force the sample depth
|
|
down to 8bits to save memory. OXM files now also downgrade decoded oggs back
|
|
to 8bit when loading if the original XM had them stored as 8bit.
|
|
|
|
4/9/03 3.70
|
|
-------------
|
|
|
|
+ ALL - Shoutcast / Icecast / HTTP streaming support added! (mp3/ogg vorbis only).
|
|
+ ALL - Tag support, I3DV1, I3DV2, Ogg Tags, ASF/WMA tags now readable through api.
|
|
+ PS2 - Prologic 2 support now allows use of all 48 hardware channels, instead of 24.
|
|
+ PS2 - Delay and Feedback parameters on spu2 hardware reverb now supported through
|
|
EchoTime and EchoDepth parameters respectively.
|
|
+ WIN32 - FMOD Media Player updated with some new features. Lowpass cpu usage bug fixed.
|
|
+ ALL - NetStream example added to make it simpler to understand buffering logic etc.
|
|
+ ALL - Saving the recorded result to a wav file added. Shows how to Lock/Unlock a
|
|
sample.
|
|
+ ALL - FSOUND_Stream_*Sync* API changed around a bit / renamed. Now user points are
|
|
stored as a pointer instead of an index, and the 256 limit is removed.
|
|
+ WINCE - FSOUND_DSP_GetSpectrum now works! Integer FFT implemented for non FPU devices.
|
|
|
|
- ALL - WAV/AIFF only. If a file had loop points embedded, then the mode (ie FSOUND_2D)
|
|
was being ignored, fixed.
|
|
- ALL - Memory leak fixed if any FSOUND_Stream_*Sync* functions were called with
|
|
FSOUND_NONBLOCKING and the stream wasnt ready yet. They now fail if not ready.
|
|
- WIN32 - WMA and FSOUND_NONBLOCKING now works.
|
|
- XBOX - 360kb or so of memory saved! Also DSSTDFX.BIN is no longer needed.
|
|
- PS2 - Ejected or corrupted CDs now recover smoothly on stream playback without making a noise.
|
|
- PS2 - FSOUND_Reverb_SetChannelProperties fix which was causing sound to dissapear.
|
|
- PS2 - Return values for most channel commands fixed, they were returning the wrong value.
|
|
- PS2 - Streams being truncated wth different stream length/buffersize combinations fixed.
|
|
- PS2 - FSOUND_GetPaused fixed.
|
|
- PS2 - Many other bugfixes.
|
|
- MAC - Recording bugfix dependent on OSX version.
|
|
- WINCE - fixed mp3 loading as sample bug, for files with corruption in them.
|
|
|
|
* ALL - FMUSIC_LoadSongEx now takes an offset parameter for pak/wad/data file loading.
|
|
* ALL - FSOUND_Stream_OpenFile is now called FSOUND_Stream_Open and also takes an
|
|
offset parameter for pak/wad/data file loading.
|
|
|
|
9/6/03 3.63
|
|
-------------
|
|
+ ALL - FSBank updated. Now all platforms support compressed FSB formats.
|
|
Command line supported added. Source files can now be specified via a text
|
|
file, allowing ordering of sounds within fsb files.
|
|
+ ALL - FSB format now supports sample banks to hold any sound format that fmod can
|
|
load with FSOUND_Sample_Load, so for example you could have 1 fsb with
|
|
multiple mp3, ogg and wav files stored within it.
|
|
+ ALL - FSOUND_Stream_OpenFile with FSOUND_MPEGACCURATE is now 25% faster!
|
|
+ ALL - FSOUND_Stream_SetLoopCount added.
|
|
+ ALL - FSOUND_NONBLOCKING support added to FMUSIC_LoadSongEx! Now sample banks can
|
|
be loaded in the background. Use new FMUSIC_GetOpenState to poll status.
|
|
+ PS2 - Dolby Prologic 2 support added! Use FSOUND_SetSpeakerMode and
|
|
FSOUND_SPEAKERMODE_PROLOGIC2. Note that this mode uses 2 hardware voices
|
|
for every fmod channel, so the number of channels is effectively halved
|
|
from 48 to 24 when using this speaker mode.
|
|
+ PS2 - FSOUND_Update now 30-40% faster!
|
|
+ PS2 - File routines now split into fmodfile.irx so users can quickly compile or
|
|
hook into their own IOP file routines.
|
|
+ ALL - FSOUND_INIT_STREAM_FROM_MAIN_THREAD added. This causes FSOUND_Update to
|
|
drive the streamer thread. This is mainly because OS8/Macintosh doesnt
|
|
like streaming inside an MPTask, which is being worked on. This will work
|
|
around it.
|
|
|
|
- WIN32 - DirectX 8/9 bug fixed which could cause a crash with FX or recording.
|
|
- ALL - FSOUND_Stream_SetTime is now sample accurate with mp3. (it previously
|
|
seeked and rounded the position to the nearest mpeg block).
|
|
- ALL - MP3 'chirp' noises when seeking (using FSOUND_Stream_SetTime or
|
|
FSOUND_Stream_SetPosition) reduced or removed completely.
|
|
- PS2 - FSOUND_IsPlaying bug fixes, Prologic 2 support! Hardware click removal!
|
|
- PS2 - Greater volume accuracy which removes 'wobbly' sound when using small
|
|
mindistances in 3D sound.
|
|
- MAC - conflict with cocoa libraries and the symbol _realloc removed.
|
|
- ALL - Strange doppler effect when sounds went outside maxdistance fixed.
|
|
- ALL - FSOUND_Stream_SynchPoint fixes.
|
|
- PS2 - FSB 16byte memleak fixed.
|
|
- ALL - AIFF loop point support fixed.
|
|
- WINCE - Loading MP3 as sample crash fix.
|
|
- WINCE - FSOUND_GetLengthMs fixed with MP3 files.
|
|
- FSBANK - Mixing 8 & 16bit sounds dissalowed. A stream is created in a particular
|
|
format (based on the first sample in an FSB), and if the first sound was
|
|
8 bit but the rest were 16bit, the result would be noisy 16bit sounds.
|
|
|
|
* ALL - win32/mac mainly. FSOUND_Update now yields, causes operating task switch
|
|
for smoother multitasking. You should call this function once a frame.
|
|
* MAC - fmod_cfm.shlb now only exports the relevant fmod symbols and not the MSL stuff.
|
|
|
|
28/02/03 3.62
|
|
-------------
|
|
+ GC - GameCube support added!
|
|
+ ALL - Added DirectX 9 support. You can now change frequency with
|
|
FSOUND_ENABLEFX enabled sounds.
|
|
+ ALL - Cross platform IMA ADPCM wav file support! Now you can use ADPCM
|
|
compression without windows codecs, and on any platform.
|
|
+ ALL - Recording support added to Mac and Linux ports!
|
|
+ ALL - FSOUND_Stream_SetMode and FSOUND_Stream_GetMode added to allow control
|
|
during playback, such as looping.
|
|
+ ALL - FSOUND_Stream_SetSubStreamSentence added! This allows for seamless
|
|
stitching/sentencing of streams. VERY useful for things like commentary
|
|
where you want parametized audio. FSB format only.
|
|
+ ALL - FSOUND_CD_SetTrackTime added.
|
|
+ PS2 - Now TRC compliant for sony submissions.
|
|
+ PS2 - Added multi-channel interleaved stream support! (FSB format only). If
|
|
stereo is 2 interleave channels (L/R), this format allows up to 16
|
|
interleaved channels at once that play simultaneously. This eliminates
|
|
seeking and improves CD bandwidth, and also allows interactive music with
|
|
tracks that stay in perfect sync.
|
|
+ PS2 - FSOUND_Reverb_SetChannelAttributes supported, using Room parameter to make
|
|
channel wet/dry.
|
|
+ PS2 - Stereo and even 'multichannel' (see above) sample support in hardware.
|
|
(FSB format only).
|
|
+ WIN32 - New example 'multiple' shows how to load fmod dynamically, and also play
|
|
sounds out of 2 soundcards at the same time!
|
|
+ WINCE - New complete set of examples! 3d, simple, simplest etc are all included.
|
|
+ LINUX - Better compatibility for old cards. ALSA mode now allows device
|
|
enumeration. Electic Fence tested.
|
|
+ WIN32 - 24 and 32 bit PCM wav files supported!
|
|
|
|
- ALL - FSOUND_SetSubStream fixed when in FSOUND_NONBLOCKING mode and mulitiple
|
|
calls are issued at once.
|
|
- ALL - FSOUND_Stream_SetEndCallback more accurate.
|
|
- PS2 - 'Corrupted' stream fix when usage of hardware channels were maxed out.
|
|
- PS2 - FSOUND_Stream_PlayEx was accidently blocking, fixed.
|
|
- PS2 - Multiple Listeners fix.
|
|
- PS2 - FSOUND_SetSFXMasterVolume fix for FSB banks.
|
|
- ALL - Stream timing, mod timing, and stream endcallbacks are now more accurate.
|
|
- MAC - OS8/9 support working again.
|
|
|
|
* ALL - .FSB support is now cross platform. PS2, GameCube and XBox allow compressed
|
|
FSB data.
|
|
* WIN32 - Made fmod.h and examples more cygwin friendly.
|
|
* ALL - FMUSIC_LoadSongMemory is now changed to FMUSIC_LoadSongEx. This function
|
|
handles loading from memory and more.
|
|
* ALL - Frequency/Volume/Pan/3d position cached to reduce WIN32 driver call overhead?
|
|
* LINUX - fmoddyn.h updated and useable for linux.
|
|
|
|
18/12/02 3.61
|
|
-------------
|
|
+ ALL - Added FMUSIC_SetUserData and FMUSIC_GetUserData
|
|
+ ALL - Added FSOUND_3D_Listener_SetCurrent for multiple listener support!
|
|
+ ALL - Optimized Ogg Vorbis. Ogg decoding is now 2x faster!
|
|
Decoding is nearly 2x quicker than mp3!
|
|
+ WIN32 - A3D support re-added as an output mode only, for compatibility.
|
|
+ PS2 - Added FSOUND_Stream_SetSubStream/FSOUND_Stream_GetNumSubStreams, for FMOD
|
|
.FSB bank files are supported on PS2 Only. Cross platform support is coming.
|
|
+ WINCE - Added Ogg Vorbis support via fixed point Tremor API.
|
|
+ ALL - Added support for Neil Graham's .XM to .OXM converter. This tool converts
|
|
XM samples into ogg files, making them dramatically smaller.
|
|
+ WIN32 - Added dynamic loading header fmoddyn.h. This allows you to create multiple
|
|
instances of fmod = multiple soundcard output.
|
|
+ ALL - Added FSOUND_Stream_SetLoopPoints.
|
|
+ ALL - Added FSOUND_Stream_GetOpenState for determining the state of a non blocking stream open.
|
|
+ ALL - Added FSOUND_Stream_AddSynchPoint, FSOUND_Stream_DeleteSynchPoint,
|
|
FSOUND_Stream_GetNumSynchPoints for sync point manipulation.
|
|
Previously they were only available in .WAV or .AIFF files.
|
|
+ ALL - Added FSOUND_OUTPUT_NOSOUND_NONREALTIME. Calling FSOUND_Update drives the
|
|
software engine as fast as you like.
|
|
|
|
- LINUX - Latency fixes.
|
|
- LINUX - OSS output now allows /dev/dsp* enumeration.
|
|
- PS2 - Numerous fixed and speedups.
|
|
- XBOX - Fixed WMA looping.
|
|
- WINCE - Added more power off/on support for some iPAQ models that didn't work before.
|
|
- WIN32 - Improved ASIO support! More drivers work now that didn't work before.
|
|
- WIN32 - CD playback bugfixes.
|
|
- WIN32 - MIDI 'caching' bug fixed.
|
|
- WIN32 - FSOUND_ALL support now works with WMA channels.
|
|
- WIN32 - Pan clicks removed from FSOUND_MIXER_QUALITY_FPU
|
|
- WINCE - FSOUND_Stream_GetTime / SetTime / GetLengthMs more accurate for mp3.
|
|
- ALL - Lots of memory optimizations. FMOD now uses less memory than ever.
|
|
|
|
* FSOUND_3D_Listener_SetDopplerFactor renamed to FSOUND_3D_SetDopplerFactor.
|
|
* FSOUND_3D_Listener_SetDistanceFactor renamed to FSOUND_3D_SetDistanceFactor.
|
|
* FSOUND_3D_Listener_SetRolloffFactor renamed to FSOUND_3D_SetRolloffFactor.
|
|
* FSOUND_3D_Update renamed to FSOUND_Update
|
|
|
|
16/08/02 3.6 (WIN32/CE/Linux/Mac/PS2/Xbox Release)
|
|
-------------
|
|
|
|
+ PS2 - PlayStation 2 support added!
|
|
+ XBOX - XBox support added!
|
|
+ MAC - Macintosh support added!
|
|
+ LINUX - Major rewrite + support for ALSA 0.9! Vortex2 support now working 100%.
|
|
+ ALL - Added FSOUND_Sample_SetMaxPlaybacks.
|
|
+ ALL - 'Constant power pan' added to software engine for better sounding pans.
|
|
+ ALL - FSOUND_NONBLOCKING flag added for opening streams. (streams will open in background)
|
|
+ ALL - AIFF Support added with full loop point and sync marker support.
|
|
+ ALL - Ogg Vorbis support upgraded to 1.0 final codebase!
|
|
+ ALL - FMUSIC_SetLooping added. Music loops by default, so call to stop it looping.
|
|
+ ALL - FSOUND_GetCurrentLevels added which returns a seperate left and right VU level.
|
|
+ WIN32 - FSOUND_FX_Disable added, so that FSOUND_FX_Enable doesnt have to be called each time.
|
|
+ WIN32 - MP2 support optimized, significantly faster.
|
|
+ WIN32 &
|
|
WINCE - Wave-In recording support added. Now recording works in NT and PocketPC!
|
|
+ WINCE - BIDI Looping and negative frequencies now supported.
|
|
+ WINCE - Smartphone, CE 2.11 and BE-300 support added.
|
|
|
|
- ALL - Better MP3 format detection.
|
|
- ALL - WAV sync markers now sorted if they are stored in the wav file out of order.
|
|
- ALL - 3d sound and setvolume bug fixed.
|
|
- ALL - XM apreggio was upside down on linear frequency tunes bug fixed.
|
|
- ALL - FSOUND_SetFrequency. negative followed by positive frequency now works properly.
|
|
- ALL - FSOUND_GetCurrentVU removed in favour of FSOUND_GetCurrentLevels.
|
|
- WIN32 - Midi fixes. FMUSIC_IsFinished fixed, FMUSIC_StopSong fixed, FMUSIC_LoadSongMemory fixed.
|
|
- WIN32 - A3D/Geometry support removed. Geometry may re-appear via FMOD instead of A3D support.
|
|
- WIN32 - Fixed DX8 FX (FSOUND_FX_xxx) support.
|
|
- WIN32 - Fixed CD Playback functions.
|
|
- WINCE - Better support for Casio E115G device. Use 200ms buffer for these devices.
|
|
- WINCE - Seeking through SetTime/SetPosition bugfix especially with FSOUND_MPEGACCURATE.
|
|
- LINUX - Removed CD access at FSOUND_Init.
|
|
|
|
* ALL - maxdistance behaviour unified on all platforms.
|
|
* ALL - FSOUND_SPEAKERMODE_5POINT1 is now separated to FSOUND_SPEAKERMODE_DOLBYDIGITAL and
|
|
FSOUND_SPEAKERMODE_DTS.
|
|
* ALL - Changed FSOUND_INIT_ACCURATEGETCURRENTVU to FSOUND_INIT_ACCURATEVULEVELS.
|
|
* WIN32 - Stopping or playing a sound now does not reset the FX list. You have to manually
|
|
do this with FSOUND_FX_Disable. This reduces cpu usage if wanting to start and stop
|
|
the sound repeatedly.
|
|
|
|
11/03/02 3.51 (CE Only release)
|
|
-------------
|
|
+ WINCE - FSOUND_GetCurrentVU support added
|
|
+ WINCE - Optimizations - All remaining emulated floats removed - now pure fixed point!
|
|
|
|
- ALL - Memory usage reduced on MOD/S3M/XM/IT playback by up to 200-300kb per instance.
|
|
- ALL - Other small fixes.
|
|
- WINCE - FSOUND_Init failing on some PocketPC devices fixed.
|
|
|
|
* ALL - FSOUND_FORCEMONO enabled by default when a stream or sample is attempted to be
|
|
opened with FSOUND_HW3D, so the user doesnt have to specify it manually.
|
|
|
|
14/02/02 3.5
|
|
-------------
|
|
+ FMOD CE Only. Mono mixers added! (FSOUND_MIXER_MONO and FSOUND_MIXER_QUALITY_MONO).
|
|
30% faster than stereo!
|
|
+ EAX3 support added! Advanced reverb api now also supporting occlusion and obstruction.
|
|
+ FMOD CE Only. Automatic power off/on recovery! FMOD audio will resume as soon as the power
|
|
is turned back on the Pocket PC device with no programmer intervention!
|
|
+ Ogg Vorbis version update to 1.0 RC3.
|
|
+ New tutorials in the documentation! The basics, DSP tutorial, DX8 FX tutorial and spectrum
|
|
analysis. Documentation index revamped and updated.
|
|
+ FSOUND_SetMemorySystem added. Allows the user to fexibly control memory allocated by FMOD.
|
|
+ Multiple CDROM support added. Pass 0 for default, or 'D','E' etc to select the cd drive.
|
|
+ FSOUND_Stream_SetBufferSize added. Useful for streaming from CD when the default size isnt
|
|
big enough, and causes audio skips because the cd is being held up.
|
|
+ FSOUND_SetFrequency supports negative frequencies. Play sounds backwards!
|
|
+ FMOD media player allows seeking in mods and streams by clicking on progress bar
|
|
+ Linux version brought up to date. Thanks to SUSE distro guys for helping out.
|
|
+ FSOUND_GetCurrentVU latency adjusted (via FSOUND_Init flag), and now emulates a software
|
|
mixer giving perfect VU feedback.
|
|
|
|
- Sound skips with streams removed by bigger default stream buffersize. (also on CE)
|
|
- Divide by 0 in linux version removed.
|
|
- Bug fixed where an item appeared on the windows taskbar for FMOD's cdrom handling code.
|
|
- Time accuracy bug fixed which affected gettime functions and sync callbacks.
|
|
- Fixed distortion on mp3 playback under FMOD CE.
|
|
- FSOUND_SetMute using FSOUND_ALL bugfix.
|
|
- DirectShow assert removed when an error occured loading wma.
|
|
- EAX1 support removed (superceeded by EAX2/EAX3).
|
|
|
|
* FSOUND_FX api now allows multiple instances of the same effect per channel.
|
|
* Ability to 3d position stereo soures removed in software mode. Streams and samples now default
|
|
to FSOUND_STEREOPAN so they are louder. Use FSOUND_FORCEMONO on streams/samples to make them
|
|
3d.
|
|
* Intel performance primitives for ARM were tested but removed due to insignificant speed increase.
|
|
|
|
13/09/01 3.4
|
|
------------
|
|
+ DX8 fx support
|
|
+ Windows CE / PocketPC support added for handhelds! (such as compaq ipaq/casio/jornada etc).
|
|
CE support is considered in beta. See the forum at http://www.fmod.org for beta feedback.
|
|
+ Ogg Vorbis decoder upgraded to Version 1.0. 1.0 is a large quality improvement!
|
|
+ FSOUND_SetCurrentPosition added.
|
|
+ FSOUND_GetOutputHandle added to return dsound / waveout / a3d pointer.
|
|
+ FSOUND_SetSpeakerMode added. Get true dolby digital/DTS surround output through supported hardware!
|
|
+ FSOUND_DSP_GetFFTUnit and FSOUND_DSP_GetSpectrum added. It is now possible to get a spectrum
|
|
analysis of FMOD's mixer output in realtime. Great for graphics, beat detection and note detection.
|
|
+ FSOUND_PlaySoundEx added. Has 'paused' flag that allows the user to optinally start the sound
|
|
paused, set any attribute, and then unpause it later to start it playing. Also can takes
|
|
a DSP unit handle, which means channels can now attached or grouped to specific DSP units.
|
|
+ FSOUND_DSP_GetBufferLengthTotal for help with DSP buffersize calculations.
|
|
+ FSOUND_FORCEMONO flag added for samples/streams. Force stereo sounds to play as mono.
|
|
+ FSOUND_ENABLEFX flag added for samples/streams. Enables a sample/stream to use DX8 FX.
|
|
+ FSOUND_2DHW flag added for samples/streams. Allows 2d hardware acceleration.
|
|
+ "file://" support added for streams.
|
|
+ new sample in /samples/dsp added. This shows how to use the new DSP feature of
|
|
FSOUND_PlaySoundEx to have wet/dry effects, and also the FSOUND_FX_xxx API on hardware voices.
|
|
|
|
- FSOUND_PlaySound3DAttrib removed due to FSOUND_PlaySoundEx.
|
|
- FSOUND_Stream_Play3DAttrib removed due to FSOUND_Stream_PlayEx.
|
|
- FSOUND_Stream_SetPaused & FSOUND_Stream_GetPaused removed. Use FSOUND_SetPaused, FSOUND_GetPaused instead.
|
|
- FSOUND_Stream_SetSynchCallback fix for long files.
|
|
- FSOUND_UNMANAGED flag fixed when calling FSOUND_Close.
|
|
- Removed small audible glitches or 'chirps' when seeking in an mp3 stream.
|
|
- Delay when opening a stream removed.
|
|
- Streams now reset's its buffers when FSOUND_Stream_SetTime or FSOUND_Stream_SetPosition is
|
|
called. This makes it more cpu intensive to seek, but results in no delays when seeking.
|
|
- Small accuracy bugfix in IT replay for looping envelopes.
|
|
- fix in delay note + volume envelope for XM.
|
|
- A3D Support fixed and working ok again.
|
|
- WMA/ASF/etc Support improved.
|
|
|
|
* FMUSIC_SetInstCallback behaviour changed to support more than one instrument at a time.
|
|
|
|
28/04/01 3.33
|
|
-------------
|
|
+ Linux Version update.
|
|
+ FSOUND_ALL support added to FSOUND_Reverb_SetMix.
|
|
|
|
- EAX2 bugfix with FSOUND_Reverb_GetEnvironmentAdvanced
|
|
- Click noise removed from WAV streams if FSOUND_Stream_SetTime was used before Play.
|
|
- S3M bugfix for samples with middlec of 0.
|
|
- Low quality mixers have been removed. The symbols are there for backwards compatibility
|
|
but choosing one will autodetect a quality mixer instead.
|
|
- Small bugfix in FPU quality mixer to do with volume ramping.
|
|
|
|
* Licensees now get an extensive compile time configuration header to include or exclude as many
|
|
fmod features as they like! a stripped FMOD.DLL can be as small as 20k now.
|
|
|
|
27/03/01 3.32
|
|
-------------
|
|
+ FSOUND_SetVolume, FSOUND_SetPan & FSOUND_IsPlaying support for WMA/ASF/Internet
|
|
streams/etc added. Multiple wma's open at once bug fixed.
|
|
+ Excellent quality resonant lowpass code added to fmod.exe example. Source available.
|
|
+ FSOUND_INIT_GLOBALFOCUS added for directsound output, to allow sound to be heard
|
|
even though the window is out of focus.
|
|
+ OGG VORBIS - Official beta 4 release included. Previous ver was pre-release beta 4.
|
|
|
|
- Recording interface re-enabled.
|
|
- MP2 fix - sound coming out one channel for stereo sounds now work properly.
|
|
- 3D sound glitch with FSOUND_PlaySound3DAttrib fixed.
|
|
- FSOUND_Stream_GetLengthMs returning incorrect results loading multiple mp3's fix.
|
|
- exception when loading many wav files fixed.
|
|
- MIDI updates - FMUSIC_GetTime works again and support for FMUSIC_IsFinished added
|
|
- Possible DX8 related problems removed.
|
|
- Better handling of machines with NO soundcard.
|
|
|
|
* improved multitasking / buffering = lower cpu usage, more stability for sound output,
|
|
especially on weird configs and low spec machines.
|
|
* FMOD will now play the audio track out of AVI files - ie DIVX etc :)
|
|
|
|
18/02/01 3.31
|
|
-------------
|
|
+ WAV Loop point support added! FMOD will now interpret loop points set in soundforge etc.
|
|
+ OGG VORBIS - Beta 4 used with FMOD. Fixes problems and has speed benefits.
|
|
+ FMUSIC_SetInstCallback added. Get callbacks on mod type instrument numbers.
|
|
+ FSOUND_Stream_SetSynchCallback added. Visually drop markers in your wav editing package and
|
|
FMOD will callback in time to the points as the sound plays! Great for lipsynching/gfx
|
|
demos etc. WAV/RIFF mp3 only.
|
|
+ DX8 support added.
|
|
+ NT detection added. This will mean WINMM is automatically enabled if FSOUND_Output isnt
|
|
called for better performance. All other WIN32 OS'es will use DSOUND.
|
|
+ Static library project added for commercial licensees.
|
|
|
|
- Extra MP3 error checking, avoids crash on bad mp3 files. (why are there so many?)
|
|
- Crash fix on certain combinations of machines with sblive cards.
|
|
- WMA / Internet stream support error code fix.
|
|
- WAV loader now handles files with 2 data chunks :)
|
|
- FSOUND_DSP_ClearMixBuffer now works properly.
|
|
- Fixed wobbling row/order/time when you pause a mod.
|
|
- small crack noise at the end of looping 8bit wav files fixed.
|
|
- FSOUND_Stream_GetTime improved especially with looping streams.
|
|
- Zxx sync bug with mod files fixed where more than 1 Zxx was placed on a row.
|
|
- XM multiretrig + volume column volume bug fix.
|
|
|
|
- LINUX - Oss now opens the socket in nonblocking mode. That should take care of the
|
|
lockups some ppl got when another app was using the sound.
|
|
- LINUX - Esd now checks (via a select()) if it can send data, blocks if it can't. The
|
|
newest Elightment Sound Daemon choked on that one, and it's the Right Thing(tm) to do.
|
|
|
|
|
|
* A bug has been found in the win2k sblive drivers to do with volume levels on 3d sounds..
|
|
We suggest you get the newest version.
|
|
|
|
17/12/00 3.3
|
|
------------
|
|
+ Linux support added! Big thanks to Magnus Naeslund on this for such a big effort!
|
|
+ .MIDI/.RMI support added. (use FMUSIC_LoadSong)
|
|
+ .OGG (Ogg Vorbis) support added. (FSOUND_Stream_OpenFile/FSOUND_Sample_Load).
|
|
+ .MP2 (mpeg layer 2) support added. (FSOUND_Stream_OpenFile/FSOUND_Sample_Load).
|
|
+ .WMA Support added. (FSOUND_Stream_OpenFile).
|
|
+ .ASF audio Support added. (FSOUND_Stream_OpenFile).
|
|
+ Internet streaming support added! Pass a URL to FSOUND_Stream_OpenFile!!!
|
|
+ Volume Ramping ('click removal') added to MMX mixers. All quality mixers now ramp by default.
|
|
+ MP3 playback optimized.
|
|
+ Delphi and visual basic interface updated.
|
|
+ Documentation update.
|
|
|
|
+ API changes and new features!!! -
|
|
+ FSOUND_Stream_GetLengthMs added. Returns length of stream in milliseconds.
|
|
+ FSOUND_Stream_SetTime added. Allows setting the position of a stream in ms. (even VBR mp3s!)
|
|
+ FSOUND_Stream_OpenFile added. This combines all the old 'FSOUND_Stream_Open*' commands into 1.
|
|
+ FSOUND_Stream_SetEndCallback added. Get a callback when the stream has finished!
|
|
+ FSOUND_Stream_GetSample added. Get the internal FSOUND_SAMPLE definition for a stream.
|
|
+ FSOUND_Stream_CreateDSP added. Add a DSP effect chain per stream if you want!
|
|
+ FSOUND_Stream_Play3DAttrib added.
|
|
+ FSOUND_CD_SetVolume and FSOUND_CD_GetVolume added.
|
|
+ FSOUND_CD_GetTrackTime added. Returns current track time.
|
|
+ FSOUND_CD_GetTrackLength added. Returns track length in milliseconds.
|
|
+ FSOUND_Sample_Load replaces all previous FSOUND_Sample_Load* functions.
|
|
+ FSOUND_Sample_GetName added.
|
|
+ FSOUND_PlaySound3DAttrib added. Replaces FSOUND_3D_PlaySound and FSOUND_PlaySoundAttrib.
|
|
+ FSOUND_SetLoopMode added for those who want per channel loop control not per sample.
|
|
+ FMUSIC_SetReverb added (for MIDI only currently)
|
|
|
|
+ FSOUND_LOADMEMORY flag added which allows sample loading, and STREAMING from a memory pointer.
|
|
+ FSOUND_MPEGACCURATE flag added for FSOUND_Stream_SetTime and MP2/MP3. You can use this to get accurate time length,
|
|
and set the exact specified time in an MP3 even if it has a Variable BitRate!! (VBR)
|
|
+ FSOUND_ALL added to channel and sample flags. This allows 1 function call (to FSOUND_SetVolume
|
|
for example) and it will affect ALL channels! The possibilities are cool, such pitchbending all
|
|
sounds playing with FSOUND_SetFrequency(FSOUND_ALL, freqval); etc.
|
|
|
|
|
|
- Some mod based fixes including better support for corrupted files :}
|
|
- Click bug removed on single-shot (non looping) samples for software engine.
|
|
- Bug in mmx 8bit sample mixers fixed.
|
|
- Streaming files stutter bug upon start removed / lessened.
|
|
- MP3 frame filter added to remove corruption/glitches in bad mp3's.
|
|
- ADPCM wav file corruption introduced in 3.22 removed.
|
|
- FSOUND_Sample_SetLoopPoints bad parameter handling fixed.
|
|
- FSOUND_StopAllChannels removed in favour of FSOUND_ALL flag. fmod.dll is still backwards compatible.
|
|
- FSOUND_Sample_LoadWav removed in favour of FSOUND_Sample_Load. fmod.dll is still backwards compatible.
|
|
- FSOUND_Sample_LoadMpeg removed in favour of FSOUND_Sample_Load. fmod.dll is still backwards compatible.
|
|
- FSOUND_Sample_LoadRaw removed in favour of FSOUND_Sample_Load. fmod.dll is still backwards compatible.
|
|
- FSOUND_Sample_LoadWavMemory removed in favour of FSOUND_Sample_Load. fmod.dll is still backwards compatible.
|
|
- FSOUND_Sample_LoadMpegMemory removed in favour of FSOUND_Sample_Load. fmod.dll is still backwards compatible.
|
|
- FSOUND_Stream_Open removed in favour of FSOUND_Stream_OpenFile. fmod.dll is still backwards compatible.
|
|
- FSOUND_Stream_OpenWav removed in favour of FSOUND_Stream_OpenFile. fmod.dll is still backwards compatible.
|
|
- FSOUND_Stream_OpenMpeg removed in favour of FSOUND_Stream_OpenFile. fmod.dll is still backwards compatible.
|
|
- FSOUND_3D_PlaySound removed in favour of FSOUND_PlaySound3DAttrib. fmod.dll is still backwards compatible.
|
|
- FSOUND_PlaySoundAttrib removed in favour of FSOUND_PlaySound3DAttrib. fmod.dll is still backwards compatible.
|
|
- FSOUND_MIXER_QUALITY_FPU_VOLUMERAMP removed, all quality mixers are volume ramping now.
|
|
- FMOD_ERR_INVALID_MIXER error removed in favour of already existing FMOD_ERR_INVALID_PARAM flag.
|
|
- FSOUND_GetCurrentVU improved, and bugfixed for stereo samples.
|
|
- Other minor bugfixes.
|
|
|
|
* Streamer callbacks created with FSOUND_Stream_Create must now return TRUE, or FALSE to terminate the stream.
|
|
* FSOUND_MixBuffers renamed to FSOUND_DSP_MixBuffers
|
|
* _cdecl calling convention specified for callbacks in case default calling convention is changed (thanks Aristarkh Zagorodnikov)
|
|
* changed LCC-WIN32 compiler definition in fmod.h to __LCC__ (not LCCWIN32) so it works better now :)
|
|
|
|
05/11/00 3.21
|
|
-------------
|
|
* Intermediate update before FMOD 3.3 is released.
|
|
|
|
+ New, easier to navigate documentation layout. Recording interface added to documentation :)
|
|
|
|
- End of non looping MP3 on rare combination of filelength crash fixed.
|
|
- More efficient streaming engine, mp3 and other format playback is even faster than before.
|
|
- Master Volume and FSOUND_SetVolumeAbsolute bug fixed.
|
|
|
|
04/05/00 3.2 DX3 Patch
|
|
-----------------------
|
|
+ Improved playback stability with harddisk interruptions occuring in the background.
|
|
- DirectX versions *less than* DX7 compatibility problem fixed (most noticable under NT). This was thanks to bug in dsound API (thanks microsoft!)
|
|
|
|
|
|
01/05/00 3.2
|
|
------------
|
|
* FSOUND_NORMAL re-defined to (FSOUND_LOOP_OFF | FSOUND_8BITS | FSOUND_MONO), as in some
|
|
cases it was being mistaken for a bitfield and or'ed in with other flags when it infact wasnt. (it was 0!)
|
|
* FSOUND_EAX interface renamed to FSOUND_Reverb interface. (to fit a3d reverb, software reverb etc not just EAX)
|
|
|
|
+ DX7 support added. This adds more hardware voices than previously possible before.
|
|
+ EAX 2.0 support added. This means advanced reverb functionality and manual occlusion control.
|
|
+ A3D 3.0 support added (FMOD comes with a3dapi.dll now). This adds A3D reverb and advanced reverb support.
|
|
+ RECORDING support added. See FSOUND_Record_StartSample, FSOUND_Record_StartWAV etc.
|
|
+ FSOUND_MIXER_QUALITY_FPU_VOLUMERAMP mixer added. This removes clicks on sudden volume changes for added quality.
|
|
+ MMX quality mixer speed increased AGAIN to crazy speeds! Check out the new comparison charts.
|
|
+ 'userdata' parameter added to FSOUND_Stream_Create.
|
|
+ FMOD Standalone player/example (fmod.exe). Added 48khz support, MP3,WAV & A3D 3 support!
|
|
Reverb added (NR button removed) and lowpass filter declicked. See FMOD.C for the code for all this!
|
|
+ New music callbacks! FMUSIC_SetRowCallback, FMUSIC_SetOrderCallback. LATENCY ADJUSTED, so when it calls back on a particular row, it is the row you HEAR.
|
|
+ FSOUND_Stream_GetTime smoother and LATENCY ADJUSTED, so when the time displays a value, that is the time into the stream that you HEAR.
|
|
+ FMUSIC_GetPatternLength added. (for time calculation purposes)
|
|
+ FSOUND_SetMinHardwareChannels and FSOUND_SetMaxHardwareChannels added. Great for controlling 3d Hardware resources.
|
|
+ FSOUND_REVERB_IGNOREPARAM added, so you can change specific elements of environmental reverb and ignore others.
|
|
+ Delphi interface added!
|
|
+ Added fmod_errors.h which contains FMOD_ErrorString. Use this in conjunction with FMOD_GetError to get a string description of the error.
|
|
|
|
- PCM .WAV files accidentally did an ACM codec check even if it was PCM. Some machines didn't
|
|
have this PCM ACM codec, and so loadwav or openwav failed - ACM check now skipped for PCM files.
|
|
- FSOUND_GetCurrentVU fixed!
|
|
- 3D - Software engine bugfixed rolloff and distancefactor to make it sound more like DS3D.
|
|
- WAV/MP3 - streamer fixes and improvements.
|
|
- XM/IT - portamento with multi sample instruments fixed.
|
|
- API - FSOUND_Sample_Get somehow dissapeared from the DLL.. back again.
|
|
- API - MU-Law functions removed.
|
|
- Many other miscellaneous fixes.
|
|
|
|
08/01/00 3.11
|
|
-------------
|
|
+ RIFF based MP3 files and MP3's with ID3 tags at the start now supported.
|
|
|
|
- LoadSongMemory fixed and works again
|
|
- Pentium Pro selecting wrong mixer upon autodetect now fixed.
|
|
- XM and IT bugfixes.
|
|
|
|
24/12/99 3.1
|
|
-------------
|
|
|
|
* FMUSIC_OptimizeChannels put back into fmod.h. Im not sure why it dissapeared in the first place :)
|
|
* 'stream.exe sample' changed from WAV to a MP3 command line streamer because more people wanted that.
|
|
* LoadMemory functions now take a length (length of the buffer). You may have to change your code
|
|
to support this (it is not backward compatible with 3.0. I didnt want to add more functions to the
|
|
API for such a minor change.
|
|
|
|
+ Variable bitrate MP3's now supported!
|
|
+ FSOUND_SetHWND added for those who want to specify their own HWND for dsound focus purposes.
|
|
+ FSOUND_Stream_GetTime added, for smooth, non lagged, accurate synchronization with stream
|
|
playback.
|
|
Use this for synchronizing MP3's to your graphics!
|
|
+ Added stability to sound output of software engine, for when harddisk accesses occur.
|
|
|
|
- 8 bit raw wav streaming bug fixed where output was noisy.
|
|
- Streamer start/stop logic bug fixed/improved. (it used to hang on exit if you did several start/stops in a row)
|
|
- Small XM bugfix on delay note.
|
|
- Fixed startup crash bug. This was caused by BAD DRIVERS. Creative ES1370 sound card drivers
|
|
have a bug, and they have the cheek to set the certified bit in the caps. It also reports
|
|
256 hardware 3d channels which is obviously a lie. Thanks to Marcus Aarts, Anders Nilsson and
|
|
Shane Stevens for helping me find this one.
|
|
- Documentation fixes.
|
|
|
|
|
|
12/12/99 3.0
|
|
-------------
|
|
|
|
* New timing system, no more update rate, no more mixahead! a lot more stable on shit cards
|
|
like awe64, and at the same time, very low latency.
|
|
* FSOUND_SetPanSeperation only affects sfx now, not music.
|
|
* If mixer is not selected, it defaults to a quality mixer now, not a low quality one like before.
|
|
* FSOUND_Geometry_AddPolygon now supplies normal as well AND opening factor. (it takes NULL also)
|
|
* FSOUND_3D_Listener_GetAttributes now consistant across all output types. (waveout missed out before)
|
|
* FSOUND_SetPaused now works on FSOUND_HW3D buffers.
|
|
* FSOUND_SetMute now works on FSOUND_HW3D buffers.
|
|
* FSOUND_MixChannel renamed to FSOUND_MixBuffers (it has nothing to do with channels really)
|
|
* FSOUND_Listener_SetAttributes does not update 3d info now, FSOUND_3D_Update does.
|
|
|
|
+ Added FSOUND_File_SetCallbacks. Use this to make FMOD use your own file operations.
|
|
+ Compressed WAV support added
|
|
+ MP3 Support added
|
|
+ EAX Support added
|
|
+ A3D Support added (with full geometry and list support)
|
|
+ MMX quality mixer sped up 2-3 times on ppro+ machines! (p6/p2/p3)
|
|
+ FSOUND_Driver_GetCaps added.. Now query the capabilities of drivers before calling FSOUND_Init.
|
|
+ FSOUND_Stream_Create added - an easier way to stream data.
|
|
+ FMUSIC_SetPanSeperation added, for per song pan seperation control.
|
|
+ FSOUND_3D_Update added. This is now the global 3d update/flush function, NOT FSOUND_Listener_SetAttributes.
|
|
+ FSOUND_Geometry_Material functions implemented
|
|
+ Documentation added for geometry stuff, also other documentation updated (playsound, 3d stuff)
|
|
+ Software 3D Engine updated! Software sounds used to audibly update on
|
|
FSOUND_3D_Emitter_SetAttributes only, and not when the listener was updated.
|
|
Now they are updated on neither, they are audibly updated now in FSOUND_3D_Update.
|
|
This means you can now move the listener without updating the sources and all the sources will
|
|
update automatically! This behaves the same as DS3D now.
|
|
+ FSOUND_GEOMETRY_OPENING & FSOUND_GEOMETRY_OPENING_REFERENCE implemented! create doorways.
|
|
+ Geometry list functions added. A faster way of processing geometry.
|
|
FSOUND_Geometry_AddList(FSOUND_GEOMLIST *geomlist);
|
|
FSOUND_Geometry_List_Create(signed char boundingvolume);
|
|
FSOUND_Geometry_List_Free(FSOUND_GEOMLIST *geomlist);
|
|
FSOUND_Geometry_List_Begin(FSOUND_GEOMLIST *geomlist);
|
|
FSOUND_Geometry_List_End(FSOUND_GEOMLIST *geomlist);
|
|
FSOUND_Geometry_List_Add(FSOUND_GEOMLIST *geomlist);
|
|
+ Added FSOUND_SetBufferSize
|
|
+ Added FSOUND_DSP_GetBufferLength
|
|
|
|
- FSOUND_Sample_Lock / FSOUND_Sample_Unlock documented properly (oops! :)
|
|
- Soak test bug caused wave out to crash after 3 hours of operation.. fixed.
|
|
- Fixed bug in FSOUND_Sample_Create
|
|
- Some module playback improvements from fmod 2.25.
|
|
- IT mod format bug fix. (NNA caused sample vibrato to lose integrity)
|
|
- Error code is now set to FMOD_ERR_NONE on all function calls, so you dont parse an error
|
|
that was set 10 function calls ago for example.
|
|
- NoSound output mode improved.
|
|
- Removed FSOUND_SetMixAhead
|
|
- Removed FSOUND_SetUpdateRate
|
|
|
|
18/10/99 2.25
|
|
-------------
|
|
* Version number now included in DLL. (right click on DLL for info)
|
|
+ IT - mods composed with IT versions older than 2.0 reenabled. I dont have many
|
|
of these songs and it seemed to work straight away and the songs i did have.
|
|
They sounded ok, but if there are any problems with old IT mods then mention
|
|
them to me and I might try to fix them. (theyre not high on my priority list)
|
|
- FMUSIC_SetZxxCallback did not have the correct documentation and just took a
|
|
void * as the callback. The actual format of the callback is
|
|
callback(FMUSIC_MODULE *mod, unsigned char param). FMUSIC_SetZxxCallback now
|
|
forces this.
|
|
- IT - Impulse tracker 2.15 compressed samples reenabled :)
|
|
- IT - FMOD was interpreting IT's stereo flag for samples, which was erroneously
|
|
set by older versions of IT, causing some samples to play twice as fast as they
|
|
should. Stereo check removed (IT never supported stereo samples)
|
|
- MOD S3M XM IT - Sample offset bug fixed.
|
|
- XM IT - minor bugs fixed.
|
|
- Closedown stability increased.
|
|
|
|
31/08/99 2.24
|
|
-------------
|
|
* This is the last FMOD 2.* update unless there are some small niggling bugs. I
|
|
need to finish 3.0.
|
|
* NOSOUND - FSOUND_OUTPUT_NULL now behaves as if everything is active, therefore
|
|
you will get all music callbacks and timers, vu meters, dsp functions and everything
|
|
else working correctly etc as if it was playing, but you dont hear anything.
|
|
* FMOD ported to N64.
|
|
* API - this version is now declared stable. It has been run over with memory leak
|
|
tools and numerous memory problems have been found and fixed.
|
|
* DSP - Note that the 'length' part of the callback now fluctuates more to increase
|
|
output stability, and its maximum size can equal up to the updaterate + mixahead
|
|
in milliseconds.
|
|
* TOOLS - convert.exe removed. use soundforge or some such program if you want to
|
|
convert a wav to a a raw signed datastream.
|
|
|
|
+ API - New reference count channel index! The index PlaySound returns now has a
|
|
reference count in the top 16bits. This so you can call playsound, store the
|
|
return value, then if that channel gets stolen by the priority system, and you
|
|
blindy try and keep updating it as if it was from your original playsound, the
|
|
new sound wont be affected!!
|
|
+ API - FSOUND_Stream_OpenWav added. Now you can stream wav files with ease. This
|
|
version still only supports PCM wav, but FMOD 3.0 should change this situation.
|
|
+ API - FSOUND_SetSFXMasterVolume & FSOUND_GetSFXMasterVolume added.
|
|
+ API - FSOUND_SetVolumeAbsolute added. This volume overrides master volume. Great
|
|
if you need to lower the volume of your game effects and make one stand out.
|
|
+ MUSIC - FMUSIC_OptimizeChannels added! This function kicks arse if you are trying
|
|
to lower channel usage. You give it a 'channels mixed' value, and a 'mod volume'
|
|
value, and it wont play sounds in a song that have a lower volume than 'mod volume',
|
|
if 'channels mixed' is being exceeded as stated in FSOUND_GetChannelsPlaying.
|
|
One example is a game that reduced its maxchannels from 24 to 16 because of this
|
|
with no audible difference. (the song had a lot of 'echos' that didnt need to be
|
|
audible when things got noisy, so FMOD threw them away.)
|
|
+ MUSIC - FMUSIC_GetSample and FMUSIC_SetSample added! This allows you to get control
|
|
of samples within a mod! Great if you need to compress samples yourself and then
|
|
decompress them back into the mod during your game. This was in 2.23 but i forgot
|
|
to mention it here :)
|
|
+ STREAM - file streaming example added to the sample directory. Command line driven
|
|
and takes a .wav file.
|
|
|
|
- 3D - Software doppler effect rewritten, now physically accurate :)..
|
|
FSOUND_3D_Listener_SetDopplerFactor() now means something different to the previous
|
|
versions. Check the documentation for more on this.
|
|
- DRIVER - fixed problem with some peoples machines that have more than 16
|
|
'soundcards' that i thought would be the maximum. (It is actually just a
|
|
hardware card enumerating a whole waveout device for each hardware channel.)
|
|
- INTERFACE - command line parameters fixed, and some people not seeing the interface
|
|
appear should now be happy.
|
|
- IT - channel allocation bug fixed.
|
|
|
|
17/08/99 2.23
|
|
--------------
|
|
+ API - FSOUND_UNMANAGED flag added for sample loading/management
|
|
+ API - Added FSOUND_DSP_ClearMixBuffer. Use this before doing a biiiiiig harddisk access so you
|
|
dont get looping noise/stuttering, (because the harddisk/windows basically bus masters and shuts
|
|
down all threads, causing the mixer to stop as well, but the soundcard keeps playing the buffer).
|
|
- API - FSOUND_Sample_LoadWav & FSOUND_Sample_LoadWavMemory now return proper error code.
|
|
- MIXER - clicks removed from bidi looping sample in quality mixer.
|
|
- IT - fixed 2.15 compressed samples now work (oops forgot to call the right decompressor)
|
|
- IT - Memory footprint drastically reduced for pattern data (now leaves pattern data compressed and
|
|
unpacks on the fly)
|
|
- XM - Digitracker saved XM's now work correctly (dont crash, and illegal stuff filtered out)
|
|
- XM - envelope bug fixed.
|
|
- 3D - divide by 0 bug fixed (when listener and emitter are at the same location)
|
|
* API - Sample based functions like FSOUND_Sample_LoadWav etc take an index now, so you can specify
|
|
an absolute sample manager index, FSOUND_FREE or FSOUND_UNMANAGED
|
|
|
|
18/06/99 2.22 rev 1
|
|
------------------
|
|
- IT - really obscure crash bug fixed.
|
|
|
|
18/06/99 2.22
|
|
------------------
|
|
- MOD - accidently broke mod support, fixed
|
|
- S3M - fixed bug with bpm's smaller than 20h
|
|
- Idle optimization back in
|
|
|
|
14/06/99 2.21
|
|
------------------
|
|
* Fix included from 2.2rev1 (registry bug in fmod standalone player)
|
|
* VC5 compatible import library included. vc6 only slipped into the last release.
|
|
+ IT 'envelope carry' support added.
|
|
+ MIXER - big increase in sound stability when harddisk is being accessed!!
|
|
+ LCC-WIN32 import library added.
|
|
- IT - crash bugfix. (envelopes with loop end before loop start)
|
|
- IT - volume bug (not hearing some samples at all) fixed in IT 'sample' mode.
|
|
- MOD S3M XM IT - fixed pattern delay bug
|
|
- DLL - size of DLL reduced by 12k!
|
|
|
|
08/05/99 2.2 rev 1
|
|
------------------
|
|
- INTERFACE - fixed stupid registry bug which cause bad drivers to be initialized
|
|
at start up. It caused possible crashing, 000 channels mixed to be displayed
|
|
and no sound.
|
|
|
|
16/05/99 2.2
|
|
------------
|
|
* FMOD is now a non beta release!
|
|
* MIXER - Changing driver on the fly with FSOUND_Driver_Close and
|
|
FSOUND_Driver_Init does not stop music playback any more. Everything
|
|
continues playing as it had been.
|
|
* API - Please read the new documentation on FSOUND_SetUpdateRate and
|
|
FSOUND_SetMixAhead!!!! This should remove confusion about what they do
|
|
and the issues of cpu usage, response time/latency and sound stability!
|
|
+ MIXER - FPU 32bit interpolating high quality mixer added!
|
|
+ API - FSOUND_Sample_SetLoopMode added
|
|
+ MOD - M!K! mod format supported.
|
|
+ INTERFACE - FMOD now saves sound settings in registry.
|
|
- API - Safety checking put into FSOUND_SetOutput, FSOUND_SetDriver,
|
|
FSOUND_SetMixer, FSOUND_SetUpdateRate and FSOUND_SetMixAhead. These
|
|
functions will fail and return an error code if FMOD is active and playing
|
|
sounds. You need to close FMOD down to call these functions, then
|
|
reinitialize it. FSOUND_Driver_Close and FSOUND_Driver_Init will fail also
|
|
if FSOUND has not been initialized with FSOUND_Init.
|
|
- MIXER - Fixed rare crash bug when background disk access caused timer
|
|
fluctuations.
|
|
- MIXER - Fixed rare sound output instability caused by closing and opening
|
|
fsound's driver code very quickly in succession.
|
|
- MIXER - Fixed crash bug on bidi samples playing backwards, at volume 0,
|
|
on the standard blendmode mixer only. (FPU Mixer also)
|
|
- MIXER - Fixed horrible fuzzy quality bug with MU-Law compressed samples!
|
|
- MIXER - Fixed standard blend mode mixer, which wasnt doing vol0 optimization
|
|
on -muted- channels.
|
|
- IT - fixed crash bug with mod that reference IT instruments beyond the
|
|
number of instruments.
|
|
- API - All 'interpolation functions' removed, if you want interpolation select
|
|
the FPU interpolating mixer and every sound played will use full 32bit
|
|
interpolation. (choosing which channels you want interpolated would end
|
|
up being a pain. Most people just want everything interpolated or not)
|
|
- CD - various CD player bugs fixed (random play, pause logic etc)
|
|
- API - FSOUND_GetCurrentVU now reports correct values for MuLaw compressed
|
|
samples.
|
|
|
|
09/05/99 2.19b
|
|
--------------
|
|
* API release, this includes changes/fixes from 2.18 Update 1 (cdrom fixes)
|
|
* Documentation updated
|
|
* FMOD is now approaching a non beta state! (no bug reports are coming in)
|
|
Beta status will most likely be removed in a few weeks (maybe version 2.20)
|
|
* API - FSOUND_SetLatency has been renamed to FSOUND_SetUpdateRate, sorry for
|
|
the name change but it is really the incorrect name for what this function does.
|
|
+ INTERFACE - Settings now saved in registry. New minimal CD Player panel!
|
|
+ CPU usage reduced during idle time. FMOD shuts itself down when nothing is happening.
|
|
+ API - FSOUND_Sample_Alloc now allows specification of default priority as well.
|
|
+ API - FSOUND_Sample_SetDefaults lets you set a sample's default freq,vol,pan & priority.
|
|
+ API - FSOUND_GetCurrentVU added, by request. (useful for vu bars/beat detection?)
|
|
+ API - FMUSIC_GetTime added, by request. Useful for exact music synchronization EVERY time.
|
|
+ API - FSOUND_GetCurrentSample added, allows you to get the currently playing sample for
|
|
a particular channel, useful for comparisons.. ie to see if a particular sample is still
|
|
playing on a particular channel.
|
|
- API - FSOUND_SetAttributes removed. It was added before due to a request but I
|
|
feel it is just API bloat and can be achieved through a macro.
|
|
|
|
28/04/99 2.18b Update 1 (player only)
|
|
------------------------------------
|
|
* FMOD - player only being updated here, not the API. API releases usually
|
|
come on the weekend. (they take more time to prepare)
|
|
+ CD - Added continuous, looped and random buttons for playback method.
|
|
- CD - All bugs fixed in CD player, all created by BUGS in WIN32 API
|
|
functions. (mmsystem & mci commands- some work ok on NT, fail on 95).
|
|
- Removed startup dialog box. Defaults to primary device and dsound. Hit config
|
|
to change. (maybe use registry later)
|
|
|
|
25/04/99 2.18b
|
|
--------------
|
|
* API - FSOUND_GetNumChannels renamed to FSOUND_GetMaxChannels
|
|
+ CD - New CD commands and support. FSOUND's CD system is a NON POLLING non
|
|
intrusive system (unlike windows cd player), for smooth background performance.
|
|
Tracks can now be looped, stopped and continued.
|
|
+ INTERFACE - new filters! Preverb filter(!) and Noise reduction.
|
|
+ INTERFACE - CD Player added.
|
|
|
|
17/04/99 2.17b
|
|
--------------
|
|
* API - FSOUNDVC.LIB now VC5.0 compatible.
|
|
- XM - Fixed crash on sample offset.
|
|
- API - FMUSIC_SetPaused fixed.
|
|
- MIXER - Fixed MULAW mixer. Remember MULAW only works when a song has 16bit
|
|
samples (it converts them to mulaw), otherwise it isn't any different. It
|
|
only works for the blend mode mixer as well. The MMX mixers are fast enough
|
|
not to need mulaw.
|
|
|
|
11/04/99 2.16b
|
|
--------------
|
|
+ API - DSP Engine implemented and added! New functions:
|
|
FSOUND_DSP_Create,FSOUND_DSP_Free,FSOUND_DSP_SetPriority,
|
|
FSOUND_DSP_GetPriority,FSOUND_DSP_SetActive,
|
|
FSOUND_DSP_GetActive,FSOUND_DSP_GetClearUnit,
|
|
FSOUND_DSP_GetSFXUnit,FSOUND_DSP_GetMusicUnit
|
|
FSOUND_DSP_GetClipAndCopyUnit.
|
|
See FSOUND_DSP_Create for documentation on this new feature.
|
|
+ API - Added FSOUND_MixChannel - now you have direct access to
|
|
FSOUND's optimized mixers!
|
|
- MOD, S3M, XM, IT - Fixed loader bug introduced in 2.15! (to do
|
|
with load from memory system.)
|
|
- XM - Found and fixed a sample offset bug introduced a few
|
|
versions ago, with 16bit samples.
|
|
- API - Echo engine and functions removed - DSP engine is now to
|
|
be used.
|
|
- API - Fixed bug in FMUSIC_SetOrder.
|
|
- API - Fixed bug in FSOUND_GetMixer, it was returning
|
|
FSOUND_MIXER_AUTODETECT if that was used in FSOUND_SetMixer,
|
|
instead of the actual mixer it was using.
|
|
- INTERFACE - loader bug fixed.
|
|
|
|
28/03/99 2.15b
|
|
--------------
|
|
+ API - Watcom now supported. Watcom users link in the
|
|
FSOUNDW.LIB import library.
|
|
+ API - Added FMUSIC_LoadSongMemory, now load mod/s3m/xm/it
|
|
files from memory handles / resources.
|
|
+ API - Added FSOUND_LoadWavMemory, now load wav files from
|
|
memory handles / resources.
|
|
- API - Fixed bug in FSOUND_Sample_Alloc which allocated samples
|
|
with length = 0, and hence no sound came out when played.
|
|
- SAMPLE - fixed bugs in fmod sample code.
|
|
|
|
21/03/99 2.14b
|
|
--------------
|
|
* FSOUND / FMUSIC is now a DLL. The reason is to use a dll is
|
|
to make it easier to link on different compilers, and it really
|
|
is for aesthetic reasons only to have it as a .lib. (ie 1 exe
|
|
releases) and im not interested.
|
|
* Examples cleaned up, they dont specify unused .libs any more.
|
|
- WAVEOUT - bugfixed, works on NT now, and now actually uses
|
|
setmixahead settings. You will have to use large mixaheads
|
|
(80-100 and higher on my tests) for WaveOut, or the sound will
|
|
break up. There is nothing you can do about this.
|
|
- DSOUND - works on NT now (DX3). This is the same as waveout
|
|
(dsound3 for nt is a waveout wrapper). You will have to use
|
|
large mixahead values (80-100ms and higher on my tests), or it
|
|
may break up.
|
|
+ API - FSOUND_SetAttributes added
|
|
+ API - FSOUND_PlaySoundAttrib added
|
|
|
|
14/03/99 2.13b
|
|
--------------
|
|
* Programmers API finally released! see
|
|
http://www.zip.com.au/~fl for more details!
|
|
+ MIXER Stereo sample mixers added. Old way of spawning 2 new
|
|
channels is gone.. Under MMX a stereo channel is actually
|
|
faster than mono!
|
|
+ S3M, XM, IT - Zxx callback now supported. Programmers can set
|
|
a callback function for whenever the Z effect is issued from a
|
|
song, for synchronizing effects etc. .MOD is not supported.
|
|
+ STREAMERS - Streamer API Added for playing very large files.
|
|
Currently only supports raw, but mulaw, adpcm and mp3 streamers
|
|
are coming.
|
|
+ MOD, S3M, XM, IT - Master volume added to API.
|
|
This is a true scalar instead of just modifying the song's
|
|
global volume like before (ie the song might have adjusted the
|
|
global volume after you set it)
|
|
+ INTERFACE - Master volume slider added.
|
|
- MIXER - Fixed extremely rare crash bug.
|
|
- MIXER - volumes were ever so slightly out, ie a channel
|
|
panned full right still had about 0.4% (not much) of the sound
|
|
playing in the left channel instead of 0% as it should have.
|
|
- MISC - many small fixes.
|
|
|
|
04/02/99 2.12b
|
|
--------------
|
|
- Fixed linear freq problem introduced due to linear freq
|
|
optimization, I just removed it now for accuracy sake.
|
|
* a little bit more stable?
|
|
|
|
02/02/99 2.11b
|
|
--------------
|
|
- Fixed BPM problem on all formats. Now loop songs should play ok.
|
|
- Fixed sample offset on all formats (oops sorry sample offset was
|
|
disabled on mod/s3m/xm since 2.06 accidentaly! noone seemed to
|
|
notice hahaha)
|
|
|
|
31/01/99 2.10b
|
|
--------------
|
|
- Minor Direct Sound bugs fixed.
|
|
|
|
30/01/99 2.09b
|
|
--------------
|
|
- IT bug fixed with instrument numbers and no note. (most
|
|
formats dont retrigger the note in this case, but IT does if
|
|
the sample has finished playing, and not before.)
|
|
- S3M Bug found in loader. (popped up only due to impulse
|
|
tracker saved s3ms).
|
|
- IT fixed porta wihout any previous note.. porta on on a
|
|
channel that has no channel playing will trigger a new note.
|
|
- DRIVER direct sound should work more reliably on NT using
|
|
directX.
|
|
- INTERFACE fixed song list box bug. Delete happily now without
|
|
problems.
|
|
- INTERFACE config box now remembers what you last set when you
|
|
hit config, and wont change any settings if you hit 'cancel'
|
|
(it used to select nosound before)
|
|
- DRIVER code now detects incompatible cpu's and exits with an
|
|
error instead of crashing?
|
|
- XM/IT replay sped up. Linear frequencies processed a lot
|
|
faster now.
|
|
|
|
26/01/99 2.08b
|
|
--------------
|
|
+ DRIVERS added capability to switch drivers on the fly. Use
|
|
the 'Config' Button on the interface to change output
|
|
devices, soundcards, mixing rates or mixing routines.
|
|
+ MIXER added Mu-Law support! This is only for NON-MMX mixing,
|
|
and improves the speed of 16bit sample mixing dramatically, with
|
|
only a small loss in sample quality. (simulates 12bit accuracy)
|
|
- MIXER fixed ugly bug (crashes/noise) with 8bit BIDI looping
|
|
samples on standard blend mode mixer.
|
|
|
|
24/01/99 2.07b
|
|
--------------
|
|
+ IT added volume byte portamentos
|
|
+ IT added S6x - Pattern delay by ticks
|
|
+ IT added volume byte vibrato
|
|
+ IT added sample vibrato
|
|
- IT fixed effect S73, S74, S75, S76, S77, S78. These commands
|
|
are meant to alter the behaviour of an instrument, except i was
|
|
permanently modifying the instrument instead of just altering it
|
|
for the note currently being played!! oops..
|
|
- IT / XM - turn off envelopes that have less than 2 points.
|
|
(apparently sometimes files can have this)
|
|
- IT fixed Hxy Kxy Uxy (vibrato/finevibrato).. if Hxy is followed
|
|
by U00 then it continues to be a normal vibrato, even if it says
|
|
fine vibrato.. same for Uxy followed by H00.. it continues with
|
|
a fine vibrato even if it says normal vibrato.. The y part of
|
|
the command needs to have something in it to change vibrato
|
|
types. (dumb impulse tracker bug)
|
|
- IT fixed volume slide bug in Kxy Lxy
|
|
- IT foreground / background channel logic is more accuate now with
|
|
NNA's and effect commands.
|
|
- MOD, S3M, XM, IT - now checks internal signatures for file verification
|
|
as some people were trying to load mod's etc that were renamed to s3m!
|
|
yeah yeah thanks a lot otto ;)
|
|
- IT fixed S00 - any Sxy command gets remembered and replayed if it
|
|
is followed with S00.. (crono - not just SDx and SCx like you said)
|
|
- DSOUND fixed init/shutdown code to be cleaner.
|
|
|
|
|
|
20/01/99 2.06b
|
|
--------------
|
|
- XM fixed BPM issue.. seems FT2's timer is a bit faster than it
|
|
really should be.. (roughly 2bpm) mega-sample-loop songs sound
|
|
ok now.
|
|
- IT another pattern loader crash bug fixed (should be the last)
|
|
- IT fixed Gxx bug (portamento).. IT forgets it porta target
|
|
after it reaches it. (TheHornet again)
|
|
- IT fixed Oxy (sample Offset) bug
|
|
|
|
18/01/99 2.05b
|
|
--------------
|
|
* MIXER Using large latency again just for fmod.exe with dsound,
|
|
to improve stability (im working on it)
|
|
- IT Fixed signed/unsigned sample detection in loader
|
|
- IT Disabled pitch envelopes for IT's using IIR filters so they
|
|
wont sound awful.
|
|
- XM Fixed crash bug in loader.
|
|
|
|
17/01/99 2.04b
|
|
--------------
|
|
* Mixer buffer management totally rewritten, might be a *tiny*
|
|
bit slower (becuase of caching), but it is a lot more flexible
|
|
and stable. Built in preparation of the DSP plugin API.
|
|
* Halved size of both MMX mixer routines (to do with surround)
|
|
* API ready to use. Now at beta test stage
|
|
* Thanks to TheHornet for his doc on it 'nuances' that were too
|
|
subtle to find through normal testing. (bugs found with (***))
|
|
* New more consistant mixer thread management.
|
|
+ Volume 0 optimizations! Average mods will now use about 30%
|
|
less cpu time (depends on the song)
|
|
+ Standard blend mode mixer sped up for 8bit samples
|
|
+ Windows Multimedia WaveOut support added. At the moment it
|
|
works well but the latency is too long for game sfx. It is
|
|
more stable than the direct sound driver (less garbling /
|
|
breakups)
|
|
+ .WAV sample support added.
|
|
+ Stereo sample support added.
|
|
+ IT added linear frequencies.
|
|
+ IT added panbrello
|
|
+ IT added support for 'compatible Gxx' in IT's options
|
|
- MIXER Fixed volume 0 optimization hang bug.
|
|
- IT fixed effected E/F/G to use the same memory.
|
|
- IT fixed SDx delay note bug (SD0 == SD1) (***)
|
|
- IT fixed SCx note cut bug (SC0 == SC1) (***)
|
|
- IT fixed Qxy retrig (now retrigs across multiple notes like
|
|
IT.. other formats ignore retrig if it is higher than the
|
|
speed of the song)
|
|
- IT fixed Gxx / Lxy (portamento). was 2x too slow.
|
|
- IT fixed Vibrato for 'old effects'.. with old effects it is
|
|
2x deeper and does not get updated on tick 0.
|
|
- MIXER OOPS! i had '#define ROLLED' left uncommented in my P6
|
|
MMX mixer since version 2.0 or so!! it wasnt using unrolled
|
|
loops. Now it is roughly 1.6 times faster! (from 5% to 3% cpu
|
|
usage on a p2-266 for mixing 32channels at once)
|
|
|
|
14/11/98 2.03b
|
|
--------------
|
|
+ Added stability to mixer, removed 150ms crap from 2.02
|
|
|
|
07/11/98 2.02b
|
|
--------------
|
|
* ALL players use a new dynamic channel allocation system
|
|
- consider MOD, S3M & XM under beta again. (MAY have
|
|
broken something!)
|
|
* MIXER in an attempt for added stability, for this standalone
|
|
player, a different approach is used.. it has a huge
|
|
latency (150ms) and takes a bit more cpu time, but shouldnt
|
|
break up as much .. for the game library the old method
|
|
still stands. (150ms is way too long to wait for a sound
|
|
effect to trigger.. so fmod uses 50ms latency for games etc)
|
|
+ IT Added NNA's
|
|
+ IT Added DCT/DCA's.
|
|
+ MIXER Added echo post effect.. hardcoded 50ms echo for now.
|
|
+ IT Added Pan Envelope
|
|
+ IT Added all volume column effects except for porta commands &
|
|
vibrato
|
|
+ INTERFACE Added drag and drop. Drag tunes from explorer into
|
|
the player to load
|
|
+ INTERFACE also command line fileloading (ie associate the exe
|
|
in explorer with mod,s3m,xm,it then just doubleclick files
|
|
to load them)
|
|
+ IT Added most other effects
|
|
- ALL Fixed some crashing for songs that specify sample id's that
|
|
dont exist.
|
|
- XM & IT Fixed Envelope bug - loops were playing 1 tick too long :)
|
|
- S3M fixed arpeggio bug causing 0 frequencies (divide by 0)
|
|
- IT fixed pattern break and pattern jump .. both params are
|
|
hex unlike all other formats.
|
|
- IT fixed arpeggio depth
|
|
- IT enabled end of song marker.. it was crashing on this b4
|
|
- INTERFACE Fixed memory leak.. it would slowly leak memory in
|
|
realtime until windows ran out of resources and crashed! :)
|
|
- IT fixed porta bugs.. oops i was portamento'ing 2x too fast
|
|
- IT fixed instrument bug. it was updating all nna channel's
|
|
envelopes etc, using only the most recent nna's instrument
|
|
definition, instead of the instrument that should have been
|
|
associated with each individual nna channel.
|
|
- IT fixed set pan (Xxx) bug
|
|
- IT fixed invalid pattern bug with patterns defined that are
|
|
larger than the number of patterns specified in the file.
|
|
- IT fixed vibrato (Hxy) bug
|
|
- IT fixed big NNA bug.. i was performing NNA's based on the
|
|
new instrument's nna flags instead of the one it was
|
|
cutting off!
|
|
- IT fixed the past nna s7x effects.. now the number of channels
|
|
mixed on the interface matches exactly that of impulse
|
|
trackers!
|
|
|
|
20/10/98 2.01b
|
|
--------------
|
|
+ IT Added preliminary volume envelope support (no sustain loops)
|
|
+ IT Added channel volume slide
|
|
+ IT Added noteoff & notecut (not the effect, the note type)
|
|
|
|
19/10/98 2.00b
|
|
--------------
|
|
* First private release Version, includes MOD, S3M and XM and IT
|
|
support. New software mixers, win32 only. Removed 669,FAR &
|
|
MTM support, old interface is gone, new win32 interface..
|
|
jeezus has it been 3 years? im getting too old for this shit:)
|
|
* IT Support is REALLY basic.. roughly 30% done.
|
|
- XM Fixed bug with envelope loopend.
|
|
|
|
|
|
|
|
/|\
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
30/11/95 1.06
|
|
-------------
|
|
* Released with FMODDOC 2, including full source code
|
|
+ Totally new fast scrolling interface, some keys have changed.
|
|
+ 32channel .MOD support added. (ie dope.mod type, etc)
|
|
+ 9 octaves supported now (C-0,B-8), including 7 octaves .MOD
|
|
+ No more 64kb sample limit (4gig sample on a GUS? :)
|
|
+ MTM support added
|
|
+ 669 support added - what an awful format!
|
|
+ extended 669 support added - just as bad :)
|
|
+ 16 bit support added (err for mtm? ahh well xm will come)
|
|
+ Clipping samples at loopend points to save GUS memory
|
|
+ S3M support added
|
|
- Bugfix where all music came out in left channel on SOME cards
|
|
(none I have heard:). Thanks to Brad Thomas for the fix.
|
|
- 2 GUS bugs fixed (reported wrong dram size & dram corruption)
|
|
* now checks if the samples are too big for the card.
|
|
- Voices now play almost simultaneously instead of 1 after the
|
|
other like before
|
|
+ Added Technicality-Index (tm) meter! Truly a cool feature.
|
|
+ Knocked 52% of DRAM upload time! YES it is *2* times faster!!
|
|
(eg when.s3m even loads *3* seconds faster than cmod does)
|
|
* - FIXED at last. FMOD will now NOT crash (fingers crossed :)
|
|
- removed clicking from looping samples
|
|
- Vibrato fixed properly this time and is 100%.
|
|
* Calculated new volume table. Not so noisy. Less distortion.
|
|
+ WildCard Support added!
|
|
+ S3M Stereo Control effect SAx added
|
|
+ Solo Channel feature added and many other muting features
|
|
- Fixed S3M retrig bug
|
|
+ Vibrato/Tremolo WaveControl finished properly
|
|
+ Keyboard LED flashing added! Lights flash to channels 1-3.
|
|
- tempo bug fixed, timing system changed so BPM can drop to 24
|
|
+ FAR support added
|
|
* Sample loader redone and >64kb bug fixed, also pattern storage
|
|
method changed.
|
|
* Panning changed, now values from 0 to 255 to suit FT2.
|
|
- Pattern Loop bug fixed, I didnt know pattern loop stored
|
|
seperate values for each channel.
|
|
- pattern jump + pattern break bug fixed now all those weird
|
|
backwards tunes work RIGHT.
|
|
+ Added S3M's Fast Volume Slide bug, err feature :)
|
|
++ NOW PMODE! Load any sized tune you like now and still have
|
|
heaps of memory left
|
|
+ NEW tracker screen. Watch pattern data like a tracker
|
|
- Keyboard LED flashing removed, caused crashes on some
|
|
peoples computers.. sigh it was rather cool.
|
|
+ NEW technical info screen. Watch a lot of meaningless info
|
|
appear on the screen. Good for developers to check against.
|
|
- .MOD bug fixed, now those extremely high and low octaves
|
|
supported PROPERLY.. (unlike some cMOD players;)
|
|
- sample offset bug fixed.
|
|
+ Dynamic interface installed, now any screen can be called up
|
|
from any other screen, instead of just from the main screen
|
|
like before.
|
|
* Error handling changed for a lot better stability.
|
|
+ File Selector included for all those losers who wanted it :)
|
|
+ Added effect Ixy - Tremor - perfect I think unlike other
|
|
players.. compared against Scream Tracker 3
|
|
- Fixed >64kb sample loading bug - was causing crashes
|
|
- Fixed MTM loader bug after about 6 hours of tearing out hair
|
|
* File Selector now accessable while song is still playing,
|
|
press escape to return to the main interface.
|
|
- sample uploader recoded, fixed. 16 bit samples now load
|
|
a lot better (this is actually from 1.07 which isnt released
|
|
yet and probably wont be for a while ;)
|
|
- a zillion little other bugs fixed.
|
|
|
|
13/6/95 1.05
|
|
-------------
|
|
- GUS looping clicks removed.
|
|
- Mute bug fixed. Wouldnt unmute unused channles.
|
|
|
|
10/6/95 1.04
|
|
-------------
|
|
- fixed another crash bug
|
|
+ Added cool new pan cycling effect! Hit 'c' to try it.
|
|
|
|
7/6/95 1.03
|
|
-------------
|
|
- Fixed interface bug (was printing ^g's in sample names)
|
|
+ Added effect 8xy (Panning)
|
|
- Fixed crash bug maybe.. I think I did, people complained of
|
|
the interface crashing.. I've never seen it crash but I found
|
|
I was mixing 'new' and 'malloc'.. fixed.
|
|
+ Added effect 7xy (Tremolo) - woopee ;)
|
|
+ Added mute channels
|
|
+ Added panning keys '(' and ')' to set default panning.
|
|
|
|
30/5/95 1.02
|
|
-------------
|
|
* major internal storage changes!
|
|
+ More memory in dos shell! around 30kb on average sized tunes.
|
|
* A lot faster.
|
|
- Pattern break fixed. Tested on backward.mod by FireLight
|
|
- Now mixes at 44.1khz like it should instead of 30khz..oops :}
|
|
+ Added effect EEx (Pattern Delay).
|
|
+ Added effect E6x (Pattern Loop).
|
|
- Retrig fixed now 100% protracker.
|
|
|
|
5/4/95 1.01
|
|
-------------
|
|
- fixed crash bug / increased speed by not calculating unused
|
|
channels. (I don't think i released this version though)
|
|
|
|
6/3/95 1.00
|
|
-------------
|
|
* FIRST PUBLIC RELEASE (In FireStorm 2 Music Disk)
|
|
- Vibrato bug fixed, now works I think :).
|
|
* Interface Completely changed looks much nicer now
|
|
+ speed of interface increased greatly
|
|
|
|
==============================================================================
|
|
|