A powerful, AI-enhanced video encoding application with intelligent system optimization
Explore the docs ยป
Report Bug
ยท
Request Feature
Table of Contents
HoffUI FFMPEG Encoder is a sophisticated, user-friendly video encoding application that combines the power of FFmpeg with intelligent AI analysis and automatic system optimization. Designed for both beginners and professionals, it provides an intuitive GUI interface while leveraging advanced algorithms to deliver optimal encoding results.
๐ฏ AI-Powered Analysis - Uses OpenAI models to analyze video content and recommend optimal encoding settings ๐ง Smart System Detection - Automatically detects and optimizes for your hardware capabilities ๐จ Modern GUI - Beautiful, responsive interface with tabbed settings and real-time monitoring โก Hardware Acceleration - Supports CUDA, VAAPI, QSV, and other hardware acceleration methods ๐ Real-Time Progress - Live encoding progress with detailed system information ๐ฌ Batch Processing - Encode multiple files or entire folders with drag-and-drop support ๐ Thread Management - Intelligent multi-threading with automatic optimization ๐ Format Support - Handles 14+ video formats including MP4, AVI, MKV, MOV, and more
To get HoffUI Encoder up and running on your system, follow these steps:
Required Software:
- Python 3.8+ - The application runtime
- FFmpeg - Video encoding engine
- Ubuntu/Debian:
sudo apt install ffmpeg - Windows: Download from FFmpeg Official Site
- macOS:
brew install ffmpeg
- Ubuntu/Debian:
Optional:
- OpenAI API Key - For AI-powered encoding optimization
- CUDA-compatible GPU - For hardware acceleration (NVIDIA)
# Clone the repository
git clone https://github.com/BradHeff/HoffUI_Encoder.git
cd HoffUI_Encoder
# Create virtual environment (recommended)
python3 -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt
# Run the application
python3 usr/lib/hoffui_encoder/main.py# Build and install package
cd usr/lib/hoffui_encoder
chmod +x build-apt
./build-apt
# Install the generated .deb package
sudo dpkg -i ../../hoffui_encoder_*.deb
sudo apt-get install -f # Fix dependencies if needed
# Run from anywhere
hoffui_encoderHoffUI Encoder provides multiple ways to encode your videos:
- Launch the application
- Select input: Click "Select File" or "Select Folder" (or drag & drop)
- Choose output directory: Click "Browse" to set destination
- Configure settings: Adjust codec, quality, and resolution in the tabs
- Start encoding: Click "Start Encoding"
Main Tabs:
- ๐ฅ Video Settings: Codec, quality (CRF), preset, resolution
- ๐ Audio Settings: Codec, bitrate, sample rate
- โ๏ธ Advanced: Custom FFmpeg parameters, filters
- ๐ฅ๏ธ System: Real-time hardware monitoring and optimization
- ๐ค AI Analysis: Enable intelligent content analysis (requires API key)
- Set OpenAI API Key in settings
- Enable AI Analysis checkbox
- Select videos - AI analyzes content complexity, motion, and details
- Automatic optimization - AI recommends optimal CRF and preset values
- Start encoding with AI-optimized settings
- Folder Selection: Recursively finds all supported video files
- Maintains Structure: Preserves folder hierarchy in output
- Progress Tracking: Individual file progress with overall completion
- Error Handling: Automatic fallback for problematic files
- 14+ Supported Formats: MP4, AVI, MKV, MOV, WMV, FLV, WebM, M4V, 3GP, MPG, MPEG, TS, VOB, OGV
- Multiple Codecs: H.264, H.265, VP9, VP8, AV1 support
- Quality Control: CRF-based quality settings (0-51 range)
- Resolution Scaling: Original, 4K, 1080p, 720p, 480p, 360p presets
- Custom Presets: Ultrafast to Veryslow encoding presets
- Audio Codecs: AAC, MP3, Opus, Vorbis, AC3
- Bitrate Control: Configurable audio bitrate (64k-320k)
- Sample Rate: Automatic detection and custom settings
- Audio Passthrough: Preserve original audio when desired
- Hardware Acceleration:
- CUDA (NVIDIA GPUs)
- VAAPI (Intel/AMD on Linux)
- QSV (Intel Quick Sync)
- OpenCL, Vulkan, DRM support
- Intelligent Threading: Auto-detects optimal thread count (4-32 threads)
- System Detection: Real-time CPU, RAM, GPU monitoring
- Dynamic Optimization: Adjusts settings based on system load
- Content Analysis: Analyzes video complexity, motion, grain, details
- Smart Recommendations: AI suggests optimal CRF and preset values
- Quality Prediction: Estimates output quality vs file size
- Scene Detection: Identifies scene changes for optimal encoding
- Batch Intelligence: AI analyzes each file individually for best results
- Modern Interface: Clean, responsive ttkbootstrap-based GUI
- Drag & Drop: Intuitive file and folder selection
- Real-Time Progress: Live encoding progress with ETA
- System Monitoring: Live CPU, RAM, temperature displays during encoding
- Toast Notifications: Non-intrusive status updates
- Error Handling: Graceful failure recovery with detailed logging
- Custom FFmpeg Args: Direct FFmpeg parameter control
- Fallback System: Automatic retry with conservative settings
- Directory Structure: Maintains folder hierarchy in output
- Concurrent Processing: Parallel file analysis and encoding
- Debug Mode: Detailed logging for troubleshooting
- Profile Management: Save/load encoding configurations
- Resource usage analytics: Opens window to monitor resource usage during encoding
-
Advanced AI Models
- Local AI inference (no API key required)
- Custom ML models for specific content types
- Real-time quality prediction
- Automatic scene-based encoding
-
Performance Improvements
- Multi-GPU encoding support
- Distributed encoding across network nodes
- Advanced memory management
- GPU memory optimization
-
Enhanced Interface
- Dark/Light theme toggle
- Customizable workspace layouts
- Advanced progress visualization
- Real-time preview window
-
Workflow Improvements
- Encoding queue management
- Scheduled encoding tasks
- Encoding templates/profiles
- Batch configuration wizard
-
Format & Codec Expansion
- AV1 hardware acceleration
- HDR10/Dolby Vision support
- Advanced subtitle handling
- Multi-track audio processing
-
Integration Features
- Cloud storage integration (AWS S3, Google Drive)
- Docker containerization
- REST API for automation
- Command-line interface (CLI)
-
Configuration Management
- Import/Export settings
- Preset sharing community
- Auto-update system
- Backup/restore configurations
-
Monitoring & Analytics
- Encoding history tracking
- Performance benchmarking
- Quality metrics dashboard
- โ Resource usage analytics
- โ FFmpeg parameter optimization
- โ Hardware acceleration fixes
- โ System detection improvements
- โ AI analysis error handling
- ๐ Memory leak prevention
- ๐ Cross-platform compatibility testing
- ๐ Comprehensive error logging
- ๐ Performance profiling tools
Vote on features at our GitHub Discussions
- Web-based remote interface
- Mobile companion app
- Video comparison tools
- Automatic quality assessment
- Integration with media servers (Plex, Jellyfin)
See the open issues for a full list of proposed features and known issues.
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
- ๐ Report Bugs - Help us identify and fix issues
- ๐ก Feature Requests - Suggest new functionality
- ๐ Documentation - Improve guides and examples
- ๐ง Code Contributions - Add features or fix bugs
- ๐งช Testing - Help test on different systems
- ๐ Translations - Make the app accessible worldwide
# Fork and clone your fork
git clone https://github.com/YOUR_USERNAME/HoffUI_Encoder.git
cd HoffUI_Encoder
# Create development environment
python3 -m venv .venv
source .venv/bin/activate
# Install development dependencies
pip install -r requirements.txt
pip install -r requirements-dev.txt # If available
# Create feature branch
git checkout -b feature/AmazingFeature
# Make changes and test
python3 usr/lib/hoffui_encoder/main.py
# Commit and push
git commit -m 'Add some AmazingFeature'
git push origin feature/AmazingFeature- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Test your changes thoroughly
- Update documentation if needed
- Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Distributed under the GNU General Public License. See LICENSE for more information.
Brad Heffernan - Lead Developer
- ๐ฆ X: @n3xtg3ngam3r13
- ๐ฎ Twitch: nextgengamer13
- ๐ฅ Kick: nextgengamer13
- ๐บ YouTube: @nextgengamer13
- ๐ง Email: [email protected]
- ๐ผ LinkedIn: brad-heffernan83
Project Links:
- ๐ GitHub: https://github.com/BradHeff/HoffUI_Encoder
- ๐ Issues: Report a Bug
- ๐ฌ Discussions: Feature Requests
Special thanks to the amazing open source community and these fantastic projects:
- FFmpeg - The multimedia framework that powers our encoding
- OpenAI - AI models for intelligent video analysis
- ttkbootstrap - Modern, beautiful GUI toolkit
- Python - The language that makes it all possible
- Best-README-Template - This README template
- psutil - System and process monitoring
- Pillow - Image processing for GUI elements
- pathlib - Modern path handling


