Files
raspi-camera/README.md
T

55 lines
1.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# raspi-cam
MJPEG-Stream-Server für die Raspberry-Pi-Kamera. Startet `rpicam-vid` einmalig als Singleton-Prozess und verteilt die Frames per Flask an beliebig viele Viewer. Bei einem Absturz von `rpicam-vid` erfolgt ein automatischer Neustart.
## Voraussetzungen
- Raspberry Pi mit angeschlossener Kamera
- `rpicam-vid` (rpicam-apps)
- Python 3 mit `flask` und optional `python-dotenv`
```bash
pip install flask python-dotenv
```
## Start
```bash
python3 app.py
```
Danach erreichbar unter:
| URL | Beschreibung |
|---|---|
| `http://<host>:8080/` | HTML-Seite mit Live-Stream |
| `http://<host>:8080/stream` | MJPEG-Stream |
| `http://<host>:8080/stream.mjpg` | MJPEG-Stream (vehicle-counter kompatibel) |
## Konfiguration
Die Konfiguration erfolgt über Umgebungsvariablen oder eine `.env`-Datei im Projektverzeichnis.
| Variable | Beschreibung | Default |
|---|---|---|
| `APP_HOST` | Bind-Adresse | `0.0.0.0` |
| `APP_PORT` | HTTP-Port | `8080` |
| `CAM_MODE` | Sensor-Modus | `1640:1232` |
| `CAM_WIDTH` | Ausgabebreite | `640` |
| `CAM_HEIGHT` | Ausgabehöhe | `480` |
| `CAM_FRAMERATE` | Ziel-FPS | `20` |
| `CAM_QUALITY` | JPEG-Qualität (1–100) | `30` |
| `CAM_ROTATION` | Rotation (0/90/180/270) | leer |
Beispiel `.env`:
```
CAM_MODE=1640:1232
CAM_WIDTH=820
CAM_HEIGHT=616
CAM_FRAMERATE=20
CAM_QUALITY=50
CAM_ROTATION=
APP_PORT=8080
```