This commit includes three critical bug fixes and Windows build improvements: **Bug Fixes:** 1. **Queue Conversion Progress Tracking** (main.go:1471-1534) - Enhanced executeConvertJob() to parse FPS, speed, and ETA from FFmpeg output - Queue jobs now show detailed progress metrics matching direct conversions - Stats stored in job.Config for display in the conversion stats bar 2. **AMD AMF Hardware Acceleration** (main.go) - Added "amf" to hardware acceleration options - Support for h264_amf, hevc_amf, and av1_amf encoders - Added AMF-specific error detection in FFmpeg output parsing 3. **DVD Format Resolution Forcing** (main.go:1080-1103, 4504-4517) - Removed automatic resolution forcing when DVD format is selected - Removed -target parameter usage which was forcing 720×480/720×576 - Resolution now defaults to "Source" unless explicitly changed - DVD compliance maintained through manual bitrate/GOP/codec parameters **Windows Build Improvements:** - Updated build.bat to enable CGO (required for Fyne/OpenGL) - Added automatic GCC/MinGW-w64 detection and installation - Automated setup via winget for one-command Windows builds - Improved error messages with fallback manual instructions **Documentation:** - Added comprehensive Windows setup guides - Created platform.go for future platform-specific code - Updated .gitignore for Windows build artifacts All changes tested and working. Ready for production use. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
244 lines
4.8 KiB
Markdown
244 lines
4.8 KiB
Markdown
# VideoTools - Quick Start Guide
|
|
|
|
Get VideoTools running in minutes!
|
|
|
|
---
|
|
|
|
## Windows Users
|
|
|
|
### Super Simple Setup (Recommended)
|
|
|
|
1. **Download the repository** or clone it:
|
|
```cmd
|
|
git clone <repository-url>
|
|
cd VideoTools
|
|
```
|
|
|
|
2. **Run the setup script**:
|
|
- Double-click `setup-windows.bat`
|
|
- OR run in PowerShell:
|
|
```powershell
|
|
.\scripts\setup-windows.ps1 -Portable
|
|
```
|
|
|
|
3. **Done!** FFmpeg will be downloaded automatically and VideoTools will be ready to run.
|
|
|
|
4. **Launch VideoTools**:
|
|
- Navigate to `dist/windows/`
|
|
- Double-click `VideoTools.exe`
|
|
|
|
### If You Need to Build
|
|
|
|
If `VideoTools.exe` doesn't exist yet:
|
|
|
|
**Option A - Get Pre-built Binary** (easiest):
|
|
- Check the Releases page for pre-built Windows binaries
|
|
- Download and extract
|
|
- Run `setup-windows.bat`
|
|
|
|
**Option B - Build from Source**:
|
|
1. Install Go 1.21+ from https://go.dev/dl/
|
|
2. Install MinGW-w64 from https://www.mingw-w64.org/
|
|
3. Run:
|
|
```cmd
|
|
set CGO_ENABLED=1
|
|
go build -ldflags="-H windowsgui" -o VideoTools.exe
|
|
```
|
|
4. Run `setup-windows.bat` to get FFmpeg
|
|
|
|
---
|
|
|
|
## Linux Users
|
|
|
|
### Simple Setup
|
|
|
|
1. **Clone the repository**:
|
|
```bash
|
|
git clone <repository-url>
|
|
cd VideoTools
|
|
```
|
|
|
|
2. **Install FFmpeg** (if not already installed):
|
|
```bash
|
|
# Fedora/RHEL
|
|
sudo dnf install ffmpeg
|
|
|
|
# Ubuntu/Debian
|
|
sudo apt install ffmpeg
|
|
|
|
# Arch Linux
|
|
sudo pacman -S ffmpeg
|
|
```
|
|
|
|
3. **Build VideoTools**:
|
|
```bash
|
|
./scripts/build.sh
|
|
```
|
|
|
|
4. **Run**:
|
|
```bash
|
|
./VideoTools
|
|
```
|
|
|
|
### Cross-Compile for Windows from Linux
|
|
|
|
Want to build Windows version on Linux?
|
|
|
|
```bash
|
|
# Install MinGW cross-compiler
|
|
sudo dnf install mingw64-gcc mingw64-winpthreads-static # Fedora/RHEL
|
|
# OR
|
|
sudo apt install gcc-mingw-w64 # Ubuntu/Debian
|
|
|
|
# Build for Windows (will auto-download FFmpeg)
|
|
./scripts/build-windows.sh
|
|
|
|
# Output will be in dist/windows/
|
|
```
|
|
|
|
---
|
|
|
|
## macOS Users
|
|
|
|
### Simple Setup
|
|
|
|
1. **Install Homebrew** (if not installed):
|
|
```bash
|
|
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
|
|
```
|
|
|
|
2. **Install FFmpeg**:
|
|
```bash
|
|
brew install ffmpeg
|
|
```
|
|
|
|
3. **Clone and build**:
|
|
```bash
|
|
git clone <repository-url>
|
|
cd VideoTools
|
|
go build -o VideoTools
|
|
```
|
|
|
|
4. **Run**:
|
|
```bash
|
|
./VideoTools
|
|
```
|
|
|
|
---
|
|
|
|
## Verify Installation
|
|
|
|
After setup, you can verify everything is working:
|
|
|
|
### Check FFmpeg
|
|
|
|
**Windows**:
|
|
```cmd
|
|
ffmpeg -version
|
|
```
|
|
|
|
**Linux/macOS**:
|
|
```bash
|
|
ffmpeg -version
|
|
```
|
|
|
|
### Check VideoTools
|
|
|
|
Enable debug mode to see what's detected:
|
|
|
|
**Windows**:
|
|
```cmd
|
|
VideoTools.exe -debug
|
|
```
|
|
|
|
**Linux/macOS**:
|
|
```bash
|
|
./VideoTools -debug
|
|
```
|
|
|
|
You should see output like:
|
|
```
|
|
[SYS] Platform detected: windows/amd64
|
|
[SYS] FFmpeg path: C:\...\ffmpeg.exe
|
|
[SYS] Hardware encoders: [nvenc]
|
|
```
|
|
|
|
---
|
|
|
|
## What Gets Installed?
|
|
|
|
### Portable Installation (Windows Default)
|
|
```
|
|
VideoTools/
|
|
└── dist/
|
|
└── windows/
|
|
├── VideoTools.exe ← Main application
|
|
├── ffmpeg.exe ← Video processing
|
|
└── ffprobe.exe ← Video analysis
|
|
```
|
|
|
|
All files in one folder - can run from USB stick!
|
|
|
|
### System Installation (Optional)
|
|
- FFmpeg installed to: `C:\Program Files\ffmpeg\bin`
|
|
- Added to Windows PATH
|
|
- VideoTools can run from anywhere
|
|
|
|
### Linux/macOS
|
|
- FFmpeg: System package manager
|
|
- VideoTools: Built in project directory
|
|
- No installation required
|
|
|
|
---
|
|
|
|
## Troubleshooting
|
|
|
|
### Windows: "FFmpeg not found"
|
|
- Run `setup-windows.bat` again
|
|
- Or manually download from: https://github.com/BtbN/FFmpeg-Builds/releases
|
|
- Place `ffmpeg.exe` next to `VideoTools.exe`
|
|
|
|
### Windows: SmartScreen Warning
|
|
- Click "More info" → "Run anyway"
|
|
- This is normal for unsigned applications
|
|
|
|
### Linux: "cannot open display"
|
|
- Make sure you're in a graphical environment (not SSH without X11)
|
|
- Install required packages: `sudo dnf install libX11-devel libXrandr-devel libXcursor-devel libXinerama-devel libXi-devel mesa-libGL-devel`
|
|
|
|
### macOS: "Application is damaged"
|
|
- Run: `xattr -cr VideoTools`
|
|
- This removes quarantine attribute
|
|
|
|
### Build Errors
|
|
- Make sure Go 1.21+ is installed: `go version`
|
|
- Make sure CGO is enabled: `export CGO_ENABLED=1`
|
|
- On Windows: Make sure MinGW is in PATH
|
|
|
|
---
|
|
|
|
## Next Steps
|
|
|
|
Once VideoTools is running:
|
|
|
|
1. **Load a video**: Drag and drop any video file
|
|
2. **Choose a module**:
|
|
- **Convert**: Change format, codec, resolution
|
|
- **Compare**: Side-by-side comparison
|
|
- **Inspect**: View video properties
|
|
3. **Start processing**: Click "Convert Now" or "Add to Queue"
|
|
|
|
See the full README.md for detailed features and documentation.
|
|
|
|
---
|
|
|
|
## Getting Help
|
|
|
|
- **Issues**: Report at <repository-url>/issues
|
|
- **Debug Mode**: Run with `-debug` flag for detailed logs
|
|
- **Documentation**: See `docs/` folder for guides
|
|
|
|
---
|
|
|
|
**Enjoy VideoTools!** 🎬
|