# ============================================================================= # ENCODERPRO CONFIGURATION - NVIDIA GPU # ============================================================================= # Optimized configuration for NVIDIA GPUs using NVENC hardware encoding # ============================================================================= # DIRECTORY PATHS # ============================================================================= # When running in Docker, these paths are mapped from host movies_dir: /movies archive_dir: /archive work_dir: /work state_db: /db/state.db log_dir: /logs # ============================================================================= # PARALLEL PROCESSING # ============================================================================= parallel: # NVIDIA GPU concurrent encode recommendations: # RTX 4000 series: 2-3 workers # RTX 3000 series: 1-2 workers # RTX 2000 series: 1-2 workers # GTX 1000 series: 1 worker max_workers: 2 # NVIDIA GPU encode slots # Most consumer NVIDIA GPUs: 1-2 concurrent encodes # Professional cards (A4000, A5000): 3+ concurrent encodes gpu_slots: 1 # CPU fallback slots cpu_slots: 2 # ============================================================================= # ENCODING PROFILES # ============================================================================= profiles: # Default profile - NVIDIA sweet spot for best quality/compression default: sweetspot_gpu definitions: # --- RECOMMENDED SWEET SPOT PROFILE --- # BEST CHOICE: Perfect balance of quality, compression, and speed sweetspot_gpu: encoder: nvidia_nvenc_h265 preset: p5 # Slower preset for better quality quality: 21 # CRF 21 = visually transparent for most content audio_codec: copy hdr_handling: preserve description: "⭐ RECOMMENDED - Visually transparent quality at excellent compression" # --- NVIDIA NVENC PROFILES --- # Balanced H.265 encoding (good for general use) balanced_gpu: encoder: nvidia_nvenc_h265 preset: p4 quality: 23 audio_codec: copy hdr_handling: preserve description: "Balanced quality/speed H.265 encoding" # Fast H.264 encoding (maximum compatibility) fast_gpu: encoder: nvidia_nvenc_h264 preset: p1 # Fastest NVENC preset quality: 26 audio_codec: copy description: "Fast H.264 encoding, universal compatibility" # High quality H.265 for archival quality_gpu: encoder: nvidia_nvenc_h265 preset: p7 # Slowest/best NVENC preset quality: 19 # Near-lossless quality audio_codec: copy hdr_handling: preserve description: "Maximum NVENC quality for archival" # H.264 sweet spot (for older devices) sweetspot_h264: encoder: nvidia_nvenc_h264 preset: p5 quality: 21 audio_codec: copy description: "H.264 sweet spot for maximum compatibility" # --- CPU FALLBACK PROFILES --- sweetspot_cpu: encoder: cpu_x265 preset: slow quality: 21 audio_codec: copy description: "CPU fallback sweet spot" balanced_cpu: encoder: cpu_x265 preset: medium quality: 23 audio_codec: copy description: "Balanced CPU H.265 encoding" fast_cpu: encoder: cpu_x264 preset: fast quality: 26 audio_codec: copy description: "Fast CPU H.264 encoding" # ============================================================================= # PROCESSING SETTINGS # ============================================================================= processing: file_extensions: - mkv - mp4 - avi - m4v - ts - m2ts # Skip files without subtitles (change to false to process all files) skip_without_subtitles: false # Deprecated - all files now scanned, use dashboard filters # Clean up abandoned work files on startup cleanup_stale_work: true # ============================================================================= # QUALITY CHECKING # ============================================================================= quality_check: # Enable pre-encoding quality analysis to detect quality degradation enabled: true # Warning threshold - warn if quality will drop by this many points (0-100 scale) # Example: Source quality 85 → Target quality 70 = 15 point drop (warning) warn_threshold: 10.0 # Error threshold - fail/skip if quality will drop by this many points # Example: Source quality 85 → Target quality 60 = 25 point drop (error) error_threshold: 20.0 # Automatically skip files where encoding would degrade quality # Set to false to warn but continue encoding anyway skip_on_degradation: false # Prompt user for confirmation when warnings detected (CLI only) prompt_on_warning: true # ============================================================================= # ADVANCED OPTIONS # ============================================================================= advanced: # Hardware detection auto_detect_encoder: true fallback_to_cpu: true # Resolution-based rules (optional) resolution_rules: enabled: false rules: - max_width: 1920 # 1080p profile: fast_gpu - max_width: 3840 # 4K profile: sweetspot_gpu - max_width: 7680 # 8K profile: quality_gpu # HDR handling hdr: detect_hdr: true preserve_metadata: true tone_mapping: false # Set to true to convert HDR to SDR # Audio options audio: default_codec: copy max_channels: 8 normalize: false # ============================================================================= # NVIDIA-SPECIFIC NOTES # ============================================================================= # # NVIDIA NVENC Encoder Capabilities: # - Hardware H.264 and H.265 (HEVC) encode/decode # - Up to 8K encoding support (RTX 4000 series) # - Multiple concurrent encode sessions (varies by GPU) # - HDR10 and Dolby Vision support (RTX 2000+) # - Excellent encoding speed # # Preset Guide (p1-p7): # - p1-p2: Fastest, lower quality, larger files # - p3-p4: Balanced speed/quality (p4 recommended for general use) # - p5-p6: Slower, better quality (p5 is the sweet spot) # - p7: Slowest, best quality (minimal improvement over p6) # # Quality Guide (CRF): # - 18-19: Near-lossless, very large files # - 20-21: Visually transparent (sweet spot!) # - 22-24: Excellent quality, good compression # - 25-28: Good quality, smaller files # # Recommended Profiles by Use Case: # - Best overall: sweetspot_gpu (H.265, preset p5, CRF 21) # - Fastest: fast_gpu (H.264, preset p1, CRF 26) # - Maximum compatibility: sweetspot_h264 (H.264, preset p5, CRF 21) # - Archival: quality_gpu (H.265, preset p7, CRF 19) # # Performance Expectations (1080p content): # - RTX 4090: 300-400 fps # - RTX 4080: 250-350 fps # - RTX 4070: 200-300 fps # - RTX 3090: 250-350 fps # - RTX 3080: 200-300 fps # - RTX 3070: 150-250 fps # - RTX 3060: 120-200 fps # - RTX 2080: 150-250 fps # - RTX 2070: 120-200 fps # - RTX 2060: 100-180 fps # - GTX 1660: 100-150 fps # - GTX 1650: 80-120 fps # # Why CRF 21 is the Sweet Spot: # - Visually indistinguishable from source for most content # - Excellent file size reduction (40-60% smaller) # - Fast encoding (p5 preset still very fast on GPU) # - Future-proof quality for archival # - Perfect for 1080p, 4K, and HDR content # =============================================================================