Files
narratio/docs/internal/stage-transcribe.md

1014 B

Stage: transcribe

Purpose

Generate raw per-speaker transcripts from prepared audio using WhisperX.

Inputs

  • audio/*.flac from prepare

Outputs

  • transcripts/raw/<speaker>.json

Key Behavior

  • discovers prepared audio from manifest inputs or canonical audio directory.
  • derives speaker ID from .flac basename.
  • dispatches WhisperX requests through a bounded worker pool.
  • validates each output as JSON.
  • writes run-local outputs then materializes canonical transcript outputs.

Invariants

  • speaker basenames must be unique.
  • output path returned by adapter must match requested output path.
  • each successful output is validated before stage success.
  • WhisperX owns HTTP, retry, timeout, and cancellation semantics.
  • Configuration owns concurrency and other operator-selected values.
  • Implementation and tests: internal/stage/transcribe.go, internal/stage/transcribe_test.go