Skip to content

Install ​

Runtime Requirements ​

vidtrace orchestrates local media tools. Install these before running extraction:

  • ffmpeg
  • ffprobe
  • tesseract
  • whisper

Run vidtrace doctor after installation. It checks binaries, Tesseract language data, and cached Whisper models.

Homebrew ​

The Homebrew cask is published from tagged releases:

bash
brew tap abdul-hamid-achik/tap
brew install --cask abdul-hamid-achik/tap/vidtrace
vidtrace version
vidtrace doctor

Upgrade to the latest published cask with:

bash
brew update
brew upgrade --cask abdul-hamid-achik/tap/vidtrace

vidtrace is not signed with an Apple Developer certificate yet. If macOS blocks the first run, clear quarantine on the installed binary:

bash
xattr -dr com.apple.quarantine /opt/homebrew/Caskroom/vidtrace/*/vidtrace

Install common runtime dependencies on macOS:

bash
brew install ffmpeg tesseract
pipx install openai-whisper

Whisper downloads its model on first use. vidtrace defaults to the small model.

Linux packages ​

Tagged releases publish .deb and .rpm packages (amd64 and arm64) as GitHub release assets. Download the one for your distribution and architecture, then install it:

bash
# Debian / Ubuntu
sudo dpkg -i vidtrace_<version>_linux_amd64.deb

# Fedora / RHEL
sudo rpm -i vidtrace_<version>_linux_amd64.rpm

The package installs vidtrace to /usr/bin. It does not pull the media tools as hard dependencies (their package names vary and Whisper is installed via pip), so install them separately and confirm with vidtrace doctor:

bash
# Debian / Ubuntu
sudo apt-get install ffmpeg tesseract-ocr
pipx install openai-whisper

A .tar.gz of just the binary is also attached to every release for manual installation.

Source Build ​

Development tool versions are pinned in .tool-versions.

bash
git clone https://github.com/abdul-hamid-achik/vidtrace.git
cd vidtrace
task build
bin/vidtrace doctor

Required development tools:

  • Go 1.26.4
  • Task 3.51.1
  • golangci-lint 2.12.2
  • GoReleaser 2.16.0
  • glyphrun v0.1.0-e224a88-dev or newer for E2E specs

Verify ​

bash
vidtrace version
vidtrace doctor
vidtrace docs agent

OCR language data ​

vidtrace extract defaults to English (--ocr-lang eng). To OCR other languages, install the matching Tesseract language data and pass them with +, for example --ocr-lang eng+spa. Extraction fails fast and names any missing packs before doing work, so install them first:

bash
# macOS (Homebrew bundles many languages with tesseract; tesseract-lang adds the rest)
brew install tesseract-lang

# Debian/Ubuntu (one package per language, e.g. Spanish)
sudo apt-get install tesseract-ocr-spa

List what is installed with tesseract --list-langs, or run vidtrace doctor, which reports the available Tesseract languages.

Local-first. MIT licensed.