Console Interface - Musfiq0/enhanced-screens-comparison GitHub Wiki
⌨️ Console Interface (Interactive CLI)
The Console Interface provides an interactive, user-friendly command-line experience with guided prompts and step-by-step configuration. Perfect for users who prefer the terminal but want assistance through the comparison process.
🚀 Console Interface Overview
The Console Interface (comparev2.py
) offers:
- Interactive prompts with guided setup
- Step-by-step configuration for all options
- Full feature access through menu-driven interface
- Beginner-friendly with helpful explanations
- Same powerful backend as GUI and Advanced CLI
🚀 Launching the Console
Quick Access Methods
# Option 1: Use the launcher (Recommended)
START_HERE.bat
# Choose: "2. ⌨️ Run Console Version"
# Option 2: Direct launch (Interactive mode)
python comparev2.py
# Option 3: Information commands
python comparev2.py --help # Show usage information
python comparev2.py --demo # Show detected backends
python comparev2.py --version # Show version information
🎯 Console Interface Features
Interactive Setup Process
The console guides you through:
- Backend Detection - Automatically detects VapourSynth and other processing libraries
- Mode Selection - Choose between Multiple Sources or Source vs Encode
- Video Selection - Add videos with guided file path entry
- Configuration - Interactive setup for each video's settings
- Processing - Real-time progress updates and status
- Upload Options - Optional slow.pics upload with collection naming
Information Commands
System Information
# Check available backends and system capabilities
python comparev2.py --demo
Example Output:
[INFO] Detecting available video processing libraries...
[OK] VapourSynth detected and imported successfully
[OK] awsmfunc detected and imported successfully
[MODE] Using VapourSynth mode (high-quality video processing)
Available processing backends:
✅ VapourSynth - High-quality video processing (Recommended)
✅ OpenCV - Reliable fallback processing
✅ PIL - Basic image processing
System capabilities:
- Video formats: MP4, MKV, AVI, MOV, WMV, FLV, WEBM, M4V
- Processing: Crop, resize, trim, padding
- Upload: slow.pics integration
Version Information
# Show version and basic usage
python comparev2.py --version
Help Information
# Show complete usage information
python comparev2.py --help
🎮 Interactive Workflow
Step-by-Step Process
1. Launch and Mode Selection
[🎬] Enhanced Screenshot Comparison Tool - Console Mode
[INFO] Using VapourSynth processing backend
Choose comparison mode:
1. Multiple Sources (compare different releases)
2. Source vs Encode (compare original vs encoded)
Enter your choice (1-2): 1
2. Video Selection
[📁] Multiple Sources Mode Selected
Enter video file path (or 'q' to finish): C:\Videos\netflix.mkv
[✅] Video added: netflix.mkv
Enter video file path (or 'q' to finish): C:\Videos\bluray.mkv
[✅] Video added: bluray.mkv
Enter video file path (or 'q' to finish): q
[INFO] 2 videos added for comparison
3. Video Configuration
[⚙️] Configuring video 1/2: netflix.mkv
Display name for this video [netflix]: Netflix
Available crop presets:
1. No crop
2. 2.35:1 letterbox
3. 1.85:1 letterbox
4. Streaming platform logos
5. Custom crop
Select crop preset (1-5): 4
Target resolution:
1. Keep original
2. 1080p
3. 720p
4. Custom
Select resolution (1-4): 2
4. Frame Selection
[🎯] Frame Selection Options
1. Interval-based (automatically select frames at intervals)
2. Custom frames (specify exact frame numbers)
Choose method (1-2): 1
Interval in seconds [300]: 300
Number of screenshots [10]: 10
[INFO] Will capture frames every 300 seconds, total: 10 screenshots
5. Processing
[🔄] Starting screenshot generation...
Processing netflix.mkv:
[🔄] Applying crop preset: Streaming platform logos
[🔄] Resizing to 1920x1080
[🔄] Extracting frame 5000 (1/10) - 10.0%
[🔄] Extracting frame 10000 (2/10) - 20.0%
...
[✅] netflix.mkv complete
Processing bluray.mkv:
[🔄] Processing frame 5000 (1/10) - 10.0%
...
[✅] All videos processed successfully
[📊] Screenshot generation complete:
[✅] Successfully generated: 20/20 screenshots
[📁] Saved to: C:\Projects\Screenshots\
6. Upload Options
[🌐] Upload Options
Would you like to upload to slow.pics? (y/n): y
Collection name: Netflix vs Blu-ray S01E01
Episode type:
1. Single episode
2. Season pack
Choose type (1-2): 1
[🔄] Uploading screenshots to slow.pics...
[✅] Upload successful!
[🌐] Collection URL: https://slow.pics/c/abc123
[INFO] Opening in browser...
🎛️ Available Features
Processing Options
- Crop Presets: Extensive library for common scenarios
- Custom Crop: Precise coordinate control
- Resolution Presets: 480p to 4K options
- Custom Resolution: Specific width x height
- Trim Support: Start/end time adjustment
- Padding: Add frames before/after trim points
Upload Integration
- slow.pics Upload: Direct integration with automatic naming
- Collection Management: Organized upload with proper titles
- Episode Support: Single episode or season pack options
- Browser Integration: Automatic opening of results
Error Handling
- File Validation: Checks for valid video formats
- Path Verification: Ensures files exist and are accessible
- Processing Validation: Catches and reports processing errors
- Upload Retry: Handles network issues gracefully
🔧 Advanced Usage Tips
Batch Processing
While the console is interactive, you can streamline repetitive tasks:
- Prepare file paths in advance
- Use consistent naming for easier organization
- Group similar videos for batch configuration
Quality Settings
- Use VapourSynth when available for best quality
- Choose appropriate resolution based on source material
- Apply crop presets for consistent results
Upload Strategy
- Use descriptive collection names for easy identification
- Group related comparisons in single uploads
- Include episode/season information for organization
🆚 Console vs Other Interfaces
Console Interface Advantages
- Guided process with helpful prompts
- No GUI required - works over SSH/remote
- Full feature access without complexity
- Great for learning the tool's capabilities
When to Use Console vs Others
- Console: Learning the tool, guided setup, remote access
- GUI: Visual interface preference, drag & drop workflow
- Advanced CLI: Automation, scripting, batch processing
🐛 Troubleshooting Console Issues
Common Problems
Video Loading Errors
# Test video accessibility
python comparev2.py --demo
# Check if file path is correct and accessible
Processing Errors
# Verify VapourSynth installation
python -c "import vapoursynth; print('VapourSynth available')"
# Console automatically falls back to OpenCV if needed
Upload Failures
# Test network connectivity
python -c "import requests; print(requests.get('https://slow.pics').status_code)"
# Use retry option or upload manually later
Performance Tips
- Close other applications during processing
- Use SSD storage for faster I/O
- Ensure adequate RAM for large videos
- Install VapourSynth for best performance
The Console Interface provides the perfect balance between ease of use and powerful functionality, making it ideal for users who want full control without the complexity of command-line arguments.