Commit Graph
20 Commits
Author SHA1 Message Date
Claude b802a3c95f Authentification : login/mot de passe (admin/admin par défaut)
- Page de connexion, session 7 jours par cookie HMAC signé (secret persisté)
- Protection de l'API (401) et du WebSocket (code 4401), / redirige vers /login
- Bouton de déconnexion, redirection automatique à l'expiration de session
- Identifiants configurables via LIVEFLOW_USER / LIVEFLOW_PASSWORD

https://claude.ai/code/session_01YHMp3EKzr4s6o8w1ygxuUe
2026-06-12 12:43:39 +00:00
Claude c9b4094049 Correction du crash en boucle de l'ASR : command en liste à élément unique
Avec entrypoint bash -c, une command en chaîne YAML est découpée en
plusieurs arguments et bash n'exécutait que le premier echo (exit 0,
restart loop).

https://claude.ai/code/session_01YHMp3EKzr4s6o8w1ygxuUe
2026-06-12 12:37:41 +00:00
Claude 27c63566df ASR : marqueurs de log au démarrage pour vérifier l'installation des décodeurs
https://claude.ai/code/session_01YHMp3EKzr4s6o8w1ygxuUe
2026-06-12 12:35:23 +00:00
Claude a8a8d84923 ASR : installation des décodeurs audio (soundfile, librosa) au démarrage de vLLM
L'image officielle vllm/vllm-openai ne contient pas les extras audio, ce qui
faisait échouer /v1/audio/transcriptions en 400 'Invalid or unsupported
audio file'.

https://claude.ai/code/session_01YHMp3EKzr4s6o8w1ygxuUe
2026-06-12 11:36:46 +00:00
Claude b32119d5c0 Diagnostic : vumètre micro dans l'interface et logs serveur des segments/transcriptions
https://claude.ai/code/session_01YHMp3EKzr4s6o8w1ygxuUe
2026-06-12 11:10:47 +00:00
Claude 480a380dde Micro : nouvel essai avec contrainte minimale si getUserMedia échoue
https://claude.ai/code/session_01YHMp3EKzr4s6o8w1ygxuUe
2026-06-12 11:03:31 +00:00
Claude 09c76508d7 CI : construire l'image à chaque push (retrait du filtre paths)
https://claude.ai/code/session_01YHMp3EKzr4s6o8w1ygxuUe
2026-06-12 10:58:02 +00:00
Claude 80176e9f82 ASR : repli automatique sans le paramètre language refusé par certains moteurs
vLLM avec Qwen3-ASR peut répondre 400 quand 'language' est fourni. L'app
retente alors en détection automatique, et les erreurs ASR remontent
désormais avec le corps de la réponse pour faciliter le diagnostic.
Ajout du favicon (404 dans la console).

https://claude.ai/code/session_01YHMp3EKzr4s6o8w1ygxuUe
2026-06-12 09:33:40 +00:00
Claude b8bef6327f Retrait de Watchtower : mise à jour via docker compose pull
https://claude.ai/code/session_01YHMp3EKzr4s6o8w1ygxuUe
2026-06-12 09:23:15 +00:00
Claude de817e189e Mises à jour automatiques : image publiée sur ghcr.io via GitHub Actions + Watchtower
- Workflow build-image.yml : construit et pousse ghcr.io/r0m1k3/liveflow à
  chaque modification de app/
- Compose Unraid : image préconstruite au lieu du build local, service
  watchtower scopé par label pour redéployer l'app automatiquement

https://claude.ai/code/session_01YHMp3EKzr4s6o8w1ygxuUe
2026-06-12 09:04:07 +00:00
Claude 16f41d6303 Option LIVEFLOW_TLS=off pour servir en HTTP derrière un reverse proxy existant
https://claude.ai/code/session_01YHMp3EKzr4s6o8w1ygxuUe
2026-06-12 09:01:26 +00:00
Claude 71ee13f845 Frontend : message d'erreur micro détaillé selon la cause (NotReadableError, etc.)
https://claude.ai/code/session_01YHMp3EKzr4s6o8w1ygxuUe
2026-06-12 09:00:15 +00:00
Claude 8ba9cfb234 ASR : limite --max-model-len à 8192 pour tenir dans le cache KV du GPU
Par défaut vLLM réserve le contexte max du modèle (65k tokens = 7 Go de KV
cache), ce qui dépasse la mémoire restante après chargement des poids sur
les GPU modestes. 8192 tokens sont très largement suffisants pour des
segments audio de 25 s.

https://claude.ai/code/session_01YHMp3EKzr4s6o8w1ygxuUe
2026-06-12 07:06:10 +00:00
Claude 3c83b67538 Suppression de Caddy : l'app sert directement le HTTPS auto-signé
Un conteneur de moins. Le HTTPS reste nécessaire pour l'accès micro
(getUserMedia) depuis un autre appareil : certificat auto-signé généré au
démarrage pour LIVEFLOW_HOST, servi par uvicorn.

https://claude.ai/code/session_01YHMp3EKzr4s6o8w1ygxuUe
2026-06-11 22:52:41 +00:00
Claude 0101452bc1 Correction ERR_SSL_PROTOCOL_ERROR : certificat généré pour l'adresse du serveur
Un site catch-all :443 avec tls internal ne génère aucun certificat, ce qui
fait échouer la négociation TLS. Le Caddyfile prend désormais l'adresse via
LIVEFLOW_HOST (+ default_sni pour les connexions par IP, sans SNI).

https://claude.ai/code/session_01YHMp3EKzr4s6o8w1ygxuUe
2026-06-11 22:42:21 +00:00
Claude b986b23693 Unraid : suppression du port HTTP 8088 (conflit fréquent, redirection inutile)
https://claude.ai/code/session_01YHMp3EKzr4s6o8w1ygxuUe
2026-06-11 22:37:18 +00:00
Claude a2f7398076 Ajout du docker-compose dédié Unraid
https://claude.ai/code/session_01YHMp3EKzr4s6o8w1ygxuUe
2026-06-11 21:54:31 +00:00
Claude a8517c3597 Implémentation complète de LiveFlow (proposition 2, moteur Qwen3-ASR)
- docker-compose : Caddy (HTTPS local) + app FastAPI + Qwen3-ASR via vLLM (GPU)
- Backend : WebSocket audio, segmentation VAD (WebRTC), appel ASR compatible
  OpenAI, stockage SQLite, exports TXT/MD/SRT/JSON
- Frontend : capture micro (AudioWorklet, rééchantillonnage 16 kHz),
  transcription live, historique des réunions, copie et téléchargement
- README : démarrage, prérequis GPU, changement de moteur ASR

https://claude.ai/code/session_01YHMp3EKzr4s6o8w1ygxuUe
2026-06-11 16:28:17 +00:00
Claude 4fa5964988 Ajout du comparatif 2026 des moteurs ASR locaux (Qwen3-ASR, Parakeet, Whisper...)
https://claude.ai/code/session_01YHMp3EKzr4s6o8w1ygxuUe
2026-06-11 16:20:34 +00:00
Claude b1551fe5f8 Ajout des 3 propositions d'architecture pour LiveFlow
https://claude.ai/code/session_01YHMp3EKzr4s6o8w1ygxuUe
2026-06-11 16:17:17 +00:00