docs: add README
This commit is contained in:
parent
0da74d39a0
commit
ff9737556f
46
README.md
Normal file
46
README.md
Normal file
@ -0,0 +1,46 @@
|
||||
# Media Transcriber
|
||||
|
||||
A local media transcription service that indexes a video library and transcribes it with a local Whisper server. Designed to run unattended on a home server.
|
||||
|
||||
> Personal tooling project — works for my own media library, not packaged for general use.
|
||||
|
||||
## How It Works
|
||||
|
||||
1. **Scan** — `indexer` walks the media directory, probes each video (duration, size), and records which files are already transcribed
|
||||
2. **Transcribe** — the `worker` pulls pending files, sends audio to a local Whisper server, and saves transcripts next to the source
|
||||
3. **Continuous** — a loop mode keeps the library up to date as new media arrives
|
||||
|
||||
## Commands
|
||||
|
||||
```bash
|
||||
python mt.py scan # (re)index the media library
|
||||
python mt.py transcribe # process all pending videos once
|
||||
python mt.py continuous # run the worker in a loop
|
||||
python mt.py status # show library/transcription stats
|
||||
```
|
||||
|
||||
## Project Structure
|
||||
|
||||
| Path | Description |
|
||||
|------|-------------|
|
||||
| `mt.py` | CLI entry point |
|
||||
| `src/indexer.py` | Library scanning and indexing |
|
||||
| `src/worker.py` | Transcription worker (one-shot and continuous) |
|
||||
| `systemd/` | `media-transcriber.service` and `whisper-server.service` units |
|
||||
| `setup.sh` | Initial environment setup |
|
||||
|
||||
## Deployment
|
||||
|
||||
Install the systemd units for an unattended setup:
|
||||
|
||||
```bash
|
||||
sudo cp systemd/media-transcriber.service systemd/whisper-server.service /etc/systemd/system/
|
||||
sudo systemctl daemon-reload
|
||||
sudo systemctl enable --now whisper-server media-transcriber
|
||||
```
|
||||
|
||||
## Requirements
|
||||
|
||||
- Python 3.10+
|
||||
- A running Whisper server (see `systemd/whisper-server.service`)
|
||||
- `ffmpeg` for audio probing/extraction
|
||||
Loading…
x
Reference in New Issue
Block a user