initial comment
This commit is contained in:
239
config-nvidia.yaml
Normal file
239
config-nvidia.yaml
Normal file
@@ -0,0 +1,239 @@
|
||||
# =============================================================================
|
||||
# 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
|
||||
# =============================================================================
|
||||
Reference in New Issue
Block a user