Created setup-realesrgan-linux.sh for easy one-command installation:
- Downloads Real-ESRGAN ncnn Vulkan binary from GitHub releases
- Installs to ~/.local/bin/realesrgan-ncnn-vulkan
- Installs all AI models to ~/.local/share/realesrgan/models/
- Sets proper permissions
- Provides PATH setup instructions
Installation:
./scripts/setup-realesrgan-linux.sh
Models included (45MB):
- realesr-animevideov3 (x2, x3, x4) - Anime/illustration upscaling
- realesrgan-x4plus - General photo/video upscaling
- realesrgan-x4plus-anime - Anime-specific upscaling
Tested and working on Fedora 43. Makes AI upscaling fully automated
for Linux users - no manual downloads or configuration needed.
Next step: Add in-app "Install AI Upscaling" button to VideoTools UI
for even easier setup without using terminal.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Documents the complete snippet system redesign with dual output modes:
- "Snippet to Default Format": Stream copy mode for bit-perfect source preservation
- "Snippet to Output Format": Conversion preview using actual settings
Updates ai-speak.md with comprehensive snippet testing requirements and Jake's AI communication. Updates DONE.md with detailed feature breakdown, technical improvements, and bug fixes. Includes testing checklist for both snippet modes and batch generation.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Enhances screenshot module with comprehensive technical metadata display including audio bitrate, adds 8px padding between thumbnails for professional contact sheets. Implements new Player module for video playback access. Adds complete Filters and Upscale modules with traditional FFmpeg scaling methods (Lanczos, Bicubic, Spline, Bilinear) and resolution presets (720p-8K). Introduces configurable snippet length (5-60s, default 20s) with batch generation capability for all loaded videos. Fixes snippet duration precision by re-encoding instead of stream copy to ensure frame-accurate cutting at configured length.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
🔧 File Detection
- Replaced nullglob with explicit file scanning
- Added more video formats (flv, webm, m4v, 3gp, mpg, mpeg)
- Better error reporting showing supported formats
⚡ Hardware Detection
- Added lshw support for Linux hardware detection
- Conditional Windows commands - only run wmic on Windows
- Improved GPU detection for Linux systems
⏱️ Timeout Handling
- Cross-platform timeout support:
- Linux: timeout
- macOS: gtimeout
- Windows: Background process with manual kill
📁 Path Handling
- Robust script directory detection for different shells
- Absolute module sourcing using SCRIPT_DIR
🖥️ Drag & Drop
- Better argument handling for Wayland desktop environments
- Comprehensive file extension support
Now works on:
- ✅ Windows x64 (Git Bash, WSL)
- ✅ Linux (Wayland, X11)
- ✅ macOS (Terminal)
Check if MSYS2 is already present by looking for the bash executable,
even if winget reports it's already installed. This allows the script
to continue with GCC installation instead of failing.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Replaced all emoji characters with standard ASCII status prefixes
to prevent encoding issues on Windows systems:
- ✓/❌ → [OK]/[ERROR]
- ⚠️ → [WARN]
- 📦/🔨/🧹/⬇️/📥 → [INFO]
This ensures the script works correctly on all Windows configurations
regardless of console encoding settings.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Batch files interpret unescaped parentheses as block delimiters,
causing "was unexpected at this time" errors and improper branch
execution. All parentheses in echo statements are now escaped with ^.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>