Kinematic 0.5.0 is out. Modeling and sculpting in the viewport, a timeline on every graph, photo and sound editing. What's new
Kinematic / Who it's for / Museums and installations

Exhibits that answer your visitors.

A camera, a depth sensor or a microphone notices the person in front of the piece, and the picture, the sound and the light respond. Build it in one free app, then leave it running for the whole season.

Exhibit designersMedia artistsMuseum AV teamsCreative technologists
Cameras, depth and sound, read on your own machineProjection, LED walls and DMX lightRestarts itself if anything falls overFree, even for commercial use
a scanned basket of shells that turns and tips toward a visitor's raised hand
The graph behind it
  1. InputVideoFile
  2. LocalAIImageToBodyPose
  3. ChannelDataLag
  4. 3DGeoTransform
  5. 3DGeoSceneRenderToImage

Here a video file stands in for the gallery camera. In the room, a webcam node takes its place.

Basket scan by Marc (superspl.at), CC BY 4.0.
Your work

Exhibit work in Kinematic.

The jobs that come up on every exhibit, from the first scan to the visitor who walks up. Each one is a handful of nodes in the same graph.

01

The content.

The objects, the places and the film the room is built around.

a scanned lizard sculpture on its plinth
scan by Niantic Labs, MIT license

Scan the collection

Bring an object in as a Gaussian splat or a mesh. Cut away the table it stood on, match its light to the gallery, and save a small file that the collection website can show.

3DGeoImportSPZ3DGeoSplatCrop3DGeoExportSOG
Scans →
a temple modeled one piece at a time in the viewport

Rebuild a place that is gone

Model a temple, a room or a street from boxes, one piece at a time, then render it for the exhibit film or show it live on the gallery wall.

Modeling →
a title, crossfades and three clips on the timeline

Cut the exhibit film

Clips on tracks, trimmed, faded and titled. Render it to one file, or play it straight from the timeline on the gallery screen.

VideoArrangementPlayerOutputVideoFile
Video →
02

The visitor.

Cameras and depth sensors that notice people. Every model downloads once and then runs on your own machine, so nothing filmed in the gallery leaves the room.

a room from one depth frame, rebuilt as points

Notice a visitor step up

Set a few boxes in the air in front of a depth camera. Each one fires when someone steps in, again when they leave, and reports how close they are.

DepthCameraCaptureInterfaceDepthZoneTrigger
Depth cameras →
a skeleton tracked over a dancer, from a video file

Read every body in the room

Bodies, hands and faces from a plain webcam, with a running count of the people in frame. For a busy foyer, a crowd counter estimates how many are there and never identifies anyone.

LocalAIImageToWholeBodyPoseLocalAIImageToCrowdDensity
Tracking →
a face on a webcam, with the angle it is looking at written over it
where a face is looking, read live

Know when someone is looking

A webcam estimates where a visitor is looking. Glances land in zones you set, and a separate trigger fires when they look straight at the camera.

LocalAIImageToGaze
Cameras →
an open palm held up to a webcam, read as a named gesture
an open palm, read as a named gesture

Fire a cue with a hand

Thumbs up, open palm, fist and more arrive as named triggers. Wire one straight to a scene change, a sound or a light cue.

LocalAIImageToHandGesturesDmxCueStack
Gestures →
Familiar work, done here

Projection onto walls, models and rooms.

Pin a picture to a wall, wrap it around a column, cut the windows out of a facade, and blend several projectors into one picture. It all lives in the graph, so a visitor, a sound or a schedule can move any of it.

  • Quads and freeform shapes, each filled with its own picture
    ProjectionMapper
  • Corner pin, grid warp and masks for every surface
    ImageCornerPinImageGridWarpImagePolygonMask
  • Blend projectors into one wide picture with no visible join
    ProjectorLayoutImageEdgeBlend
  • Line projectors up through a camera, then even out their brightness
    StructuredLightCalibrationRadiometricCalibration
  • Light only the visitor: a depth camera cuts them out of the room
    DepthCameraCaptureInterfaceLatchImageMath
light mapped onto a room, a person stepping into it
the Projection Mapper: three tilted panels, each with its own pattern
the projection mapper, three panels
a pattern that lands only on the person
What you gain: sound

Sound in the same file as the picture.

The soundscape, the voice detector and the picture share one graph. A visitor speaking can bend the shape on the wall, and an echo canceller keeps the piece from hearing its own speakers.

  • Hear the visitor, not the speakers: the echo canceller strips your own soundtrack from the mic
    LocalAIAudioEchoCancelLocalAIVoiceDetect
  • Captions on your own machine: speech to text, then translated into another language
    LocalAIAudioTranscribeLocalAITextTranslate
  • Read text aloud with a local voice, with no account and no key
    LocalAITextToSpeechAudio
  • Circle a sound around four speakers and add the reflections of a room
    AudioAmbisonicEncodeAudioAmbisonicDecodeAudioRoomSimAudioPlaybackOperation
  • Let the level or the beat drive any number in the graph
    AudioEnvelopeFollowerAudioOnsetDetect
a shape that swells and twists with a voice
a box that pulses with the music
a song raising the ground
What you gain: one file

Scans, simulations and light in one file.

