video-processing-support/README.md
Benjamin Slingo a38143c28b Initial commit: Shared video processing crate
- Event-driven file stability tracking
- FFmpeg video conversion with hardware acceleration
- NFO file generation for Kodi compatibility
- Environment-based configuration
- Disk space monitoring and shutdown handling
- Comprehensive logging with tracing
2025-09-06 18:26:58 -04:00

876 B

Video Processing Crate

A shared Rust crate for video processing tasks including file watching, stability tracking, FFmpeg conversion, and NFO file generation.

Features

  • Configurable FFmpeg conversion with environment variable support
  • Event-driven file stability tracking
  • File system watching with the notify crate
  • NFO file generation for Kodi media center compatibility
  • Hardware-accelerated encoding support (Intel QSV)

Environment Variables

See .env.example for all supported configuration options.

Usage

use video_processing::*;

#[tokio::main]
async fn main() -> Result<()> {
    let config = VideoProcessingConfig::from_env();
    let converter = VideoConverter::new(config.clone());
    let stability_tracker = StabilityTracker::new(config.clone());
    
    // Your video processing logic here
    Ok(())
}