Text to Music

AKA: "Text to Song", "Text-to-Music", "TTM", "Text to Melody" or "Words to Music"

"Text to Music" ("TTM") is a powerful generator technique used by the free or paid-for Wotja App & Wotja Audio Unit AUv3 Plug-in to quickly originate music, melody or beat ideas.

Wotja takes text/words and uses text-to-music techniques to generate a "melodic seed" that can used in a song, music or even for beat generation, e.g. for IDM 😁.

As it originates from your text or words, the parameter-adjustable melody can be considered to be "imbued with meaning". It is that direct linkage that also makes Wotja Text-to-Music a key aspect of Reflective Music.

Yes, Wotja is a  true-blue "Text to Music" » Pioneer « 

Wotja has used "Text to Music" ever since its intial release in 2014 - at the very core of Wotja there has always been TTM.

Ever since then we have continued year-on-year to pioneer Wotja's support for TTM and to extend how can be used it. This has meant ever-deeper integration between the music engine (IME), sound engine (ISE) and text engine (ITE) at the core of Wotja.

Want to start exploring TTM?

A great place to start is with the full-save Free version of Wotja. Versions are available for iOS, macOS, Windows & Android.

Once you get a hang of the Wotja UI (see our Tutorials) it is actually quite easy!

There is in fact so much to explore that once you get started with Wotja you may well find you enjoy going "ah, now let's try this... and this... and, ooh this... fabulous".

See the Wotja User Reviews for a flavour of that 😁.

How to use "Text to Music" (TTM) in Wotja

How to use 'Text to Music' (TTM) in Wotja
Simple Steps

See the animation above. There is of course a lot more you can do, too, this is just about how to get going!

  1. Create a New Empty Mix i.e. Documents Screen > Mixes > Add New > Cut-up Text (Empty Mix).
  2. Open the mix, and if not already in Music Mode, tap on the Music Mode tab to get to it.
  3. Tap on the right side panel where it says "Tap here to browse Templates" and from the Templates list then select any of the templates in the "TTM 1 Players" or "TTM 1 Players 2" paks and tap "Load" to add it to the mix.
  4. Tap on the "Text to Music" Group in the right hand panel if you want see or edit any of the TTM parameters for this Generator.
    • The template you have added uses randomly generated "cut-up" text, the characters of which are then used by the TTM generator to generate a seed melody. This melody, depending on the settings of the various "Text to Music" parameters (see below), can repeat forever or to play a certain number of times and then mutate.
  5. Tap the Create button in the Text Mode if you want to generate another cut-up to be used for another melody.
    • Tip: If you want to add your own text, either do it in Text Mode > Text Edit screen. Or, tap the "Cut-up Rule" parameter then select Custom and tap the "TTM text" field where you can add your text.
  6. Add other things to the mix as you want! Experiment away!

The Text to Music parameters in Wotja

 Generator - Text to Music (TTM)


"Text to Music" Generators have their own special set of parameters and allow text in any language to generate a seed melody which, even though not visible, is in a Pattern syntax. Use English, Chinese, Japanese, Russian, German, French - whatever language takes your fancy, you will always get a melody!

Parameter Group - Text to Music (TTM)

 Cut-Up Rule^

The selection you make here determines what text is used for TTM. If you select one of the Cut-up options then text from your mix Cut-up will be displayed in the TTM Text field below and will overwrite any existing Custom text. Note that if there is no text available in a selected line of Cut-up then the TTM Generator will have no text to work with.

  • Custom: Uses text that you enter in the TTM Text field.
    • See the TTM Editor for details on how to do this.
  • Cut-Up: Line#=Track# (Default): This setting is very powerful when it comes to mixes that feature TTM. It means you can harness the power of the Cut-up Editor to quickly generate text that can be used to populate the TTM for multiple Generators - all at once! It is easiest to understand by example: if you have this setting and are using a TTM Generator in say Track 1 then it will use line 1 of text in your mix Cut-Up. If you had a TTM Generator in Track 3 it would use line 3 of your mix cut-up, and so on.
  • Cut-up: All Lines: Uses the text in all lines in your Cut-up for the purposes of TTM
  • Cut-Up: Line# 1-11: Uses the text from Line# 1 to Line# 11 (as selected) of your Cut-up for the purposes of TTM. You can set up TTM generators all to use the same line if you want!

 TTM Text^

This is the text in any language used to generate your TTM seed melody. In general it takes 2 characters to generate a note. Note that if your text is < 6 characters (e.g. Hello, which is 5 characters), we turn it into HelloHello ... which makes it sufficiently long to make at least 3 notes (that actually generates a few more). In Wotja, tap on this field to go to the TTM Text Editor screen.


The Display? toggle determines if your TTM text will display in Fullscreen mode.

If this is toggled ON, and IF in Display Mode you have selected Text > Show Text from TTM Generators then the TTM Text above will display on screen when in Full Screen or in Display Mode. If it is OFF, then it will not display.


The total number of times the original melody or a variation of it is played. This also applies to improvised melodies (see Improvise toggle).

 Repeat Range^

Sets the range above the minimum. Also applies to improvised melodies (see Improvise toggle).

 Tune Start at Index^

From the notes composed, set the first note you want your tune to start playing at. Maximum value is Notes - 1.

 Tune Length Override^

From the notes composed, set how many notes will play. Maximum value is Notes - Tune Start at Index.

 Phrase Length^

Defines the minimum number of notes there are in a "phrase" (and you can see in the indicator above how many notes your text has generated - all of these notes get put into phrases to make the "tune").

 Phrase Length Range^

Sets the range above the minimum.


Defines the minimum number of rests between each phrase (allows a tune to breathe). Rests are measured in terms of 16th notes.

 Gaps Range^

Sets the range above the minimum.


Defines the minimum number of rests between each play of the tune (allows a tune to breathe). Rests are measured in terms of 16th notes.

 Interval Range^

Sets the range above the minimum.

 Improvise after Tune^

Turn this on to let Wotja continuously generate tune variations after the FIRST complete play (and repeats) of the tune. When this is on, Wotja can "noodle" for ever (well, until you turn it off or the Sleep Timer kicks in, if set!).

Tip: If you have this set to ON and Variation (below) set to 0, then the TTM melody will continue to repeat for ever.


Selects how much variation is applied to the previous melody when improvising.