Michael and Claude Fable 5
ad107ed284
Dictée vocale : micro dans la carte de saisie, whisper.cpp local
...
Un bouton micro dans la carte de saisie : un clic enregistre, un second
arrête, transcrit et pose le texte dans le champ sans écraser ce qui s'y
trouve. Anneau rouge pulsé pendant l'enregistrement, garde-fou à 90 s.
La transcription est 100 % locale : POST /api/transcribe → whisper-cli
(whisper.cpp, compilé CPU en statique dans une étape dédiée du Dockerfile).
Le modèle ggml-small-q5_1 (~190 Mo, multilingue) n'est pas dans l'image :
téléchargé au premier usage dans /data/whisper/ avec progression (503
{downloading, pct} en attendant), il survit aux recréations du conteneur.
L'audio est encodé en WAV 16 kHz mono côté navigateur (whisper.cpp ne lit
que du PCM) — pas de ffmpeg dans l'image. Le micro n'existe qu'en contexte
sécurisé (HTTPS ou localhost) : le bouton l'explique au lieu d'échouer en
silence.
Vérifié bout en bout avec le binaire whisper.cpp officiel : téléchargement
du modèle par le handler, puis une sinusoïde 440 Hz transcrite « (beeping) ».
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-20 19:52:38 +02:00
..
2026-08-19 08:08:41 +02:00
2026-08-20 19:52:38 +02:00
2026-08-14 21:33:15 +00:00
2026-08-20 09:31:59 +00:00
2026-08-14 21:37:51 +00:00
2026-08-16 11:02:35 +00:00
2026-08-14 21:37:51 +00:00
2026-08-20 09:31:59 +00:00
2026-08-16 20:43:47 +00:00
2026-08-18 21:58:04 +02:00
2026-08-16 20:43:47 +00:00
2026-08-14 21:33:15 +00:00
2026-08-20 10:32:44 +00:00
2026-08-20 10:32:44 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-19 08:28:53 +02:00
2026-08-14 21:33:15 +00:00
2026-08-20 10:32:44 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-20 10:32:44 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-16 20:43:47 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-20 09:31:59 +00:00
2026-08-19 07:47:41 +02:00
2026-08-14 21:33:15 +00:00
2026-08-15 11:54:52 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-20 15:50:51 +02:00
2026-08-16 15:33:55 +00:00
2026-08-16 15:33:55 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-15 14:43:41 +00:00
2026-08-19 08:08:41 +02:00
2026-08-18 21:58:57 +02:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-20 09:31:59 +00:00
2026-08-16 15:33:55 +00:00
2026-08-20 09:31:59 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:47:57 +00:00
2026-08-18 21:58:57 +02:00
2026-08-18 21:58:57 +02:00
2026-08-20 09:31:59 +00:00
2026-08-20 09:31:59 +00:00
2026-08-18 21:58:57 +02:00
2026-08-20 09:31:59 +00:00
2026-08-18 21:58:57 +02:00
2026-08-20 09:31:59 +00:00
2026-08-18 21:58:57 +02:00
2026-08-18 21:58:57 +02:00
2026-08-18 21:58:57 +02:00
2026-08-18 21:58:57 +02:00
2026-08-20 09:31:59 +00:00
2026-08-18 21:58:57 +02:00
2026-08-19 08:11:38 +02:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-18 08:56:32 +00:00
2026-08-18 08:56:32 +00:00
2026-08-20 09:31:59 +00:00
2026-08-20 08:49:09 +00:00
2026-08-20 08:49:09 +00:00
2026-08-16 19:45:43 +00:00
2026-08-16 19:45:43 +00:00
2026-08-14 21:33:15 +00:00
2026-08-15 14:36:04 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-18 21:58:57 +02:00
2026-08-20 09:31:59 +00:00
2026-08-18 10:53:09 +00:00
2026-08-17 10:06:14 +02:00
2026-08-17 10:06:14 +02:00
2026-08-14 21:33:15 +00:00
2026-08-18 22:09:37 +02:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:37:51 +00:00
2026-08-14 21:37:51 +00:00
2026-08-20 09:31:59 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-16 19:45:43 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-20 17:16:55 +02:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-20 09:31:59 +00:00
2026-08-16 18:15:24 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-18 21:58:04 +02:00
2026-08-19 08:28:53 +02:00
2026-08-19 08:28:53 +02:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-18 23:19:21 +02:00
2026-08-18 23:19:21 +02:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-18 21:58:57 +02:00
2026-08-18 21:58:57 +02:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:37:51 +00:00
2026-08-14 21:37:51 +00:00
2026-08-14 21:37:51 +00:00
2026-08-14 21:37:51 +00:00
2026-08-20 09:31:59 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-15 11:07:45 +00:00
2026-08-20 09:31:59 +00:00
2026-08-20 09:31:59 +00:00
2026-08-20 09:31:59 +00:00
2026-08-20 09:31:59 +00:00
2026-08-20 09:31:59 +00:00
2026-08-20 09:31:59 +00:00
2026-08-14 21:33:15 +00:00
2026-08-19 07:21:21 +02:00
2026-08-16 19:45:43 +00:00
2026-08-14 21:33:15 +00:00
2026-08-20 09:31:59 +00:00
2026-08-18 08:35:51 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-16 20:43:47 +00:00
2026-08-14 21:33:15 +00:00
2026-08-16 15:33:55 +00:00
2026-08-18 22:48:11 +02:00
2026-08-18 22:48:11 +02:00
2026-08-16 15:33:55 +00:00
2026-08-20 10:32:44 +00:00
2026-08-14 21:33:15 +00:00
2026-08-14 21:33:15 +00:00
2026-08-16 20:43:47 +00:00
2026-08-15 11:35:40 +00:00
2026-08-16 19:45:43 +00:00
2026-08-16 19:45:43 +00:00
2026-08-20 19:52:38 +02:00
2026-08-14 21:33:15 +00:00
2026-08-20 09:31:59 +00:00
2026-08-20 19:52:38 +02:00
2026-08-16 15:33:55 +00:00
2026-08-16 15:33:55 +00:00