Menu Close

Song Engineer Manual


User Interface


Edit Mode


Custom samples

Song Engineer is an app for songs auto-composition. Just press COMPOSE and you have a new unique song. Song composition is done by an algorithm that creates and matches harmony and melodies of different instruments – lead(vocal), bass, piano and guitar. You can listen to songs and save them as midi file. The app can provide you with song ideas that you can further develop and enhance. Saved midi file can be used for production with DAW software.

Hear some sample songs created with the app.

Full version app features:
– composes songs with specified song structure and tonality
– edit instrument notes and drums
– select song tonality
– use different song sections (INTRO, VERSE, PRE-CHORUS, CHORUS, BRIDGE, OUTRO and 4 additional sections)
– change song section length
– rearrange song sections
– change song elements root and scale type (major, minor, pentatonic, blues, chromatic etc…)
– recompose individual song section
– recompose individual instrument in section
– change instruments used in midi file
– save song as midi and xml file
– open saved song from xml file
– control composing parameters(melody phrasing, harmony rhythm, song sections preferred note lengths)
– swing mode
– lyrics writing for song elements in edit mode

Here is a demo video of the app –

How to use:

1. Select song tonality using TONALITY drop down menu. New song in chosen tonality is created.
2. Optionally you can change song structure using the three dots button on the left side of every song element. You can change element types, add new elements or rearrange them.
3. You can change the elements (VERSE, CHORUS etc…) scale root and type(major, minor, pentatonic etc…) that will be used for composing, change the element length (in bars). Only the first occurrence of every element has the controls unlocked. When you change some property then all elements of the same type (VERSE,CHORUS etc…) will change their values accordingly.
4. Press COMPOSE
5. The song is composed. Five instruments are used – lead(vocal), guitar, bass, harmony(piano) and drums.
6. Press PLAY to listen to the song. You can change song tempo. Also you can hear every element and recompose it using the three dots button on the left side of each element.
7. You can edit instrument notes and drums by selecting Element Menu – Edit element.
8. Press SAVE to save the song in midi format. Song is saved in [sdcard]/SongEngineer folder. In settings you can change default instruments type used in midi file. Song is also saved as xml file which can be externally modified and then open as song again. The midi file can be used for song enhancement and production using any DAW software.


In left pane there are app controls and in right pane there are song elements which can be rearranged and reconfigured.


– COMPOSE SONG button – composes song with defined song elements structure in right pane
– TONALITY – changes song tonality – this changes all elements scales
– COMPOSER – sets composer type
– PLAY button – plays/stops song play
– SWING – switches on/off swing mode
– TEMPO – changes song tempo
– TAP TEMPO button – set tempo via tapping 4 consecutive times
– LEAD, HARMONY, GUITAR, BASS, DRUMS checkboxes – for turning on/off instrument sound
– SAVE button – saves song as midi and xml file
– Instrument notes – during song play shows what notes each instrument plays


In right pane there are song elements. Each song element can be rearranged and reconfigured.You can select:
– scale root
– scale type (major, minor etc.)
– length in bars
– number of phrases – how many musical phrases will contains this element. “A” means automatic determination of phrases number.
The element menu is shown via pressing the three dots button on left side of the element.
– Play song from here – skips to this element ehn song is playing
– Play element – start/stops playing this element.
– Edit element – opens edit mode of this element
– Recompose element – recomposes element from scratch. Harmony is recomposed also.
– Recompose piano – recomposes piano. The harmony is not changed
– Recompose bass – recomposes bass for this element
– Recompose lead – recomposes lead for this element
– Recompose guitar – recomposes guitar for this element
– Recompose drums – recomposes drums for this element
– Recompose instruments – recomposes all instruments for this element. Harmony is not changed
– Clear piano – clears piano for this element.
– Clear bass – clears bass for this element.
– Clear lead – clears lead for this instrument.
– Clear guitar – clears guitar for this instruments.
– Clear drums – clears drums for this element.
– Clear all – clears all instrument for this element.
– Move up – moves the element up.
– Move down – moves the element down.
– Add new element – adds new element above this element.
– Delete element – deletes element.
– Export element – saves element as midi and xml file.

– New – creates new song with default configuration and selected tonality
– Open Song – open songs from saved xml file. When you select to open a song a file browser is opened. Browse to app folder and select song xml file to open. The app folder is sdcard/Song_Engineer. For android devices with Android>Android 10 the app folder is sdcard/Android/data/com.gyokovsolutions.songengineer/files/Song_Engineer
– Save as – saves songs with chosen file name in midi and xml format
– Recompose Song – recomposes song instruments for all song elements
– Surprise Me! – creates new song with new structure and new tonality
– Load Dictionary – load dictionary to be used for lyrics writing. Check dictionary format in the manual.
– Load Learning Text – load learning text for lyrics writing. Learning text is a simple text file with lyrics. The app will use parts of this text for writing lyrics.
– SETTINGS – open app settings
– facebook page – opens facebook page
– Exit – exits app


In edit mode you can change harmony chords and instrument notes and write lyrics. Edit mode is started by pressing element menu (three points on left side of an element) and selecting [Edit element]
You can edit chords or notes manually via note dropdown menu.

When you open the edit mode there are 3 panes. On left is INSTRUMENTS CONTROL pane. On the right is NOTES pane and below is CONTROL pane.


For every instrument you have:
-instruments name – when you click on it you can hear instruments sound sample
– ON/OFF switch – switches on/off the instrument

NOTES pane

For every instruments you have predefined number of notes. 

For melody – select note via dropdown menu. A5 means note A, 5th octave.
For drums – If checkbox is checked the sound is on. If it is unchecked there is no sound.


