Midi Player's FAQ/How-to
First you should choose your midi out device. If you don't that means you are using Midi Mapper and under Windows it implies Microsoft GS Synth....
But the Windows default Microsoft GS Synth is buggy in Win Vista/7/8 +
operating systems. So if you can’t hear instruments please select Bassmidi instead.
Moreover Microsoft GS Synth does not support Reverb and Chorus controllers.
You can choose either a standard midi port or Bassmidi as output device.
In order soundfonts to work you must choose a real Soundblaster or Bassmidi.
If you select Bassmidi you must select a soundfont file in the Device settings dialog to hear anything.
Bass/Treble, real-time sf2 loading and all the advanced features work through Bassmidi.
In case of standard midi ports Bass and Treble only works if your hardware’s mixer supports them.
In MS Vista/7/8 you must set Midiplayers compatibility mode to WinXP to access real hardware mixer controls otherwise only volume is accessible.
You can drag the main window around by clicking on the fake caption area (where the label Midi Player is).
Moreover Lyrics display window and Bass spectrum analyzer window can be snapped to main window so they can be moved together.
Lyrics can be snapped to the left side and spectrum analyzer to the top side.
There are several context menus in Midi Player. Each of them can be reached by right clicking your mouse on the corresponding area:
- The so called main menu can be invoked by right clicking the main caption area.
- Playlist related context menu can be invoked by right clicking the playlist area.
- Midi reset type (GM, GS, XG…) context menu can be reached by right clicking the first-aid like icon called Reset.
- Transpose channel map options can be reached by right clicking the transpose slider.
You can use the left mouse button or the keyboard of your PC to play on the virtual piano directly.
On the PC keyboard whole notes can be reached from ‘A’ to ’L’ and half notes from ‘W’ to ’P’.
The actual octave can be changed with function keys from F1 to F9.
If you click on a note with your right mouse button you can see the name of the clicked note.
The dot denotes middle C.
You can change the velocity of the played notes by pressing + and – on the numeric keypad.
Left clicking on the upper part on the virtual keyboard’s notes decreases the given note’s velocity.
You can also alter programs and controllers like modulation, volume, pan etc. while you are playing notes.
Maybe not the best place to mention but of course you can also use your real Midi keyboard through Midi in and the virtual keyboard reflects the played notes.
Update: from version 3.1 chord mode can be applied to virtual keyboard and Midi input.
There is a new menu item in the main menu to choose mode and chords but it is more convenient to use the keyboard shorcuts.
Shift : Switch chord mode ON/OFF
From 'Z/Y' to 'M': choose chord (Power, Maj, Min, Sus4, Maj7, Min7, 7)
Right to the playing controls there are 2 sliders.
With the 1st you can change tempo and with the 2nd you can change pitch/key offset.
More than 90% of midi files use channel 10 as drum/percussion channel so the default setting of key offset just works.
But there are exceptions.
You should avoid transposing the notes of drum/percussion channels since in case of these channels every note denotes a different instrument.
You can use the right click context menu of key offset and uncheck the channels that use drums/percussion so key offset won’t alter the pitch of drums.
If you would like to change programs/banks and controllers like modulation, volume, pan etc.
you should understand that all of these are channel based so they influence the actually selected channel only.
By default the actual channel is 1 but not all midi files use channel 1.
You can change the actual channel with the rightmost channel selector up/down control.
So you should search what channel use what instrument and change the settings accordingly.
Important to note that channels and tracks are not equivalent in midi specification.
The number of used channels are 16 at maximum but the number of tracks can be many more.
Moreover a track can use more than 1 channel, and more tracks can use the same channel. Midi events/messages are always channel based.
To ease your search you should use the Show All and Solo / Mute buttons.
Show All is basically sets whether you see the note events of all channels on the virtual piano or only the actual channel.
So it can be considered as a visual only all channels/solo select.
By contrast Solo and Mute affect what notes you hear not just the visual feedback.
Force Manual Mode forces the settings you have made on the knobs to persist even if the midi file sends different controller message value to the selected channel.
the midi file sends midi controller message 07 (channel volume)and value 64 to channel 1 at start.
The volume knob reflects this, so you can see the knob position is at the middle.
If you change this value to 127 (max volume) it remains in effect only until the file sends the next midi controller message 07 to channel 1,
since it is part of the file/song and e.g. it wants to fade the volume.
If you enable Force Manual Mode the player ignores the upcoming related messages from the file/song so your settings remain as you previously set.
First of all Midiplayer is not a sequencer.
Recording is for users who want to record the wave samples that they hear on windows.
There are 2 possible scenarios:
- You use bassmidi:
In this case you don't have to configure anything. Just press the recording button, select a filename and when finished press the button again.
- You use a standard midi out port:
The music is not rendered by Midiplayer so you should select the proper recording source in Device settings dialog to hear anything in the recorded wave file.
The selectable sources depend on operating system versions.
Usually there is only one input port per soundcard and you have to choose the proper source in the mixer.
For opening the mixer (and choosing Midi or Stereo Mix) you can use the microphone like icon next to the recording button.
In this mixer dialog you can also set the desired recording level.
There are independent input ports for every source and you should choose Stereo Mix.
In MS Vista+ operating systems there is no public API call exposed to open recording level directly.
So after clicking the microphone like icon and right clicking Stereo Mix you should select Properties -> Levels.
If you have set up everything properly you can see the volume meter reacts to synthesizer voices.
Just press the recording button, select a filename and when finished press the button again.
Open Device settings dialog then select your Midi input device and check Active.
There are 3 channel handling options available:
- Channel Don't follow:
It is the default. It's ideal when you play multi-channel midi from midi input.
In this state the player interface does not reflect midi channel changes from midi input and does not alter the channel part of input.
The drawback is you don't see on the interface what channel the actual message is using.
- Channel Override:
When you select it the actual channel will always be what you have selected on the player interface.
It does not matter what is the actual channel on your Midi keyboard it is overridden by the player.
It is for fire and forget jamming but cannot work with midi files from input since all messages arrive on the same channel.
- Channel Follow:
This is the ideal choice for real keyboard users.
In this state when you send any channel based messages (note/program/controller) the player interface switches to the used channel.
So the bi-directional functionality can be more complete this way.
The only drawback is it's less ideal for playing multi channel files from Midi input since the interface switches channels back and forth crazily.
You can try to check/uncheck Enable SysEx in files option in the main menu depending on what you would like to achieve.
- If you want the midi to sound as intended by the author check this option.
The drawback is that SysEx events in files can override your altered program/bank settings
and definitely override your midi mode (GM,GS,XG etc.) setting you have defined in the right click context menu of the Reset button.
- If you would like to preserve your chosen midi mode and altered programs/banks you should disable Enable SysEx in files option.
If a file contains SySex events the player interface indicates this. Gray GM sign means no Sysex is found so the file is presumably GM compatible.
From version 3.1 the player interface also indicates the actual midi mode of the synth (even if it is set by a message e.g. from midi input) .
From version 3.6 you can also try the Use Patch Info for Capital Tone Fallback option.
- Make sure Midiplayer is set to use Bassmidi as output.
- Load your default Soundfont. Default soundfont is always loaded at Bank 0 as base.
- Load your additional soundfonts you wish to test to the other slots. Make sure the bank numbers are different (and below 10).
- If you have enough RAM you can preload the soundfonts into memory for smoother transition.
- Start playing your Midi files and switch between the different soundfonts by pressing Ctrl + the corresponding Bank number.
Besides Bassmidi Cakewalk’s audio SFZ is the best option to use soundfonts with Midiplayer.
Unfortunately SFZ has an unpleasant habit that it won’t play back midi files properly
if drum/percussion channel’s bank MSB value is not set to 127 (XG standard).
Most midi files simply use channel 10 and don’t set this value.
This option fixes the issue by automatically setting Bank MSB to 127 on channel 10.
If you don’t use audio SFZ you should definitely uncheck this option in the main menu since enabling it can have side effects.
This is an experimental feature requested by Technics keyboard users to save modified programs/banks to midi file.
This feature mostly works with multitrack type 1 midi files that use one channel per track.
Before using it make sure that Fix SysEx patch changes option in main menu is not selected.
You can start many Midiplayer instances on your networked PC’s and set them to receive midi on a given port.
Then you can start another Midiplayer instance on another networked PC and set it to send midi on the same port on the same network.
The sender PC can use broadcast addresses so every PC on the same network can receive midi messages at the same time.
Make sure you use midis with equal temperament (that do not use Pitch bend)
- Load your Midi and open the scale effect dialog
- Press the big button to get the proper root note and key. (The algorithm is not unerring so sometimes you have to find the root yourself...)
- You can check if the root/key is appropriate by choosing the same root and scale from the list. It should sound almost like the original.
- You should check Repeat one in order to prevent
Midiplayer to switch to the next song on the playlist.
The same scale setting is almost sure sounds bad with another midi so the player resets the sacle when a new song is loaded.
- Then you can choose other scales from the list and try them out...
- You can manually edit and save scales and load them later.
Capital Tone Fallback emulation is useful in case of synths that play wrong instrument or completely stay silent when an invalid bank is referred. The recently released Roland SC-VA in SC-55 mode belongs to the first camp while MS GM/GS Softsynth in GS mode to the second. In case of Bassmidi output mode the effect is only cosmetic (you can see what preset you really hear) since Bassmidi supports CTF natively. Midi Player uses instrument definition files (.ins) to decide what bank/program combination the actual synth supports. So it is very important to choose the right one.
- Open main menu ->Instruments->Custom Patch Definitions and locate the corresponding ins file.
E.g. for SC-VA use Roland_SCVA.ins and for MS Softsynth use Roland_MS-SoftSynth_GS.ins.
- Select the right sub-mode (if more than one exists) for melodic and drum channels.
- Make sure Use Patch Info for Capital Tone Fallback option is selected.
- If you use Midi Player directly you can start playing your midi files.
- In case you would like to use Midi Player as a message processor e.g. for a game in DosBox remember to set up midi input in the settings dialog.
Before using VST/VSTi plugins you have to enable Bass mode in Device settings. VSTi instrument plugins can be considered a 3rd output mode in Midi Player besides standard midi out ports and Bassmidi. Both VSTi and Bassmidi output modes are based on Bass infrastructure and share some settings. VST effect/visualization plugins can be used both in Bassmidi and VSTi output mode.
After enabling Bass in Device Settings you can reach the Bass VST(i) Plugins submenu from the main menu. There are 4 possible slots for different effect/visualization plugins but only 1 instrument plugin can be used for midi output. You can browse for plugins anywhere in your file system and the selected plugin's path is saved. You can also save/load settings of the individual plugins.
For effect/visualization plugins you can also set priority. 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).
You can also start/stop and pause plugins. Start/stop actually means loading and unloading the plugin. Closing the plugin's window does not unload the plugin. When you stop a VSTi instrument plugin you actually switch back to Bassmidi output mode. You can use this feature to compare the sound of these 2 modes.
For faster startup there are hotkeys defined both for effect/visualization and instrument plugins (VSTi plugin -> Shift + I, VST plugins -> Shift + effect number).
I'm surprised how good S-YXG50 guitar sound can be with a little SysEx help. This synth has only a 4MB sound set!
For this guitar sound you need these SysEx messages:
F0 43 10 4C 02 01 00 03 00 F7
F0 43 10 4C 02 01 0C 64 F7
F0 43 10 4C 02 01 40 4B 00 F7
F0 43 10 4C 02 01 44 00 03 F7
F0 43 10 4C 02 01 46 00 34 F7
F0 43 10 4C 02 01 48 00 50 F7
F0 43 10 4C 02 40 00 00 F7
F0 43 10 4C 02 40 01 3D F7
F0 43 10 4C 02 40 0D 41 F7
F0 43 10 4C 02 40 11 43 F7
F0 43 10 4C 02 01 5B 00 F7
The last one which has '5B xx' designates the used Midi Channel.
xx = 00 : Channel 1
xx = 01 : Channel 2 and so on.
|Back to Software's page||Jump to Top|