## SoundFont Midi Player

is a powerful midi player/router and real time midi synth combo,

especially useful for Soundblaster (Live,Audigy,X-fi) users, who can load soundfonts automatically and real time.

From version 2.0 Bassmidi output mode enables this feature to anyone.

SoundFont Midi Player by Zoltán Bacskó (Falcosoft) is licensed under a

Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

Features:

- 1. Fully configurable Midi in and out ports.
- 2. Real time program and bank modification on any midi channel.
- 3. Real Time effects on any midi channel.
- 4. Mute and solo on any channels.
- 5. Variable Tempo and Pitch during playback.
- 6. Virtual Piano (F1-F8 Function keys for octave change, right click for note name).
- 7. Chord mode for Virtual Piano and Midi input.
- 8. Send Sysex for Synth (GM, GS, XG, GM2, NX and custom).
- 9. Midi send and receive over Net.
- 10. Karaoke midi files support.
- 11. Bassmidi output mode.
- 12. Spectrum Analyzer.
- 13. Module files (mod,xm,s3m,it) playback support via realtime converting.
- 14. Record to wave, mp3 (or any acm codecs) capability .
- 15 .Real time soundfont loading from playlist. Place your midi and sf2 file in the same directory with the same name, or postfix your sf2 file with the required bank numbereg. mysong.mid mysong.sf2 loads the soundfont to bank 1, but mysong_008.sf2 loads the soundfont to bank 8.
- 16. Scale effect settings (transpose notes to different scales).
- 17. Supports Cakewalk/Sonar instrument definition (.ins) files for preset names and capital tone fallback.
- 18. Supports Sysex capturing from Midi input.
- 19. Supports VST effect/visualization and VSTi instrument plugins.
- 20. Fully supports Windows 9x, XP, 7, 8, 10 moreover Wine.

If you need a good versatile GM/GS soundfont, try this:

http://falcosoft.hu/reality_gmgs_falcomod.zip

If you would like to support the development of Soundfont Midi Player you can donate through PayPal.

version 1.8

1. The program can play karaoke midi files (both .kar and .mid extension) and can display lyrics and other text meta events.
To display texts press the TXT button on the main dialog.

2. You can set the program's CPU affinity mask (Use only 1 Cpu core) in the right click context menu. This can help with synch errors in case of some 16bit synth engines eg. Wingroove.

version 1.8.1

No new features only bug fixes: better handling of meta text events, workaround for missing sndvol32.exe in Vista/7/8, some mixer bug fixes (but full mixer functionality requires winXP compatibility mode under Vista/7/8).

version 2.0

1. Bassmidi synth and soundfont engine is now integrated into the program. So features that were restricted to real Sound Blaster users so far are available to everyone through Bassmidi.

Real time soundfont loading, soundfont preset names display, balance, bass & treble settings are supported (mixer controls including volume slider are associated with Bassmidi if you choose Bassmidi).

Emulated EAX Reverb and Chorus effect settings are also available. Moreover static loading of multiple soundfonts into different banks are supported.

Bassmidi is loaded dynamically only when you choose Bassmidi output in the device settings panel, so midi drivers that use Bassmidi (e.g. Coolsoft Virtualmidisynth) can be used as before.

However before using the built-in Bassmidi output you should change to a midi output (e.g. Microsoft Soft Synth) that is not using BassMidi and restart the player.

2. Player remembers last played files.

3. Windows theme support that can be changed during runtime (main dialog right click context menu).

4. Other fixes and enhancements.

Information on Bassmidi and Bassmidi settings can be found on un4seen website: http://www.un4seen.com/doc/#bassmidi/bassmidi.html

version 2.1

1. Added experimental module files (mod, xm, s3m, it) playback support via real time converting.

This feature requires soundfont support so midi output must be real Soundblaster or Bassmidi.

Beware of complex module files, since conversion can be lengthy and can result in too big midi files. Converted files are placed in the temporary directory and can be played later without conversion.

The program does not delete these files, you can delete them manually.

2. Added Bass spectrum analyzer in Bassmidi output mode (main dialog right click context menu).

3. International characters support in main panel song title.

4. Other fixes and enhancements (Midi Text, Playlist and Aboutbox related).

version 2.2

1. Added maximum polyphony and sample rate adjustment options to Bassmidi output settings.

