77 lines
2.6 KiB
Markdown
77 lines
2.6 KiB
Markdown
# Job-Dateien
|
|
|
|
Jeder Stream wird durch eine `.job`-Datei im `jobs/`-Verzeichnis definiert. Vorlagen befinden sich unter `jobs/templates/`.
|
|
|
|
## Job erstellen
|
|
|
|
### Interaktiv (empfohlen)
|
|
|
|
```bash
|
|
./stream-recorder.sh create
|
|
```
|
|
|
|
Das Script fragt Schritt für Schritt nach URL, Name, Typ, Segment-Splitting, Zeitplan und Plik-Upload und erstellt die Job-Datei automatisch.
|
|
|
|
### Aus Vorlage
|
|
|
|
```bash
|
|
# Vorlage kopieren
|
|
cp jobs/templates/example-rtmp.job.dist jobs/mein-stream.job
|
|
|
|
# Anpassen
|
|
nano jobs/mein-stream.job
|
|
```
|
|
|
|
Verfügbare Vorlagen:
|
|
|
|
| Vorlage | Beschreibung |
|
|
|----------------------------|-------------------------|
|
|
| `example-rtmp.job.dist` | RTMP/RTMPS-Stream |
|
|
| `example-hls.job.dist` | HLS/m3u8-Stream |
|
|
| `example-mp3.job.dist` | HTTP-Audio (MP3/Radio) |
|
|
|
|
## Stream-Parameter
|
|
|
|
| Parameter | Pflicht | Beschreibung |
|
|
|----------------------|---------|-----------------------------------------------------|
|
|
| `STREAM_NAME` | Ja | Name des Streams (wird für Dateinamen verwendet) |
|
|
| `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 | Aufnahmedauer (z.B. `1h`, `30m`, `1d12h`, `3600`) |
|
|
| `EXTRA_FFMPEG_ARGS` | Nein | Zusätzliche ffmpeg-Parameter |
|
|
| `SEGMENT_DURATION` | Nein | Segment-Splitting (z.B. `1h`, `2h`) — siehe [Segment-Splitting](segment-splitting.md) |
|
|
| `PLIK_ENABLED` | Nein | Plik-Upload aktivieren (`true`/`false`) |
|
|
| `DELETE_AFTER_UPLOAD` | Nein | Lokale Datei nach Upload löschen (`true`/`false`) |
|
|
|
|
### Dauerformate
|
|
|
|
Die Dauer kann in verschiedenen Formaten angegeben werden:
|
|
|
|
| Format | Bedeutung |
|
|
|----------|------------------|
|
|
| `3600` | 3600 Sekunden |
|
|
| `1h` | 1 Stunde |
|
|
| `30m` | 30 Minuten |
|
|
| `1h30m` | 90 Minuten |
|
|
| `2d` | 2 Tage |
|
|
| `1d12h` | 36 Stunden |
|
|
|
|
## Job-Angabe beim Starten
|
|
|
|
Der `record`-Befehl akzeptiert verschiedene Formate:
|
|
|
|
```bash
|
|
./stream-recorder.sh record jobs/mein-stream.job # Vollständiger Pfad
|
|
./stream-recorder.sh record mein-stream.job # Nur Dateiname
|
|
./stream-recorder.sh record mein-stream # Nur Job-Name (ohne .job)
|
|
```
|
|
|
|
## Jobs anzeigen
|
|
|
|
```bash
|
|
./stream-recorder.sh list
|
|
```
|
|
|
|
Zeigt alle Jobs mit Stream-Typ, URL, Status, Zeitplan, Segment-Einstellungen und Plik-Konfiguration.
|