Fast, safe MiniDV/Hi8 → ProRes transcoding for macOS.
TapeShift is a high‑performance Bash script for DV/MiniDV/Hi8 transcoding on macOS (tested on 15.5). It recursively scans for .dv/.avi and creates ProRes masters and ProRes proxies per source folder (PRORES/, PROXIES/).
- Interactive format prompt (MiniDV, Hi8, PAL) that sets appropriate color metadata.
 - PAL selection will auto‑fallback to 
smpte170mif your FFmpeg build rejectsbt470bg. 
- Parallel encodes with configurable 
--jobsand FFmpeg--threads - Deinterlacing (yadif) and Resolve‑friendly folder structure
 - Safe 
.mov.tmpwrites and guarded rename - Per‑file 
--timeoutand FAT32 duration cap (-t 00:19:45) --retry,--dry-run,--overwrite, graceful Ctrl+C
chmod +x tapeshift.sh
./tapeshift.sh --timeout 3600 --jobs 8 --threads 2
# You’ll be prompted: MiniDV / Hi8 / PAL
# Or skip the prompt:
./tapeshift.sh --color-profile minidv
./tapeshift.sh --color-profile hi8
./tapeshift.sh --color-profile pal- macOS 15.5+
 - FFmpeg (with prores_ks), e.g. 
brew install ffmpeg 
Before:
Footage/Scene1/file1.dv
Footage/Scene2/file2.avi
After:
Footage/Scene1/PRORES/file1.mov
Footage/Scene1/PROXIES/file1_proxy.mov
Footage/Scene2/PRORES/file2.mov
Footage/Scene2/PROXIES/file2_proxy.mov
- TapeShift never overwrites source files.
 - Always test with 
--dry-runfirst to preview actions. - The 
--overwriteflag replaces existing transcodes. - Temporary files are guarded and will only be deleted safely within 
PRORES/orPROXIES/. 
This project is licensed under the MIT License – see the LICENSE file for details.