2. Added performance information display to Bass Spectrum Analyzer. You can activate/deactivate this in the right click context menu of the Spectrum Analyzer.

3. Spectrum Analyzer and Midi Text dialog's status and position are restored next time you start the program.

4. Fixed using and locking the last used standard midi port when the actual output port is Bassmidi.

5. Other fixes and enhancements (Bassmidi buffering, Mouse wheel and main trackbar, Midi Text).

version 2.3

1. Added basic session recording capability.

2. Automatic lyrics display adjustment according to text window and font sizes.

3. Fixed bug preventing windows to shutdown/restart while the program is running.

4. Fixed bug causing access violation at program start if Bassmidi output is selected but 'Soundfont preset names' is not.

version 2.4

Modified midi keyboard. Instead of previous fixed 8 octaves now the octave offset can be set freely.

So you can reach all midi defined notes on the keyboard (0-127).

version 2.5

1. Added 'Store settings in INI file' option for maximum portability. If you choose this option all entries will be removed from registry and will be stored in 'MidiPlayer.ini' instead.

2. Added direct recording in case of BassMidi output mode.

2. Fixed bug of occasional improper format settings in recorded wave file.

3. Redesigned session recording and more obvious recording options in device settings dialog.

That's how it works:

The most simple option is to use Bassmidi. In this case you don't need to set any special option. Recording just works and only BassMidi output is recorded.

If you use other standard midi output ports then the music is not rendered by MidiPlayer so you have to set the proper input source to hear anything in the recorded wave file.

9x/2000/Xp : Usually there is only one input port per soundcard and you have to choose the proper source in the mixer (Midi or Stereo Mix/What you hear).

Vista/7/8: There are independent input ports for every source and you have to choose Stereo Mix (Midi only option is missing).

But in case of Stereo Mix not only MidiPlayer's output will be recorded but all the stereo sources that can be heard.

version 2.6

1. Important under the hood virtual memory optimizations so the program can open and play very big midi files. Black midis are welcome :).

2. Mod2midi converts more efficiently (produces less midi tracks and smaller midi files) so more complex modules (mod,xm etc.) can be played.

3. Bass spectrum analyzer FPS can be adjusted (right click spectrum analyzer window).

4. Scrolling title for long midi file names (click to enable/disable).

5. Added key offset channel map. You can set which channels the key offset is applied to (right click on Key Offset trackbar). This can be useful for XG and mod converted midi files that not necessarily use channel 10 as drum channel.

6. Fixed bug of incorrect tempo in case of missing tempo track and/or tempo change meta event.

7. Full support of high contrast Windows themes.

8. Smaller user interface related bug fixes.

version 2.6.1

Fixed randomly occurring empty playlist panel bug on Win7/8.

Fixed synth keyboard layout on non-qwerty keyboards.

version 2.7

1. Added new Sysex reset types: GM2 and NX(Technics specific). Available by right clicking the reset icon.

2. Redesigned interface for a little bit more modern look.

3. You can change the font color of the main display panel(new item in main context menu).

4. Signed middle C on virtual piano.

5. Global persistent setting for Autoplay. Setting is stored in registry/ini file.

6. Some minor bug fixes in directsound init under BassMidi mode.

version 2.7.1

1. Improved black midi playback performance in Bassmidi mode.

2. Added code path to cure newer Wine incompatibilities.

Only bassmidi output is useful under default Wine setup since working midiout ports are missing.

version 2.8

1. Mono volume meter is replaced with a stereo one.

2. Last played item on playlist is saved and restored.

3. Lyrics is center aligned and lyrics window is fullscreen capable.

4. Lyrics window and spectrum analyzer can be snapped to main window and moved together (left side and top side respectively).

5. Save patched midi option added to playlist menu. Requested by Technics users to save modified programs/banks to midi file.

6. New channel handling option for midi input (follow channel changes on interface).

7. Added active/inactive state feedback to main form's caption.

8. Fixed buggy 'Always on top' behaviour when lyrics/spectrum analyzer window is opened.

9. Added displaying midi mode of midi files for known Sysex types.

10. Added 'Shuffle' option to playlist menu.

11. Minor cosmetic changes on Windows 8+.

12. Added option to main menu 'Fix SysEx patch changes' to fix problematic midi files that use only SysEx messages to set programs/banks and leaves channel programs at default (piano). You should disable this fix if you want to save re-patched midi files.

