Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion CONTEXT.md
Original file line number Diff line number Diff line change
Expand Up @@ -136,7 +136,7 @@ _Avoid_: Remote button, hotkey, GPI
### Licensing

**Pro**:
The one-time unlock that records every USB Channel and adds naming channels by hand, the Show report, Reaper export, 96 kHz recording and Templates. Mixer Triggers join it only once they are built.
The one-time unlock that adds, on top of Free: names and colors from the Mixer on the Stems, naming channels by hand, the Drive (a second Copy, Repair and Drive only), unlimited Markers, the Show report, Reaper export, 96 kHz recording and Templates (Eric, 2026-10-15, #705). Mixer Triggers join it only once they are built.
_Avoid_: Premium, full version, paid tier

**Trial**:
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,8 +51,8 @@ A Take never stops, and your audio is never held back, because of a trial, a lim

ShowRecorder will be a free download with a **14-day Trial** of everything.

- **Free** records every USB channel to your iPhone, iPad or Mac, with generic names and up to 3 Markers per Take.
- **Pro** is a one-time purchase, shared with your family: names and colors from the mixer, channel names you type, a second copy on an external drive, unlimited Markers, the Show report and Reaper project, 96 kHz, and Templates. $19.99.
- **Free** records every USB Channel to your iPhone, iPad or Mac, with generic names and up to 3 Markers per Take.
- **Pro** is a one-time purchase, shared with your family: names and colors from the mixer, channel names you type, a second copy on an external drive, unlimited Markers, the Show report and Reaper project, 96 kHz, and Templates. $4.99, a launch price. No subscription.

In the TestFlight beta, the Trial and Pro use sandbox purchases, which cost testers nothing.

Expand Down
1 change: 1 addition & 0 deletions docs/adr/0004-one-time-pro-unlock-and-show-safe-limits.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ This replaces "Free = 2 USB Channels" above and in the mixer packs section. A fr
- **Pro or a pack** adds: names and colors from the Mixer, typed names, the Drive (second Copy, Repair, Drive only), unlimited Markers, auto-gain, clip protection, the Show report, Reaper export, 96 kHz and Templates.
- Pack prices change to X Air $7.99, X32/M32 $7.99; DJM stays $6.99. Pro stays $19.99.
- Still judged only when record is pressed and frozen into the Take (`TakeAllowance`); auto-gain, which runs between Takes, is judged when it runs.
- **Launch price ladder (Eric, 2026-10-15/16):** Launch Pro $4.99, packs $2.99, upgrade to Pro $1.99; Step 2 $9.99 / $4.99 / $4.99; Full $19.99 / $7.99 / $11.99. Moved by Eric at about 25 and 50 buyers. Pro went to $4.99 in App Store Connect on 2026-10-16. X Air and X32 packs first (DJM waits for #364); one upgrade product repriced per stage; a second pack is hidden; only a pack the person bought earns the upgrade offer; packs and the upgrade share with family like Pro.

## Consequences

Expand Down
6 changes: 4 additions & 2 deletions docs/app-store/app-store-connect-steps.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,9 +32,11 @@ An agent can create these two through the API once step 1 is Active: say "create
**Pro**

- [ ] Type **Non-Consumable**. Reference Name `Pro`. Product ID `dev.ericdahl.ShowRecorder.pro` (exactly; the app looks for this).
- [x] **Price:** $19.99 (ADR 0004). No planned change: the move to $29.99 is on hold (Eric, 2026-10-11).
- [x] **Price:** $4.99, the launch price (ADR 0004; set 2026-10-16). The app says "Launch price" under Buy Pro. Then two steps, each only after Eric says go (Claude watches sales through the App Store Connect API and asks):
- [ ] At about 25 buyers: **$9.99**.
- [ ] At about 50 buyers: **$19.99**, full price. The "Launch price" line goes when `PriceStage.current` moves past `.launch`.
- [ ] **Family Sharing: On.** This can't be turned off later (ADR 0004 wants it on).
- [ ] **Localization (English U.S.):** Display Name `ShowRecorder Pro` (30 characters max). Description `Every USB Channel, report, Reaper, 96 kHz, Templates` (55 characters max).
- [ ] **Localization (English U.S.):** Display Name `ShowRecorder Pro` (30 characters max). Description `Mixer names, Drive copy, report, Reaper, 96 kHz, more` (55 characters max; Free records every USB Channel now).
- [ ] **Review screenshot:** the paywall (taken for #324).

**14-day Trial**
Expand Down
25 changes: 14 additions & 11 deletions docs/app-store/listing.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# App Store listing (1.1 draft for Eric's review, #411; 1.0 was #64)

Paste into App Store Connect > ShowRecorder > the 1.1 version (and App Information for the name and subtitle). The number after each heading is Apple's character limit; every field here is within it (checked 2026-10-13, with the Apple Watch: subtitle 30, promotional text 170, keywords 100, description 3878 with the auto-gain block and 3634 without, What's New 605).
Paste into App Store Connect > ShowRecorder > the 1.1 version (and App Information for the name and subtitle). The number after each heading is Apple's character limit; every field here is within it (checked 2026-10-13, with the Apple Watch: subtitle 30, promotional text 170, keywords 100, description 3996 with the auto-gain block and 3753 without (recounted 2026-10-16 for "with Pro" under each heading), What's New 615).

Brand names (Behringer, Midas, X Air, XR18, MR18, X32, M32) appear only as compatibility text in the description and What's New. They are not in the name, subtitle or keywords (Guideline 2.3.7).

Expand All @@ -25,7 +25,9 @@ Multitrack recorder for mixers

## Promotional text (170)

Record every channel of your mixer on your iPhone, iPad or Mac. One file per channel, named from the mixer, with a second copy on a USB drive. Try everything for 14 days.
Record every channel of your mixer to your iPhone, iPad or Mac, free. Pro adds names from the mixer, a second copy on a USB drive and more. Try Pro free for 14 days.

Leads with Free (Eric, 2026-10-16). 165 characters. It says "your mixer", not XR18 or X32: brand names stay out of the promotional text (2.3.7, above).

## Keywords (100)

Expand All @@ -41,10 +43,10 @@ EVERY CHANNEL, ITS OWN FILE
One Broadcast WAV per USB channel, at the mixer's 48 kHz or up to 96 kHz on interfaces that offer it. From an 18-channel mixer you get 18 Stems in step with each other; from an X32 or M32, 32.

NAMED FROM THE MIXER
On the mixer's network, ShowRecorder reads your channel names and colors, so channel 3 arrives as "03 Snare.wav", not "USB 03". If you re-patch an X Air or X32's USB outputs, each file is named after what's really routed there. Find Mixers locates the mixer on the network; there is no IP address to type.
With Pro, on the mixer's network, ShowRecorder reads your channel names and colors, so channel 3 arrives as "03 Snare.wav", not "USB 03". If you re-patch an X Air or X32's USB outputs, each file is named after what's really routed there. Find Mixers finds it on the network; no IP address to type.

A SECOND COPY AS YOU RECORD
Add a USB drive and every Take is written to the device and the drive at once. If the drive drops out, the missing part is filled back in from the other copy after the Take.
With Pro, add a USB drive and every Take is written to the device and the drive at once. If the drive drops out, the missing part is filled back in from the other copy after the Take.

NOTHING LOST TO A CRASH
Files are saved every 2 seconds. If the app is closed mid-Take, it finishes that Take the next time it opens. A phone call or another app taking the input leaves silence of the exact length, marked, so every file stays in sync with your video.
Expand All @@ -53,16 +55,16 @@ PRE-ROLL AND MARKERS
A Take starts with the seconds before you pressed record, so the count-in isn't lost. Tap the flag to mark a song or a moment; Markers go into the files and your DAW project.

READY TO MIX
Each Show gets a report (Takes, levels, any gaps) and a Reaper project with every track and Marker in place.
With Pro, each Show gets a report (Takes, levels, any gaps) and a Reaper project with every track and Marker in place.

TEMPLATES FOR EACH VENUE
Save a room's setup (channel names, mixer, Show name and Pre-roll) and start a Show from it in one tap.
With Pro, save a room's setup (channel names, mixer, Show name and Pre-roll) and start a Show from it in one tap.

BUILT FOR THE STAGE
Big level meters with a target band, clip marks you can see across the room, a Sunlight appearance for bright stages and a Dark one for dark rooms. Works with VoiceOver.

AUTO-GAIN
With an X Air or X32 mixer, Auto-gain sets each channel's preamp so it records at a healthy level, and moves the faders, sends and thresholds to match so the mix stays where you set it. One tap puts it all back. Never during a Take.
With Pro and an X Air or X32 mixer, Auto-gain sets each channel's preamp so it records at a healthy level, and moves the faders, sends and thresholds so the mix stays where you set it. One tap puts it all back. Never during a Take.

ON YOUR WRIST
With an Apple Watch, see that you're recording and for how long, drop Markers, and start or stop a Take from the stage. Stop takes a press and hold, so a stray tap can't end a song. Free for everyone.
Expand All @@ -71,8 +73,9 @@ THE SHOW-SAFE PROMISE
A Take never stops, and your audio is never held back, because of a Trial, a limit or a license. Limits are checked only when you press record. Your past Shows are never locked.

FREE, 14-DAY TRIAL AND PRO
ShowRecorder is free to download. Start a 14-day Trial of everything at no cost. After the Trial, Free records 2 USB channels of your choice, with names and colors from the mixer.
Pro is a one-time purchase, shared with your family and across your iPhone, iPad and Mac: every USB channel, typed channel names, the Show report and Reaper project, 96 kHz and Templates. No subscription.
Free records every USB channel to your iPhone, iPad or Mac, with generic file names ("USB 07") and up to 3 Markers per Take.
Pro is a one-time purchase at a launch price of $4.99, shared with your family: names and colors from the mixer on the files, typed names, a second copy on a USB drive, unlimited Markers, the Show report and Reaper project, 96 kHz and Templates. No subscription.
A 14-day Trial of everything in Pro costs nothing. When it ends, every channel still records.

WHAT YOU NEED
- A Behringer X Air XR18 or MR18 for 18 channels with names and colors.
Expand All @@ -91,7 +94,7 @@ ShowRecorder is not affiliated with or endorsed by Behringer, Midas or Music Tri

- Records the Behringer X32 and Midas M32: all 32 USB channels, each file named and colored from the mixer over its network.
- Files are named after what's really routed to each USB channel on X Air and X32 mixers, even after a re-patch.
- Auto-gain sets each channel's preamp on an X Air or X32 and keeps the mix the same, with one-tap Undo.
- With Pro, auto-gain sets each channel's preamp on an X Air or X32 and keeps the mix the same, with one-tap Undo.
- Settings shows your USB drive by its name.
- An Apple Watch app: see the Take and drop Markers from your wrist, start a Take, and stop with a press and hold. Free.
- If the mixer's USB routing changes during a Take, ShowRecorder warns you and marks the moment.
Expand All @@ -110,7 +113,7 @@ First release.

| Product ID | Display name | Description (55) |
|---|---|---|
| `dev.ericdahl.ShowRecorder.pro` | ShowRecorder Pro | Every USB Channel, report, Reaper, 96 kHz, Templates |
| `dev.ericdahl.ShowRecorder.pro` | ShowRecorder Pro | Mixer names, Drive copy, report, Reaper, 96 kHz, more |
| `dev.ericdahl.ShowRecorder.trial` | 14-day Trial | Everything in Pro for 14 days, at no cost |

## Screenshots (to take)
Expand Down
2 changes: 1 addition & 1 deletion website/app/docs/daw/page.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ Each Show folder is named with its date and name, such as `2026-10-12 Sunday Ser
- **One Stem per USB Channel** in each Take folder, named with the two-digit channel number and the channel's name: `03 Snare.wav`. Without the [Mixer Link](/docs/mixer-link), Stems are named by USB Channel number.
- `Take.json` and `Show.json` are ShowRecorder's own notes on the Take and the Show. Leave them in place.

On Free, each Take folder holds the 2 USB Channels you chose. The Show report and the Reaper project are written for Takes recorded with Pro or the 14-day Trial.
On Free, each Take folder holds every USB Channel, with generic names such as "USB 07". The names from the mixer, the Show report and the Reaper project are written for Takes recorded with Pro or the 14-day Trial.

## The Stems

Expand Down
2 changes: 2 additions & 0 deletions website/app/docs/markers-and-pre-roll/page.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@ During a Take, tap the flag next to the Record button. A Marker is placed at tha

Markers are numbered **Marker 1**, **Marker 2** and so on. Each one is saved straight away, so it survives even if the app is closed mid-Take.

On Free, a Take holds up to 3 Markers. [Pro](/docs/pricing) and the 14-day Trial have no limit.

## Rename a Marker

- **During the Take:** tap the list icon at the top of the record screen to open **Markers**, then tap a Marker and type a name, such as the song title.
Expand Down
4 changes: 2 additions & 2 deletions website/app/docs/mixer-link/page.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ export const metadata = pageMetadata({

# Mixer Link and Find Mixers

The Mixer Link reads your channel names and colors from the mixer, so channel 3 arrives as `03 Snare.wav`, not "USB 03". It is separate from the USB audio.
The Mixer Link reads your channel names and colors from the mixer, so the meters show them as you record, and with [Pro](/docs/pricing) channel 3 arrives as `03 Snare.wav`, not "USB 03". It is separate from the USB audio.

## What you need

Expand Down Expand Up @@ -47,6 +47,6 @@ Outside a Take, tapping the chip opens the Mixer Link part of Settings. During a

## Your own names

To name a channel yourself, tap **Names** on the record screen and type a name for any USB Channel. Typed Channel names are part of [Pro](/docs/pricing). On Free, Stems use the names and colors from the mixer.
To name a channel yourself, tap **Names** on the record screen and type a name for any USB Channel. Typed Channel names are part of [Pro](/docs/pricing). On Free, the meters show the mixer's names, and the Stems have generic names, such as "USB 07".

If Find Mixers finds nothing, see [Troubleshooting](/docs/troubleshooting).
31 changes: 21 additions & 10 deletions website/app/docs/pricing/page.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -3,34 +3,44 @@ import { pageMetadata } from "@/lib/metadata";
export const metadata = pageMetadata({
path: "/docs/pricing",
title: "Free, 14-day Trial and Pro - ShowRecorder",
description: "ShowRecorder is free to download with a 14-day Trial of everything. Pro is a one-time $19.99 purchase with Family Sharing. No subscription.",
description: "ShowRecorder is free to download and records every USB Channel. Pro is a one-time $4.99 purchase with Family Sharing and a 14-day Trial. No subscription.",
});

# Free, 14-day Trial and Pro

ShowRecorder is free to download. Start a 14-day Trial of everything at no cost, then keep Free or buy Pro once. No subscription.
ShowRecorder is free to download, and Free records every USB Channel. Pro adds names on the files, a second Copy on a Drive and the tools for after the show. Try it with a 14-day Trial at no cost, then keep Free or buy Pro once. No subscription.

## Free

Free records **2 USB Channels of your choice**, with names and colors from the mixer. Everything not listed under Pro is in Free: Mixer Link and Find Mixers, the Drive Copy and Repair, Pre-roll, Markers, crash safety, the meters, Sunlight and Dark, and VoiceOver.
Free records **every USB Channel**, each as a mono Broadcast WAV Stem, on the Device: your iPhone or iPad. It includes:

On Free, choose the 2 channels in **Settings > Pro**, under **First recorded channel** and **Second recorded channel**. Every channel is still metered.
- Every USB Channel the mixer sends, in step with each other
- 44.1 and 48 kHz recording
- Up to 3 Markers per Take
- Pre-roll, the meters, Sunlight and Dark, and VoiceOver
- Crash recovery: a Take cut off by a crash is finished the next time the app opens
- A warning when the mixer's USB routing changes during a Take
- The Apple Watch remote

On Free, the Stems have generic names, such as "USB 07". With the [Mixer Link](/docs/mixer-link), the meters still show the mixer's channel names and colors as you record; only the file names are generic.

## Pro

Pro is a one-time purchase of $19.99, shared with your family through Family Sharing and across your iPhone and iPad. It adds:
Pro is a one-time purchase, at a launch price of $4.99. It is shared with your family through Family Sharing and across your devices, with no subscription. It adds:

- Every USB Channel, not just 2
- Names and colors from the mixer, on the Stems
- Channel names you type, on the files
- The Show report and Reaper export
- A second Copy on an external Drive, with Repair, and recording to the Drive only
- Unlimited Markers
- The Show report and the Reaper project
- 96 kHz recording
- Templates for each venue

To buy, open **Settings > Pro** and tap **Buy Pro**, or tap **See what Pro adds**.

## The 14-day Trial

The Trial unlocks everything Pro does for 14 days, at no cost. ShowRecorder offers it once the first time you open the app. If you skipped it, you can start it later:
The Trial unlocks everything Pro does for 14 days, at no cost. ShowRecorder offers it the first time you open the app. If you skipped it, you can start it later:

1. Tap the gear to open **Settings**.
2. Under **Pro**, tap **Start 14-day Trial…**.
Expand All @@ -41,8 +51,9 @@ During the Trial, **Settings > Pro** shows how many days are left, and so does a
## When the Trial ends

- ShowRecorder goes back to Free. Nothing is charged.
- New Takes record your 2 chosen USB Channels.
- Your Shows and Takes stay yours, including everything recorded during the Trial.
- New Takes still record every USB Channel, on the Device, with generic names and up to 3 Markers per Take.
- A Take in progress is never stopped.
- Your Shows and Takes stay open, including everything recorded during the Trial.
- Typed Channel names and Templates are kept, ready if you buy Pro.

## The Show-Safe Promise
Expand Down
2 changes: 2 additions & 0 deletions website/app/docs/usb-drive/page.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ export const metadata = pageMetadata({

With a USB drive plugged in, every Take is written twice at the same time: the **Device** Copy on your iPhone or iPad, and the **Drive** Copy on the drive. Neither one is the primary. If one stops, the other keeps recording.

The Drive Copy is part of [Pro](/docs/pricing) and the 14-day Trial. On Free, every Take is recorded on the Device.

## Choose the Drive folder

1. Plug the drive into your hub.
Expand Down
4 changes: 2 additions & 2 deletions website/app/features/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ export default function FeaturesPage() {
<dt>
<Tier tier="pro" />
</dt>
<dd>With Pro, a one-time $19.99, and during the 14-day Trial.</dd>
<dd>With Pro, a one-time $4.99 at its launch price, and during the 14-day Trial.</dd>
</div>
</dl>
<p className="features-links">
Expand Down Expand Up @@ -95,7 +95,7 @@ export default function FeaturesPage() {
<li key={f.title} className="card feature">
<div className="feature-top">
<h3>{f.title}</h3>
<span className="tier tier--beta">Beta</span>
<span className="tier tier--beta">{f.tier === "pro" ? "In beta, Pro" : "Beta"}</span>
</div>
<p>{f.body}</p>
</li>
Expand Down
Loading
Loading