Add VodKeeper UI application with comprehensive video processing workflow
This commit is contained in:
@@ -8,21 +8,62 @@ VodKeeper is designed to streamline video processing workflows by providing a si
|
||||
|
||||
## Features
|
||||
|
||||
- Unified UI for video processing workflows
|
||||
- Integration with existing mux workflows
|
||||
- Streamlined video management
|
||||
- Automated processing pipelines
|
||||
|
||||
## Development
|
||||
|
||||
This project is currently in initial development phase.
|
||||
- **Input Tab**: File selection, encoding settings (codec, preset, CQ), bitrate management, preview encoding
|
||||
- **Render Tab**: Progress monitoring, queue management, live FFmpeg output, pause/stop controls
|
||||
- **QC Tab**: Quality control checks, frame-by-frame comparison, visual verification
|
||||
|
||||
## Setup
|
||||
|
||||
1. Clone the repository
|
||||
2. Install dependencies (TBD)
|
||||
3. Configure video source paths
|
||||
4. Run the application
|
||||
1. **Install Python Dependencies**:
|
||||
```bash
|
||||
pip install -r requirements.txt
|
||||
```
|
||||
|
||||
2. **Install FFmpeg** (if not already installed):
|
||||
- Windows: Download from https://ffmpeg.org/download.html
|
||||
- Or use: `winget install ffmpeg`
|
||||
|
||||
3. **Configure Paths**:
|
||||
- Default input: `R:\mux\input`
|
||||
- Default output: `R:\mux\output`
|
||||
- Default logs: `R:\mux\logs`
|
||||
|
||||
4. **Run the Application**:
|
||||
```bash
|
||||
python run.py
|
||||
# or
|
||||
python vodkeeper.py
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
### Input Tab
|
||||
- Browse and select input directory
|
||||
- Choose encoding settings (h265_nvenc, vp9, av1)
|
||||
- Set preset (p1-p7, default p7)
|
||||
- Configure CQ value (0-51, default 0)
|
||||
- Auto-detect or manually set bitrate cap
|
||||
- Preview encode (1 minute test)
|
||||
|
||||
### Render Tab
|
||||
- Add files to render queue
|
||||
- Monitor progress with live FFmpeg output
|
||||
- Pause/stop rendering operations
|
||||
- View queue status and progress
|
||||
|
||||
### QC Tab
|
||||
- Select source and output files for comparison
|
||||
- Run quality control checks
|
||||
- Compare frames side-by-side
|
||||
- Export QC reports
|
||||
|
||||
## Development
|
||||
|
||||
This project uses:
|
||||
- **Tkinter** for the UI
|
||||
- **ffmpeg-python** for video processing
|
||||
- **OpenCV** for frame analysis
|
||||
- **Pillow** for image handling
|
||||
|
||||
## License
|
||||
|
||||
|
||||
+4
-4
@@ -1,6 +1,6 @@
|
||||
tkinter
|
||||
opencv-python
|
||||
pillow
|
||||
ffmpeg-python
|
||||
psutil
|
||||
opencv-python==4.8.1.78
|
||||
pillow==10.0.1
|
||||
ffmpeg-python==0.2.0
|
||||
psutil==5.9.5
|
||||
threading
|
||||
@@ -0,0 +1,22 @@
|
||||
#!/usr/bin/env python3
|
||||
"""
|
||||
VodKeeper Launcher
|
||||
Simple script to run the VodKeeper application
|
||||
"""
|
||||
|
||||
import sys
|
||||
import os
|
||||
|
||||
# Add current directory to Python path
|
||||
sys.path.insert(0, os.path.dirname(os.path.abspath(__file__)))
|
||||
|
||||
try:
|
||||
from vodkeeper import main
|
||||
print("Starting VodKeeper...")
|
||||
main()
|
||||
except ImportError as e:
|
||||
print(f"Error importing VodKeeper: {e}")
|
||||
print("Make sure all dependencies are installed:")
|
||||
print("pip install -r requirements.txt")
|
||||
except Exception as e:
|
||||
print(f"Error running VodKeeper: {e}")
|
||||
Reference in New Issue
Block a user