Media
Videos, images and voice made from your records, cut to each site’s format, and finalized only once every claim reads from a live record.
- System
- Media
- Nouns
- 3
- Verbs
- 6
- Events
- 6
Nouns
| Noun | What it is |
|---|---|
| Video | A Video is a timed composition held as data: a timeline of scenes and spoken lines, drafted from records and rendered per format. |
| File | A File is the stored bytes of an upload or a rendering. |
| Voice | A Voice is a reusable synthetic speaking voice, cloned from a consenting speaker or designed from a description, that speech Files are rendered in. |
Properties
The hub defines each Noun’s core Properties; Media adds the ones a sale needs.
Video
| Property | Type | What it holds | Defined by |
|---|---|---|---|
status | string | One of Draft, Rendered, Final, or Superseded. | The hub |
timeline | json | The ordered scenes on a fixed grid, the only timing truth for picture, voice and captions. | The hub |
brand | brand | The Brand whose voice, palette and type the Video uses. | The hub |
offer | offer | The offer the Video presents, when it presents one. | The hub |
cuts | File[] | One render per site format, such as 9:16 for TikTok and 1:1 for a feed. | Media |
File
| Property | Type | What it holds | Defined by |
|---|---|---|---|
contentType | string | The media type, such as application/. | The hub |
size | integer | The size in bytes. | The hub |
name | string | The file name it was uploaded with. | The hub |
visibility | string | Who may read it: Owner, Customer, or Public. The default is Owner. | The hub |
uploadUrl | url | The signed URL to upload the bytes to, returned by File.create. | The hub |
madeWith | json | The prompt and reference Files it came from, kept with the File. | Media |
Voice
| Property | Type | What it holds | Defined by |
|---|---|---|---|
origin | string | cloned from a real speaker’s recordings, or designed from a description and sounding like no real person. | The hub |
speaker | person | The real person a cloned Voice sounds like. | The hub |
consent | consent | The speaker’s Consent, recorded in that voice, naming the startup and the uses allowed; required for a cloned Voice. | The hub |
scope | string | Who may speak in it: every sibling, one startup, or one customer. | The hub |
samples | file[] | The recordings it was trained from, kept forever. | The hub |
status | string | training until the upstream finishes, ready for speech, retired once its trained copy is deleted. | The hub |
Lifecycle
Every move names the Verb that makes it, or the Event it waits on.
Voice
| State | What it means | Moves to |
|---|---|---|
training (first) | The upstream is training it from the speaker’s recordings. | ready on Voice.trained; retired by Voice.retire |
ready | Speech Files render in it, within its scope. | retired by Voice.retire |
retired | Its trained copy is deleted at the upstream; its record and every File made in it stay. | None: it ends here. |
Verbs
| Verb | What it does | Approval |
|---|---|---|
Video.draft | Writes a Video’s timeline from your records, your Brand and a Template, with a draft mark on every frame. | Runs on its own |
Video.finalize | Lifts a Video’s draft mark once every claim it makes reads from a live record, so its cuts can publish. | Runs on its own |
File.generate | Makes an image, a clip, speech or music from a prompt and your reference Files, and records how it was made. | Runs on its own |
File.edit | Makes a new File from one you have, by instruction, such as upscaling or animating a still; the original stays. | Runs on its own |
Voice.clone | Trains a Voice on a real speaker’s recordings, after the speaker records consent in that same voice. | Runs on its own |
Voice.retire | Deletes a Voice’s trained copy and refuses new speech in it, keeping the record and every File it made. | Runs on its own |
Events
| Event | Emitted by |
|---|---|
Video.drafted | Video.draft |
Video.finalized | Video.finalize |
File.generated | File.generate |
File.edited | File.edit |
Voice.cloned | Voice.clone |
Voice.retired | Voice.retire |
A Trigger can start a Workflow on any of them, and a Watch delivers each to your endpoint, signed (Events and webhooks).
Who operates it
| Part | Media |
|---|---|
| Accountable | Content lead |
| Also calls its Verbs | Paid Media Manager |
| Seat | An agent holds each seat until you seat a person in it. |
| Asks you first | None of its Verbs: each runs within its seat’s Limits |
Integrations
Import and export
| Direction | What | How |
|---|---|---|
| Import | Your product shots and recordings | File.edit works from any File you upload |
| Export | Every cut, at its site’s size | Collection.export of Files |
Example
A walkthrough cut for three sites.
Video.draftwrites a 45-second walkthrough of the rent ledger from the product’s own records.Video.finalizelifts the draft mark once each on-screen number reads from a live record.- Cuts render at 9:16 for TikTok and YouTube Shorts and 1:1 for LinkedIn.