Release: v2.4.0
This commit is contained in:
@@ -81,6 +81,7 @@ Die Konfigurationsdatei liegt unter `config/stream-recorder.conf`:
|
||||
| `LOG_DIR` | `/var/log/stream-recorder` | Log-Verzeichnis |
|
||||
| `LOG_LEVEL` | `INFO` | Log-Level: DEBUG, INFO, WARN, ERROR |
|
||||
| `PID_DIR` | `/tmp/stream-recorder` | PID-Dateien für laufende Aufnahmen |
|
||||
| `STATE_DIR` | `/var/lib/stream-recorder` | Status für bereits gestartete Zeitpläne |
|
||||
| `MAX_RETRIES` | `0` | Wiederholungsversuche (0 = unbegrenzt)|
|
||||
| `RETRY_DELAY` | `5` | Wartezeit zwischen Versuchen (Sek.) |
|
||||
| `NTFY_URL` | (leer) | NTFY Server-URL inkl. Topic |
|
||||
@@ -122,7 +123,7 @@ nano jobs/mein-stream.job
|
||||
| `STREAM_URL` | Ja | URL des Streams |
|
||||
| `STREAM_TYPE` | Nein | `auto`, `rtmp`, `hls`, `mp3`, `aac`, `ogg`, `flac` |
|
||||
| `OUTPUT_FORMAT` | Nein | Dateiendung (z.B. `mp4`, `mp3`) - sonst automatisch |
|
||||
| `MAX_DURATION` | Nein | Maximale Dauer in Sekunden (leer = unbegrenzt) |
|
||||
| `MAX_DURATION` | Nein | Maximale Dauer, z.B. `300`, `5m`, `1h30m` (leer = unbegrenzt) |
|
||||
| `EXTRA_FFMPEG_ARGS`| Nein | Zusätzliche ffmpeg-Parameter |
|
||||
| `PLIK_ENABLED` | Nein | Plik-Upload aktivieren (`true`/`false`) |
|
||||
|
||||
@@ -131,7 +132,9 @@ nano jobs/mein-stream.job
|
||||
| Parameter | Standard | Beschreibung |
|
||||
|--------------------|----------|-------------------------------------------------|
|
||||
| `SCHEDULE_ENABLED` | `false` | Zeitplan aktivieren (`true`/`false`) |
|
||||
| `SCHEDULE_DAYS` | `*` | Aufnahmetage (siehe Formate unten) |
|
||||
| `SCHEDULE_ONCE` | `false` | Einmaliger Termin statt wöchentlichem Zeitplan |
|
||||
| `SCHEDULE_DATE` | (leer) | Datum für einmalige Termine (`YYYY-MM-DD`) |
|
||||
| `SCHEDULE_DAYS` | `*` | Aufnahmetage für wöchentliche Zeitpläne |
|
||||
| `SCHEDULE_START` | (leer) | Startzeit im Format `HH:MM` |
|
||||
| `SCHEDULE_STOP` | (leer) | Endzeit im Format `HH:MM` (leer = kein Auto-Stop)|
|
||||
|
||||
@@ -147,6 +150,8 @@ nano jobs/mein-stream.job
|
||||
|
||||
Die Tagesangaben funktionieren auf Deutsch (Mo, Di, Mi, Do, Fr, Sa, So) und Englisch (Mon, Tue, Wed, Thu, Fri, Sat, Sun).
|
||||
|
||||
Ohne `SCHEDULE_ONCE=true` sind Tagesangaben wöchentlich/wiederkehrend. Ein Job mit `SCHEDULE_DAYS="Mi"` und `SCHEDULE_START="21:00"` läuft also jeden Mittwoch.
|
||||
|
||||
### Beispiel: Tägliche RTMP-Aufnahme von 20:00 bis 22:00
|
||||
|
||||
```bash
|
||||
@@ -163,12 +168,26 @@ SCHEDULE_STOP="22:00"
|
||||
```bash
|
||||
STREAM_NAME="Mein-Radiosender"
|
||||
STREAM_URL="https://example.com/stream.mp3"
|
||||
MAX_DURATION="3600"
|
||||
MAX_DURATION="1h"
|
||||
SCHEDULE_ENABLED=true
|
||||
SCHEDULE_ONCE=false
|
||||
SCHEDULE_DAYS="Mo-Fr"
|
||||
SCHEDULE_START="18:00"
|
||||
```
|
||||
|
||||
### Beispiel: Einmalige Aufnahme am 09.09.2026 um 21:00, 30 Minuten
|
||||
|
||||
```bash
|
||||
STREAM_NAME="Einmaliger-Mitschnitt"
|
||||
STREAM_URL="https://example.com/stream.mp3"
|
||||
MAX_DURATION="30m"
|
||||
SCHEDULE_ENABLED=true
|
||||
SCHEDULE_ONCE=true
|
||||
SCHEDULE_DATE="2026-09-09"
|
||||
SCHEDULE_START="21:00"
|
||||
SCHEDULE_STOP=""
|
||||
```
|
||||
|
||||
## Verwendung
|
||||
|
||||
### Befehle
|
||||
@@ -177,6 +196,9 @@ SCHEDULE_START="18:00"
|
||||
# Einzelnen Stream aufzeichnen
|
||||
./stream-recorder.sh record mein-stream
|
||||
|
||||
# Im Vordergrund aufzeichnen, z.B. für Tests
|
||||
./stream-recorder.sh --foreground record mein-stream
|
||||
|
||||
# Alle Jobs gleichzeitig aufzeichnen
|
||||
./stream-recorder.sh record-all
|
||||
|
||||
@@ -186,6 +208,9 @@ SCHEDULE_START="18:00"
|
||||
# Interaktive Schnellaufnahme (URL direkt eingeben)
|
||||
./stream-recorder.sh quick
|
||||
|
||||
# Vorhandene Aufnahme erneut nach Plik hochladen
|
||||
./stream-recorder.sh upload /pfad/zur/aufnahme.mp4 "Stream-Name"
|
||||
|
||||
# Aufnahme mit ausführlicher Ausgabe
|
||||
./stream-recorder.sh -V record mein-stream
|
||||
|
||||
@@ -239,6 +264,7 @@ Die Zeitplanung wird direkt in der Job-Datei konfiguriert - kein Cron nötig.
|
||||
|
||||
- **Start + Stop gesetzt:** Aufnahme läuft im angegebenen Zeitfenster
|
||||
- **Nur Start gesetzt:** Aufnahme startet zur angegebenen Zeit, läuft bis `MAX_DURATION` oder manueller Stop
|
||||
- **Einmalig:** Mit `SCHEDULE_ONCE=true` und `SCHEDULE_DATE="YYYY-MM-DD"` startet der Job nur an diesem Datum
|
||||
- **Manuell gestartete Aufnahmen** werden vom Scheduler nicht beeinflusst
|
||||
- **Nach Neustart** des Servers erkennt der Scheduler automatisch, welche Aufnahmen laufen sollten
|
||||
|
||||
@@ -293,8 +319,10 @@ PLIK_ENABLED=true
|
||||
|
||||
- Der Upload erfolgt automatisch nach jeder regulär abgeschlossenen Aufnahme
|
||||
- Bei manuellem Stop oder Verbindungsabbruch wird kein Upload ausgeführt
|
||||
- Der Download-Link wird im Log ausgegeben
|
||||
- Der Browser-Link zur Plik-Upload-Seite wird im Log und per NTFY ausgegeben
|
||||
- Die direkte Datei-URL wird zusätzlich ins Log geschrieben
|
||||
- Optional wird der Link per NTFY-Benachrichtigung gesendet (Event: `upload`)
|
||||
- Plik-Uploads verwenden den direkten Multipart-Upload-Endpunkt des Servers.
|
||||
|
||||
### NTFY + Plik
|
||||
|
||||
|
||||
Reference in New Issue
Block a user