The Studio is a production room for spoken word and the music around it. It records, cleans, arranges, mixes and bounces audio, and in the Mac app it also runs the hardware room that meters and records an analog mixing board. Everything is laid out as one desk with six places to stand:
| Tab | What it is | You go here to |
|---|---|---|
| THE DECK | The reel-to-reel transport with a master VU, tape counter, eight channel meters and a compact mixer. | Play, stop, rewind, record, watch levels, ride a fader while you listen. |
| ARRANGE | The multitrack timeline: tracks down the left, clips on lanes, a bar ruler, markers, a loop range. | Cut, move, trim, fade, mute and place audio in time. |
| THE BOARD | A channel strip per track, modelled on the PreSonus AR16c: trim, HPF, HI/MID/LOW, pan, mute/solo/arm, a 60 mm fader, a meter. | Balance the mix, shape each voice, route to buses, arm channels for recording. |
| THE RACK | Thirty-five effect units in four stages (repair, tone, space, colour), one dial each, patched onto a track or the master. | Clean noise, hum, clicks and sibilance; add warmth, presence, air; add space and colour. |
| CARTS | A cart machine: named walls of eight pads holding stings, beds, IDs and your own recordings. | Fire a sound over the top of anything, duck the mix under it, drop it onto the timeline. |
| THE ROOM | What this studio is, where the tapes go, what this machine can reach, where your work is stored. | Export a copy of the session, read the room's status. |



In PerfectStudio for Mac there is a second surface, Room (the toolbar switch at the top), which is the hardware room: the AR16c board, line check, the cast of announcers, theme carts and the render queue. It records real takes from the board. Section 3.1 covers it.
everythingisperfect.org/studio. Safari 16+, Chrome 110+, Firefox 110+ and Edge 110+ are supported./studio/app/), unzip, move to Applications. The first launch is right-click → Open (the build is signed for development, not notarized). The app starts its own local server and opens the desk; the toolbar switches between Desk and Room.Transport (return to zero, stop, play, record, loop), the bars|beats and time readouts, TEMPO, SNAP, the THEME picker (web) or the Theme menu (app), MAC APP (web) and BOUNCE. Below it, the six tabs. At the bottom, the status line, the snap chip and the host chip (browser or production room).
The session saves itself continuously in this browser's private storage on this machine (origin-private file storage). Nothing is uploaded. THE ROOM tab shows how much is used. EXPORT A COPY bounces the session to a WAV; the session file itself travels with the browser profile. New Session is in the tab's menu and asks before discarding.
The hardware room drives an analog board through its USB interface. The reference desk is the PreSonus StudioLive AR16c: 18 channels arrive over USB, tapped before the faders on channels 1–16 (so they follow the GAIN knobs) and after the faders on MAIN L/R. An analog board sends audio, not knob positions; the room meters and records what arrives.




The desk records from the machine's input (the microphone or interface the browser is allowed to use) onto every armed track at once.
Each pass is a separate clip, so you can record a line several times and keep the best (Part 5 covers selecting, trimming and deleting). Disarm with R again when you are done, or the next RECORD will print onto that track too.
On CARTS, hold REC on any pad and talk; release to stop. The take lands on that pad, named for the time, ready to fire. Holds under a third of a second are ignored. This is the quick way to make an ID, a liner or a stinger without touching the timeline (Part 7).
ARRANGE → IMPORT opens a file picker; or drag files from the Finder onto the lanes, at the bar you drop them on. WAV (including RF64), AIFF (Safari), FLAC, MP3, M4A/AAC, OGG/Opus and CAF are accepted; video files import their soundtrack. A stereo file lands on a stereo track, a mono file on a mono track (a new one is made if the target does not match, so a spoken-word file never loses its pan law on a stereo lane). Files are stored in the session and come back on reload.
THE RACK holds thirty-five units in four stages, in signal order. Each unit is a real device with one parameter (AMOUNT, 0–100) and three push buttons for the usual settings (LOW 25, MID 50, HOT 75). Turn the dial or press a button on an OFF unit and it switches on at that setting. Units marked AT THE DESK run in the mastering room when a mix is sent there (the browser does not fake them); the rest run live in the browser.
| Stage | Units | Use it for |
|---|---|---|
| REPAIR | Noise reduction, Deep clean, De-click, Room gate, Rumble filter, Hum killer, De-ess | Fix what the room and the mic did: hiss, hum, HVAC rumble, mouth clicks, chair scrapes, harsh esses. |
| TONE | Warmth, Presence, Clarity, Air, Tilt, Body, Mud cut, Bite | Shape the voice: chest, intelligibility, sparkle; a tilt of the whole balance. |
| SPACE | Small room, Plate reverb, Hall reverb, Spring reverb, Echo, Slapback, Ping-pong, Phaser | Put a voice or a bed in a place. Rarely on a podcast voice; often on a music cue. |
| COLOUR | Drive, Tape saturation, Squeeze, Lo-fi crush, Telephone, Tremolo, Vibrato, Widen | Character and control: compression, saturation, the phone-call effect, width. |




