-
Notifications
You must be signed in to change notification settings - Fork 0
Getting Started
This guide walks you through installing and setting up the DDD Capture Toolkit.
Before you begin, ensure you have:
- Conda - Miniconda or Anaconda package manager
- Git - For cloning and managing submodules
- Domesday Duplicator hardware - For RF capture
- Clockgen Lite mod - Recommended for synchronised audio capture
- Linux - Primary supported platform (macOS and Windows via WSL also work)
Clone the repository with all submodules:
git clone --recurse-submodules https://github.com/yourname/ddd-capture-toolkit.git
cd ddd-capture-toolkitIf you've already cloned without submodules:
git submodule update --init --recursiveThe toolkit provides two installation modes:
./setup.sh- Uses pre-compiled conda packages
- Approximately 5 minute setup
- Good performance for most users
./setup.sh --performance- Compiles from source with CPU-specific optimisations
- 30-60 minute setup time
- 10-30% faster processing
- Recommended for production archival work
# Specify a particular vhs-decode version
./setup.sh --performance --vhs-decode-version 0.3.8.1
# Use the latest bleeding-edge version
./setup.sh --performance --vhs-decode-version latest
# Uninstall the toolkit
./setup.sh --uninstall
# Clean reinstall
./clean-setup.sh && ./setup.shconda activate ddd-capture-toolkit
python3 ddd_main_menu.pyOr use the convenience script:
./start.shBefore you can process files, tell the toolkit where your capture files are located:
- Launch the main menu:
python3 ddd_main_menu.py - Select Menu Option 4 - Configuration
- Select Manage Processing Locations
- Add your capture directory paths
You can add multiple locations (e.g., different drives or network shares).
Verify all dependencies are correctly installed:
- From the main menu, select System
- Select Check Dependencies
This will verify that vhs-decode, tbc-video-export, FFmpeg, and other required tools are available.
After setup, your toolkit directory will contain:
ddd-capture-toolkit/
├── config/ # Configuration files
│ ├── config.json # Main configuration
│ ├── processing_locations.json # Your capture directories
│ ├── job_queue.json # Persistent job queue
│ └── project_flags.json # Per-project flag settings
├── external/ # Git submodules
│ ├── vhs-decode/ # VHS RF decoder
│ ├── ld-decode/ # LD-decode tools
│ ├── tbc-video-export/ # TBC to video converter
│ └── DomesdayDuplicator/ # DdD software
├── tools/ # Additional tools
│ ├── audio-sync/ # Audio alignment scripts
│ └── timecode-generator/ # Test pattern generation
├── logs/ # Log files
└── *.py # Main Python scripts
The toolkit uses a consistent naming convention. A project named MyTape will produce:
| Stage | File | Description |
|---|---|---|
| Capture | MyTape.lds |
Raw RF capture |
| Capture | MyTape.flac |
Captured audio |
| Capture | MyTape.json |
Capture metadata |
| Decode | MyTape.tbc |
Time Base Corrected video |
| Decode | MyTape.tbc.json |
TBC metadata (different from capture .json) |
| Compress | MyTape.tbc.lz4 |
Compressed TBC |
| Export | MyTape_ffv1.mkv |
Lossless FFV1 video |
| Align | MyTape_aligned.flac |
Synchronised audio |
| Final | MyTape_final.mkv |
Final muxed output |
PAL and NTSC are automatically detected from the capture metadata JSON file. You don't need to manually specify the video standard - the toolkit reads it from the capture and applies the correct settings automatically.
- Workflow Control Centre - Learn how to use the main processing interface
- Project Flags - Configure per-project options
- Segment Mode - Test with short segments before full processing
- Project Flags
- Segment Mode
- Audio Synchronisation
- VHS Timecode Calibration
- Compress Validation
- Checksums and Verification
Workflow Commands:
-
1D- Decode project 1 -
1M- Compress project 1 -
1E- Export project 1 -
1A- Align audio -
1F- Final mux -
1X- Project settings -
1mv- Validate compressed master (Tier 3) -
hash 1- Hash files lacking a recorded hash -
check 1- Re-hash and compare to log
Key Features:
- PAL/NTSC auto-detect
- Reverse field order (automatic)
- Segment testing mode
- Three-tier compress validation
- Automatic checksums + per-project validation log