Help for Tune Smithy Koch snowflake icon.gif

FAQ - Soft synths

From Tune Smithy

(Difference between revisions)
Jump to: navigation, search
(simple way)
(Receive notes on any number of channels to permit pitch bend retuning)
Line 53: Line 53:
After that you should be able to use ZASF with FTS with the pitch bend retuning method like any other synth with sixteen channel type capabilities.
After that you should be able to use ZASF with FTS with the pitch bend retuning method like any other synth with sixteen channel type capabilities.
If you have previously tried the scale and keyboard mapping approach, make sure you switch OFF {{hi|Treat Highl. as already tuned}} in {{w41}} to re-enable pitch bend retuning.
===Retuning ZASF using a [[SCALA scale]] and [[SCALA Keyboard map|keyboard map]]===
===Retuning ZASF using a [[SCALA scale]] and [[SCALA Keyboard map|keyboard map]]===

Revision as of 17:12, 27 July 2008

How to type instructions for FTS for particular soft synths


General issues for many soft synths and samplers

locked to twelve equal with no pitch bends

Some soft synths can only play in twelve equal. If it is one of those there is nothing you can do to retune it.

Play notes only in one channel - monotimbral

Many synths will only let you play the notes on one channel at a time. These can only be used for microtonal solo lines or polyphony in which all the chord intervals are twelve equal ones. That's because the pitch bend range is set for the channel as a whole.

pitch bend range has to be configured at the synth

It might permit the pitch to be varied, but the pitch bend range has to be configured on the synth itself. For instance the FM7 is like this - because you can set it to a different pitch bend range downwards and upwards - something not permitted in the standard midi pitch bend range message. If so you have to configure the pitch bend range by hand.

pitch bend range depends on the instrument

The pitch bend range may depend on the instrument. This is something that happens with sample players particularly. You may be able to edit the instrument to change its pitch bend range or you may just have to work with what you have got. See the notes for GPO for information about how to deal with instruments which have differing pitch bend ranges. #pitch bend ranges

Uses key switches

If the instrument you are using requires keyswitches - midi notes below the natural range of the instrument - to change the performance style, you need to tell FTS to send those notes on unchanged. Use Retuning range for parts (Ctrl + 193) and set that window up to ignore notes below the instruments playable range for any part that uses key switches.

Still not working as expected

Take a look at the Retune Compositions with FTS Check List

Are there any plans to develop FTS as a VST synth?

No sorry, not at present.

If anyone is interested in helping to develop a VTS plug in to work with FTS let me know. I can handle the retuning side of things in FTS but have no experience of writing the VST plug in. The VST plug in could communicate with FTS via shared memory.

I have no plans to develop a VST synth myself as it isn't something that I am particularly suited to be able to do.


You can get this free synth from: ZynAddSubFX. For the Windows installer go to the download page. In that page, look for the latest release with a Windows installer. As of writing, 2.2.0 comes with one, but 2.2.1 just has the source code available for download. The help for ZASF is on-line at zynAddSubFX user interface and more...

ZASF has many steady pitched clear harmonic timbres (and quasiperiodic harmonic based timbres), without the vibrato, tremelo and other effects you get with many synths. See ZASF Basics

ZASF is a synth with hidden capabilities. First of all - when you first run it, it seems to be able to play only one pitch bend at a time like many other synths. But you can get it to play on sixteen channels.

Receive notes on any number of channels to permit pitch bend retuning

Change to the Advanced mode (from Misc). | Switch user interface mode).

Go to the place where it shows the channel number, and scroll through all the numbers, and click enabled for each one. It will then play on all the channels.


To set it up like that for all sixteen midi channels, open this file in ZASF - with File | Open Parameters.


After that you should be able to use ZASF with FTS with the pitch bend retuning method like any other synth with sixteen channel type capabilities.

If you have previously tried the scale and keyboard mapping approach, make sure you switch OFF Treat Highl. as already tuned in Midi Out Devices, and PARTS to play for each DEVICE (Ctrl + 41) to re-enable pitch bend retuning.

Retuning ZASF using a SCALA scale and keyboard map

ZASF is also capable of retuning to any scale with any keyboard mapping. If you use it with FTS then most of the time it is enough to just set it to receive on all the channels and use the pitch bend retuning method.

Retuning ZASF directly is useful if you wish to use it in ways that really stretch the 16 channel limit of midi - for instance chords that require more than 16 simultaneous pitch bends (e.g. harmonic series chords with lots of notes), non octave scales, pieces that play several tunings simultaneously, shifting tonics, and so on.

Click the Scales button in the advanced interface:

