170 lines
4.2 KiB
Markdown
170 lines
4.2 KiB
Markdown
# VideoTools - Professional Video Processing Suite
|
||
|
||
## What is VideoTools?
|
||
|
||
VideoTools is a professional-grade video processing application with a modern GUI. It specializes in creating **DVD-compliant videos** for authoring and distribution.
|
||
|
||
## Key Features
|
||
|
||
### DVD-NTSC & DVD-PAL Output
|
||
- **Professional MPEG-2 encoding** (720×480 @ 29.97fps for NTSC, 720×576 @ 25fps for PAL)
|
||
- **AC-3 Dolby Digital audio** (192 kbps, 48 kHz)
|
||
- **DVDStyler compatible** (no re-encoding warnings)
|
||
- **PS2 compatible** (PS2-safe bitrate limits)
|
||
- **Region-free format** (works worldwide)
|
||
|
||
### Batch Processing
|
||
- Queue multiple videos
|
||
- Pause/resume jobs
|
||
- Real-time progress tracking
|
||
- Job history and persistence
|
||
|
||
### Smart Features
|
||
- Automatic framerate conversion (23.976p, 24p, 30p, 60p, VFR → 29.97fps)
|
||
- Automatic audio resampling (any rate → 48 kHz)
|
||
- Aspect ratio preservation with intelligent handling
|
||
- Comprehensive validation with helpful warnings
|
||
|
||
## Quick Start
|
||
|
||
### Installation (One Command)
|
||
|
||
```bash
|
||
bash install.sh
|
||
```
|
||
|
||
The installer will build, install, and set up everything automatically with a guided wizard!
|
||
|
||
**After installation:**
|
||
```bash
|
||
source ~/.bashrc # (or ~/.zshrc for zsh)
|
||
VideoTools
|
||
```
|
||
|
||
### Alternative: Developer Setup
|
||
|
||
If you already have the repo cloned:
|
||
|
||
```bash
|
||
cd /path/to/VideoTools
|
||
source scripts/alias.sh
|
||
VideoTools
|
||
```
|
||
|
||
For detailed installation options, troubleshooting, and platform-specific notes, see **INSTALLATION.md**.
|
||
|
||
## How to Create a Professional DVD
|
||
|
||
1. **Start VideoTools** → `VideoTools`
|
||
2. **Load a video** → Drag & drop into Convert module
|
||
3. **Select format** → Choose "DVD-NTSC (MPEG-2)" or "DVD-PAL (MPEG-2)"
|
||
4. **Choose aspect** → Select 4:3 or 16:9
|
||
5. **Name output** → Enter filename (without .mpg)
|
||
6. **Queue** → Click "Add to Queue"
|
||
7. **Encode** → Click "View Queue" → "Start Queue"
|
||
8. **Export** → Use the .mpg file in DVDStyler
|
||
|
||
Output is professional quality, ready for:
|
||
- DVDStyler authoring (no re-encoding needed)
|
||
- DVD menu creation
|
||
- Burning to disc
|
||
- PS2 playback
|
||
|
||
## Documentation
|
||
|
||
**Getting Started:**
|
||
- **INSTALLATION.md** - Comprehensive installation guide (read this first!)
|
||
|
||
**For Users:**
|
||
- **BUILD_AND_RUN.md** - How to build and run VideoTools
|
||
- **DVD_USER_GUIDE.md** - Complete guide to DVD encoding
|
||
|
||
**For Developers:**
|
||
- **DVD_IMPLEMENTATION_SUMMARY.md** - Technical specifications
|
||
- **INTEGRATION_GUIDE.md** - System architecture and integration
|
||
- **QUEUE_SYSTEM_GUIDE.md** - Queue system reference
|
||
|
||
## Requirements
|
||
|
||
- **Go 1.21+** (for building)
|
||
- **FFmpeg** (for video encoding)
|
||
- **X11 or Wayland display server** (for GUI)
|
||
|
||
## System Architecture
|
||
|
||
VideoTools has a modular architecture:
|
||
- `internal/convert/` - DVD and video encoding
|
||
- `internal/queue/` - Job queue system
|
||
- `internal/ui/` - User interface components
|
||
- `internal/player/` - Media playback
|
||
- `scripts/` - Build and run automation
|
||
|
||
## Commands
|
||
|
||
### Build & Run
|
||
```bash
|
||
# One-time setup
|
||
source scripts/alias.sh
|
||
|
||
# Run the application
|
||
VideoTools
|
||
|
||
# Force rebuild
|
||
VideoToolsRebuild
|
||
|
||
# Clean build artifacts
|
||
VideoToolsClean
|
||
```
|
||
|
||
### Legacy (Direct commands)
|
||
```bash
|
||
# Build
|
||
go build -o VideoTools .
|
||
|
||
# Run
|
||
./VideoTools
|
||
|
||
# Run with debug logging
|
||
VIDEOTOOLS_DEBUG=1 ./VideoTools
|
||
|
||
# View logs
|
||
go run . logs
|
||
```
|
||
|
||
## Troubleshooting
|
||
|
||
- See **BUILD_AND_RUN.md** for detailed troubleshooting
|
||
- Check **videotools.log** for detailed error messages
|
||
- Use `VIDEOTOOLS_DEBUG=1` for verbose logging
|
||
|
||
## Professional Use Cases
|
||
|
||
- Home video archival to physical media
|
||
- Professional DVD authoring workflows
|
||
- Multi-region video distribution
|
||
- Content preservation on optical media
|
||
- PS2 compatible video creation
|
||
|
||
## Professional Quality Specifications
|
||
|
||
### DVD-NTSC
|
||
- **Resolution:** 720 × 480 pixels
|
||
- **Framerate:** 29.97 fps (NTSC standard)
|
||
- **Video:** MPEG-2 codec, 6000 kbps
|
||
- **Audio:** AC-3 stereo, 192 kbps, 48 kHz
|
||
- **Regions:** USA, Canada, Japan, Australia
|
||
|
||
### DVD-PAL
|
||
- **Resolution:** 720 × 576 pixels
|
||
- **Framerate:** 25.00 fps (PAL standard)
|
||
- **Video:** MPEG-2 codec, 8000 kbps
|
||
- **Audio:** AC-3 stereo, 192 kbps, 48 kHz
|
||
- **Regions:** Europe, Africa, Asia, Australia
|
||
|
||
## Getting Help
|
||
|
||
1. Read **BUILD_AND_RUN.md** for setup issues
|
||
2. Read **DVD_USER_GUIDE.md** for how-to questions
|
||
3. Check **videotools.log** for error details
|
||
4. Review documentation in project root
|