
- Add MIT LICENSE file - Make README more generic and comprehensive - Add installation and troubleshooting sections - Include systemd service integration docs - Update with build and deployment instructions
59 lines
1.8 KiB
Markdown
59 lines
1.8 KiB
Markdown
# Livestream Archiver
|
|
|
|
A Rust application that monitors a directory for livestream recordings, processes them, and syncs them to a PC.
|
|
|
|
## Features
|
|
|
|
- **File Detection**: Monitors `/home/rockvilleav/Sync/Livestreams` for new MP4 files
|
|
- **Readiness Check**: Waits for files to be completely written before processing
|
|
- **PC Sync**: Uses rsync to send files to your PC immediately after detection
|
|
- **Caching & Retry**: Caches failed syncs and retries them on subsequent runs
|
|
- **Processing**: Converts files to AV1 using QSV hardware acceleration
|
|
- **Organization**: Creates date-based directory structure in Jellyfin format
|
|
- **Cleanup**: Deletes original files after successful processing and sync
|
|
|
|
## Configuration
|
|
|
|
Set the `PC_SYNC_TARGET` environment variable to configure where files are synced:
|
|
|
|
```bash
|
|
export PC_SYNC_TARGET="user@192.168.1.100:/path/to/destination/"
|
|
```
|
|
|
|
If not set, defaults to: `user@192.168.1.100:/path/to/destination/`
|
|
|
|
## Usage
|
|
|
|
```bash
|
|
cargo run
|
|
```
|
|
|
|
The application will:
|
|
1. Check for existing unprocessed files
|
|
2. Start monitoring for new files
|
|
3. For each detected file:
|
|
- Wait for it to be ready (stable size/modification time)
|
|
- Sync to PC using rsync
|
|
- Convert to AV1 format
|
|
- Create NFO metadata file
|
|
- Delete original file
|
|
|
|
## Dependencies
|
|
|
|
- `rsync` must be installed and accessible in PATH
|
|
- `ffmpeg` with QSV support for hardware acceleration
|
|
- SSH key authentication should be set up for passwordless rsync
|
|
|
|
## Directory Structure
|
|
|
|
Output files are organized as:
|
|
```
|
|
/media/archive/jellyfin/livestreams/
|
|
├── 2024/
|
|
│ ├── 01-January/
|
|
│ │ ├── Divine Worship Service - RTSDA | January 01 2024.mp4
|
|
│ │ ├── Divine Worship Service - RTSDA | January 01 2024.nfo
|
|
│ │ └── ...
|
|
│ └── ...
|
|
└── ...
|
|
``` |