Skip to content

Visualizers ​

While a song plays in real time, Arrange can show a visualizer in place of its clips: a moving picture in full colour, drawn in the terminal from the notes being played. The track names and scene names stay where they are, so the song's shape stays visible around the picture. This page covers showing a visualizer, every mode, and recording a visualizer.

A video of the visualizers playing a song is on YouTube.

Visualizer Controls ​

Visualizers need real-time playback, so the set's Real Time switch has to be on; T on the main screen turns it on, and every example has it on. On Arrange, these keys control the visualizer:

KeyWhat it does
ZShow the first visualizer mode over the clip area, and each press after that the next mode, and after the last, the clips again.
ESCBring the clips back, staying on Arrange.

A visualizer can show while nothing plays, and follows the music once the song starts with Space on the corner. When the mode changes, the mode's name shows near the bottom for eight seconds, steady, and then goes away.

A visualizer hears the notes as they are played, with their tracks, pitches and velocities, and the song's beat. It never hears the sound itself, so a visualizer works the same through FluidSynth, a hardware synthesizer or a DAW, and never knows a note before the note plays.

Modes ​

ModeWhat it shows
Lava lampA blob of colour for each track, drifting on a path of its own; every note splashes a ripple into it, held notes keep pushing, and the whole picture turns and breathes with the beat. Dark in silence.
Piano rollEvery note as a bar on a row for its pitch, coming in at the right as it starts and rolling off to the left, a held note growing long. Each track has a colour of its own, and the legend across the top names the tracks with notes on the roll, in track order, and drums have lanes of their own at the bottom. The rows stay still while every pitch heard fits them, and otherwise ease slowly toward the notes that sound.
SpectrumA bar for each band of pitches, low at the left, lifted by each note's velocity, its neighbours a little, falling back steadily, with caps that hang and drop, green to yellow to red.
MilkDropA feedback picture in the spirit of the classic: each frame the last one warped, zoomed, turned and swirled, with notes splashed in on a slowly turning circle.
LlamasAn ASCII llama for each track that plays, strolling, turning at the edges, bobbing with the beat and hopping on its notes, growing and glowing as its track gets busier.
HypercubeA tesseract turning in four dimensions, faster with the tempo, its edges shared out among the tracks' colours and glowing, pulsing with the beat. Bright even in silence.
FireworksA rocket for each note, bursting into sparks that fall and fade.
WarpZoneA ball for each track bouncing at the song's tempo, sending out slow rings.
PipesThe old screensaver's pipes, one for each track, laid as its notes play.
PlasmaWaves of colour blended from the playing tracks' colours.
MazeA maze carved on screen, with a walker for each track.
MystifyThe old screensaver's polygons with trails, over a field of stars, their corners following the held notes.
Laser LlamaA neon sunset over a perspective grid, and a llama firing beams on the notes.
MandelbrotThe Mandelbrot set turning about a point on its edge, breathing in and out, coloured from the tracks' hues.
LifeConway's Game of Life over a drifting gradient of the tracks' colours, stepping on the beat, with notes seeding new cells.
Digital rainGreen streams of ones and zeros falling down the screen, a stream for each note in the column of its pitch, as bright as the note is loud, the green brightening as more plays.
CycleEach mode above in turn, a new one every fifteen seconds.

Every track has a colour of its own, which each mode leans by pitch and brightens by octave, so a track looks the same across modes.

Eye Safety ​

No mode strobes or flashes, since some people are sensitive to flashing light. Brightness rises and falls gently, a limiter holds the whole picture down as more plays, and nothing jumps to white.

Terminal Support ​

A visualizer draws in full colour where the terminal supports it, and in the nearest of 256 or 16 colours otherwise. A bigger window shows more detail, and every mode fits the window's size, starting again when the window is resized.

Launching and Recording ​

A set can open straight onto a visualizer, playing, from the command line:

llamatron examples/by_genre/electronic/edm_density.yml --visualizer lava_lamp

The mode names on the command line are lava_lamp, piano_roll, spectrum, milkdrop, llamas, hypercube, fireworks, warpzone, pipes, plasma, maze, mystify, laser_llama, mandelbrot, life, digital_rain and cycle.

Every visualizer can be recorded into a video with its sound, as Recording describes.

Released under the GNU General Public License, version 3 or later.