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

31 lines
876 B
Markdown

# 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
```rust
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(())
}
```