The scanned object, the fire on the LED wall and the moving lights that follow a visitor can all sit in the same graph. Nothing is exported from one app to the next, so a change to the scan or the sim reaches the wall while the piece runs.

  • Take the shot-in light out of a scan, then light it like the gallery
    3DGeoSplatDelight3DGeoSplatProbeRelight
  • Fire, smoke, liquids and particles in the same graph, feeding any screen, projector or light
    3DGeoFluidSimpleSolver3DGeoFluidRender
  • Pixel-map any picture onto an LED wall, with more than 1,500 fixture profiles built in
    ImageToDmxArtNetSendInterface
  • Moving heads that find a visitor and stay on them
    LocalAIImageToBodyPoseDmxFollowSpotEngine
an astronaut scan, relit as the sun swings around
scan by Hasnain (superspl.at), CC BY 4.0
a fire sim on a wall of lights
moving heads following a person, in the 3D preview
Opening day, and every day after

Run it all season.

An installation is judged on the day nobody is watching it. These are the parts that keep a piece running for months on its own.

A day in the gallery
  1. Before the doors openThe machine starts, logs in, and the piece opens full screen with the edit keys off and the screens kept awake.
  2. The projector comes on lateSwitch it on after the computer. Within a couple of seconds the picture moves to it.
  3. Opening timeThe scheduler fires the opening look at the time you set, on the days you pick.
  4. Something falls overA crash restarts the piece on its own. A stalled graph is ended by the watchdog and comes back the same way.
  5. Closing timeHalf an hour before sunset, or at a time you choose, the lights dim and the piece settles for the night.
  6. OvernightThe log starts a new file each day and drops the oldest ones, so months of running never fill the disk.
terminal
$ kinematic piece.kin --kiosk --display 1 --no-controls \
    --restart-on-panic 10 --watchdog 30s --health-port 9797 \
    --error-strip off --log-file /var/log/kinematic/piece.log --log-keep 14

Add it to the login items on a Mac, or a desktop session service on Linux, and it starts with the machine.

DmxSchedulerInputIdle

one key and the editor steps aside
Run an installation for a season →

Check on it from the office

A health check on a port reports whether the piece is running, which frame it is on and how many frames it dropped, for whatever watches the building.

Many screens, one moment

Align the timeline to the wall clock and machines that started at different times still show the same frame. Keep their clocks set over the network.

No error text in front of visitors

Turn the error strip off and nothing is painted over the picture. Errors still go to the log and the health check.

Sealed off the network

The tracking models download once. After that, an offline launch never waits on a download.

One file, set per machine

Pass a value at launch, such as the room name or which screen it is, and every machine runs the same graph file.

An attract loop when nobody is there

For a kiosk with a mouse, keys or a controller, an idle timer brings the attract loop back after a quiet spell.

How it fits

Your gear and your files.

What plugs in, what it drives, and the files that come and go. Every entry is on the full list of what Kinematic works with.

Reads the room
Webcams and capture cards
Bodies, hands, faces, gaze and crowd size.
Depth cameras
Orbbec Astra, Gemini and Femto. RealSense-style cameras on Linux.
Microphones and sound cards
With an echo canceller for the room.
Touch screens
Every finger at once, with where it landed and how hard it presses.
Sensors and dev boards
Anything on a USB serial port, such as a sensor on a dev board.
Phones and tablets
A touch page served from the graph, or TouchOSC.
Drives the room
Projectors and screens
A window of its own on any monitor, full screen, found again when the projector is plugged in late.
LED walls and DMX lights
Art-Net, sACN and USB DMX adapters, with more than 1,500 fixture profiles.
Speakers
Stereo, or a ring of four from ambisonics.
Other machines
Video over NDI, or Syphon on a Mac. It can also serve its output over RTSP to a player.
Show control
QLab and lighting consoles over OSC, MIDI Show Control, LTC and MIDI timecode.
The web
HTTP requests, WebSocket servers and webhooks, both ways.
Files Opens
glTF, FBX, USD, OBJ, PLY, STLSplats: SPZ, PLY, SOG, .splatMP4, MOV, MKV, WebMPNG, JPEG, TIFF, EXRWAV, FLAC, MP3, OGGCSV and JSON tablesMVR and GDTF lightingFonts
Saves
H.264, H.265, ProRes, VP9glTF, FBX, USD, OBJScans as SOG or .splat for the webScans as .usdz for Apple devicesPNG and EXR sequencesWAV, FLAC, AIFFPatch lists for the crew
Everything it works with →
Where to start

Tutorials and demos.

Short lessons that end with something working, and demos that come with the app. Open a demo, take it apart, and keep what you need.

Before you plan the install

What it does not yet do.

Better to know now. Something here would stop your exhibit? Reach out.

  • Kinect and ZED camerasThese depth cameras are not supported yet. Orbbec cameras work, and RealSense-style cameras on Linux.
  • TUIO touch tablesThere is no TUIO node yet. A touch screen the system sees works today.
  • Projector powerNo PJLink control to switch projectors on and off from the graph yet.
  • Spout on WindowsVideo sharing between apps on Windows is on the roadmap. NDI works on every platform, and Syphon on a Mac.
  • Screens kept awake on LinuxThe kiosk keeps screens awake on macOS and Windows. On Linux, turn screen blanking off in the system settings.
  • Daylight savingThe scheduler does not change its clock for daylight saving. Update its offset on the day the clocks change.
  • Large speaker ringsAmbisonic sound decodes to stereo or four speakers today, not to bigger rings of speakers.
Your next exhibit

Download Kinematic.

Free. No account, no license key and no seat count, so every exhibit machine in the building can run it, even for commercial use. macOS, Windows and Linux, with experimental Raspberry Pi support. Nothing to renew halfway through the run.

a swirl painted only where the person moves