Voice Configuration
Voice
Represents a voice configuration for TTS generation.Unique identifier for the voice (Fish Audio reference ID)
Human-readable name for the voice (e.g., “Sarah”, “John”)
Public URL to the generated audio file (set after upload to S3)
Metadata Types
AudioMetadata
Stores metadata for each processed file, used for change detection and caching.SHA-256 hash of the file’s text content
ISO 8601 timestamp of when the audio was last generated
Array of voice configurations with generated audio URLs
MetadataFile
Structure of the.audio-metadata.json file that tracks all processed files.
Configuration Types
S3Config
Configuration for S3-compatible storage (AWS S3, Cloudflare R2, MinIO, etc.).S3 bucket name
AWS region (or “auto” for Cloudflare R2)
Custom endpoint URL for R2, MinIO, or other S3-compatible services
S3 access key ID
S3 secret access key
CDN or public URL base for accessing uploaded files
Optional path prefix for organizing files (e.g., “audio/“)
TTSConfig
Configuration for text-to-speech generation.Fish Audio API key for TTS generation
Array of Fish Audio voice reference IDs
Human-readable names corresponding to voice IDs
S3 storage configuration
Path to audio player component (default: “/snippets/audio-transcript.jsx”)
Name of audio player component (default: “AudioTranscript”)
Fish Audio Types
FishAudioRequest
Request parameters for the Fish Audio API.Text content to convert to speech
Fish Audio voice reference ID
Audio format (default: “mp3”)
MP3 bitrate in kbps
Opus bitrate in kbps
Generation latency mode
Enable streaming response
Processing Types
ProcessingResult
Result of processing a single MDX file.Path to the processed file
Whether processing succeeded
Array of voice configurations with audio URLs
Error message if processing failed
Whether the file was skipped (e.g., unchanged content)
Reason for skipping the file
CLI Command Options
GenerateOptions
Command-line options for thegenerate command.
Fish Audio API key (can also use FISH_API_KEY env var)
Comma-separated voice IDs (can also use speaker-config.yaml)
Comma-separated voice names
S3 bucket name (can also use S3_BUCKET env var)
S3 region
Custom S3 endpoint
S3 access key ID
S3 secret access key
Public URL for accessing files
Path prefix for organizing files
Component import path
Component name
Glob pattern for MDX files
Preview changes without making them
Enable verbose logging
CleanupOptions
Command-line options for thecleanup command.
S3 bucket name
S3 region
Custom S3 endpoint
S3 access key ID
S3 secret access key
Public URL for accessing files
Path prefix for organizing files
Component name to remove
Glob pattern for MDX files
Preview changes without making them
Enable verbose logging
