# ============================================================================= # ENCODERPRO CONFIGURATION - PHASE 3 # ============================================================================= # Enhanced configuration with GPU acceleration and parallel processing # ============================================================================= # DIRECTORY PATHS (same as Phase 2) # ============================================================================= movies_dir: /mnt/user/movies archive_dir: /mnt/user/archive/movies work_dir: /mnt/user/temp/encoderpro-work state_db: /var/lib/encoderpro/state.db log_dir: /var/log/encoderpro # ============================================================================= # PARALLEL PROCESSING (NEW IN PHASE 3) # ============================================================================= parallel: # Maximum number of concurrent encoding jobs # Recommended: 1-2 for GPU, 2-4 for CPU (depending on cores) max_workers: 2 # GPU slots (how many encodes can use GPU simultaneously) # Most GPUs: 1-2 concurrent encodes # High-end GPUs: 2-3 concurrent encodes gpu_slots: 1 # CPU slots (for CPU encoding fallback) # Set to number of physical cores divided by 2 cpu_slots: 4 # ============================================================================= # ENCODING PROFILES (NEW IN PHASE 3) # ============================================================================= profiles: # Default profile to use if none specified default: balanced_gpu # Profile definitions definitions: # --- GPU PROFILES (NVIDIA NVENC) --- # RECOMMENDED: Sweet spot for quality/size/speed balance sweetspot_gpu: encoder: nvidia_nvenc_h265 preset: p5 # Slower preset for better quality quality: 21 # CRF 21 = transparent quality for most content audio_codec: copy hdr_handling: preserve description: "Perfect balance - visually transparent quality at good compression" balanced_gpu: encoder: nvidia_nvenc_h265 preset: p4 # p1 (fastest) to p7 (slowest) quality: 23 # Lower = better quality audio_codec: copy hdr_handling: preserve description: "Good quality/speed balance for general use" fast_gpu: encoder: nvidia_nvenc_h264 preset: p1 # Fastest preset quality: 26 audio_codec: copy description: "Fast processing, larger files, universal compatibility" quality_gpu: encoder: nvidia_nvenc_h265 preset: p7 # Highest quality preset quality: 19 # Near-lossless audio_codec: copy hdr_handling: preserve description: "Maximum quality for archival (slower, larger files)" # --- CPU PROFILES (FALLBACK) --- sweetspot_cpu: encoder: cpu_x265 preset: slow quality: 21 audio_codec: copy description: "CPU sweet spot - excellent quality at good compression (slow)" balanced_cpu: encoder: cpu_x265 preset: medium quality: 23 audio_codec: copy description: "Balanced CPU encoding" fast_cpu: encoder: cpu_x264 preset: fast quality: 26 audio_codec: copy description: "Fast CPU encoding with H.264" quality_cpu: encoder: cpu_x265 preset: veryslow quality: 19 audio_codec: copy description: "Maximum CPU quality (very slow)" # --- INTEL QSV PROFILES (Arc A-Series & Integrated Graphics) --- # RECOMMENDED: Sweet spot for Intel Arc sweetspot_qsv: encoder: intel_qsv_h265 preset: slow quality: 21 audio_codec: copy hdr_handling: preserve description: "Intel sweet spot - visually transparent quality" # RECOMMENDED: AV1 sweet spot (Arc A-Series only - best compression!) sweetspot_av1: encoder: intel_qsv_av1 preset: medium quality: 27 # AV1 uses different scale (higher values still good) audio_codec: copy hdr_handling: preserve description: "AV1 sweet spot - best compression with excellent quality" balanced_qsv: encoder: intel_qsv_h265 preset: medium quality: 23 audio_codec: copy hdr_handling: preserve description: "Balanced H.265 for general use" fast_qsv: encoder: intel_qsv_h264 preset: veryfast quality: 26 audio_codec: copy description: "Fast H.264 encoding" quality_qsv: encoder: intel_qsv_h265 preset: slower quality: 19 audio_codec: copy hdr_handling: preserve description: "Maximum H.265 quality" # Intel Arc A-Series supports AV1! av1_qsv: encoder: intel_qsv_av1 preset: medium quality: 30 audio_codec: copy hdr_handling: preserve description: "Balanced AV1 encoding" av1_quality: encoder: intel_qsv_av1 preset: slow quality: 24 audio_codec: copy hdr_handling: preserve description: "High quality AV1 encoding" # --- AMD VAAPI PROFILES --- balanced_vaapi: encoder: amd_vaapi_h265 preset: medium quality: 23 audio_codec: copy # ============================================================================= # PROCESSING SETTINGS # ============================================================================= processing: file_extensions: - mkv - mp4 - avi - m4v # Note: skip_without_subtitles is deprecated - all files are now scanned and marked as "discovered" # Use the dashboard filters to select files with/without subtitles for encoding skip_without_subtitles: false # Deprecated - kept for backward compatibility cleanup_stale_work: true # ============================================================================= # QUALITY CHECKING # ============================================================================= quality_check: # Enable pre-encoding quality analysis enabled: true # Warning threshold - warn if quality will drop by this many points warn_threshold: 10.0 # Error threshold - fail if quality will drop by this many points error_threshold: 20.0 # Skip encoding if quality degradation detected skip_on_degradation: false # Prompt user for confirmation on warnings prompt_on_warning: true # ============================================================================= # ADVANCED OPTIONS (NEW IN PHASE 3) # ============================================================================= advanced: # Automatically detect available encoders on startup auto_detect_encoders: true # Prefer GPU encoders over CPU when available prefer_gpu: true # Fallback to CPU if GPU encoder fails or unavailable fallback_to_cpu: true # Progress update interval (seconds) progress_interval: 10 # ============================================================================= # PRESET CONFIGURATIONS # ============================================================================= # Uncomment one of these sections to quickly switch between common setups # --- NVIDIA GPU SETUP (Recommended for Unraid with NVIDIA GPU) --- # parallel: # max_workers: 2 # gpu_slots: 1 # cpu_slots: 4 # profiles: # default: balanced_gpu # --- CPU ONLY SETUP (No GPU) --- # parallel: # max_workers: 2 # gpu_slots: 0 # cpu_slots: 4 # profiles: # default: balanced_cpu # advanced: # prefer_gpu: false # --- HIGH THROUGHPUT SETUP (Multiple workers) --- # parallel: # max_workers: 4 # gpu_slots: 2 # cpu_slots: 8 # profiles: # default: fast_gpu # --- QUALITY FOCUSED SETUP (Single worker, slow encode) --- # parallel: # max_workers: 1 # gpu_slots: 1 # cpu_slots: 1 # profiles: # default: quality_gpu # ============================================================================= # ENCODER PRESET REFERENCE # ============================================================================= # NVIDIA NVENC PRESETS: # p1 = fastest (lower quality, smallest file) # p2, p3, p4 = balanced # p5, p6, p7 = slowest (higher quality, larger file) # # NVIDIA NVENC QUALITY (CQ): # 0-51, lower = better quality # Recommended: 20-25 # CPU (libx265/libx264) PRESETS: # ultrafast, superfast, veryfast, faster, fast # medium (balanced) # slow, slower, veryslow (higher quality) # # CPU CRF: # 0-51, lower = better quality # Recommended: 18-24 # INTEL QSV PRESETS: # veryfast, faster, fast, medium, slow, slower, veryslow # # INTEL QSV QUALITY: # Use global_quality: 18-30 # AMD VAAPI: # Similar to CPU presets # Quality controlled by QP value # ============================================================================= # NOTES # ============================================================================= # GPU Memory Usage: # - Each concurrent encode uses GPU VRAM # - 1080p: ~1-2 GB VRAM per encode # - 4K: ~3-4 GB VRAM per encode # - Adjust gpu_slots based on available VRAM # CPU Usage: # - CPU encoding is highly CPU-intensive # - max_workers * cpu_slots should not exceed physical cores # - Leave some cores for system operations # Encoding Speed Expectations: # - NVENC H.265: 100-300+ fps (1080p) # - NVENC H.264: 150-400+ fps (1080p) # - CPU H.265: 2-20 fps (1080p, depends on preset/CPU) # - CPU H.264: 5-50 fps (1080p, depends on preset/CPU) # Quality Trade-offs: # - GPU encoders are faster but slightly lower quality at same bitrate # - For archival quality, consider CPU with slow/slower preset # - For daily viewing, GPU quality is excellent and much faster