OBS Studio, kept as plain words
Every setting a line you can read.
obsmage splits a whole OBS setup into atoms (one key, one value each) and joins them back exactly. Change a scene by hand, review it like code, move it to a new machine. Credentials never leave yours.
Try it in your browser An invented setup, or your own files. Nothing is sent anywhere.
[Video] BaseCX=1920 BaseCY=1080
basic.ini/Video/BaseCX=1920
basic.ini/Video/BaseCY=1080
basic.ini/Twitch/Token=@secret(len=22)The picture
How the parts fit, drawn in topology forge, the same drawing app that opens corwin.cloud.
Drag to move about, scroll to zoom, click a part for what it does. Open it full size, where every shape can be moved, changed and saved.
What it does
Atoms
Every OBS setting becomes one line: a key and its value, in a file of its own set. Read it, compare it, keep it in git. Join the atoms and you get the OBS files back exactly: INI byte for byte, JSON the way OBS reads it.
Credentials stay home
Stream keys, tokens and passwords become
@secret(len=N)wherever atoms are shared. Their values live in a vault on your own machine, readable by you alone.Screen maps that keep up
The composer finds screen captures bound by position number, which point at the wrong screen when one is unplugged, and binds them by the screen's own id. It keeps your hand placement, and hides what it would otherwise delete.
A healer that follows main
A small timer fetches the newest code, builds the package and the OBS plugin, and writes down every run. It builds; installing stays your decision.
Releases
Each release is a versioned source tarball and a Debian package for Ubuntu 26.04 (amd64), each with its sha256. The channel feed names the newest; SHA256SUMS lists every file; all releases. Every bundle is checked for credentials before it is served.
Check before you install: sha256sum -c SHA256SUMS. The packages are not signed yet; a signature will sit beside each one when they are. The source: inputloop/obsmage.
Why it is made this way
A streaming setup is work people do with their hands and their time. It should belong to them in a form they can read, not only in a program's private files. So obsmage is free software: run it, read it, change it, share it.
- No account, no telemetry. It runs on your own machine.
- Nothing is reorganised for you. The tools point out a pattern; a person decides.
- Built on OBS Studio as it is, with changes offered back to it.
- This site works by keyboard, at phone width, in light and dark, and loads nothing from any other host.
How this page was made
A short Python script builds it as plain files, the way corwin.cloud is built (its source): no framework, no tracking, no fonts or scripts from another host, and a policy that forbids them. The drawing app is topology, staged from its own checkout at build time. The demo is new JavaScript that reads and writes the same atoms as obsmage's Python tools; its tests run both on the same files and compare them byte for byte. The release feed has the shape of about-corwin's channel. nginx serves it all from gw33, a ghostwheel host.
The source of obsmage and of this page is inputloop/obsmage (the page is its site/ folder). For a real setup kept this way, see inputloop/obsmage-corwin: one person's OBS recipe as atoms, every credential withheld.