Repository navigation
Palinopsia v1.2.0 : the dome and the grain
Palinopsia v1.2.0 : the dome and the grain.
Palinopsia goes under the dome and out to the rest of the video world : a real fulldome output
(210°, up to 4K), NDI and Syphon built in, and real-time DXV3 recording at dome size. Down at
the grain, surfaces grow, crack and rust (Grown, Colony, Ground, Scan), film gets damaged the
way real film does, and CRT / VHS faults look like the real thing. The camera learns how a body
moves and can cut it out of the room, Generate builds scenes that move, and a video plays at
any speed from 1/64× to 64×. A Collage of films becomes something you play live, and hear :
its pieces grow and shrink under a modulator, its films take effects while the cut shapes stay
crisp, and Sonify sings it through a tuned Ring bank, while a new key sequencer composes
the key of the whole sound over time. An installation now looks after itself for days :
it starts with the computer, heals a crashed picture, sound card or camera, and keeps its
projector. And every source, effect, node and finishing stage went through a deep audit :
what was broken is fixed, and what gave the instrument its character is kept, as the
default look, with the clean version as an option.
Highlights
- Fulldome output. A square domemaster (front at the bottom), 2K or 4K, aperture
180 to 230°, feeding everything : preview, projector, NDI, Spout, Syphon, recording and
stills. Fit a flat picture as full dome, panorama or screen, and check it in a 3D
dome simulator, from the seat or from outside. - NDI in and out, built in. Any NDI source on the network (a camera, a phone, OBS,
another Palinopsia) plays in a layer like a webcam : NDI Input… in the source menu.
Always the newest frame, so it never drifts behind (a 1080p source arrives in ~45 ms).
And Palinopsia is its own NDI source : 4096×4096 at 30 fps, even with the
window minimized. No NDI on the computer? One click installs NDI's official runtime. - Syphon on macOS, the twin of Spout.
- DXV3 recording in real time : the GPU compresses each frame and the file is written as
it goes, so the 4096² dome master records at full size, with nothing to convert after,
with the Sonify sound when it plays. - Living surfaces. Four new Organic generators : Grown (a texture that grows itself
and heals when you damage it), Colony (lichen, mold, burning paper, rust), Ground
(drying mud, migrating sand ripples, strata, wood, bark) and Scan (30 real
photographed materials). The rest of the Organic family is now lit as a relief. - Film damage, rebuilt from real film : dust, fibers, scratches and a hair in the gate,
per film gauge, plus a dirt burst you can fire on a beat. - The camera reads movement : a motion field (which way things move, whether they
spread out or close in, turn, move as one), six movement qualities of a body (energy,
expansion, fluidity, suddenness, directness, symmetry, plus impulse and freeze gestures),
and a Silhouette source that cuts the body out of the room, no green screen. - Generate builds scenes that move, using the whole instrument, with three new
families (Dome, Film Wall, Node Workshop) and 25 new master chains. - Video, any speed, and a real transport : 1/64× to 64× on ordinary footage, stop, scrub
the timeline, and step through the other clips in the folder. - A folder of sessions links into the Session dropdown in one right-click.
- An OSC monitor : the OSC section now reads in two halves, what comes in and what goes
out, each with its own traffic light, and monitor shows every message both ways, live. - Installations look after themselves : start with the computer, reload a crashed,
hung or frozen picture, reopen a closed output, follow the projector, reconnect the
camera and the sound card, play the session's sound, never wait on a dialog, and keep a
log. A Mac runs one as well as a PC. - A key sequencer composes the root and scale of the whole Sonify instrument over
time : a list of keys, a walk on the circle of fifths, a pick by shared notes, a pivot
to another mode, or a key read off the picture, on beats and bars, with a glide that
slides every voice to the new key. - The camera no longer slows the picture : hand, pose and face tracking run on their
own thread (about 0.1 ms of the picture's time a frame instead of 3 to 5). - Hear the Collage. Sonify's new Collage voice plays the wall's films all at once,
each piece placed in the stereo field by where it sits and rung at a note of your key, and a
new deal crossfades instead of cutting. A Ring bank inspired by the S-4 then rings the
whole voice through 48 resonant bands tuned to your scale : decay, cutoff, slope, tone,
tilt, travelling waves and random noise (free or locked to the tempo), detune, and
five filter voicings. The Chord voice gets the same waves. - Collage, played live. Modulate
cutsand the wall grows and shrinks a piece at a time
instead of reshuffling; FX before shapes runs the source's effects on the films while
the seams, contours and torn paper stay crisp; torn paper tears like a real torn-magazine
collage (in the Autocutter too); and the wall is lighter on the machine. - Effects travel between racks : copy or drag an effect between the layers and the
Master FX (right-click → Copy to…, or drag its chip; Ctrl copies). - Everything morphs : scenes, Randomize, sessions, New and Generate move into the next
composition over the Morph time, live and layer by layer, with no flick. - Context's light moves : draw a path on the light pad and play it.
- Resolume OSC mapper (key
K) : open a Resolume composition and wire Palinopsia's
signals to its layers, clips and effects in a matrix. - A dataflou node : Palinopsia joins the dataflou mesh, shows every node and connection
on it, and wires its senses and controls to the other instruments, both ways. - The big audit : all 23 generators, the native sources, 52 effects, the finishing
chain and all 25 native nodes. Knobs never jump the picture anymore, long shows stay
alive, and transparency, 4K and the dome are handled everywhere.
Your sessions are safe
- A session file only changes when you save it. Loading another session, Open,
New, Generate and quitting used to save the session you were leaving into its file
without asking; after a crash restore it could even land in ANOTHER session's file
that shared its name. Now they ask Save changes? (Save · Don't save · Cancel),
and only when something changed. Don't save keeps a recovery copy. - Every overwrite keeps the previous version : right-click Load → Earlier
versions brings one back. The crash autosave keeps the last hour, and Restore
reconnects to the session's file.
Opening an older session : what may look different
Most sessions open exactly as before. These changes are deliberate, and each one either
fixes something that did not work or can be set back :
- Finalizer "A" is now "opacity", a real fade to black. It used to do nothing, so a
session saved with it below 1 now looks darker : set it back to 1. - Context's material relief finally shows. Picking a material (bricks, bark, paper…)
now relieves the picture with that material; before, it read a random image instead.
The same bug made Vibe and Context skip frames, even with no material : that is gone. - Light Trails and Wide Time fade all the way to black instead of leaving a permanent
fog. Wide Time's blown-out look is kept as its newburnmode. - Wavefold and Colorizer no longer turn dark grounds white by default; the old
negative look is the newinvertswitch. - Melt creeps visibly now, and Corrode eats the frame over minutes (one minute to an
hour) instead of seconds. - Pixel Sort's length works past 96 pixels.
- The heart shape (Transform and the output shape) stands upright with a clean edge. It
used to be upside down : rotate by 180° for the old one. - Weave, lumakey and consume now do something as layer blend modes (they acted as
normal before). - Flash safety is on (mild, 0.35) unless you set it yourself : a bug left it off on
installs that had never touched it. It now really catches strobes, and on a very bright
scene it can soften film flutter too. - Randomize leaves deliberate settings alone : anaglyph 3D, film hold, the output shape,
Vibe's chord mode and all the film damage are never rolled. - Sessions saved before the film-damage rebuild with Film Hold off open with dust and
scratch at zero, once (they were invisible before, so nothing you saw changes). - A dome master saved at 8K opens at 4K : the live dome now stops at 4K (see Fixed).
- Seven surface materials keep their real proportions : bricks, concrete, corrugated
steel, painted plaster, rock face, wood grain and paper crumpled used to be stretched to
about twice their height, in Context's surface material and in the Scan source. They now
look like the real thing, so their features are wider and flatter than before.
Rock rough is renamed stacked stone (what it is); sessions keep it. - Video grain plays the right way up : grain voices were upside down.
- The Finalizer's output shape comes last : film dust and scratches now stay inside the
shape, and the fill around it stays clean. - The output shape's edge is crisp : it used to be slightly soft, more so at 4K and on
the dome. Its new feather brings softness back on purpose (0.05 is the old edge). - A Collage deals differently : the same deal now draws another cut and another order of
films (the price of a wall you can modulate piece by piece), and the mosaic's shards are
spread more organically, without rows.
And in Sonify :
- The reverb mix works. It used to be ignored (the reverb always at one level); 0.6, the
default, is exactly that level, so only a patch saved with another value sounds different. - The Filter voice's noise no longer loops every 218 ms (a faint 4.6 Hz flutter in its
wind). Its newloopknob brings it back : about 0.14 is the old flutter. - The stereo field is equal-power : Chord, Flow and Events notes keep their loudness
wherever they sit, and Chord's lowest note sits in the middle (it was hard left). - Voices fade in and out over 5 ms when they switch, so the sequencer's steps no longer
click.
New
Fulldome (Output page)
- A domemaster at 2K or 4K, equidistant fisheye, front at the bottom, aperture 180
to 230° (210° by default, as in the SAT Satosphère). It replaces the frame everywhere :
preview, projector window, NDI, Spout, Syphon, recording and stills. - Three ways to fit a flat picture :
- full dome : the whole frame over the whole dome, nothing cropped, no black (or
cover / contain); - panorama : wrapped around the room, up to the zenith;
- screen : a flat virtual screen, re-projected so it reads undistorted from the
center.
- full dome : the whole frame over the whole dome, nothing cropped, no black (or
- Rotate, spin, rim feather, flip, and an alignment grid burned into the output.
- A 3D dome simulator shows the live master on a dome : from the seat or as an outside
cutaway, with tilt, a template and the sweet spot, and a "whole dome" view. - The dome is off by default, and the section has a reset-to-defaults button.
Output and recording
- The Output button lights while the external output is on.
- A Mac runs an installation as well as a PC : the picture keeps full speed while the
fullscreen output covers the control window, and macOS no longer naps the app. - Installation mode looks after itself : it starts with the computer (and again after
a crash), keeps the screen awake, reloads a crashed, hung or frozen picture, reopens a
closed output, follows its projector when displays change, reconnects a camera that
drops out, plays its sound if Sonify was on in the session, never waits on a dialog,
and logs everything to a file. Exit by holding Esc or O on the output for 1.5 s. - Every take starts at once, even after a long pause : the sound card is kept awake
(silent) instead of falling asleep between takes, and Sonify sounds as soon as you
switch it on. - The first take of a session starts at once : the video encoder warms up quietly
after launch, so a short first MP4 or ProRes take no longer comes out empty. - Recordings carry the Sonify sound whenever it plays, DXV3 included, even when you
switch Sonify on during the take; a take without Sonify has no sound track. - NDI output, built in, replacing the old optional stub. Sends the clean picture or the
domemaster, 4096×4096 at 30 fps (measured into a receiver, with a GPU-heavy scene and the
window minimized). Name, frame rate (25 to 60, 29.97 and 59.94 exact), size cap, UYVY or
RGB. For venue networks : Discovery Server, network card, extra IPs and groups, applied
live. Receiver status, sent rate and an ON AIR / PREVIEW tally. - One-click NDI runtime install on a computer without NDI (Windows and macOS) :
downloaded from NDI over HTTPS, its signature checked, NDI's own installer opened, and
the source goes live by itself when the install finishes. - Syphon output (macOS) : a Syphon server named Palinopsia, for any Syphon app on the
same Mac. - DXV3 recording in real time. The graphics card compresses each frame and a few
workers write the file as it goes : no conversion afterwards and no encoder size limit,
so the 4096² dome master records at full size (larger masters are scaled to 4096).
Constant 30 or 60 fps, the clean picture. Validated with FFmpeg's DXV decoder, in the
same file layout as Resolume's own clips. - Record location : Output → Record → location… picks where takes, screenshots and
Assemble exports go. It is checked, remembered, and if the folder can't be reached (an
unplugged drive) the take falls back to Recorded/ with a warning instead of being lost. - Recording formats know their limits. The hardware video encoder stops at 3840×2160,
so above that (the 4K dome) the other formats are grayed out and the take records DXV3.
The MIDI record toggle now uses the chosen format too. "Fast · no re-encode" is now
labeled for what it is : MKV, H.264 as captured.
Organic : surfaces that live
- Grown : a texture that grows itself. A tiny neural cellular automaton, trained on a
real photographed surface (lava, mossy rock, bark), grows it cell by cell from nothing
and keeps it alive. DAMAGE cuts a hole that heals within a second, REGROW starts
over. Six presets. - Colony : living matter spreading across a surface, in four kinds : lichen on granite,
mold on agar, burning paper, rust on steel (or verdigris on copper). Fronts grow
roughly, slow on poor ground and stop short of each other; each colony ages (lichen
cracks, mold rings, char turns to ash, rust pits and flakes). Regrow on a button or a
cycle. Ten presets. - Ground : the surfaces under the living things. Mud drying and cracking, sand ripples
migrating with the wind, rock strata, wood end grain and bark, each with an alternate
palette. Ten presets. - Scan : 30 real photographed material scans laid across the frame without visible
repeats, relit by the Organic light. Colony's transparentgroundgrows lichen or rust
over it. Ten presets. - Veins : a leaf blade growing and calling its veins (open or looped), or roots
reaching down through the soil, by the model botanists use to reproduce real leaves. - Mycelium grows for real : hyphal tips that branch, fuse and eat the ground (it was
noise contours). Same controls, so sessions keep theirs. - Slime Mould : a slime mould growing its transport network from hundreds of
thousands of agents : veins that thicken, prune, reroute and forage. - Fluid : a real fluid solved live : ink blooming in water, smoke rising into eddies,
fire glowing by its temperature with soot above it. Seven presets. - Reaction, rebuilt at full precision : the same pattern at any resolution and frame
rate,rateup to 3,scalereshapes it live instead of restarting, and regrow ▸. - The Organic family, made physical : an Organic section in the source picker; relief
lighting on Reaction, Erosion, Membrane, Mycelium and Dye Field (reliefandlight angle, 0 for the old flat print); Swell rebuilt from real deep-water wave physics;
water caustics focused by real waves; fire that stretches as it rises, flickers
with a real rhythm and is colored by temperature.
Film and analog finishing
- Film dust and scratch, rebuilt from how real film gets damaged. Dust changes every
film frame (24 fps, 18 on Super 8), mostly tiny specks and the odd big clump or fiber,
dark on the print or white from the negative. Scratches run along the strip for a
fraction of a second to a minute, wander, break up and fade; mostly dark, some white or
green-yellow. It now works with Film Hold off, and costs under half a millisecond at
4096². - New film controls : gate hair (a hair caught in the projector gate), film gauge
(35 mm, 16 mm, Super 8), dirt on (print, mixed, negative), dirt burst ▸ (a dirty
stretch of film, fire it on a beat or an onset, even with dust at 0) and film grab ▸
(re-draw or re-freeze the hand-made film on a trigger). - CRT / VHS parasites, rebuilt in real scanlines. VHS : wobbling line edges, a frayed
head-switch tear, white dropouts with a recovery tail, and a tracking band of torn,
snowy lines when pushed. CRT : a rolling hum bar, a faint RF weave and impulse specks.
Body and vision (Body page)
- The camera's BODY pip sits in the lower right of the full-page views (Sonify,
Output, World, Sequence, Resolume); on the main view the lit Body button says it. - Motion field (Motion toggle) : the camera's optical flow read as nine features :
how much moves, which way, whether it spreads out or closes in (someone approaching,
arms opening), whether it turns, whether it moves as one or every which way,
where, and how much of the frame. Gestures : swipe left / right / up / down, approach,
withdraw, turn, and stillness. It follows anything that moves, a crowd or a curtain
as well as a body. The picture itself gets the same reading on the vision bus. - Movement qualities (with Pose on) : how the body moves, not only where. Energy,
expansion, fluidity, suddenness, directness and symmetry, measured
against the body's own size so near and far read alike, with two gestures : impulse
(a burst out of calm) and freeze (a quick stop held still). The camera's own jitter
is learned and taken off, so a still body reads still on any camera. - Silhouette source (with the live inputs in the source picker) : cutout (the
camera where you are, nothing elsewhere), matte (white on black, to key or feed a
Matte node), shadow (a flat colored body) or hole (the room with you taken out),
with a trail of fading echoes. It never turns the camera on by itself. - Every body feature streams over OSC as
/opsia/body/<feature>. - Tracking runs once per camera frame, about half the cost it was; Hi-res runs it on
every display frame for a fast camera or the finest landmarks. - Tracking runs on its own thread, so a camera no longer slows the picture : hands,
pose, face and the silhouette together now cost the render about 0.1 ms a frame instead
of 3 to 5 ms (and more on a busy GPU). A machine where that thread cannot start tracks
on the main thread, as before.
Generate and master chains
- Generated scenes move : each theme binds a few modulators across its layers in its
family's way of moving (slow breathing for Organic, drawn cadences for film, stepped and
on the beat for Glitch, sine and saw sweeps for Analog). - Generate uses the whole instrument : sources, effects, native nodes and blend modes
it never picked now land, and nodes that read another layer get a layer in the scene.
A new Living Surfaces family (Lichen, Rust, Mold Culture, Burning Paper, Dry Earth,
Grown). - Three more families : Dome (made for a fulldome : no vignette, nothing framing the
edges, slow motion overhead), Film Wall (your own films through a Collage, graded and
damaged) and Node Workshop (one recipe node per theme). Test is now Feel
Studies, at the end of the list. - 25 new master chains in three groups : Time & memory, Node recipes (layer-
reading nodes wired to layers in use) and Dome (dome-safe : Context's vignette off,
nothing framing the edges). Chain presets can now say which layer a node reads. - An Analog section in the source pickers : RGB Oscillators, Sync Osc, Slit Scan,
Ramps, Column Scan, Differential and Interference.
Video
- Any speed : slow motion down to 1/64× and fast up to 64×, forward and in
reverse, on ordinary footage. When a clip's seeks run slow, the player steps keyframe to
keyframe (ffmpeg indexes each clip's keyframes once, in the background). The ◇ smooth
copy still plays the smoothest, and its button lights up when the settings will strobe. - ■ stop (pause and back to the in point), scrub the timeline playing or paused
(the playhead lights up while dragged), and a clip row (◀ / ▶ and a dropdown) that
steps through the other videos in the clip's folder, keeping speed, direction, loop and
grain.
Sonify : the Collage voice
- A seq view beside voices and mixer holds Sonify's sequencers, and the mixer and the
sequencers now wear the voices' look : the same cards, pills, buttons and rows. - Resize the sequencers : drag the bar at a card's foot for more or less air between
its rows, and its corner to widen them. - A real level meter : left and right, average level and peak, in decibels, orange
when the limiter works. - The key sequencer composes the key of the whole instrument over time : a list of
keys you write, a walk on the circle of fifths, a pick by shared notes (smooth or
jarring), a pivot to another mode, or a key read off the picture's color and
brightness (on the beat, or at each scene cut). Rate in free time (5 s by default, up
to 5 minutes) or beats and bars, chance, an
optional Euclidean rhythm, a pool of roots and scales, and a glide that slides
every voice to the new key instead of jumping. Each mode draws how it thinks : a circle
of fifths, a constellation of keys by shared notes, a clock of the notes, the picture's
color wheel. It travels with the session and an installation starts it again. - The effects sequencer runs on beats and bars too, in phase with the key sequencer.
- Every Sonify parameter explains itself on hover (the label and the slider).
- The Chord breathes : a smooth pink noise blends into it (noise), a band on each
note riding its swell and its waves, from a pitched breath to a wide wash (air). - Hear the Collage : turn on Sonify's new Collage voice and the wall's films play
their own sound, all at once, in their own loops and speeds. Each piece is placed in
the stereo field by where it sits in the frame and rings at a note of your key and
scale : the centre low, rising toward the edges. Resonance goes from the plain films to
only the tuned rings. Works with optimised clips too (it plays the originals' sound).
A new deal crossfades over the Collage's own crossfade time : nothing cuts. - Collage : FX before shapes : process every film with the source's FX while the
cut shapes (seams, contours, torn paper) stay crisp. - A Ring bank on the Collage voice, inspired by the S-4 : the films ring through 48
tuned resonant bands on your key and scale, with decay, cutoff, slope, tone, tilt,
waves, noise (free or locked to the tempo), detune and five filter voicings. - Waves on the Chord voice : a travelling level across the notes, so a held chord
keeps moving. - A loop for the Filter voice : it replays one frozen stretch of noise, a flutter at a
few hundred milliseconds, a buzz at a few.
Sessions, modulation and finishing
- Modulation keeps its full swing at the edge of a range : a parameter at its minimum
(Collage cuts at 2) moves over the whole cycle instead of sitting on the edge half the
time. Sessions whose modulations hugged an edge now swing further. - A modulated on/off button shows it : the modulated color, and its live ON / OFF.
- Spastic HOLD : the Spastic LFO rises once in a while on its rate, stays up for the
HOLD time you set, then drops straight back down and waits for the next rise (0 = up
until the next throw, as before). - Link a folder of sessions : right-click the Session Load button and pick a
folder; every session in it (subfolders included) joins the dropdown, grouped under the
folder's name. Linked, not copied : sessions saved there later show up too. - Click a modulation chip (Modulation panel) to turn that assignment off and on; it
keeps its depth meanwhile. - ↺ default on Vibe, Context and Finalizer puts the stage back as a New session starts
it. - Context shows what the picture really gets : when Proximity, Coalesce, Flow or the
sequencer add blur, haze, trails or depth on top of its sliders, a line under Context's
header says so (live blur 0.23 ← Proximity), and neutral sets those macros back. - New and Generate morph into the new composition over the Morph time, live and
layer by layer, instead of snapping. - Move and copy effects between racks : right-click an effect for Copy to Master
FX or Copy to Layer N FX, or drag it from one rack to another (Ctrl or Alt to copy
instead of move; its modulation follows a move). An effect a rack can't host is refused
with a popup that says why. - Animate Context's light : draw a path on the light pad and play it, with the
Metasurface's controls (direction, loop, time, jump, wiggle). It is saved with the
session and recalled with scenes. - Surface material evolution (Context) : a slider that keeps the surface from sitting
perfectly still, as if a little wind moved the projector or the camera filming it. The
material sways a few pixels in slow, irregular gusts, turns and breathes very slightly,
and its light shifts with it. 0 (the default) is still. The section is now called
surface material (plain "surface" also named the Metasurface).
dataflou : Palinopsia joins the mesh
- Palinopsia is a dataflou node : turn on the new dataflou section in the
audio/midi/osc tab and the other dataflou nodes on the network (same universe) see it,
what it senses (audio, picture, body, modulators, Meta knobs) and what plays it (Meta
knobs, layers, the feel macros, scenes, BPM), and can wire to it. No central computer. - A monitor of the mesh : every node, online or remembered, with its parameters and a
picker to wire any of them to Palinopsia or from it, and every connection on the mesh,
with ✕ to unwire. Values received and sent per second in the header. - Wires you make are kept and come back by themselves when the other node reappears.
Resolume OSC mapper (new page, key K)
- Open a Resolume composition (
.avc) : its layers, groups, columns, clips, effects and
dashboard links become the columns of a matrix whose rows are Palinopsia's signals
(modulators, Meta knobs, audio, vision and body features, any/opsiaaddress). - A pin board : a connection is a pin colored by its signal's family (modulators, Meta
knobs, audio, vision, body, OSC) that glows with what it carries, each Resolume group has
its own colored band, rows count their pins, and a line under the board says what is under
the cursor and what a click does, and an empty page shows how to start. - A dice for the pins : 🎲 wires every row to none, one or two random controls (never
a clip or column launch, never the composition master), and ↶ puts the old pins back. - A Resolume section in the audio/midi/osc tab : it says when the mapper is sending
(where, how many pins, messages a second), turns sending on and off, and opens the mapper. - Click or paint to connect, set an amount per cell, float / toggle / trigger columns with
range and smoothing, Learn addresses from Resolume's own OSC output, scene → column
triggers, 8 snapshots and a lock. The whole mapping is saved with the session.
Nodes and blend modes
- Five new native nodes, usable in any rack : Remap, Luma Blur (with a
depth-of-field mode on the depth map), Gooey (blur then threshold), Matte (three
inputs) and Lookup (a live layer as the palette). Nodes can now take a second layer
input. - LighterColor blend mode : the whole brighter pixel wins, hues never mix.
- Weave, lumakey and consume work as layer blend modes against the stack below :
weave displaces the two by each other's brightness, lumakey keys out the layer's black
background, and consume lets the layer and the stack fight over the frame.
More to play with (every default keeps today's look)
- Sources : Drift Field
strata angleandreseed; Slabsspectrum light; Contour
index linesandaudio swell; Ten Print arcs; Particle Drifttrail fade,density
andaudio pulse; Column Scanaudio trace; Murmurationheadingandveer; Filaments
audio sway; Congealclearandaudio sparks; Rampsmirrorand a movable center;
RGB Oscillatorschromaandaudio FM; Recursedrift angleand per-level audio;
Shapesdensityandspin; Op-Artaudio; Direct Marksboil,fps,seedand
audio gate; Metamorphbirth; Sync Oscaudio FM; Differentialaudio bands. - Text : a crawl (a ticker along the baseline), shrink to fit, letter drift, typewriter
reveal, and one line at a time withnext line. - Collage :
speed spread(each piece at its own rate) andfreeze. - Effects : per-column or per-band audio on Byte Corrupt, Databend, Mosh Blocks, Row
Echo, Slice Shuffle, Tiles, Distort and Motif;fireon Databend and Row Echo; Threshold
alpha key; Pixel Sortangle; Pixelate and Tilesaverage; Compressvary; Databend
wrap; CRT Screenlinesandmoire; Scanlinesmoire; Ruttrelief(hanging or
mountain); Gradegamma; Hue Rotaterate; Palettecycle; RGB Shift wobble rate; Edge
ink; Transformcutout; Wavefold and Colorizerinvert. - Time and feedback : Light Trails
kneeandclear; Wide Timeburnandclear;
Difference Bloomholdandsoft; Feedback Zoomcenter,drift,edgeandclear;
Force Linesslide, crawlrate,varyandaudio; Granularstagger,sizeVar,
edgesandaudio; Slit Bufferangleandgrab; Smear and Streaksmooth; Decay
headSwitch; Abstractionrateandcoherence. - Nodes : Feedback
clear; Sedimentsnapshot; Eternalismfreeze; Réponse and
Chronoscanstride(longer memory) and a Chronoscan ping-pong sweep; Parallax sway rate
and a smooth depth-of-field disc; Scanner audio lines; Afterimagedwell; Meltmix;
Faultline and Decimate beatsync; Sillagescan,ground, swirl center andclear;
Toile smooth strokes; Pulfrich zero plane; Corrode eats to transparent; Luma Blur smooth
quality andmix; Matte transparent cut-out. - Context
smoothing: the soft version of its ring-shaped blur and bloom. - Every non-obvious input now has a tooltip, with new presets and search words.
Changed
-
The Background reads like the stack : its strip comes first in the Layers column
(Background, then Layers 1 to 4, bottom to top) and folds like a layer. Its group
mode now really groups the layers (the Background shows through where they are dark
or transparent), a fading Background no longer turns a multiply layer black, the
outside fill matches the picture's grading, and speed, shadow and opacity can be
modulated and MIDI-learned. New sessions and Generate let the ground show. -
A Picture readout under Performance : every feature the picture reports, live, in
plain words. -
Sonify's output device in the audio/midi/osc tab, right under the input device :
the same choice as on the Sonify page. -
Changing scenes is fluid : a scene recall, Randomize, Variation, the sequencer and
loading a session all morph over the Morph time, live, with no quick flick at the start
(a short frozen dissolve used to cover every change, whatever the Morph time). Changed
layers crossfade one by one, modulation fades from the old motion to the new, and a
switch like mirror crossfades instead of flipping halfway. -
Messages appear in the middle of the bottom toolbar, always in the same place.
-
A, B and BG look like buttons : click one to show that source in the Inspector.
-
The output shape comes last : film dust and scratches stay inside the shape, and
the fill around it stays clean. -
Torn paper looks torn (Collage and the Autocutter) : one piece over the other, the white core of the
paper only along the upper piece's ragged edge, loose fibers, a soft shadow. -
Performance has its own tab beside the setup tab, now called audio/midi/osc
(Audio, MIDI, then OSC). -
Context's blur stays where you put it. It starts at 0, and New, Randomize,
Variation, Generate and Worlds never touch it. Saved sessions keep their blur. -
The Finishing panel is in labeled sections. Vibe Palette, Context and Finalizer are
split into named families (grade, character, 3D, hand-made film, film damage, output
shape…), each with a colored header. A section whose switch is off folds away, rows drop
the words their header already says, and rows that do nothing right now are grayed out
with the reason in the tooltip. -
Output page order, top to bottom : Composition size, Render scale, Mapping, Fulldome,
Fullscreen output, Record, Spout / Syphon, NDI, HIVE, Flash safety, Lights, Installation
mode. Flash safety starts collapsed (it stays on). -
Flash safety holds softly : a held region fades out over most of a cell instead of
showing the 6×6 measuring grid as hard-edged blocks (it showed when a slider was dragged
fast). The held part is limited exactly as before. -
The window title shows the version (
Palinopsia v1.2.0, and: Outputon the
output window). -
App text uses American spelling throughout, and no longer carries third-party brand
or artist names : the film-stock Colorizer presets and two others are renamed
descriptively. -
No em dashes in the app text : empty menu choices read plainly (
none,nothing,
solid color,no saved sessions) and an empty readout shows-.
Fixed
The picture and the engine
-
A GPU crash no longer leaves the engine broken : after a graphics reset the picture
comes back in about two seconds and keeps working (shaders used to fail to load until a
restart). -
The output shape no longer has a feather you can't remove : its edge is clean at
any resolution, and a feather control softens it when you want. -
Menus open where you click at any UI zoom : a layer's source list no longer opens
far to the left of its button when the interface is zoomed. -
Always the fast graphics card. On a laptop with two graphics chips, Windows could
run Palinopsia on the slow integrated one (about 15x slower) unless you changed its
graphics settings. It now asks for the discrete GPU by itself. -
Fulldome no longer exhausts the graphics card. Two blue screens (0x116
VIDEO_TDR_FAILURE, the driver out of resources) during dome shows traced back to video
memory : the main canvas carried a multisampled color buffer and a depth buffer it
never used, hundreds of MB at a 4096² master. The dome now adds about 300 MB instead of
750 (measured), the live master stops at 4K (8K alone added about 1.9 GB), the shared
capture never exceeds 4096, and the engine skips a frame instead of queueing more work
when the card falls two frames behind. A few small graphics-memory leaks are closed. -
Palinopsia asks for the high-performance graphics card on laptops with two.
-
Context at zero is exactly zero : with no surface material, a hidden relief still ran
on flat 8-bit maps and softened the whole picture slightly. Texture off is now an exact
passthrough. -
Surface materials : seven non-square scans were stretched to about twice their
height (see above), and paper crumpled repeated a streak of dark pits as vertical
lines across the frame; both fixed. -
Knobs no longer jump the picture. Motion driven by a rate knob used to leap when the
rate moved, so an LFO, a Morph or MIDI on a rate turned into strobing noise. Rates now
accumulate smoothly on the layer's own clock (Speed, freeze and reverse still apply),
across the Organic family and the glitch effects. -
Long shows stay alive. Glitch effects, grain and CRT / VHS parasites used to settle
into fixed patterns after an hour or two; every generator still moves, unrepeating,
after 24 hours. -
Audio-reactive generators read the right data. The waveform and spectrum could swap
places, and the spectrum is now spread musically (30 Hz to 16 kHz) instead of bunching
to one side. Any generator that listens gets the audio, on the background slab too. -
Minimizing the window no longer stalls the show (projector, Spout, NDI, Sonify and
OSC out used to drop to about one frame a second). -
Freeze-proofing : switching a Parametric, Text or Collage slot away, or disposing a
film, output-shape, flash-safety or depth-shadow stage, could freeze every shader draw.
They all survive that, and a GPU reset, now. -
Multi-pass effects no longer see a black frame when they start (which could also
stick in their memory). -
Fresh installs start with the intended defaults : Flash safety on at 0.35, the Flow macro
neutral, Morph at 1 s, the audio monitor at 0.8 (they started off, fully engaged, at 0 ms
and muted).
Sources
- The Collage's freeze, and every toggle, can be modulated. A modulator on a switch
that was off did nothing, and one that was on kept it on. Now at depth 1 a toggle
follows the modulator (on half the time with an LFO), and less depth leans toward its
stored state. A menu on its first choice can be modulated off it too. - Collage is lighter : bounded upload work per frame, fast auto deals re-cut without
reloading files, a broken file is skipped, and a hidden background Collage stops
decoding. - Dragging a modulated slider moves its setting by as much as you drag, instead of
jumping it to wherever the modulator was. - Collage's
cutscan be modulated : the wall grows and shrinks a piece at a time
instead of reshuffling, andfilmschanges no longer restart every film. - All 23 generators audited : each keeps moving after 24 hours (Slabs froze after
three hours, Particle Drift, Ten Print and Ash fell into lattices and stripes); lines
keep a steady pixel width; the aspect is right at 16:9 and on the square dome; presets
set every input, so one no longer leaks into the next. Murmuration's birds no longer
accelerate into strobing dots, Congeal fades back to black, and Metamorph, Differential,
Direct Marks, Filaments, Column Scan, Shapes and Solid Color each lost a visible flaw. - Collage : churn no longer collapses the wall onto one film, pieces stay sharp at 4K,
crossfades and seeks no longer stick, Speed applies, and a minimized window no longer
freezes the wall. - Text : the weight dial works on every font, size and spacing move smoothly (a glyph
atlas), stretch stays sharp, and a Text layer is no longer an opaque black slab. - Parametric : Raster hears the audio, the spectrum uses its whole width (512 log
columns), the spectrogram scrolls sharp at any frame rate, and Bars followscale. - Mosaïque matches tiles at last (its matcher never compiled).
Sonify
- The Collage voice's Ring bank no longer rasps on its driven voicings (MS-20,
Steiner, K35) : the drive clips each band, not the whole mix of pieces. - The sound comes back by itself after an audio device error (an interface unplugged,
the output switched), even in the middle of a long installation. - Double-click a modulation depth slider to put it back to 0.5, like every slider.
- The Collage voice no longer cuts out at each deal (it went silent for a fifth of a
second) : it crossfades. - A full audit of the sound engine, the page and the OSC addresses :
- The Filter voice's noise had a hidden 4.6 Hz loop. It is true noise now, and the
loop is a knob. - The reverb mix knob works. It was ignored; 0.6 is the old level.
- No more clicks when a voice switches (the sequencer did it in rhythm).
- Modulation no longer drops out while you move a slider.
- The echo tail plays out instead of stopping mid-echo.
- Events notes don't overwrite each other.
- Very high notes stay in key.
- The audio thread works a third as hard, with the same sound.
- The probes sit on the picture, not on the black bars. A held line drags along
its own path, the Orbit shows its real shape and the sweeps run at their real speed. - OSC index addresses (octaves, paths, counts) are integers now, and there are new
addresses for the taps, octave ranges, sync, shape and loop.
- The Filter voice's noise had a hidden 4.6 Hz loop. It is true noise now, and the
- A truer stereo field : Chord, Flow and Events notes keep their loudness wherever
they sit, Chord's spread keeps the bass in the middle, and each Collage piece sounds
from its place in the frame.
Effects and nodes
- Context's Vibe Color button works : it lights the scene in the color the Vibe
Palette is painting with (a color chord's too), and turns the light up if it was off. - 52 effects audited. Highlights : texture reads the loader silently rewrote (Databend,
Compress, Aperture, Optical Rain); eight effects that turned a transparent layer into a
black slab; knobs that did nothing (Pixel Sort length, the Compress and Pixelmask grids,
digital grain size); Rutt drew no lines in bright areas; Phosphene burned in for good;
Distort's bulge and pinch were swapped; four time effects showed the previous frame;
sizes now follow the frame height, so 4K and the dome keep the 1080p look. The
corrupted-data smears, stepped blocks, CRT moiré and edge fringes stay the default look. - All 25 native nodes : they keep the layer's transparency, run on the layer's clock
(Speed, freeze and the background's slow clock), read the audio, and restart cleanly
after PANIC. Feedback no longer lifts black into gray fog, Sediment's memory fades,
Datamosh's mask clears, Réponse's gain works, Chronoscan shows the present at full
resolution, Toile costs about 3 ms at 4K instead of 14. Their signature looks (Feedback's
heat, Datamosh's melt, the Autocutter's torn paper) are kept. - Flash safety now does its job : it counts real flashes per second in real light, per
region of the frame. A 10 Hz strobe comes out clean at the default setting, and ordinary
content passes through untouched. - The finishing chain : Vibe no longer turns clipped highlights gray or black, Context no
longer delays the whole master by a frame or leaves a permanent ghost, sharpening
survives 3D, and torn VHS lines no longer smear the frame edge. - PANIC also clears the effects' trail memories, which could hold a ghost for good.
Video
- OSC video speed matches the slider :
…/video/speednow spans 1/64× to 128× like the
transport slider (it stopped at 1/28×, so a controller and the slider disagreed). - Above 8× a clip froze on real footage (each frame was an exact seek, 0.5 to 3 s on
heavy 1080p or 4K), and below 1/16× it silently played at 1/16×. Both now play at their
set rate (measured : 1/64, 1/28, 8 and 64). - Grain voices were upside down, and while one loaded it could drop the whole grain
picture for a few frames. - A paused video ignored seeks (OSC
/video/position, modulation) : it lands now.
Resolume mapper
- A click toggles the pin you clicked : at a UI zoom other than 100 % it toggled one far
to the side. The scrollbars no longer flicker.
Output and recording
- Changing sessions is a clean cut : the previous session no longer keeps playing
on the projector while the new one loads. The picture holds still until the new
session is ready, then dissolves into it. - Recording can always be stopped : a take the encoder refused used to hang the stop
button. It now ends by itself and says why. - HIVE output starts (it asked the hardware encoder for a frame rate it refuses).
- A recording that never received a frame no longer leaves an empty file behind.
Randomize
- A pinned dice range keeps the current value instead of forcing one; the walk and
Variation follow the same rules; palettes roll as one hue from near-black to pale
instead of five clashing colors.
Performance (measured at a 4K composition)
- Projector window open : 25 to 27 fps before, 60 now.
- Output page with the 4096² dome simulator : 47 to 49 fps before, 60 now.
- Spout at 4K : 0 fps before, about 58 now.
- Projector + Spout + a DXV3 take together : 57 to 60 fps.
- NDI 4096² at 30 fps, even minimized.
- Fulldome at 4096² : about 300 MB of video memory instead of 750.
- Body tracking : off the picture's thread, about 0.1 ms of its time a frame (3 to 5 ms
before, more on a busy GPU).
Known limits
- Syphon is built in CI but has not yet been tried on a Mac with a Syphon client. If it
misbehaves, please open an issue. - NDI is tested on Windows. The macOS and Linux paths are written but untested, the
builds do not bundle the NDI runtime (use the one-click install, or NDI Tools), and on
Linux the runtime has to be installed by hand. - The hardware video encoder stops at 3840×2160 : larger takes (the 4K dome) record DXV3.
Downloads
| Platform | File |
|---|---|
| Windows | Palinopsia-1.2.0-win-x64.exe (installer) or Palinopsia-1.2.0-portable.exe |
| macOS (Apple Silicon) | Palinopsia-1.2.0-mac-arm64.dmg |
| Linux | Palinopsia-1.2.0-linux-x86_64.AppImage or Palinopsia-1.2.0-linux-amd64.deb |
Builds are unsigned :
- Windows : SmartScreen may warn, click More info → Run anyway.
- macOS (Apple Silicon) : not notarized. Drag Palinopsia into Applications first (run
from the disk image or Downloads, macOS runs a hidden temporary copy), then run
xattr -cr /Applications/Palinopsia.apponce in Terminal, or open it and click Open
Anyway in System Settings → Privacy & Security (right-click → Open no longer works
since macOS 15). The first launch asks for the local network, and for the camera and the
microphone when you use them : accept, or OSC, NDI and light output stay silent. - Linux :
chmod +xthe AppImage, then run it.
Intel Macs (x64) : this release ships Apple Silicon only. On an Intel Mac, build from
source (npm install, then npm run build:mac).
For developers
- Electron 44, electron-builder 26, Vite 7, electron-vite 5. The app's file schemes are
CORS-enabled (Chromium 152 requires it for the films and the tracking models), screen
capture asks fordisplay-capture, and file pickers remember their folder (Electron 43
opens a picker without one in Downloads). - tools/shader-rig checks any generator or effect offscreen : a 24-hour show in one
step, knob scrubs, 4K cost and stills. tools/test-build.sh runs an isolated copy of
the app for automated tests, beside the real one. - A shader can declare a wrapped phase (
uniform float PH_x; // wrap <period>) to stay
precise over day-long shows. - docs/bibliography.md cites the research papers behind the instrument.
Full details in CHANGELOG.md.