ZynAddSubFX scales.png

Then select Enable microtonal and enter the desired pitches and keyboard mapping. Or you can open any scale and keyboard mapping you have already.

Making sure the notes are displayed correctly in FTS

If you want the played pitches to be displayed correctly in FTS, you need to make sure that FTS is set up to use the same tuning as ZASF.

This happens automatically with the Lambdoma task - see the next section.

With the other tasks, set FTS to use the same scale and set it to use a suitable keyboard map and arpeggio for the keyboard mapping used by ZASF.

If unsure, you can open the same scale in FTS from File >> Open >> Files of type >> SCALA Scale (*.scl), and open the ZASF keyboard mapping too, using Files of type | SCALA keyboard mapping (*.kbm). An alternative way to open the keyboard mapping is to use Play From Custom Midi In Notes Map (Ctrl + 160) and select Open SCALA keyboard mapping from the drop list.

Note - at present there is no option to save SCALA keyboard mappings from FTS. I'll look into this for the future.

Tell FTS that ZASF is already tuned to this scale

FTS would normally try to retune to the current scale. To tell FTS that it is already tuned as expected - there is a simple way and a slightly more complicated way.

simple way

The simple way applies if each midi note is retuned to within a quarter tone of its original position. In that case you can just switch ON Treat Highl. as already tuned in Midi Out Devices, and PARTS to play for each DEVICE (Ctrl + 41) - the More version of this window. This will work for instance if you retune ZASF to one of the many twelve tone tunings that keep every note within a quarter tone of the twelve equal pitch.

There is no need to match the keyboard mapping with FTS and in FTS you can use any arpeggio you like e.g. ones that ascend and descend in different ways and so on. If the music requires an Eb of some description for instance, FTS just sends ZASF midi note 63, and leaves it to ZASF to retune it as desired.

slightly more complicated way

In other situations - e.g. if you have tunings with more than twelve notes to an octave, you need to make sure that FTS always sends the note number which is retuned to that pitch in ZASF.

This will depend on how ZASF is tuned. For any desired pitch FTS needs information about which midi note number will get retuned to that pitch in ZASF. A concrete example may make this cear - maybe in ZASF, 5/4 is played using midi note number 65, and 81/64 (which is close in pitch) is played using 66. If so, FTS needs to be properly synchronised to send a 65 when you want to hear a 5/4 and a 66 when you want to hear an 81/64. This can only be deduced if FTS has information about the keyboard mapping used in ZASF.

To do that, make sure that FTS is using the same keyboard mapping as ZASF as well as the same scale - then go to MTS Sysex and .Tun Tuning Table Options (Ctrl + 118) and make sure the Tuning Table type is set to .TUN format in the drop list. Then switch on the options Assume currently selected Midi OU tdevice is tuned to the current .TUN file, and Auto Resave .TUN file & keep tuning up to date in that window.

This will automatically make and save a .TUN format tuning table set up to match the ZASF tuning - and tells FTS to assume that the output device (ZASF) is tuned to that tuning. The automatic saving of the .TUN file is of course not needed in this situation (in other situations you could load it in the destination synth if it recognises the format) but it does no harm. Of course make sure it isn't set to the file name of a valuable .TUN file you want to keep. The preset file name is "Current tuning table" which more or less says what it is.

Using ZASF with the Lambdoma task

Using ZASF with the lambdomam without any special retuning

It is usually enough to just enable all the channels - then ZASF will work like any other soft synth or your soundcard and you don't need to do any special configuring in FTS.

To use it like that see #Receive notes on any number of channels

This is the easiest way to use ZASF with FTS for the Lambdoma task.

But if you really stretch the tuning, or you want to run ZASF with out FTS, then you can retune ZASF directly.

Retuning ZASF to the lambdoma

This could be useful in rare situations which really stretch the 16 channel limit of Midi. E.g. if you play many rows of the Lambdoma simultaneously, or want to play all the notes in a row in a very large area of the Lambdoma e.g. a row of the 32 by 32 Lambdoma or whatever.

Another situation in which this is useful is if you want to use ZASF on its own without FTS.

Here is a SCALA scale and keyboard mapping to use with ZASF with the Lambdoma task.

Lambdoma.kbm and Lambdoma.scl

Use right click, then Save As. You may want to save it into your ZASF folder to make it easy to find in ZASF.

Every time you start up ZASF. go to the Scales window, and import both those files and it is all ready to use with the Lambdoma task.

Note that the keyboard mapping will set the midi note to play the 1/1 to 60 and set its frequency to 256.

It should then look like this:

ZASF Lambdoma.png

