Skip to content
tonythethompson edited this page Jul 28, 2026 · 6 revisions

Trackdub Engineering Wiki

Cross-platform, local-first AI dubbing workstation for Windows, macOS, and Linux.

Status: Pre-alpha · Stack: .NET 10, Avalonia, ONNX Runtime, FFmpeg

What is Trackdub?

Trackdub is a desktop dubbing pipeline: ingest media, transcribe, diarize, translate, synthesize speech, mix, and export. AI runs locally on your hardware.

Core principles:

  • No fake readiness — provider registered, model downloaded, license verified, and stage succeeded are separate states
  • Strict layer boundaries — Domain depends on nothing; UI never owns persistence or inference
  • Manifest-driven models — every shipping model has a verified manifest entry
  • Artifact preservation — skip/failure never silently overwrites usable artifacts

Quick start

git clone --recurse-submodules https://github.com/trackdubllc/Trackdub-gated.git
cd Trackdub-gated
dotnet build Trackdub.slnx -m:1
dotnet run --project src/Trackdub.App.Avalonia -f net10.0   # Linux/macOS
# Windows TFM: -f net10.0-windows10.0.19041.0

See Getting-Started for prerequisites, tests, CLI, and portal notes.

Wiki map

Section Start here
Overview Introduction-to-Trackdub
Architecture Architecture-OverviewLayered-Dependency-Rules
Pipeline Pipeline-Orchestration
Desktop App Desktop-UI-Architecture
AI & Inference Inference-Routing-and-PlanningModel-Manifests-and-Governance
Media & Audio FFmpeg-Integration
Data Local-Project-Persistence
Cloud & SaaS Cloud-API-and-Job-Management
Development CLI-and-Developer-ToolsBenchmarking-Framework

Pipeline at a glance

flowchart LR
    Ingest[Media Ingest] --> Prep[Audio Prep]
    Prep --> Sep[Speech Separation]
    Sep --> VAD[VAD]
    VAD --> Diar[Diarization]
    Diar --> ASR[Transcription]
    ASR --> Trans[Translation]
    Trans --> TTS[TTS]
    TTS --> Mix[Preview Mix]
    Mix --> Export[Export]
Loading

Optional stages (separation, lip sync) depend on project settings and model readiness. Stages are user-triggered from the desktop app, Sdk, or CLI.

Dependency graph (simplified)

App.Avalonia   → Application, Composition, Domain, Licensing, Media.Playback, Sdk
Cli            → Sdk
Sdk            → Application, Composition, Licensing
Application    → Contracts, Domain, Licensing
Infrastructure → Application, Contracts, Domain
Inference.Onnx → Inference, Contracts, Domain
Domain         → (none)

Full rules: Layered-Dependency-Rules.

Key docs

Doc Purpose
AGENTS.md Build/test/run commands
AGENT_CONTEXT.md Product operating contract
AGENTS.md (pipeline/Sdk) Dependency graph and headless commands
docs/ Architecture, decisions, specs

Use the sidebar for full navigation. Pages include prev/next links at the top.

Clone this wiki locally