Bergonzi Intervallic Melodies in JolyMusic: Cells, Directions, OSMD, MIDI
A professional workflow for the JolyMusic Bergonzi-style intervallic melody tool: select interval cells, control order and direction, verify the score, then export or save meaningful MIDI.
Published May 28, 2026, 4:48 AM
A professional workflow for the JolyMusic Bergonzi-style intervallic melody tool: select interval cells, control order and direction, verify the score, then export or save meaningful MIDI.
Intervallic melody practice begins with a disciplined idea: a line can be coherent because of contour, not only because it runs through a scale. A small cell of intervals can create register shape, tension, return, and surprise. The work is to make those leaps singable enough to become vocabulary rather than finger patterns.
The JolyMusic Bergonzi-style tool is built for that work. The Symfony page controller loads tone, interval, and key data, sets default start-note and interval selections, exposes export and save permissions, and renders a Stimulus surface where the player can generate, edit, read, play, paginate, export, and save intervallic lines.
Start with the data the controller gives you
The page action builds three important datasets before the browser does any generation. Tone options provide names, MIDI values, colors, frequency, and solfege. Interval options are sorted by semitone distance and filtered to positive intervals. Key options provide labels, slugs, colors, alterations, accidentals, and key-signature fifths. The defaults are intentional: C is preferred when available, the starting octave is derived from the default tone MIDI value, and the first interval ids seed the first generated cell.
That means the professional way to use the tool is not to click random intervals until something looks difficult. Treat the controls as a reproducible state: start note, selected intervals, note length, order mode, direction mode, octave range, key signature, time signature, line limit, and page size.
| Controller value | UI control | Musical purpose |
|---|---|---|
| toneOptions | Start note | Sets the first pitch and pitch-name model |
| intervalOptions | Interval buttons and graphical harmony | Defines the cell distances |
| keySelectOptions | Score key | Controls key signature for notation |
| canExportGeneratedFiles | Export MIDI button | Allows authenticated file download |
| canSaveGeneratedFiles | Save MIDI button | Allows paid library save |
Why intervallic lines sound different
Scale practice teaches continuity. Intervallic practice teaches contour. A line built from thirds, fourths, fifths, or mixed cells makes the ear track distance and register. That gives improvisation an architectural shape: the listener hears leaps, returns, pivots, and tension points instead of only adjacent notes.
The risk is fragmentation. If every leap sounds like a separate event, the line becomes athletic rather than melodic. The tool helps because it repeats the same cell logic through rotations, permutations, direction modes, and line edits. You can hear how one small interval set behaves before treating it as vocabulary.
| Practice focus | Scalar habit | Intervallic habit |
|---|---|---|
| Motion | Stepwise continuity | Clear leaps and returns |
| Ear task | Recognize scale-degree order | Recognize distance and contour |
| Line shape | Smooth horizontal flow | Register design and tension points |
| Common mistake | Running the scale | Jumping without phrasing |
Build the cell with interval controls, not note names
The interval list is repository-backed and sorted by semitones. The graphical harmony wheel can toggle intervals by pitch-class distance, and semitone lock prevents duplicate semitone values from crowding the cell when it is enabled. This is exactly the right default for intervallic practice: the identity of the cell is the distance, not the spelling accident caused by a specific key.
Choose two or three intervals first. Minor third plus fifth is a strong starting point. Seconds and thirds produce more connected lines. Fourth-based cells feel more modern and open. Wide intervals are useful only after you have constrained the octave range enough that the generated line remains playable.
Order modes decide how much identity changes
The order mode is the difference between focused vocabulary and combinatorial noise. Selected order keeps the original interval sequence. Rotations keep the material but change the starting point. Permutations reorder the selected intervals and create more divergent shapes. For serious practice, rotations should usually come before permutations because they preserve identity while still creating variation.
| Order mode | What changes | What stays stable | Best use |
|---|---|---|---|
| Selected | Nothing | The source interval sequence | Learn one cell deeply |
| Rotations | Starting point | Same interval cycle | Hear one idea from several openings |
| Permutations | Interval order | Same interval set | Find fresh shapes after the cell is learned |
Direction modes create contour, then line cards let you edit it
The direction mode controls whether generated intervals rise, fall, alternate, mirror, or appear in all available directions. But the result card is not passive. The controller allows individual step directions to be changed with arrow controls, keyboard input, or drag-and-drop. It can also move steps inside the same line. This is important: after generation, phrasing is still a musical decision.
A rising fifth opens register. A falling fifth can answer or release. Alternating directions fold the line around itself. Mirrored motion turns the cell into a contour study. Do not treat those as visual options. Treat each direction edit as a phrase edit.
Score settings are verification, not decoration
The tool reads score key, time signature, tempo, and note length into normalized score params. Those params are used for playback timing, OSMD rendering, line metadata, MIDI generation, and save metadata. If the generated line cannot be read cleanly in the selected meter or note length, that is useful information. Fix the score setting before exporting.
| Setting | Controller target | Professional use |
|---|---|---|
| Start note | startNote | Set the register and source pitch |
| Notes length | notesLength | Control phrase density |
| Line limit | limit | Prevent unfocused output |
| Page size | pageSize | Review fewer lines at a time |
| Octave range | minOctave and maxOctave | Keep leaps playable |
| Note length and tempo | noteLength and tempoBpm | Make playback match practice speed |
Export and save preserve generation decisions
MIDI download uses the generated lines and current score params. Saving to the library posts a validated payload to the Bergonzi generated-media API. That payload includes MIDI base64, title, audience, visibility, BPM, interval semitones, start MIDI, notes length, order mode, direction mode, octave range, note length, time signature, and key-signature metadata.
That is why saving should come after editing. A saved line should represent a musical decision: a chosen interval set, a chosen contour, a readable score context, and a tempo at which the player can actually hear the shape. Otherwise the library becomes a collection of untested possibilities.
A complete twenty-minute practice block
- Minutes 0-3: Start on C, select b3 and 5, set order to rotations, direction to all, notes length to five.
- Minutes 3-6: Play the first page only. Do not increase the line limit yet.
- Minutes 6-9: Choose one line and flip a single direction step.
- Minutes 9-12: Move one step inside the same line and compare the contour.
- Minutes 12-15: Change the score key and time signature, then verify OSMD readability.
- Minutes 15-18: Sing the original and edited line without the instrument.
- Minutes 18-20: Export or save only the edited line that survived the singing test.
Professional mistakes to avoid
| Mistake | What the tool shows | Correction |
|---|---|---|
| Selecting too many intervals | The summary and line cards lose cell identity | Start with two or three distances |
| Turning off semitone lock too early | Duplicate distances crowd the cell | Keep lock on until the contour is learned |
| Using permutations before rotations | Every line feels unrelated | Practice selected order and rotations first |
| Ignoring octave range | The line looks technical but unplayable | Constrain min and max octave before widening |
| Saving before editing | The library stores raw generator output | Edit one direction or step, then sing and save |
A strong Bergonzi-style session does not end with the hardest generated line. It ends with a cell that the player can hear internally, edit intentionally, read in notation, play at tempo, and move into real harmonic practice.