Then in FTS, you need to go to the More version of Midi Out Devices, and PARTS to play for each DEVICE (Ctrl + 41), highlight the device, and switch on the option Treat Highl. as already tuned

Changing the 1/1 pitch for ZASF tuned like this

That keyboard mapping was set to play the 1/1 as 256 Hz,a frequency that Barbara Hero uses as a base frequency for her music therapy work.

If you want it to play another frequency for the 1/1, then just load it in ZASF, change the frequency of the "A" (which in this case is C) to whatever your desired frequency is, and resave it with the frequency set as desired.

You should leave the midi note number parameter in ZASF as 60 since that is the number FTS will send for the 1/1 when you have it set to simply tuned. Just change the frequency parameter.

Using ZASF directly without FTS

You can use ZASF tuned like this with the Lambdoma keyboard or your composition software directly. The only difference is that the order of the rows running down diagonally to the right on the keyboard gets reversed. That's to do with how FTS deals with the note to scale mapping internally.

You can then play notes from your Lambdoma keyboard or software directly on ZASF without any need to have FTS running at the time.

All settings in one go for the Lambdoma

Here is a file with all the parameters for ZASF for Lambdoma simply tuned.

[Media:lambdoma_simply_tuned.xmz|lambdoma_simply_tuned.xmz]] attached.

To use - when ZASF starts up, go to File >> Open Parameters and open the file.

Then go to the Scales window in ZASF and click the Retune button. It will only play correctly after you click the Retune button and you have to do that every time you load the xmz file for some reason.

But so long as one remembers to do that, it saves some time to do it this way.

Garritan Personal Orchestra

A lot of composers also use the Garritan personal orchestra.


The GPO instruments use keyswitches - notes below the playable range of the instrument which don't actually play sounds, but instead, change the performance style.

