Sprites JavaScript Sequencer Media

The sequencer media: a tracker-style editor that drives a platform's native sound channels. There is no canvas; the editor is three stacked areas, a horizontally scrolling strip of block slots at the top, a vertically scrolling grid of beats by channels in the middle, and a piano keyboard at the bottom, with floating windows for the note, the info and the transport. The core module holds the state, the editor and its document helpers; each area and window is a module of its own under Sprites.Media.Sequencer. Every channel's capabilities come from the platform's Sprites.Platform.<name>.Sequencer descriptor, so one editor drives them all. These pages are a skeleton ahead of the build.

Sprites.Media.Sequencer Modules

Sprites.Media.Sequencer.Keyboard

The bottom area: the fixed-width piano keyboard, centred on middle C, that toggles the selected cell's note.

Sprites.Media.Sequencer.Note

The Note window: the note dropdown, the microtuning control where allowed, the instrument dropdown, and the list of effects on the cell.

Sprites.Media.Sequencer.Effect

The effects: the list of applied effects, the add buttons gated by the channel, and a modal editor per effect parameterised by the platform's capabilities.

Sprites.Media.Sequencer.Info

The Info window: the tempo in beats per minute, the beats per bar, and the bars per block.

Sprites.Media.Sequencer.Transport

The Transport window: play and stop, and the preview driver. Playback is a later phase.

Sprites.Media.Sequencer.File

The File window: import and export a tune.