- Python 100%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| static | ||
| .gitattributes | ||
| .gitignore | ||
| LICENSE | ||
| n1x_tracker.py | ||
| README.md | ||
shared1o
Stimmungs-Tagger und Set-Archiv für einen AzuraCast-Radiosender. Während ein DJ-Set läuft, drückt man auf ein Gefühl — es landet sekundengenau an der Stelle im Set. Später lässt sich das Set nachhören, an die Stelle springen und sehen, was dort empfunden wurde.
Ein Python-Skript, nur Standardbibliothek, SQLite daneben. Keine Abhängigkeiten, kein Build.
python3 n1x_tracker.py
# → http://localhost:8773
Einstellungen
| Variable | Standard | Bedeutung |
|---|---|---|
N1X_PORT |
8773 |
Port |
N1X_BIND |
0.0.0.0 |
Lauschadresse |
N1X_MEDIA |
— | Verzeichnis(se) mit den Set-Dateien, mit os.pathsep getrennt. Ohne die Variable gibt es nur den Live-Stream |
N1X_DOCKER |
— | Docker-Container, in dem ffmpeg/ffprobe stecken. Dann sind die N1X_MEDIA-Pfade Pfade im Container |
N1X_OHNE_PORTAL |
— | 1 schaltet die Zugangsprüfung ab |
Die Station steht in STATION_API und STREAM_URL am Anfang der Datei.
Zugang
Keine eigene Anmeldung. Ein Reverse-Proxy davor entscheidet und gibt das
Ergebnis in drei Kopfzeilen mit: X-N1x-Stufe, X-N1x-Nutzer, X-N1x-Rolle.
Der Proxy muss sie erst löschen und dann selbst setzen, sonst schickt ein
Besucher sie einfach mit.
Ohne Proxy: N1X_OHNE_PORTAL=1.
Bekannte Grenzen
- Der Pegelmesser läuft auf dem iPhone nicht.
- Nach dem Abschicken einer Notiz klappt die Momentliste nicht auf.
- Das Titelschema (
n1x dscvr YYYY-MM-DD HhMMmSS) ist auf eine bestimmte Station zugeschnitten; für andereDATE_REundTIME_REanpassen. - Oberfläche und Emotionsliste nur auf Deutsch.
Lizenz
MIT — siehe LICENSE.
static/nx.png ist ein Logo und nicht von der Lizenz gedeckt.
static/spacegrotesk.woff2 steht unter der SIL Open Font License 1.1
(siehe static/SCHRIFT.md).