PATCHED ACROSS at the top of the rack chooses what the units act on: a track, or MASTER. The chip beside it counts what is in the chain. The same inserts show on the strip's insert list on THE BOARD, and the board's HPF, HI, MID and LOW are the rack's Rumble filter, Air, Presence and Warmth on that track: turn one on the board and the rack shows it, and the other way round.
Each unit carries its name in bold, its stage, a dial with a value readout, the three push buttons, an instrument (an LED ladder, a moving-coil meter or a numeric display, depending on the unit's maker), and a scrolling LED screen with the unit's description. The ON switch is at the left. A lit unit's meter shows the level at the tail of the chain.




The head column on the left lists tracks: colour chip, name (double-click to rename), width (M, ST or BUS), an FX button that opens the rack on that track, R/M/S, a fader with a dB readout and a meter, and a grip to resize the lane. + TRACK adds a stereo track under the selected one and scrolls to it. DUP TRK copies a track with its clips and its inserts; DEL TRK removes it (with a confirmation if it holds audio). The + MONO / + ST / + BUS row at the foot adds other kinds.
The wheel scrolls the lanes; a trackpad's sideways swipe, or Shift+wheel, scrolls time; Cmd+wheel zooms about the pointer. The scrollbars on the right and along the bottom do the same and show where you are. ALL TRACKS shrinks every lane so the whole session is on screen (press again to restore); FIT TIME fits the session's length to the width; ZOOM SEL zooms to the selected clips; PageUp/PageDown page through the lanes.
Click a clip to select it; Shift-click adds. Click a lane to select the track and set the edit point. Cmd+A selects every clip; Cmd+Shift+A every clip on the selected track; Esc clears. The selected track shows a ring in the skin's accent colour.
| Tool | What it does |
|---|---|
| SPLIT | Cuts the clips under the playhead on the selected tracks (or all). |
| CUT · COPY · PASTE · DUP | Clipboard on clips; PASTE lands at the edit point (playhead, or the mouse when it is over the lanes). DUP places a copy right after the original. |
| DELETE · RIPPLE DEL | DELETE leaves a gap. RIPPLE DEL closes it, sliding everything after left by exactly what was removed, per track. |
| ◂ NUDGE · NUDGE ▸ | Moves the selection by one grid step (a fine step with the grid off). |
| TRIM ⟨ · ⟩ TRIM | Trims the selected clips' start or end to the playhead. |
| GAIN − · GAIN + | Clip gain in 1 dB steps, before the track fader. A quiet line can be lifted without touching the mix. |
| MUTE | Silences the clips (they stay in place, drawn dim). |
| FADE IN · FADE OUT | Puts a 350 ms fade on, or takes it off. Fades are drawn on the clip. |
| LOOP · LOOP ← SEL · CLR LOOP | Loop on/off; set the loop to the selected clips (else the selected track, else the whole session); clear it. Alt-drag along the ruler sets a loop range by hand. |
| MARK · ◂ MARK · MARK ▸ | Drop a named marker at the playhead; jump to the previous or next one. Markers show on the ruler. |
| − · + · ZOOM SEL · FIT TIME · ALL TRACKS | Zoom and fit, as above. |
SNAP in the top bar sets the grid division (1/4 note by default); the snap on chip at the bottom toggles it, as does Cmd+Shift+S. Snap strength is measured in pixels, so it feels the same at every zoom. Hold Shift while dragging to defeat it for one move.
Cmd+Z and Cmd+Shift+Z. A drag is one undo step, however long you hold it.




THE BOARD shows a full channel strip per track and a master strip, in the order of a real console channel from top to bottom:
| Section | On the strip | Notes |
|---|---|---|
| Input | XLR, number and width, routing (MAIN or a bus), inserts, sends | Routing sends the track to a bus track. Sends are shown but disabled until routing lands. |
| Trim | TRIM ±24 dB | Level into the chain. Set it so the meter peaks in the yellow with the fader at unity. |
| Tone | HPF · HI · MID · LOW | The rack's Rumble filter, Air, Presence, Warmth on this track. 0 takes the unit out of the chain. |
| Pan | PAN | Pans a mono track; balances a stereo one. |
| Buttons | R · M · S | Arm, mute, solo. Solo is non-destructive. |
| Fader | 150 px throw, −60 to +6 dB, unity marked | Double-click for unity. Shift-drag for a quarter dB per pixel. The wheel moves it half a dB. |
| Meter | Peak ladder, hold line with tracer, clip indicator | Click the meter to clear a clip. The readout shows the current level and the peak since the last clear. |
| Foot | Name plate, DUP, DEL | Click the head to cycle the track colour. |
The master strip carries the master fader, its own inserts (patch the rack across MASTER for a bus compressor or a final tilt) and a stereo meter. Anything at 0.0 on the master's peak readout has clipped the bus.
Drag up or down on a knob; Shift makes it fine. The wheel steps it. Arrow keys step it when it has focus; Home/End go to the ends. Double-click returns a knob to its default. Turning a knob on a switched-off rack unit switches it on.



A cart machine holds the pieces a station plays on demand: the sting before the news, the bed under a read, the station ID, the bumper out of a segment. A cart fires immediately when you hit its pad; it does not arm a track or move the playhead, and it goes straight to the output.
A wall is a named set of eight pads and saves with the session. The header picks the wall and offers NEW WALL, RENAME, DELETE, FROM PACK (a wall of the synthesized newsroom, cassette or clean carts) and STOP ALL. Make a wall per show.
| Control | Behaviour |
|---|---|
| ONCE / LOOP | A one-shot retriggers when hit again. A loop plays until hit again and fades out over a fifth of a second. Beds are loops. |
| Level knob | −24 to +6 dB, live while the cart plays. |
| DUCK | Dips the mix by 8 dB while the cart sounds (quick attack, gentle release), so a stinger sits over a read. |
| TO TIMELINE | Places the cart as a clip on a track named Carts at the playhead. That is the moment it stops being a cart and becomes part of the arrangement. |
| CLEAR | Empties the pad. The audio stays in the session. |
The pad's lamp lights while it plays and pulses for a loop. Double-click the name to rename a pad.
A soundtrack for a segment is a bed, a few cues, and the voice riding over them. The desk has what that needs:
BOUNCE in the top bar (or Cmd+Shift+E) renders the whole session offline through the same graph you hear, with every insert, fade, clip gain, fader and pan, to a 48 kHz WAV, and hands it to you as a download (in the app, a save dialog). EXPORT A COPY on THE ROOM tab is the same bounce.
In the Mac app, the hardware room takes it from there: the mastering desk cleans, levels and publishes a mix as an episode for the station, staging it for KUSSR (the tapes are on the air at 99.5 KUSSR; the station carries what The Studio makes). The Room's RECORD → PROCESS → PUBLISH lamps at the top follow that path.
The desk wears a theme pack. On the web, the THEME picker in the top bar switches between the Wm Hemphill Maker Edition (stock), DJ Swamp and the Gold Edition; the choice is remembered per browser. In the app, the Theme menu does the same and also installs a pack from a folder or zip (File → Install Theme Pack). A pack changes the material of every surface, including the hardware Room; it never changes what a control does.



~/Library/Application Support/PerfectStudio: takes, episodes, work files, installed theme packs and the server log.| Keys | Action | Keys | Action |
|---|---|---|---|
| Space | Play / stop | Enter | Stop |
| Home | Return to zero | R | Record onto armed tracks |
| Cmd L | Loop on / off | Cmd Shift L | Loop the selection |
| F1–F6 | Deck, Arrange, Board, Rack, Carts, Room | Cmd I | Import audio |
| Cmd Z / Cmd Shift Z | Undo / redo | Cmd Shift N | Add stereo track |
| Cmd A / Cmd Shift A | Select all / all on track | Esc | Deselect |
| Cmd T | Split at playhead | Backspace / Cmd Backspace | Delete / ripple delete |
| Cmd X C V D | Cut, copy, paste, duplicate | Alt ← / → | Nudge |
| Cmd [ / ] | Trim start / end to playhead | Alt ↑ / ↓ | Clip gain ±1 dB |
| M | Mute clips | Cmd Shift [ / ] | Fade in / out |
| Cmd M | Add marker | Cmd ← / → | Previous / next marker |
| Cmd = / − / 0 | Zoom in / out / fit | Z | Zoom to selection |
| Cmd Shift F | All tracks on screen | PageUp / PageDown | Scroll lanes |
| Cmd Shift D / Backspace | Duplicate / delete track | Cmd Shift S | Snap on / off |
| Cmd Shift Home | Playhead to selection | Cmd Shift E | Bounce to WAV |
On Windows and Linux, Ctrl stands in for Cmd. Single-letter keys are ignored while you are typing in a field.
We compared the desk against the manuals and feature lists of REAPER, Adobe Audition, Hindenburg PRO and Audacity. The list below is what a working producer would expect and what The Studio does not have yet, in the order we intend to build it. Nothing here is drawn on the desk until it works.
| Feature | Where it comes from | What it gives you |
|---|---|---|
| Punch-in with pre-roll and a countdown | Audition's punch-and-roll | Fix one line in a read: play into it, drop in, drop out, without redoing the take. |
| Take lanes and comping | REAPER | Every pass kept in lanes under the track; swipe the good pieces into one clip. |
| Automation envelopes | REAPER, Audition | Volume and pan drawn over time, so the bed ducks exactly where the voice comes in. |
| Aux sends and a routing matrix | REAPER | One reverb shared by many voices; sub-mixes; the board's sends switched on. |
| Loudness meter and match | Audition's Match Loudness, Audacity's Loudness Normalization, Hindenburg's Auto Level | LUFS on the master, a target for podcast delivery, one button to level every clip on a track. |
| Noise print reduction | Audacity's Noise Reduction, Audition | Sample a second of room tone and subtract exactly that, instead of a generic curve. |
| Spectral repair | REAPER, Audition | Paint a cough or a phone buzz out of the spectrogram. |
| Voice profiles | Hindenburg's Voice Profiler | Save a guest's chain and level once; apply it to every recording of them. |
| Clipboard / storyboard | Hindenburg | Pull selects into a pane, order the story, then lay it onto the timeline. |
| Chapters and ID3 tags | Hindenburg, Audacity labels | Markers exported as podcast chapters; title, artwork and episode tags on the file. |
| Publish to hosts | Hindenburg | Master and deliver to the podcast host or the station playout in one step. The Room's KUSSR publish is the first of these. |
| Macros and batch processing | Audacity, REAPER's batch converter | Run the same clean-up chain and export over a folder of files. |
| Time-stretch and pitch | REAPER, Audacity | Fit a cue to a gap without changing pitch; tempo-match a bed. |
| Region and marker manager | REAPER | A list of every marker and region with names, colours and lengths; render by region. |
| Track templates and folders | REAPER | A guest track with its chain as a template; folder tracks to group a show's stems. |
| Transcript-driven editing | Hindenburg PRO 2 | Cut the audio by cutting the words. |
| Multi-input recording in the browser | Audition (32 inputs) | Record each armed track from its own input channel, not one shared input. |
| Multi-parameter units and plug-ins | Every desk | Threshold, ratio, attack and release on the compressor; a graphic EQ; third-party plug-ins. |
Sources consulted: the REAPER 7 User Guide (reaper.fm/userguide.php), Adobe's Audition documentation (helpx.adobe.com/audition), Hindenburg PRO reviews and documentation, and the Audacity 3 manual (manual.audacityteam.org).
| Symptom | Cause and fix |
|---|---|
| Nothing plays; status says the engine is not armed | The browser needs a click before audio starts. Click the desk once. |
| RECORD says "Arm a track first" | Press R on a strip or a track head, then RECORD. |
| RECORD says "No input" | Microphone permission was refused. Web: the browser's site settings. App: System Settings → Privacy → Microphone → PerfectStudio. |
| The Room's board meters read zero with the board plugged in | Same permission, for the app. Also check the BOARD picker has the AR16c, not the built-in mic. |
| Imported audio plays at the wrong speed | It should not; imports are resampled to 48 kHz. Report the file type. |
| A rack unit's meter does not move | The unit is off, or the rack is patched across a track that is not playing. Meters show the tail of the chain. |
| The skin looks half-applied | Reload once; the browser cached the previous pack's sheets. The app clears its cache on a theme change. |
| A session is gone after clearing browser data | Sessions live in the browser's private storage. Bounce or EXPORT A COPY to keep a file outside it. |