🎙️ Audio Narratives

slides-tape v2.1.0 introduces natively integrated audio narrative recording. You can now record your voiceover directly in the browser while previewing your slides, and the engine will automatically mux that audio into your final video export.

1. Recording Live

When you run slides-tape serve, the viewer now includes a Record button.

  1. Start Recording: Click the microphone icon. slides-tape uses the browser’s MediaRecorder API to capture your microphone stream.
  2. Present: Advance your slides naturally. Every time you change a slide, slides-tape records a timestamp log.
  3. Stop Recording: Click the stop button. The engine will save a .wav file and a .narrative.json log mapping your voice to specific slide transitions.

2. Synchronized Export

The true power of audio narratives is Sychronized Export. You no longer need to manually set @wait durations or guess slide timings.

When you run the export or run command, slides-tape detects the narrative logs and:

  • Matches Timings: The video transitions happen exactly when you transitioned during the live recording.
  • Auto-Muxing: The engine uses FFmpeg to mux the recorded audio track into the high-performance terminal/browser video stream.

CLI Flags for Audio

FlagDescription
--narrative-onlyRe-renders the video using existing narrative logs, overwriting the audio track.
--no-narrativeForces a silent export, even if narrative logs are present.

3. How it Works

  1. Phase 1: Capture audio and transition events in the browser.
  2. Phase 2: The deterministic renderer builds the video frames.
  3. Phase 3: FFmpeg combines the frame sequence and the .wav file into a single mp4/webm file.

[!TIP] Use a high-quality microphone and a quiet environment. Since the rendering is deterministic, your audio will perfectly align with the terminal typing and browser animations every single time.