Django internet radio player
Find a file
mrwnslz 38d7f6c643 Podcasts: Kapitel aus dem ID3-Tag der Audiodatei, Transkripte
- Ohne Kapitel im Feed (kein PSC, keine chapters_url oder dort nichts)
  liest die Folgen-Detailansicht einmalig den ID3v2-Tag am Anfang der
  Audiodatei (Range-Anfrage, höchstens 4 MB, Weiterleitungen mit
  SSRF-Prüfung) und übernimmt dessen CHAP-Frames (v2.3/v2.4,
  Unsynchronisation, erweiterter Header, Synchsafe-Größen, CTOC-Reihenfolge).
  Eigener Parser nach der ID3-Spezifikation; Ergebnis wird wie die
  JSON-Kapitel zwischengespeichert, vorübergehende Fehler nicht.
- Neu: GET /podcasts/episodes/<id>/transcript/ holt das beste Transkript
  (JSON vor VTT vor SRT, Deutsch bzw. ohne Sprachangabe vor Englisch),
  zerlegt es in Abschnitte {start, end, speaker, text}, fasst kurze
  Schnipsel desselben Sprechers bis zum Satzende bzw. ~30 s zusammen und
  speichert das Ergebnis (eigene Tabelle EpisodeTranscript). HTML: 404
  {"error": "unsupported"}.
- Folgen-Detail liefert zusätzlich has_transcript.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-02 09:54:03 +02:00
.forgejo/workflows CI: auf Python 3.12 heben, damit gegen das getestet wird, was ausgeliefert wird 2026-08-28 08:56:37 +00:00
accounts API-Token: Anfragen mit Bearer-Token brauchen kein CSRF-Token 2026-09-29 19:33:18 +02:00
books Bücher: Cloud-Import aus WebDAV/Nextcloud (SW v41) 2026-08-28 08:26:22 +00:00
diora Default-Lautstärke auf 40% senken 2026-09-04 12:30:58 +02:00
e2e Reader/UI: mehrere Fixes + Playwright-Setup (SW v21) 2026-08-04 09:01:52 +02:00
gpodder Podcasts: Inbox und Gehört wie in AntennaPod 2026-10-02 08:26:28 +02:00
podcasts Podcasts: Kapitel aus dem ID3-Tag der Audiodatei, Transkripte 2026-10-02 09:54:03 +02:00
radio Add thumbs up/down for creamfresh radio, hardcoded to that station 2026-09-04 11:38:34 +02:00
static Podcasts: Position in der Warteschlange einstellbar; Feeds nur noch auf dem Server holen (SW v51) 2026-10-02 07:26:16 +02:00
templates Radio: Stream-Adresse ins Suchfeld einfügen; Favoriten-Stern reparieren (SW v50) 2026-09-29 20:33:34 +02:00
tts Vorlesen: Sprachauswahl DE/EN mit englischer Piper-Stimme (SW v43) 2026-09-01 07:04:27 +02:00
.env.example Bücher: Cloud-Import aus WebDAV/Nextcloud (SW v41) 2026-08-28 08:26:22 +00:00
.gitignore Vorlesen-Funktion im Reader: Piper/Thorsten-TTS (SW v42) 2026-08-31 22:29:13 +02:00
docker-compose.yml Add podcast feature with feed management, Docker cron, and ebook reader assets 2026-03-19 13:39:59 +01:00
Dockerfile Vorlesen: Sprachauswahl DE/EN mit englischer Piper-Stimme (SW v43) 2026-09-01 07:04:27 +02:00
Dockerfile.cron Fix cron container: switch dcron→cron, export env vars for cron jobs 2026-03-20 09:16:29 +01:00
manage.py Initial commit 2026-03-16 19:19:22 +01:00
package-lock.json Reader/UI: mehrere Fixes + Playwright-Setup (SW v21) 2026-08-04 09:01:52 +02:00
package.json Reader/UI: mehrere Fixes + Playwright-Setup (SW v21) 2026-08-04 09:01:52 +02:00
playwright.config.js Reader/UI: mehrere Fixes + Playwright-Setup (SW v21) 2026-08-04 09:01:52 +02:00
requirements.txt Vorlesen-Funktion im Reader: Piper/Thorsten-TTS (SW v42) 2026-08-31 22:29:13 +02:00