
- Complete removal of polling loops for better performance - Event-driven file processing with stability tracking - Proper structured logging with tracing - Graceful shutdown handling (SIGTERM/SIGINT) - Disk space monitoring (5GB minimum threshold) - Production-ready paths for RTSDA deployment - Shared video_processing crate integration - Filename compatibility improvements (| → () separator) - Environment-based configuration - Comprehensive error handling and logging Performance improvements: - No more wasteful 1-2 second polling - Only processes files when filesystem events occur - Proper resource management and cleanup Production features: - Default paths: /home/rockvilleav/.rtsda/livestreams → /media/archive/jellyfin/livestreams - Configurable via INPUT_DIR and OUTPUT_DIR environment variables - Structured logging configurable via RUST_LOG - Hardware-accelerated video conversion (Intel QSV) - NFO file generation for Jellyfin compatibility
32 lines
652 B
Plaintext
32 lines
652 B
Plaintext
# Directory paths
|
|
INPUT_DIR=/home/user/livestreams
|
|
OUTPUT_DIR=/media/archive/livestreams
|
|
|
|
# Program naming
|
|
DIVINE_WORSHIP_NAME=Divine Worship Service - RTSDA
|
|
AFTERNOON_PROGRAM_NAME=Afternoon Program - RTSDA
|
|
|
|
# FFmpeg Configuration
|
|
FFMPEG_BINARY=ffmpeg
|
|
VIDEO_CODEC=av1_qsv
|
|
HW_ACCEL=qsv
|
|
HW_DEVICE=qsv=hw
|
|
FFMPEG_PRESET=4
|
|
VIDEO_BITRATE=6M
|
|
MAX_BITRATE=12M
|
|
BUFFER_SIZE=24M
|
|
AUDIO_CODEC=copy
|
|
AUDIO_BITRATE=192k
|
|
|
|
# File Stability Settings
|
|
STABILITY_CHECK_INTERVAL=2
|
|
STABILITY_REQUIRED_CHECKS=15
|
|
MAX_STABILITY_WAIT_HOURS=4
|
|
|
|
# Directory Settings
|
|
CREATE_YEAR_MONTH_DIRS=true
|
|
PRESERVE_ORIGINAL_FILES=true
|
|
|
|
# NFO Settings
|
|
SHOW_TITLE=LiveStreams
|
|
CREATE_NFO_FILES=true |