Skip to content

Latest commit

 

History

History
143 lines (95 loc) · 3.5 KB

File metadata and controls

143 lines (95 loc) · 3.5 KB

Demo Video Creation - Installation Guide

This guide explains how to install and use VHS for creating demo videos.

Quick Start

1. Install Demo Dependencies

Run the installation script to install VHS and its dependencies:

# macOS
bash scripts/install-demo-dependencies-macos.sh

This script will:

  • ✅ Install VHS (terminal recorder)
  • ✅ Install ttyd (required by VHS)
  • ✅ Check/install ffmpeg
  • ✅ Fix common libvpx/ffmpeg dependency issues
  • ✅ Verify all tools are working

2. Create a Demo Video

# Activate virtual environment
source .venv/bin/activate

# Run VHS with a tape file
vhs docs/demos/tapes/get_full_metadata.tape

This will generate:

  • get_full_metadata_demo.gif - Animated GIF

Generated files and Git

  • docs/demos/output/ — GIFs/MP4s from tapes under docs/demos/tapes/ are not committed (gitignored). Tracked sources are tapes and sample.mp3.
  • content/articles/<article>/output/ — Outputs from article demo pipelines (VHS, ffmpeg, concat intermediates) are not committed. Regenerate locally after cloning; version control holds tapes, scripts, and READMEs for each article.
  • Per-article demo audio (whatever a given article’s tapes/scripts need) may live under content/articles/<article>/samples/.gitignore whitelists only sample.mp3, sample.flac, and sample.wav there (add the files you use). That is not a global “official” sample set; each article owns its folder. docs/demos/sample.mp3 stays the shared asset for docs/demos/tapes/. Copied or generated files (e.g. demo_read_*.mp3) stay local-only at the article root or under output/.

Troubleshooting

libvpx/ffmpeg Error

If you see an error like:

dyld: Library not loaded: /usr/local/opt/libvpx/lib/libvpx.11.dylib

Fix:

# Reinstall libvpx and ffmpeg
brew reinstall libvpx
brew reinstall ffmpeg

# Or run the installation script which handles this automatically
bash scripts/install-demo-dependencies-macos.sh

ttyd Connection Refused

If you see:

could not open ttyd: navigation failed: net::ERR_CONNECTION_REFUSED

Fix:

# Install ttyd
brew install ttyd

# Or run the installation script
bash scripts/install-demo-dependencies-macos.sh

VHS Not Found

If you see:

vhs: command not found

Fix:

# Install VHS
brew tap charmbracelet/tap
brew install charmbracelet/tap/vhs

# Or run the installation script
bash scripts/install-demo-dependencies-macos.sh

Available Tape Files

The repository includes pre-made tape files in the root directory:

  1. audiometa_demo.tape - Interactive Python REPL demo
  2. audiometa_demo_script.tape - Script execution demo

Creating New Tape Files

See VHS_DEMO_README.md for detailed instructions on creating custom tape files.

Verifying Installation

After running the installation script, verify everything works:

# Check VHS version
vhs --version

# Check ttyd is installed
ttyd --version

# Check ffmpeg works
ffmpeg -version

# Test VHS (quick test)
echo "Output test.gif
Type 'echo Hello, World!'" | vhs /dev/stdin

Next Steps

  1. ✅ Install dependencies (done with installation script)
  2. ✅ Verify installation (run tests above)
  3. Create demo videos with existing tape files
  4. Customize tape files for your needs

Links