live + algorithmic + data driven musical-phrase creator
Choose a lesson to open its RAMAA timeline. Every lesson contains five actual application screenshots, five timed chapters and expanded English instructions. Pause, seek or jump to a chapter at your own pace.
A melody combines pitch, note length and the distance between note starts. In Code, play starts a note; sleep advances musical time. These values use beats, not a fixed number of seconds.
MIDI pitch numbers identify semitone steps. Middle C is 60; C3 is 48 and C5 is 72. Adding twelve moves up one octave without changing the pitch class.
Duration specifies how long a note sounds in beats. A value of one is one beat; one half and one quarter divide that beat. Tempo determines how many seconds those beats occupy.
Attack shapes the beginning of a synthesized note. A short attack starts abruptly; a longer attack produces a gradual onset. Cogitsune Music exposes attack and fade values rather than a full four-stage ADSR editor.
The play command includes a fade argument that shapes how the sound dies away. This is an envelope control, not a room simulation and not a replacement for a reverb effect.
Velocity expresses the strength of a note event. In the five-argument play form it is the final value. Use contrasting velocities to shape a phrase without changing its pitches or rhythm.
tempo sets beats per minute. At 60 BPM one beat lasts one second; at 120 BPM it lasts half a second. Beat-based note values can therefore keep their musical proportions as speed changes.
A major triad contains a root, a major third and a perfect fifth. C major can be written as MIDI pitches 60, 64 and 67. The gaps above the root are four and seven semitones.
A minor triad places a minor third and a perfect fifth above its root. A minor uses 57, 60 and 64; D minor uses 62, 65 and 69. The root gaps are three and seven semitones.
A seventh chord adds a fourth note to a triad. C major seventh uses 60, 64, 67 and 71. Its seventh is eleven semitones above the root, unlike a dominant seventh.
Master Volume controls the output level of an executor. Several simultaneous notes can combine into a louder signal than a single note. Begin quietly and leave room for additional parts and effects.
Panning places an executor within the stereo field. Center balances the two sides; moving toward an extreme emphasizes one side. Use stereo headphones or speakers when checking this behavior in the desktop app.
The Midi tab presents notes on a pitch-versus-time grid. Vertical position represents pitch; horizontal position represents note starts. Block width represents duration. Read one short phrase before attempting a larger arrangement.
Code can be converted into editable piano-roll notes. Begin with a short valid phrase containing play and sleep commands. Save the source before importing so that you can compare the result with its original.
Large pitch ranges and long phrases extend beyond the visible piano roll. Navigation changes the view, not the music. Use a short example with separated registers to distinguish scrolling from editing.
Moving a block vertically changes pitch; moving it horizontally changes its starting time. Use the Select tool and begin with one note so that the result is easy to identify.
Resizing changes how long a note lasts without necessarily changing when it begins. Find a block and its right-hand resize edge in the piano roll. Keep its left edge as your reference.
Multi-note editing is useful when a whole motif must move together. Use the selection tool and verify the highlighted set before making a batch change. Start with a short phrase whose note count you know.
The Midi workflow can send note events back to the editor. Current controls distinguish << Replace Code and << Insert Code. Preserve the original before choosing an operation that can replace its contents.
A hardware MIDI input sends note events into the desktop application. Connect a compatible keyboard before choosing its name in the Midi input selector. This web lesson cannot open your computer’s MIDI ports.
After selecting an input, Device On opens MIDI monitoring. In the current build this action starts the listener; a separate Start Device step is not required. Successful activation depends on an available physical device.
Live play turns incoming note events into sound through the desktop app. Select an input, enable it and choose an appropriate sound. Keep your first test simple enough to recognize each note clearly.
MIDI recording stores note events rather than an audio waveform. Confirm live input first, then use the recording controls for a short phrase. A working output path helps you monitor the performance.
Quantization aligns existing timing to a chosen musical grid. An eighth-note grid divides a quarter-note beat into two parts. Preserve a copy before changing recorded timing, because expressive deviations may be intentional.
A sixteenth-note grid divides a quarter-note beat into four parts. It can retain faster attacks that would collapse onto a coarser grid. Choose a grid from the musical rhythm, not from a desire for maximum precision.
Cogitsune Music offers rule-based Algorithm tools as well as VAE and Transformer workflows. They solve different tasks. Start by deciding whether you want explicit musical constraints or ideas learned from a collection of phrases.
Constraint-based generation restricts a search using rules such as pitch range, scale membership and permitted timing values. A constraint describes acceptable choices; it does not by itself judge every aspect of musical quality.
Open Algorithm and decide the length, BPM and key of a small test phrase. Use a short target first so that the resulting pitches and rhythm can be reviewed without navigating a large arrangement.
A variational autoencoder learns a compact representation of training phrases. Sampling that representation can produce variations. The usefulness of those variations depends on the data, model and how you choose the resulting musical ideas.
VAE generation requires a compatible model. Train and save one from a prepared dataset or load a model you already have. Keep the source phrase separate from generated experiments so that you can compare them later.
A Transformer models relationships within sequences. For music, those sequences encode events such as notes and timing. Learning relationships in a dataset is different from following an explicitly written harmony rule.
Load a compatible Transformer model and review the generation settings. Save your current code first. The present workflow offers Generate Melody; it should not be confused with the older lesson’s automatic continuation and append claim.
A dataset collects phrases in a structure that the training tools can read. Begin with a small, clearly named collection and decide which musical feature it should represent before adding a large number of examples.
Dataset import extracts musical events from code or MIDI. Begin with a short example whose pitches and timing you already understand. Keep its original file so that the imported representation can be checked against a known source.
A saved dataset must retain the structure expected by the app’s training workflow. Do not assume that every CSV is interchangeable or can be passed unchanged into an unrelated machine-learning framework.
External plugins add capabilities only when compatible software is installed and recognized. The current app separates shared plugin discovery from the chain in each executor. A generic Plugin block from an older lesson is not a verified recipe.
A preset stores settings for a particular plugin, and preset names depend on that product. The older lesson’s invented preset names and Plugin text syntax are not universal commands in the current application.
A low-pass cutoff controls the boundary above which frequencies are attenuated. Lower settings often reduce brightness. The exact response depends on the filter, source signal and other parameters in the installed plugin.
Resonance emphasizes frequencies near a filter’s cutoff. The amount and naming vary across plugins. High settings can become unexpectedly loud, so reduce monitoring level before experimenting and change the parameter gradually.
Wave Recorder captures rendered audio rather than editable note events. Choose and test an output configuration in your own app before recording. Save the code separately so that the musical source remains editable.
WAV export preserves rendered sound for listening or use in another audio application. It is not an editable version of the notes or code. Keep the source project alongside the audio file.
Multiple executor windows let you organize separate musical parts. Assign a clear role to each window, such as melody or bass. Keep source files named so that the parts remain identifiable outside the current layout.
A multi-part arrangement needs compatible timing as well as separate windows. Start with short phrases sharing an intentional tempo and length. Do not assume that manually clicking several play buttons produces sample-accurate simultaneous starts.
Windows can expose one physical output through several host APIs. The device label helps distinguish entries such as Windows WASAPI. Choose an available output appropriate for your setup and start with a modest monitoring level.
A USB interface provides an audio output only when the operating system and application recognize it. Connect the device and follow its manufacturer’s setup instructions. An interface brand does not imply that an ASIO path exists in this build.
A diatonic collection organizes seven pitch classes. C major uses C, D, E, F, G, A and B. A melody needs timing as well as pitch: sequential play calls require sleep between them to move forward.
A major pentatonic collection contains five pitch classes. C major pentatonic uses C, D, E, G and A. Omitting other scale degrees changes the available melodic steps, but does not guarantee that every combination will fit every harmony.
An arpeggio presents chord tones one after another instead of simultaneously. Use sleep between play calls to create the pattern. Quarter-beat spacing produces sixteenth-note attacks when a quarter note is the beat unit.
Reverb suggests a surrounding acoustic space; delay produces repeated echoes. A compatible effect must actually be available and loaded before its parameters can be adjusted. Code comments describing room size or delay time do not activate an effect.
Keyboard shortcuts depend on context and the current application build. Use this lesson as a checked core reference, not an exhaustive promise covering every editor state. Keep the relevant tab focused before testing a command.
Code describes notes and time. play(C4, 1) starts a one-beat note; sleep(1) moves the next start one beat later. Count the beats in the example before running it. The code and its imported notes provide two views of the same scheduled musical events.
Built-in waves synthesize a sound; Samples plays recorded audio. The screenshot shows the actual built-in WAV list. Choose a short reference phrase before comparing sound sources. Holding its pitches and timing constant helps you hear the difference between waveform and musical pattern.
Algorithm builds phrases from rules and a pitch curve. This screenshot shows setup controls, not a completed generated phrase. Treat rules as a way to limit choices rather than an automatic quality guarantee. Decide the intended range and phrase length before using the generator.
A dataset is a collection of phrases for model training. The screenshot is the initial setup, before a dataset has been loaded. A good small collection is easier to inspect than a large uncurated folder. Define the kinds of phrase you want represented and retain their source files.
VAE learns a representation of musical phrases. The captured Train Model screen is a starting configuration, not proof of completed training. Start with a small, inspected dataset and a clear musical objective. Model terminology does not replace checking the actual phrases and formatting used for training.
Transformer generates note sequences from a model. Categories and keywords can organize the training data. The screenshot shows model and training controls. Define a small musical task before training or generating. Consistent labels can organize examples, but cannot repair malformed data or guarantee a specific musical style.
The Midi piano roll maps pitch vertically and time horizontally. This screenshot contains four notes imported from the demonstration code. Identify one block by pitch, start and length before editing. These three properties are easier to learn separately than through a large batch of simultaneous changes.
A MIDI keyboard supplies note events to the desktop app. No physical keyboard was connected in this screenshot; the visible notes were imported. Confirm that the operating system recognizes your device before selecting its port. This browser tutorial does not connect to MIDI hardware or verify your computer’s driver setup.
WAV stores rendered sound. MIDI stores notes and timing. Choose based on whether you want to share the sound or continue editing notes. Keep editable source files alongside rendered exports. Neither a WAV file nor a screenshot can reconstruct every command, plugin dependency or project setting used to produce the sound.
Units builds music as connected blocks. The screenshot shows a loop canvas. A complete Run route must reach Out; value connections have a different role. Trace the execution route separately from numerical connections. Knowing which wire triggers an action helps explain why a disconnected or incomplete patch may not produce the intended phrase.
Spectrogram turns a time-frequency painting into sound. The screenshot is a two-second demonstration painting, not a recording of a real instrument. Read the painting as time and frequency rather than as a piano roll. Brush settings influence the painted energy, while duration changes how the image is mapped into time.
Score displays notation from note-generating code. The screenshot shows the demonstration melody rendered as a score, with PDF controls. Use the score to inspect note relationships that may be less obvious in source text. It is a representation of note-generating code, not a universal transcription system for arbitrary audio.
Number graphs reveal how pitch, duration, sleep and velocity vary. They are read-only previews, not piano-roll editing surfaces. Each graph displays a particular parameter rather than a complete musical judgment. Compare it with the source values before deciding that an unusual shape represents an error in the phrase.
Shaper transforms a phrase; Assist helps enter code. Smooth softens pitch motion, Sharp emphasizes it, and Drunken varies timing. Keep an unmodified phrase so that a transformation has a clear reference. Musical differences are easier to judge when only one operation is applied at a time.
Plugin Manager manages the shared plugin list; each app window has its own effect chain. These screenshots were taken before a plugin scan. Distinguish plugin discovery from using a plugin in a particular window. A shared list may contain a component even when the current executor’s processing chain is empty.
Save editable sources as well as exports. .ktcd stores code; WAV stores audio and MIDI stores note events. They are not interchangeable backups. Treat source files as part of the project, not as temporary material to discard after exporting audio. An editable backup is what makes later musical corrections practical.