– ON/OFF switch – switches all instruments on/off
– select checkbox – selects/deselects all instruments
– WRITE LYRICS button – writes lyrics for lead instrument. The app will choose suitable words for lead notes. You can choose between the other suitable words in drop down menus under the word start note.
– SAVE – saves the element changes.
– PLAY button – plays/stops the music playback.
– BACK button – returns back to song mode.


  • Clear Instrument – clear notes for selected instrument
  • Clear all – clear all notes
  • Transpose up – transpose up notes for selected instrument
  • Transpose down – transpose down notes for selected instrument
  • Manual Lyrics – starts writing lyrics manually. Select word from drop down menu under lead instrument notes.
  • Auto Lyrics – writes all lyrics automatically. Then you can change words from drop down menu
  • Check Beats – checks beats with notes for selected instrument
  • Uncheck Beats – unchecks beats for selected instrument
  • Calibrate – calibrates tempo to compensate device latency

SETTINGS description:


– Playback instrument HARMONY – selects instrument for playing harmony chords
– Playback instrument LEAD – selects instrument for playing lead(vocal) notes
– Playback instrument GUITAR – selects instrument for playing guitar notes
– Playback instrument BASS – selects instrument for playing bass notes
– INSTRUMENT VOLUME – set volume for all instruments including drums instruments
– Loop single element play – when this is on then when you select Element Menu – Play element then the element will be play in loop
– Number of loops for song element play – number of loops for element play when [Loop single element play] is active
– Use old sounds – use this if your phone has problem with sound play


– Midi instrument HARMONY – selects midi instrument for harmony chords in saved midi file
– Midi instrument LEAD – selects instrument for lead(vocal) in saved midi file
– Midi instrument GUITAR – selects instrument for guitar in saved midi file
– Midi instrument BASS – selects instrument for bass in saved midi file
– Midi note number adjustment – number of octave transposition (1 step = 1 octava). This is to adjust midi export for different devices.


– Instrument ranges – set lowest and highest note for instrument.

– Song sections instruments – set what instruemnt is used in different song sections.

– Song sections preferred note type – select preferred note length for different instruments in different sections.

– Melody phrasing – control how the phrases are created for lead instrument

– LEAD phrase start placement – phrases that do not start on the first beat of the bar
– LEAD phrase end placement – select if phrase ends on strong cadential point
– LEAD pickup notes – select to use pickup notes in lead

– Harmony

– Chord changes rate – the bigger number means more chord changes
– Harmony rhythm rate – control the pace of played harmony accompaniment


Select what type of chords to be included in EDIT MODE.


– Show drums on EDIT – select if you want drums in EDIT MODE. Turning this off will improve performance of EDIT MODE.


– ELEMENT AUTO MODE – Activates auto compose when playing single element.\nHow to use:\n1.Start playing single element from element menu – play.\n2.While playing element select from element menu recomposition of instrument or whole element.\n3.Then element will be recomposed, played several times and then recomposed again.\n4.To stop the process select stop from menu element.
– Number of cycles in [ELEMENT AUTO MODE] mode – Select number of times the melody is repeated in [AUTO MODE] mode before being recomposed.
– SONG AUTO MODE – Activates auto compose when playing whole song.When it is active at the end of song play new song will be composed and played. This works for Surpise Me or Compose Song functions.
– Number of cycles in [SONG AUTO MODE] mode – Select number of times the song is recomposed in [SONG AUTO MODE].
– Syllables number – number of syllables for stress pattern search. If the number is bigger then the preferred word length is bigger.

Surprise ME! MODE

– Change tempo – Change song tempo in Surprise Me! mode.
– Change tonality – Change song tonality in Surprise Me! mode


– Sort words in reverse – Sort available words in reverse. Useful for rhyming.
– One syllable words stress – use one syllable words as stressed and not stressed.
– Use part of speech information – use part of speech (noun, verbs etc…) information to improve phrasing.
– Learn from example text – enable learning from example text loaded from Menu – Load learning text.
– Word length variation,% – Word length variation in percents. Use 0 if you want words with max length available and 100 for short words.

– Clear words on dictionary load – Clear existing words on dictionary load.
– Clear data on learning text load – Clear existing data on learning text load.
Timing correction – timing correction in miliseconds – this is to compensate for device latency.


  • Enable midi out – enables midi out feature for connecting midi synth to the app in order to listen to melody and harmony on the synth
  • Mute app on midi out – mutes app sound while playing midi out on connected midi device
  • Bass channel – channel ID for bass
  • Vocal channel – channel ID for vocal
  • Harmony channel – channel ID for harmony
  • Guitar channel – channel ID for guitar


Here is a video for song production with free version of StudioOne DAW –


You can create songs using harmony from other songs. For example you can use some favorite song harmony and create new song based on this harmony. Such song is called “Ghost Song”. Here is a video for creating song with predefined harmony –

Custom samples

You can use custom samples and create your custom instruments. In order to do this you have to create your own samples for each note and put it into app folder Melody_Engineer/samples. On devices with android 10 and more the samples folder is Android\data\com.gyokovsolutions.songengineer\files\Song_Engineer\samples

Sample files must be in mono wav format.

Naming of sample files is:

[note][octave]_[instrument number]

[note] – c, cs, d, ds, e, f, fs, g, gs, a, as, b – “s” means sharp. For example A=a, A# = as, G=g, G#=gs
[octave] – 1, 2, 3, 4, 5, 6
[instrument number] – 1, 2, 3, 4, 5

For example file for E fourth octave for first instrument – E4 is e4_1.wav. For E fourth octave for second instrument – E4 is e4_2.wav. For F# fourth octave for first instrument – F#4 is fs4_1.wav. For F# fourth octave for second instrument – F#4 is fs4_2.wav.

You can download custom samples here.