You have to tell FTS about those, to let them through unchanged. Otherwise it will try to play them as retuned notes, - changing the midi note sent, adding pitch bends, and so forth, which will change the effect of the keyswitch`.

You do that using More Midi In Options. (Ctrl + 92) With the full version of GPO, Check the box labelled Only retune Midi in notes between and then use 12 and 127 as the bounds. Set the pulldown list marked "Outside range:" to the value Send to all channels for part.

With the Lite version of GPO, the key switches depend on the instrument. So use Retuning range for parts (Ctrl + 193) and set that window up to ignore notes below the instruments playable range (e.g. below 54 for the Finale Lite "trumpet").

pitch bend ranges

The pitch bend ranges in GPO depend on the instrument - some have a pitch bend range of 12 semitones and some the standard pitch bend range of 2 semitones, and some only 1 semitone. So you have to set the pitch bend range to depend on the part, and set the pitch bend range for each part depending on the instrument used.

You do that using Pitch bend Range and Multiplier for Part (Ctrl + 191)

For the pitch bend ranges to use, see Pitch Bend Ranges and Other GPO Information

Rick McGowan has written a tutorial on how to use GPO with FTS to retune large orchestral scores - which involves use of the Set Out devices for In Devices (Ctrl + 192) window.

His tutorial also assumes you use FTS with tuning tables - i.e. load tuning tables to retune FTS. You can as easily use scala scales or construct the scales in FTS itself and configure the pitch of the 1/1 in FTS. So, if you are already accustomed to working with FTS in that fashion, there is no need to change your way of working for GPO. Just ignore the instructions relating to .tun tables.

FTS-How-To - microtuning the orchestra

Example mp3s

See Rick McGowan's Audio Examples

Giga Studio

Giga was the pioneer in the field of software samplers - streaming the sounds directly from the hard disk to permit use of entire recordings of single notes instead of the looped short sections of waves used previously.

You may be able to get the Lite version Gigasampler for free with some soundcards if you shop around. Giga Studio costs more and has more features (one can upgrade to it from Gigasampler)

You need to buy extra sounds for giga only a few ones come with it. These can be quite costly, generally $100s right up to $1000s. I use Dan Dean's solo strings and I highly recommend that one for string instruments.

The web site is here: Gigasampler / GigaStudio

Pitch bend range for Giga

Many of the instruments you can get for Giga have the pitch bend range locked to 0 cents. So in order to play in any of the tunings, you want to change this to the GM default of 2 semitones.

It is easy to tell if this is so - just try playing, say, an ascending scale in FTS in some low ET, such as 31-tet - click the Play Scalebutton in FTS. If you hear repeated notes, then the pitch bend range is locked to 0 in Giga.

To unlock this, load your instrument in Giga, and go to Edit Instument. Then in the Instrument Editor, go to the Instrument Bank, right click on each instrument in turn, look for the Pitch bend (semitones)field, and set this to 2.

Key switches

If the Giga instrument you are using requires keyswitches to change the performance style, you need to tell FTS to send those notes on unchanged. Use Retuning range for parts (Ctrl + 193) and set that window up to ignore notes below the instruments playable range for any part that uses key switches.

Example mp3s

Here are a few mp3s of tunes made using FTS and Giga:

For other tips, see FTS | Help | Using FTS with Giga .

The FM7

The FM7 is great for new sounds, and extremely accurate pitch wise. The demo version, which will only play in twelve equal as it will only accept one pitch bend at a time. Try out the demo to see if you like the sounds, then when you buy it you will be able to play it in any of the tunings from FTS by selecting Out | Use MTS Tuning programs . This doesn't work with the demo because FTS retunes it using MTS sysexes, which are disabled in the demo version of the FM7.

It has some really wild sounds - try out and

The FM7 is monotimbral - only plays one voice at a time (I know it sounds as if it is multi-timbral from the Navigating the Pacific - but that is just a single really wild patch - all the notes are played on the same instrument).

To play several instruments at once, you can start up several copies of it and then set FTS to relay to each of those separately - easiest done using a virtual midi cable.


CSound is a sound synthesis programming language, with many instruments developed for it. See the wikipedia entry on CSound.

It has generally been regarded as rather techy. But FTS has incorporated automated orchestra and score building. This makes using CSound instruments in your recordings as easy as selecting them from a drop list. You can use them to render your midi recordings or fractal tunes directly to audio.

CSound instruments can also be designed to respond to midi in real time. So using this, you can also play the Csound instruments in real time with the help of CSoundAV.

FTS comes with a number of pre-defined CSound instruments, and techy users can easily add more to the list.

See the CSound page of this site for more information.


You can select Quicktime from the Out menu in Fractal Tune Smithy (new feature). Quicktime is not normally accessible in this way in Windows. I added it in as a way to let you preview what the tunes would sound like, and to give an alternative (free) way of playing the Quicktime instruments for those who wish to use them in real time.

Quicktime selected in the Out menu in FTS is best used to preview fractal tunes as the timing can be a bit irregular. You can use Record to File options | Play as Html to hear your finished piece. See Using FTS with Quicktime

A nice thing about Quicktime is that it lets you have more than 15 melodic channels, which gives a way to get more "pitch polyphony". FTS exploits that by adding up to two "Quicktime" devices to the Out menu. You can play some of your parts on one of them and some on another by using the Out | Multiple Out Devices - Selected parts window.

You don't normally see Quicktime on the out menu of programs. The Roland however does add itself. If you want to use it on programs like Media Player that don't have an Out menu you can change what you want to use as the standard midi output device via Start | Settings | Control Panel | Multimedia | Midi

However, on Windows anyway, it seems that Quicktime works best when playing the tunes as midi clips - the timing can sometimes be a little erratic when it is used to play notes in real time "as they come". It has to be done in real time in FTS even for the fractal tunes, because the user can change the notes and the speed while the tune is playing. How well it plays in real time may depend on your setup.

To help Quicktime users, there's an option to save your current tune and show it in a web page and so you can play it that way, after previewing it in FTS. You do it via Files | Midi File Options | Save and Show as Html . This option can also be useful as a way to preview midi clilps in QT if you have it only in use on your system as a web page plug in (and haven't associated it with midi files).

When you play the notes from the music or PC keyboard QT seems to work reasonably well - with a small amount of latency of course.

Quicktime also makes pitch bend glides when you use it in real; time. It happens if you apply an "instant" pitch bend immediately before a note.

This is quite common with soft synths, but can be dealt with. See pitch glides (below) in the section on Limitations of some soft synths The first time you use FTS with QuickTimeyou will get a message about this. It offers to set a delay of 250 ms. You can change this from Out | Options | Out (menu) | Midi Out Timing - but need to set a delay there to avoid the message - you can set it to 0 ms if you don't need one.

The Roland soft synth

This uses the same sound set as Quicktime, but without the timing issues when played in real time. It is quite hard to obtain these days, but you can buy it at PG Music (you have to purchase another program as well).

The Roland Sound Canvas needs a modern PC - but any PC from 2000 or so onwards should be plenty fast enough, so this only needs to be checked if you have a really old PC.

The Roland will let you save midi files directly to audio format, which is neat.

I hear pitch artefacts - what can I do about them?

There are various reasons why this may happen. See Pitch artefacts for the details of what may happen, and what you can do about it.

Personal tools
How to use the wiki