Branding flash monetization: full-frame 'made with ytLlive!' every 300s replaces the always-on watermark
This commit is contained in:
@@ -81,20 +81,26 @@ Apply this to every UI decision:
|
||||
- Visual/drag-and-drop scene building over property panels
|
||||
- Every action produces a visible outcome — no dead ends
|
||||
|
||||
## Monetization (design decision — the watermark is the sword)
|
||||
## Monetization (design decision — the branding flash is the sword)
|
||||
|
||||
Free forever: all streams unlimited, no time caps, no subscription, no per-feature paywalls. The
|
||||
**one paid line is a one-time unlock** (delivered via itch.io — they handle hosting, payment, and key
|
||||
delivery; we never own a server or a key shop):
|
||||
|
||||
- **Free:** a small "made with ytLlive" watermark is always on, every frame, every stream — the sword
|
||||
of Damocles. Standard practice; only Streamlabs runs watermark-nagging to a capitalist extreme.
|
||||
- **Paid (one-time):** watermark removed + **Alerts** (Super Chat / membership / subscribe pop-ins).
|
||||
- **Free:** a periodic full-frame branding flash — "made with ytLlive!" rendered big and centered at
|
||||
~25% opacity for about one second (soft 250ms fade in/out), repeated every 300s, on the live output
|
||||
(and on v0.2 local recordings). Implemented as `BrandFlashLayer` in the preview compositor
|
||||
(`MainWindow.xaml` CanvasGrid) + `BrandFlashTimer` in `MainViewModel` — cadence 300s, first flash
|
||||
~5s after go-live, only while live or recording. An always-on watermark can be cropped or covered;
|
||||
an intermittent full-frame flash can't be cropped and is impractical to edit around on a live feed.
|
||||
- **Paid (one-time):** branding flash removed (flips `BrandFlashEnabled` off) + **Alerts**
|
||||
(Super Chat / membership / subscribe pop-ins).
|
||||
|
||||
Deliberately rejected: hard stream-time cutoffs (the worst dead end — a stream dying mid-broadcast
|
||||
reads as broken, and YouTube streams routinely run 2-4 hours), soft-limit nagging, freemium tiers,
|
||||
and donation-only (relies on the kindness of strangers). Resolution/quality ceilings are **deferred** —
|
||||
that decision belongs to the resolution & streaming-constraints conversation, not monetization.
|
||||
Deliberately rejected: always-on watermark (obscurable — replaced by the flash), hard stream-time
|
||||
cutoffs (the worst dead end — a stream dying mid-broadcast reads as broken, and YouTube streams
|
||||
routinely run 2-4 hours), soft-limit nagging, freemium tiers, and donation-only (relies on the
|
||||
kindness of strangers). Resolution/quality ceilings are **deferred** — that decision belongs to the
|
||||
resolution & streaming-constraints conversation, not monetization.
|
||||
|
||||
## Auth gates Go Live, but not exploration
|
||||
|
||||
|
||||
Reference in New Issue
Block a user