README: ffmpeg, Video-Download der Timelapse

This commit is contained in:
Joachim Hummel committed 2026-10-18 13:55:42 +02:00
1 parent 13e86bb818
commit 420e8e1550
1 file changed
+3 -1
+3 -1
View File
@@ -31,6 +31,7 @@ Zwei kleine Python-Tools für MJPEG-Kameras:
- Python 3 - Python 3
- [`requests`](https://pypi.org/project/requests/) - [`requests`](https://pypi.org/project/requests/)
- Optional: `ffmpeg` für den Video-Download der Timelapse als MP4 (`apt install ffmpeg`); ohne ffmpeg liefert das Relay ein MJPEG-AVI
- Optional für `webcam.py --show`: `opencv-python` und `numpy` - Optional für `webcam.py --show`: `opencv-python` und `numpy`
```bash ```bash
@@ -111,6 +112,7 @@ journalctl -u webcam-relay -f
| `POST /<name>/timelapse` | Timelapse steuern, Body `{"enabled":true,"interval":300}` | | `POST /<name>/timelapse` | Timelapse steuern, Body `{"enabled":true,"interval":300}` |
| `/<name>/timelapse.json` | Gespeicherte Timelapse-Bilder je Tag | | `/<name>/timelapse.json` | Gespeicherte Timelapse-Bilder je Tag |
| `/<name>/timelapse/<tag>/<datei>.jpg` | Einzelnes Timelapse-Bild | | `/<name>/timelapse/<tag>/<datei>.jpg` | Einzelnes Timelapse-Bild |
| `/<name>/timelapse/<tag>/video?fps=10` | Tagesvideo als Download (MP4 mit ffmpeg, sonst MJPEG-AVI); `fps` 1–60 |
| `/stream.mjpg`, `/snapshot.jpg` | Alias für die erste Kamera (Abwärtskompatibilität) | | `/stream.mjpg`, `/snapshot.jpg` | Alias für die erste Kamera (Abwärtskompatibilität) |
| `/health` | Status aller Kameras (`200` wenn alle liefern, sonst `503`); ohne Authentifizierung erreichbar | | `/health` | Status aller Kameras (`200` wenn alle liefern, sonst `503`); ohne Authentifizierung erreichbar |
@@ -120,7 +122,7 @@ Das Frontend liegt in `frontend.html` (reines HTML/CSS/JS, keine Abhängigkeiten
- Dunkles Design, zwei Kameras nebeneinander (auf dem Handy untereinander); Klick auf den Namen öffnet die große Ansicht - Dunkles Design, zwei Kameras nebeneinander (auf dem Handy untereinander); Klick auf den Namen öffnet die große Ansicht
- Statuspunkt und Hinweis „Kamera offline“ pro Kamera, automatisches Neuverbinden, Zähler „X / Y online“ - Statuspunkt und Hinweis „Kamera offline“ pro Kamera, automatisches Neuverbinden, Zähler „X / Y online“
- Buttons pro Kamera: Start, Stop, Reload, Foto (Download), Vollbild; „Timelapse“ schaltet die Aufnahme je Kamera ein/aus, „Galerie“ zeigt die Bilder (Tag wählen, anklicken, abspielen; Intervall einstellbar) - Buttons pro Kamera: Start, Stop, Reload, Foto (Download), Vollbild; „Timelapse“ schaltet die Aufnahme je Kamera ein/aus, „Galerie“ zeigt die Bilder (Tag wählen, anklicken, abspielen; Intervall einstellbar) und lädt ein Tagesvideo herunter (5/10/25 fps)
- Toolbar: Alle starten / stoppen / neu laden - Toolbar: Alle starten / stoppen / neu laden
- „Setup“ pro Kamera und „Setup alle“, sofern `SETUP_<name>` konfiguriert ist; das Relay ruft die URL auf, der Browser muss die Kamera nicht erreichen - „Setup“ pro Kamera und „Setup alle“, sofern `SETUP_<name>` konfiguriert ist; das Relay ruft die URL auf, der Browser muss die Kamera nicht erreichen
- Streams werden getrennt, solange der Tab im Hintergrund ist - Streams werden getrennt, solange der Tab im Hintergrund ist