version 2.8.1

1. Added capability of recording to compressed audio formats. Any available ACM codecs can be used (e.g. Fraunhofer or Lame mp3 codec).
You can select the desired format directly in the save dialog by clicking the select button on the right hand side of the dialog. Informations about enabling/installing mp3 codecs can be found in the 'Enable_MP3_Record' folder. Since Wine's implementation of ACM is rather buggy this feature is disabled under Wine.

2. Added Ctrl + 0..9 hotkeys for soundfont testing. You should set your soundfonts to the corresponding Bank number in the configuration dialog and then with these new hotkeys you can change the Bank on all channels at once.

3. Added play/pause, prev, next multimedia keyboard hotkey support.

version 3.0

1. Added scale effect settings that enables to transpose notes to different scales (major, minor, pentatonic and other user configurable unique scales) .
More info about this feature: http://abletonlife.com/midi-effect-tutorial-how-to-use-abletons-scale

2. Added taskbar thumbnail buttons (Windows 7/8/10+) and playing control shortcuts to taskbar menu.

3. Added support for Midi system real time messages (Start/Continue/Stop) to Midi input.

4. Playlist title and path parts are separated and tab positions are saved.

5. Other improvements: restructured menu, added show border option, position trackbar beat precision, many other fixes.

version 3.1

1. Added support for Cakewalk/Sonar instrument definition (.ins) files. Definition files should be placed in the new Instrument folder.
You can choose your definition by selecting the main menu->Intruments-> Custom preset settings item.

2. Added new bassmidi version that fixed drum channel related bugs.
So in Bassmidi mode Midi Player can show the correct preset names in all possible modes (GM, GM2, GS, XG) on all channels.

3. Added chord mode that can be applied to virtual piano and Midi input.

4. Added send custom SysEx option. It can be reached from Reset button context menu. SysEx files should be placed in the new SysEx folder.

5. Added a workaround for handling unicode file names that the active code page does not support.

6. Start/Stop real time messages can be sent to Midi out and Open Metronome 1.2.

7. Minor fixes and improvements: fixed slower startup regression from version 3.0, more precise tempo settings, added actual Midi mode display,
more intuitive main menu options, confirmation before removing playlist items when using 'Open files';

version 3.2

1. Added capture custom SysEx option and fixed sending big SysEx chunks.

2. Added support for XG/GS patch and drum channel change SysEx messages (so no need for 'Fix Sysex patch changes' compatibility option).

3. Added emulation for XG/GS patch change SysEx messages so midi sounds as intended even if synth does not support the given SysEx.

4. Added Use Sysex for Volume/Balance option. Especially useful for external synths (Device settings dialog -> mixer section).

5. Added right click context menu for direct Channel selection.

6. Further black midi related optimizations.

7. Many other fixes and enhancements.

version 3.3

1. Somewhat bigger user interface including virtual piano, knobs and buttons.

2. Added repeat one and shuffle command buttons to toolbar.

3. Added sorting to playlist. Items can be sorted by clicking the corresponding column header.

4. Faster and more compatible mod2midi conversions.

5. More precise BPM calculations and playback when tempo is modified.

6. Channel map context menu reflects actual drum/melodic channels.

version 3.4

1. Added support for Bassmidi's native 32bit float sample data. 32bit mode can prevent clipping especially when high Bass/Treble values are used.

2. Added support for saving 32bit float wave files when Bassimid's 32bit mode is active. 32bit wave files are mainly useful for post processing.

3. Added support for Bassmidi's NOTEOFF1 mode. If this mode is active note off events only kill the last instance of a note, not all overlapping notes.

