automation.engineer

Redditology / Assets / System 02 of 03

2023Recorded work

Creator · experimental side project

Reusable generation and linked media assets

Create the voiceover and visual for each part of a discussion, then arrange the clips in the right order.

Noah’s contribution
Noah configured reusable generation scenarios, template mappings, replacement tables and relationship-based ordering.
Historical stage
Historical generated assets and architecture walkthroughs; format and concurrency changes remained iterative.
Part of the business
Redditology overview ↗
Tools across the recorded versions
  • Make
  • Airtable
  • Google Slides
  • Google Sheets
  • Play.ht
  • CloudConvert
  • Transloadit
Inside this system
  1. Workflow
  2. Key records
  3. Reuse the work that repeats
  4. Templates change with the level of the discussion
  5. Order is a data relationship
  6. Concurrency remained a design question
  7. Other systems in this business

The workflow

The handoffs
inside the work.

Follow the main path and its branches. Select a step for context; the account below explains what was built, tested or planned.

  • Selected discussion records
    Start with source text and the post/comment/immediate-parent relationships.
  • Spoken replacement table
    Maintain recognized terms and the equivalents used for narration.
  • Voice and avatar state
    Keep configured identities, chosen voice and last-used rotation state.
  • Prepare narration text
    Apply the reusable text-replacement stage to the selected material.
  • Reusable audio generation
    Generate narration with the selected or supplied voice.
  • Discussion-level slide generation
    Choose the post/comment/reply template and fill text and avatar placeholders.
  • Convert slide to graphic
    Export the slide and convert the result into its image resource.
  • Record the voice’s latest use
    Update the last-used field so subsequent selections rotate through the configured voices.
  • Combine narration and graphic
    Use the paired resources to produce the short clip.
  • Linked asset records
    Retain generated files, voice/avatar and source/parent IDs in Airtable.
  • Traverse relationships and assign order
    Follow post-to-comment-to-reply links so each clip receives an assembly position.
  • Track accumulated clip duration
    Sum clip lengths as an input to how much material is added.
  • Ordered assembly resources
    Pass ordered clips and duration context into the later assembly step.

Key records

The information
that carries forward.

How the information connects
RecordInformationPurpose
AssetPost ID, comment ID, parent ID, resource type and generated filesKeep the components of one discussion together.
Replacement tableRecognized terms and spoken replacementsMake abbreviations and other text more suitable for narration.
Voice/avatar recordSelected identity, last-used state and voice settingsVary speakers while retaining continuity within a reply chain.
Assembly positionOrdered asset referencesArrange the original post and nested comments in a readable sequence.

Inside the system / 01

Reuse the work that repeats

Posts, comments and replies all needed the same core work: clean the text, generate audio, build a graphic and combine them into a short clip. Noah made those recurring steps reusable across the production process.

A Google Sheets replacement table supplied spoken equivalents for abbreviations and other terms. A voice could be passed explicitly for a stage; otherwise the recorded selection logic chose from the configured voice records. Last-used fields rotated voices and avatars, reducing adjacent reuse.

Inside the system / 02

Templates change with the level of the discussion

A post, first comment and nested reply used different slide templates. Replacement tags carried source text and display values into each layout. Image placeholders identified where an avatar belonged. The chosen voice and avatar were stored against the asset so a returning speaker could remain consistent.

One recorded conversion path exported the generated slide as a PDF and used CloudConvert to produce the graphic. Audio and graphic references then fed Transloadit to produce a clip. Those resource references accumulated in Airtable alongside the IDs connecting each asset to the discussion.

Inside the system / 03

Order is a data relationship

The assembly process began with the post, found comments with that post as their parent, then followed comment IDs into the reply levels. Assigning positions during this traversal allowed the clips to be concatenated in discussion order. A completed collection of clips was insufficient if those clips appeared in the wrong sequence.

Audio duration supplied another production input. The system summed clip lengths to guide when to stop adding material. Historical thresholds and delays changed during development; their presence does not establish consistent finished duration or a production throughput figure.

Inside the system / 04

Concurrency remained a design question

A later configuration session described shared mobile and desktop triggers and the need to separate variants. It also introduced a last-used row mechanism for the text-processing tables. Selecting the oldest row and updating its timestamp was intended to reduce interference between runs.

The recording proposed trying multiple items together. It did not establish that this mechanism safely isolated every concurrent run. The useful implementation detail is the explicit management of shared state, with the limits of the recorded test preserved.

Within Redditology

Other parts
of the operation.