4. Fixed regression of Midi over net (only selected channel's messages have been sent).

5. Other minor fixes.

6. New experimental 64 bit version. This version's advantages are better unicode filename support and the potential to handle multiple (very) big soundfonts.

version 3.4.1

Improved Shuffle function to avoid frequent repetitions.

version 3.4.2

Added option to playlist's context menu for enabling CD standard 2 secs pause between songs.

version 3.5

1. Main form's height is set to adjustable (for better playlist handling). You can resize it by dragging top/bottom border.

2. Added real Stop button. Play/Pause is now a toggle button.

3. Added 'Play from first Note' option to Playlist's context menu (skips silence at start).

4 Added 'Remove Dead Items' option to Playlist's context menu (removes missing or invalid files).

5. Added 'Repeat All Playlist' option to Playlist's context menu.

6. Improved compatibility with the recently released Sound Canvas VA.

7. Fixed problems with midi file length calculation when end of track event is mistimed.

8. Fixed playing problems with midi files that use out of spec sysex messages.

9. While dragging an item inside the playlist the playlist scrolls if you move your mouse outside of it.

10. Dragging items to playlist from explorer inserts the items right where you drop them.

11. Other fixes and enhancements.

* Thanks for James-F on Vogons forum for his valuable help.

version 3.6

1. Added Capital Tone Feedback emulation. Useful in case of synths that play wrong instrument or completely stay silent when an invalid bank is referred. More info in Howto/Faq.

2. Added to the Channel select, Key offset, and Scale effect right click context menu a more verbose channel info with preset names. This way it's easier to find the right channel.

3. Added custom sysex reset type. Moreover sysex delay settings are applied to other sysex reset types.

4. Added Mute/Solo Attenuate compatibility setting. It results in vanBasco like attenuation instead of pure on/off state when Mute/Solo applied to a channel.

5. Added Enable Sysex from Midi in option. Similarly to Enable Sysex in Files it filters Sysex messages in disabled state.

6. Added Apply controls to Midi in option. In parallel to CTF it enables to use Force Manual Mode (controller filter), Mute/Solo and Key Offset on Midi Input.
Enabled state is more optimal for message processor mode while disabled is more optimal for jamming (the controls only affect the played file).

7. Added Set Missing Defaults compatibility option. Enabled state is the ordinary one while in disabled state it can help avoiding the buggy LoopBE feedback detect error.
It can also help in some rare cases when wrong instrument is played. Most obvious side effect is instrument selection is not always preserved when seeking.

8. Fixed some AV errors related to playlist handling.

version 3.7

1. This is an important update since resolves a long pending bassmidi bug (especially in the x64 version) of high CPU usage after idle periods .

2. Added handling of drag&dropped folders (single level, no recursion).

3. Added instant playing mode. When drag&dropping files/folders to the main display area it replaces the current items and starts playing.

4. Added the possibility to change the output folder of converted MOD/XM/IT files.

5. Added reset type changing to sysex submenu of the main menu so it can also be reached when the player is in compact mode.

6. Added restoring Bass Spectrum Analyzer if it was opened before switching to normal midi output port.

7. Fixed writing wave files bigger than 4GB (that is out of wave file specification).

8. Fixed Bassmidi's reverb and chorus type/level setting failure of the x64 version.

version 3.8

1. Added Midi Channels visualization mode. Unlike previous modes this one is working with standard midi ports since it uses midi messages instead of wave data.

2. Added channel map to virtual piano Show All mode. By right clicking the Show All button you can set the map to prevent displaying e.g. drum channels.

3. Added playing state indicators to taskbar thumbnail (Win7+) .

4. Added SC88 reset sysex as valid GS mode reset (like Bassmidi and Roland SCVA does).

5. Fixed GS style sysex patch/tone change detection.

6. Fixed Real-time loaded soundfonts resetting when any unrelated options changed in Device Settings dialog.

7. Fixed x64 version standard midi port recording issues.

8. Reduced memory footprint (especially noticeable with big midi files).

9. Fixed multi-monitor related issues.

version 3.9

1. Added 'Show Velocity on Piano' option to main menu -> appearance. If enabled it shows different velocity values with different grayscale colors.

2. Added VST effect/visualization plugin support (main menu -> Bass VST Plugins. It only works in Bassmidi output mode).
Some plugins can cause instability/freezes. The most critical parts are loading and unloading so it is advisable to avoid fast loading/unloading sequences.
Priority defines the order of effects. Higher priority means that the effect occurs earlier in the chain. Therefore visualization plugins should be set to 0 priority.
Also effects that are set to 0 priority do not influence recording (recording virtually runs with priority 1).

3. Fixed error when last file on playlist is deleted while being played and repeat one is enabled.

4. Fixed AV errors in case of successive delete operations when 0 ms sysex delay is set.

5. Better compatibility with older computers that have only 1 CPU core.

6. Other fixes and enhancements.

version 4.0

1. Added VSTi plugins (VST instrument) support.
This means that Midi Player itself can host e.g. Roland SC-VA and Yamaha S-YXG50 Portable VSTi so no other VST host is required.
Advantages compared to external VST host: direct recording, normal volume/bass/treble and visualization support, can be used with VST effect/visualization plugins.

2. Added reset to middle position to most trackbars. Besides balance/bass/treble it also applies to tempo and key offset.
It works by left mouse double clicking since some trackbars have right mouse context menu.

3. VST and VSTi plugin window positions are saved and restored.

4. Added shortcut keys that open effect/instrument window and automatically load previously set VST/VSTi plugins.
(VSTi plugin -> Shift + I, VST plugins -> Shift + effect number)

5. Fixed handling of VST effect plugins that cannot detach their editor window properly.

6. Other fixes and enhancements.

version 4.1

1. Added automatic loading options to VST/VSTi plugins.

2. Added Bass/Treble configuration. You can invoke it by right clicking the corresponding trackbar (works only in Bassmidi/VSTi mode).

3. Added XG style SysEx dump program change detection and CTF support for SysEx based program changes.

4. Added automatic removing of non-existent files from playlists at load time.

5. Fixed some drums related CTF issues.

6. Fixed ESC handling in modal dialogs.

7. Many other fixes and enhancements.

version 4.2

1. Added crop selected files (deletes everything except selected files)

2. New explorer like playlist with multi-selection delete, drag, crop.

3. Added SysEx support for midi over net.

4. Modified VST(i) settings file format to VST standard fxb. Loading old bin format is still supported.

5. Hex string input control is replaced by multi line edit control in Select/Send Custom SysEx dialog.

6. Fixed potential converter command line issues (short path name is not guaranteed under NTFS).

7. Fixed instrument list when Sysex resets are very close to first program change messages.

8. Fixed non-visible VST(i) editors when width/height is only available after embedding.

9. Fixed Bass mode cannot be enabled under Wine.

version 4.3

1. Added 'Set Knob Mode to Linear' option to Compatibility Settings menu.

2. Added Maximum SysEx chunk size setting to Select/Send SysEx dialog.

3. Added Select All but Drums, Select All and Clear All options to Channel Map context menus.

4. Added selected custom SysEx file's name to Reset Type context menu.

5. Added SFZ soundfont support (even FLAC compressed but you have to download bassflac.dll from un4seen.com).

6. Added MT-32 midi & Munt support by SysEx files (GS_MT32_Mode.syx, MT32_GM_Mode.syx).

7. Fixed 'Play from First Note' problem by disabling it for rare problematic midi files with SysEx reset messages.

version 4.4

1. Added Munt (MT-32 emulator) VSTi to fully support MT-32 midi files. (It can be found in new VST folder.)

2. Added BASS_VST_SetEditKnobMode to Bass_vst.dll so linear knob mode can be set also in VST(i) plugins.

3. Added displaying full playlist duration to 'Time' column header.

4. Added ability to add associated file types by double clicking from explorer to an already opened instance of midi player (Winamp like add/enqueue behavior).

5. Added general VST UI to support editor-less plugins. Of course this UI is available for any VST(i) plugins.

6. Fixed saving/loading settings for VST(i) plugins that do not support data chunks.

7. Fixed integer overflow bug in long and high ppqn Midi files (e.g. Quest Studios Larry 3 midi).

8. Added DreamBlaster_X2 instrument definition file.

version 4.5

1. Added new "File Mode" recording option (right click menu on record button). If enabled recording only starts when playback starts and recording stops when the midi file's playback ends.

2. Added new OPL3 GM VSTi for the ones who like 90's retro sound. It's in the same VST folder where MuntVSTi can be found.

3. Added 49716 Hz to selectable sample rates (because of OPL3 GM VSTi).

4. Added version 1.2 of MuntVSTi.

5. Added MT-32 Master volume sysex handling (used when "use Sysex for Volume/Balance" is enabled is mixer options).

6. MT-32 midi files detected and displayed as "MT" on the main UI.

7. Fixed GS_MT32_Mode.syx by adding proper default MT-32 instrument list and MT-32 default pitch bend range.

8. Fixed 'Play from first Note' problem (playback misses some early notes) by fast forwarding only to one beat before first note.

9. Fixed GM Balance (CC# 8 ) default value.

version 4.6

1. Added Event Viewer/Debugger. With the help of it you can debug both midi files and Midi Player itself.
It can be invoked by pressing Ctrl +D or from Main menu-> Dialog Boxes -> Event Viewer/Debugger.

2. Added a basic 'Configuration Preset' system. The preset dialog can be invoked by pressing Ctrl +Alt +P or from Main menu->Storage of Settings->Configuration Presets. Presets can be loaded also by hotkeys and SysEx messages. Details can be found on Vogons forum.

3. VST effect plugins can be associated with BassMidi's User FX (CC 94). This way globally not so useful effects (such as distortion, overdrive etc.) can be used e.g. only with guitar channels. This feature works only with Bassmidi output and not with VSTi instruments.

4. Added version 2.0 of MuntVSTi. Details of changes can be found in the ReadMe file of MuntVSTi.

5. Added version 1.1 of OPL3VSTi. Details of changes can be found in the ReadMe file of OPL3VSTi.

6. Fixed SysEx memo content saving/loading in case of ini file storage.

7. The tracks label on display also counts track 0 (tempo track) in case of type 1 midi files in accordance with event debugger.

version 4.7

1. Some UI changes. Added dedicated Main Menu and Minimize button. Also Ctrl+M shortcut added to Minimize. It works in all dialogs (VST, Lyrics, Debugger etc.) that belong to the same FSMP instance.

2. Added ability to automatically send SysEx (*.syx) files with the same name as the played midi file similarly to auto loading custom soundfont files. Make sure AutoLoad Soundfont/SysEx option is enabled in the Instruments submenu.

3. SysEx (*.syx) files can be drag&dropped into main window and also into Select/Send SysEx dialog and are sent immediately.

4. Added a simple gain VST effect plugin to help handling the wide variation of output levels between VSTi instruments.

5. Added code page selection to the Midi text/Lyrics dialog in the 64 bit/unicode version of the player.

6. Fixed time column of the playlist. It dispalyed playlist time as a normal time format and overflowed at 12/24 hours.

7. Fixed Bassmidi/Vsti mode failed to use default sound output device when it is changed during playback.

8. Fixed notes from Midi input does not use channel map settings when key offset is used and 'Apply controls to Midi in' is selected.

version 4.8

1. Added ability for complete GS soundfonts to use Bank LSB as a base bank address.
This way you can test more full GS soundfonts at once with variation banks addressed by Bank MSB without risking bank conflicts. So you can emulate a similar behavior like SC-55/88/88pro maps in Roland SC-8820/8850 devices and SC-VA.
Real time loaded soundfonts still use Bank MSB exclusively for SB compatibility reasons (they always contain variation banks anyway.)
When 'Use Bank LSB' is checked the Ctrl+x bank switching hotkeys also set the Bank LSB value for all channels.

2. Added native XMI files support together with multiple tracks/songs.

3. Added proper support for Type 2 midi files. They work like XMI files regarding multiple tracks. They are rare and seldom handled properly.
(Usually the tracks are played simultaneously just like in case of Type 1 files and it can result in a big noise...)

4. Midi files meant to be played on SC-88+ devices are detected and their type is displayed correctly.

5. Fixed defaul values of Controllers 76-78 that are defined on SC-8820 and later Roland devices.

6. Added MuntVsti 2.2 with important fixes (details in the ReadMe file of MuntVsti).

version 4.9

1. Added configuration preset loading from command line. The syntax is: -preset x where x is the preset number you specified as a postfix when you named the preset.

2. Added - minimized command line option. It can be useful when the player is used as a background midi router. Start /min in batch files also supported.

3. Added Winamp invented *.miz file support (zip compressed single midi file).

4. Added support for .zip files. Supported media files from the archive are extracted and added to playlist.

5. Added recursive file enumeration for drag&dropped folders and zip files.

6. Added limited support for rare dual port/32 channel midi files. These files only work in bassmidi output mode with soundfonts.

7. Opened/closed state of VST/VSTi plugin's window is now saved an restored.

8. Added MuntVsti 2.3.

9. Fixed startup problem with Wine if Windows version is set higher than Win XP. Now the x64 version is also supported under Wine.

10. Updated bass/bassmidi libraries to fix 2 issues: wrong default frequency detection, sinc interpolation problem with non-sse2 cpu.

11. Other minor fixes and enhancements.

version 5.0

1. Added Batch File Mode to record mode options. Consecutive files from the playlist are saved to the same folder with the same format you have selected in the dialog for the first file. File names will be the same as the original midi file but with wav/mp3 extension.

2. Added Bass output device selection to Device Settings together with No Sound option (can be useful in case of Midi via Net).

3. Added Soundfont info to corresponding OpenFileDialog and File buttons (right click) in Device Settings. If it slows down soundfont browsing on slower PC's there is a new compatibility setting to disable OpenFileDialog extension.

4. Added font and background color selection to Midi Text/Lyrics window.

5. Dialog invoking speedbuttons are now toggle buttons between opened and closed state.

6. Added workaround for old half-duplex soundcards that have problems using standard win32 midi port soft synths because of allocated recording sources by FSMP.
Now you can press 'Del' in Device settings dialog on the Recording Source input field to not use any.

7. On Win9x disabled menu/combo/listbox animations that could cause audio skipping.

8. Fixed multiple file opening from explorer when the player is associated with supported extensions.

9. Fixed playback of midi files with continuous tempo change messages that require floating point precision.

10. Added OPL3 GM VSTi 1.2 with integrated Nuked OPL3 emulation library.

version 5.1

1. Added loop point support (infinite/finite loops + multiple possible loop points).

2. Reverb/Chorus SysEx effect settings are now global instead of Bass only (midi files can override these defaults).

3. Added compatibility option to not ignore the End of Track meta events for song length (and thus end of song) calculation.

4. Added default bank selection for same named Midi+SF2 files.

5. Extended Soundfont stack to help making more advanced soundfont configurations.

6. Extended the possible range for Bank parameter for SF2 files (negative offsets are possible) and in case of SFZ files the parameter means Preset number instead of Bank.

7. Prev/Next selects subsongs in type 2 Mid/Xmi files.

8. Bass infrastructure is restarted only when necessary after applied changes in Device Config.

9. Added OPL3 GM VSTi 1.3 with instrument customization option.

10. Added SimpleGain VST 1.1 with Mix to Mono option.

11. Other minor fixes and enhancements.

version 5.2

1. Added minimize to tray option. It can be especially useful when using emulators in fullscreen mode and changing presets remotely.

2. Added 'folder.sf2' support (folder wide real time loaded soundfont). Bank postfix can be used the same way as in case of midi + sf2 pairs.

3. Added SimpleGain VST 1.2 with Balance and Reverse Stereo options.

4. Optimized handling and loading time of big Zip/Miz and Xmi files.

5. The priority of the built-in Equalizer has been set to 5 to provide greater flexibility.

6. Fixed Use Bank LSB value saving problem in Config Dialog.

7. Fixed Reverb/Chorus effect level settings not working for GS devices (SC-VA included) if type is set to 'Default'.

8. Fixed AV error at startup when 'Always on Top' is set and FSMP is closed in this state.

9. Fixed bad display color for 'Loop detected' label if font color is changed in Appearance menu.

10. Other minor fixes and enhancements.

version 5.3

1. Added Folder.syx support. It works similar to Folder.sf2. If you put a Folder.syx file into a folder all the midi files in that folder will load the syx file before playing.

2. To support the Folder.syx feature a new option called 'Save SysEx data from Midi' can be found in the File menu of Event Viewer/Debugger. With the help of this you can save/extract the initialization SysEx data from midi files to a syx file that can be renamed and used as a Folder.syx file.

3. Added support for native WASAPI audio output on Windows Vista/7/8/10 (it applies to both Bassmidi and VSTi output modes). This setting is available in the Bass part of the Device Settings dialog. With WASAPI you can achieve lower latency output that can be useful if you use FSMP also as a real time soft synth.

4. Added 'Channels' compatibility option to support Microsoft specific channel layouts (explicit Basic/Extended/GM and auto mode). More info:
https://www.vogons.org/viewtopic.php?f=24&t=48207&start=600#p650055

5. Added fast loop option to Loop Settings dialog. If enabled FSMP does not send messages to assure correct controller, program etc. states at the loop start point so it is much faster but requires properly programmed loop points. It can be mostly useful in case of slower hardware.

6. Improved Event Viewer: filtered event count display, F3 to skip to next filtered event, display meta sequencer data, display GM program names.

7. Other minor fixes and enhancements.

version 5.4

1. Added midi key numbers to right click display on virtual keyboard.

2 .Added clipping indicator to volume ladder.

3. Added left/right arrow hotkeys to forward/rewind 5 sec. during playback.

4. Added SF2 XG drum bank support in XG mode (BASS_MIDI_FONT_XGDRUMS flag is set if bank 127 proves to be a drum bank).

5. Added special low latency mode in case of WASAPI output (set buffer to 10ms to enable).

6. Added fixes for overlapping and orphan loop points.

7. Added separate PitchBend filter to DebugForm.

8. Maximum supported channels are extended to 64 in Bassmidi mode.

9. When started with /tray command line parameter close button minimizes app back to system tray.

10. SysEx volume/balance settings are saved and restored.

11. Fixed 'Default Bank' setting always resets to 1 after restart.

12. Other minor fixes and enhancements.

version 5.5

1. Added '2x Window Size' option to context menu of Visualization(Spectrum & Channels) dialog to get bigger/better quality display.

2 .Added optimization to midi files that do not leave enough time for notes to decay at end of song ('Pause between Songs' should be enabled in Playlist's context menu).

3. Added 'Automatically apply solo/mute to selected Channel' button next to solo/mute buttons.
If it is switched on together with solo/mute buttons changing channels automatically applies the solo/mute state to selected channel.

4. Added hotkeys for changing programs real-time: Ctrl+ Up -> Program +1, Ctrl+ Down -> Program -1, Ctrl+ PageUp -> Program +8, Ctrl+ PageDown -> Program -8.

5. Also added hotkeys (0..9) to select user definable patches.
There is a new menu item directly available from the main menu called: 'Patch Change Hotkeys' where you can enable and define these special hotkeys. More info:
https://www.vogons.org/viewtopic.php?f=24&t=48207&start=720#p705184

6. Fixed changing octave when chord mode is on can result in hanging notes problem (Virtual piano/Midi In).

7. Updated Bass/Bassmidi libraries.

8. Other minor fixes and enhancements.

version 5.6

1. Added DMX mus (*.mus) and MS midi stream format (*.mds, *.mids) file support.

2. Improved GM2, XG and NX system defaults and bank handling.

3. Added 'Preload Referenced Instruments' Soundfont loading strategy to Bassmidi mode.

4. Added Start With Windows option to Main menu.

5. Added Loop points filter to Event Viewer/Debugger.

6. Added explicit 'No recording device' selection button to Device Settings dialog's Recording Source part.

7. Added CapsLock and Right Click mouse button as Sustain padal emulation Hotkeys.

8. Added Export Playlist Info to csv file option to right click context menu of playlist.

9. Added new versions of MuntVsti and OPL3Vsti.

10. Other minor fixes and enhancements.

version 5.7

1. Added EMIDI style CC 118/119 global loop point support (e.g. some Duke Nukem 3D songs use it).

2. Added Midi file's Time Signature to main display (lower right corner).

3. Added 'Tempo Percent Fixed' option to right click context menu of Tempo track bar. By default tempo percent is reset when a new song is loaded. With this new option you can force the tempo for many files. It can be useful in case of Raptor mus files that do not use the mus standard 140 Hz timing but 70 Hz.

4. Added support for Midi files using SMPTE format for delta-times.

5. Added support for sending Midi Clock real time messages. This way FSMP can be used as a Master together with devices/software that can support real time sync messages as a Slave: https://youtu.be/bnTbNi6yPaE

6. Added 'Export Selected Midis to Folder' option to right click context menu of playlist. It can be used to transfer midi files at different locations to one place. But it can also be used as a batch converter since formats such as XMI, MUS, MDS, RMI are saved as MID format files at the new location.

7. Added the option of 1, 2, 3 sec. pause between songs to right click context menu of playlist.

8. Added 'SysEx Delay After Last Chunk' setting to Select/Send Custom SysEx dialog.

9. Added new versions of MuntVsti with significant performance improvements.

10. Other minor fixes and enhancements.

Have fun.

Zoltán Bacskó (Falco)

http://falcosoft.hu/

zbacsko@falcosoft.hu

| Jump to Top