Parler, c'est juste plus simple.
Parlez librement, le texte apparaît instantanément sur Wayland (compatible X11) — dictée vocale 100 % locale pour Linux avec 25+ langues, 5 backends de traduction, diarisation des locuteurs et retour visuel en temps réel. Le texte s'écrit directement à l'endroit de votre curseur.
Qu'est-ce que dictée ? • Configuration matérielle • Démarrage rapide • Fonctionnalités • Installation • Configuration • Utilisation • Post-traitement • Limitations • Feuille de route • Wiki
dictée est un système complet de dictée vocale pour Linux. Appuyez sur un raccourci, parlez, et le texte est tapé directement dans l'application active — n'importe quelle application, n'importe quelle fenêtre, n'importe quel champ de saisie.
La transcription est effectuée 100 % localement par défaut : aucun audio ne quitte votre machine à moins que vous ne choisissiez explicitement un backend de traduction en ligne.
- 100 % traitement local par défaut — aucun audio ne quitte la machine sauf si vous activez explicitement un backend cloud de traduction. Modèles ONNX figés, pas d'entraînement sur vos données.
- 4 backends ASR au choix — Parakeet-TDT et Canary tournent comme binaires Rust natifs (ONNX Runtime, latence GPU faible), faster-whisper (99 langues) et Vosk (CPU léger) en Python. Bascule transparente via socket Unix selon langue, latence ou matériel. → 4 backends ASR
- 5 backends de traduction au choix — du 100 % local (Canary, LibreTranslate, Ollama) au cloud (Google, Bing), avec un tableau de confidentialité explicite pour chaque option. → Backends de traduction
- Pas de limite de durée sur les fichiers audio — le pipeline découpé livré en v1.3 (
dictee-transcribe) diarise une keynote de 54 min en 122 s sur un GPU 8 Go, là où le chargement direct du mel plafonne à 10-15 min. Idéal pour les comptes rendus de réunion et les interviews longues. - Intégration Linux native — plasmoid KDE Plasma 6 + icône systray PyQt6 (compatible GNOME, XFCE, Sway via repli AppIndicator).
| Backend | RAM mini | CPU mode | GPU | Disque |
|---|---|---|---|---|
| Parakeet-TDT (par défaut) | 4 Go | Oui — ~0,8 s par énoncé (CPU récent) | NVIDIA 4 Go+ VRAM (~5× plus rapide) | 3 Go |
| Canary-1B v2 | 6 Go | Non — encodeur trop lourd | NVIDIA 6 Go+ VRAM requis | 6 Go |
| faster-whisper | 4 Go | Oui — turbo ou small |
NVIDIA 4 Go+ VRAM (large-v3) |
3 Go |
| Vosk | 2 Go | Oui — par design | — | 50 Mo |
Distributions testées : Ubuntu 22.04 / 24.04 · Debian 12 · Fedora 40 / 44 · openSUSE Tumbleweed · Arch Linux · KDE Neon.
Environnements de bureau : KDE Plasma 6 (intégration complète via plasmoid natif) · GNOME, Xfce, Cinnamon (systray uniquement — GNOME requiert l'extension AppIndicator).
Trois étapes pour passer de zéro à la dictée en moins de deux minutes :
1. Installer
curl -fsSL https://raw.githubusercontent.com/rcspam/dictee/master/install.sh | bashVous préférez auditer le script avant exécution ?
install.shetinstall.sh.sha256sont publiés comme assets de la release — téléchargez les deux, vérifiez avecsha256sum -c install.sh.sha256, lisez le script, puis lancez-le.
2. Configurer
L'assistant de premier lancement vous guide pour la sélection du backend, le téléchargement du modèle et l'association du raccourci clavier. Relancez à tout moment via dictee --setup.
3. Parler
Appuyez sur votre raccourci (par défaut F9), parlez, relâchez. La transcription apparaît au curseur.
Pour les chemins d'installation détaillés (.deb/.rpm manuels, prérequis GPU, AUR, depuis les sources), voir la section Installation ci-dessous ou les pages wiki Installation et GPU-Setup.
| Backend | Langues | Taille modèle | Latence chaude | Notes |
|---|---|---|---|---|
| Parakeet-TDT 0.6B v3 | 25 | ~2,5 Go | ~0,8s CPU · ~0,16s GPU | Par défaut, ponctuation native |
| Canary-1B v2 | 25 | ~5 Go | ~0,7s GPU | Traduction intégrée (25 ↔ EN, 48 paires) |
| faster-whisper | 99 | ~500 Mo–3 Go | ~0,3s | Large couverture linguistique |
| Vosk | 20+ | ~50 Mo | ~1,5s | Léger, strictement hors ligne |
Chaque backend tourne comme service systemd utilisateur avec le même protocole socket Unix — le changement est transparent. → Wiki ASR-Backends
dictée utilise Parakeet-TDT 0.6B v3 par défaut. Sur l'Open ASR Leaderboard, il devance Whisper-large-v3 sur le multilingue tout en étant nettement plus petit et plus rapide :
| Modèle | Taille | WER anglais | FLEURS multilingue (moy.) | Vitesse relative |
|---|---|---|---|---|
| Parakeet-TDT 0.6B v3 (défaut dictée) | 600M | ~6,5 % | 12,0 % | ~10× Whisper-large-v3 |
| Whisper-large-v3 | 1,55B | 7,4 % | 12,6 % | référence |
| Canary-1B v2 (également fourni) | 1B | 7,2 % | – | ~5× Whisper-large-v3 |
| Whisper-large-v3-turbo | 809M | ~7,8 % | – | ~3-4× |
| Vosk (fallback CPU) | 50 Mo | ~12-18 % | – | – |
Parakeet-TDT v3 est particulièrement bon sur le français, le grec, l'estonien et le maltais. Pour une couverture maximale (99 langues), basculer sur faster-whisper ; pour la traduction intégrée, sur Canary-1B.
Sources : NVIDIA Parakeet-TDT v3 · Open ASR Leaderboard 2025.
| Backend | Confidentialité | Vitesse | Qualité | Langues |
|---|---|---|---|---|
| Canary-1B | 🔒 Local | Intégré | Excellente | 4 |
| LibreTranslate * | 🔒 Local | 0,1–0,3s | Bonne | 30+ |
| Ollama | 🔒 Local | 2–3s | Excellente | Toutes (LLM) |
| Google Translate | 🌐 Cloud | 0,2–0,7s | Excellente | 130+ |
| Bing Translator | 🌐 Cloud | 1,7–2,2s | Très bonne | 100+ |
* LibreTranslate a besoin de Docker, que dictee n'installe pas à votre place.
Installez-le avec sudo apt install docker.io (Debian/Ubuntu), sudo dnf install moby-engine
(Fedora) ou sudo pacman -S docker (Arch), puis rouvrez la page Traduction de
dictee-setup. Tous les autres backends, et dictée elle-même, fonctionnent sans Docker.
→ Wiki Translation · Ollama-Setup
Un pipeline configurable en 12 étapes transforme la sortie ASR brute avant qu'elle n'atteigne votre curseur :
- Règles regex + dictionnaire — 7 langues, variantes ASR, commandes vocales → Rules-and-Dictionary
- Correction LLM — polissage optionnel de la fluidité via Ollama local (position first / last / hybrid) → LLM-Correction
- Nombres & dates — cardinaux, ordinaux, versions, décimales, heures en français → Numbers-Dates-Continuation
- Tampon de continuation — continuer une phrase entre deux dictées avec mémoire du dernier mot
- Short-text keepcaps — exceptions par langue pour sigles et noms propres (nouveauté v1.3)
Répond à la question « qui a parlé et quand ? » dans les enregistrements multi-locuteurs via le modèle Sortformer de NVIDIA. Jusqu'à 4 locuteurs, idéal pour les comptes rendus de réunion et les interviews. Déclenché via le mode Meeting ou dictee --meeting. → Wiki Diarization
Le push-to-talk reste le flux principal de dictée, mais la fenêtre dictee-transcribe livrée avec l'application gère aussi la transcription hors-ligne de tout fichier audio ou vidéo que vous avez déjà. Interface multi-onglets, lecteur audio synchronisé sur la timeline, traduction et analyse LLM par onglet, export en PDF / SRT / JSON / Markdown.
- N'importe quel format d'entrée (mp3, mp4, wav, opus, flac, mkv…) — converti automatiquement via ffmpeg
- Multi-onglets — gardez la transcription d'origine côte à côte avec ses traductions et ses analyses LLM (synthèse, chapitrage, correction ASR…)
- Diarisation des locuteurs intégrée — activez le toggle, jusqu'à 4 locuteurs étiquetés et renommables
- Analyse LLM — 14 providers configurables côte à côte (Ollama, OpenAI, Claude, Gemini, Mistral, DeepSeek, Groq, Cerebras, OpenRouter…)
- Traduction par onglet — Canary / LibreTranslate / Ollama / Google / Bing
- Widget KDE Plasma 6 — plasmoid QML natif, 5 styles d'animation, état en direct → Plasmoid-Widget
- Icône systray — PyQt6, fonctionne sur GNOME/XFCE/Sway (repli AppIndicator) → Tray-Icon
- animation-speech (externe) — overlay plein écran sur compositeurs
wlr-layer-shell
Les trois interfaces partagent leur état via un surveillant de fichier — toute modification est reflétée instantanément (sûr en multi-utilisateur via suffixe UID).
animation-speech est un projet autonome qui fournit une animation visuelle plein écran pendant l'enregistrement, annulable via la touche Échap. Il fonctionne sur tout compositeur Wayland qui supporte wlr-layer-shell (KDE Plasma, Sway, Hyprland…).
sudo dpkg -i animation-speech_1.2.0_all.debTéléchargement : releases animation-speech
Note : animation-speech n'est pas compatible avec GNOME (pas de support
wlr-layer-shell). Les utilisateurs GNOME peuvent s'appuyer surdictee-traypour le retour visuel. Les contributions pour une extension GNOME Shell sont bienvenues — voir la source du plasmoid comme architecture de référence.
Détecte automatiquement votre distribution et votre GPU, ajoute le dépôt CUDA NVIDIA si nécessaire, installe le bon paquet :
curl -fsSL https://raw.githubusercontent.com/rcspam/dictee/master/install.sh | bashPris en charge : Ubuntu, Debian, Fedora, openSUSE, Arch Linux. Les autres distributions basculent sur le tarball.
Options (après --) :
# Forcer CPU (ignorer la détection GPU)
curl -fsSL https://raw.githubusercontent.com/rcspam/dictee/master/install.sh | bash -s -- --cpu
# Forcer GPU (CUDA)
curl -fsSL https://raw.githubusercontent.com/rcspam/dictee/master/install.sh | bash -s -- --gpu
# Épingler une version précise
curl -fsSL https://raw.githubusercontent.com/rcspam/dictee/master/install.sh | bash -s -- --version 1.3.6
# Non interactif
curl -fsSL https://raw.githubusercontent.com/rcspam/dictee/master/install.sh | bash -s -- --non-interactiveTéléchargez depuis Releases.
Ubuntu / Debian (CPU) :
sudo apt install ./dictee-cpu_1.3.6-1_amd64.debUbuntu / Debian (GPU) : nécessite le dépôt APT CUDA NVIDIA — voir GPU-Setup pour la configuration unique, puis :
sudo apt install ./dictee-cuda_1.3.6-1_amd64.debFedora / openSUSE (CPU) :
sudo dnf install ./dictee-cpu-1.3.6-1.x86_64.rpmFedora / openSUSE (GPU) : ajoutez d'abord le dépôt CUDA (voir GPU-Setup), puis dictee-cuda-1.3.6-1.x86_64.rpm.
Arch Linux (AUR) : PKGBUILD à la racine du dépôt (x86_64 + aarch64). Clonez + makepkg -si.
aarch64 / Jetson : pas de paquet pré-construit — compilez depuis les sources. CUDA limité aux cartes NVIDIA Jetson.
Autres distros (tarball) :
tar xzf dictee-1.3.6_amd64.tar.gz
cd dictee-1.3.6
sudo ./install.shDepuis les sources : cargo build --release --features sortformer puis sudo ./install.sh. Voir Developer-Guide pour la liste complète des features Cargo et les scripts de build.
Au premier lancement, un assistant de configuration vous guide (backend, modèle, raccourcis).
Reconfigurez à tout moment depuis le menu de l'application, l'icône systray, le widget Plasma, ou en lançant :
dictee --setup# Afficher les backends actuels
dictee-switch-backend status
# Changer l'ASR (parakeet · canary · whisper · vosk)
dictee-switch-backend asr canary
# Changer la traduction (canary · libretranslate · ollama · google · bing)
dictee-switch-backend translate ollamaLe systray et le plasmoid incluent des sous-menus de backend — pas besoin de terminal.
Pour la configuration détaillée (tous les backends ASR, matrice de traduction, réglages plasmoid, raccourcis sur WM en mosaïque), voir le wiki :
- ASR-Backends · Translation
- Plasmoid-Widget · Tray-Icon
- Keyboard-Shortcuts (KDE/GNOME/Sway/i3/Hyprland)
# Dictée simple — transcrire et taper
dictee
# Dictée + traduction (par défaut : langue système → anglais)
dictee --translate
dictee --translate --ollama # 100 % local via Ollama
# Changer la langue cible
DICTEE_LANG_TARGET=es dictee --translate # → espagnol
# Mode réunion (diarisation, jusqu'à 4 locuteurs)
dictee --meeting
# Annuler une dictée en cours
dictee --cancel
# Tester les règles de post-traitement en direct
dictee-test-rules # interactif
dictee-test-rules --loop # boucle continue
dictee-test-rules --wav fichier.wav # depuis un fichier audio→ Référence complète des commandes : Wiki CLI-Reference
dictée exécute un pipeline configurable de 12 étapes après transcription et avant collage :
- Normalisation des variantes ASR
- Substitution du dictionnaire
- Conversion nombres & dates
- Fusion avec le tampon de continuation
- Règles regex (pré-LLM)
- Correction LLM (optionnelle, position first)
- Règles regex (post-LLM)
- Exceptions short-text (keepcaps)
- Mode de correspondance étendu
- Capitalisation finale
- Traduction (optionnelle)
- Collage / injection
Configurez via dictee --setup → onglet Post-traitement, ou testez les règles en direct avec dictee-test-rules.
→ Approfondissements : Post-Processing-Overview · Rules-and-Dictionary · LLM-Correction · Numbers-Dates-Continuation
- Durée de la dictée live : la transcription de fichiers n'a aucune limite de durée —
dictee-transcribedécoupe n'importe quelle longueur (keynote de 54 min diarisée en ~122 s sur 8 Go). La dictée live continue (push-to-talk maintenu) est plafonnée par backend — Parakeet ~4 min 30, Canary ~2 min 30 ; Whisper et Vosk sans limite. Au-delà, l'enregistrement est sauvegardé et ouvert dansdictee-transcribe. La v1.4 prévoit d'étendre le pipeline découpé à la dictée live. → Wiki Diarization - Nombre de locuteurs : la diarisation étiquette jusqu'à 4 locuteurs (Sortformer de NVIDIA) ; cette limite devrait être levée en v1.4.
- GPU AMD / Intel non pris en charge actuellement — dictée bascule sur CPU.
- Pas de streaming temps réel — Parakeet-TDT et Canary nécessitent l'utterance complète ; seul Nemotron (EN uniquement, via binaire Rust) streame nativement.
Pour les rapports de bugs et contournements, voir Troubleshooting.
v1.4+ (prévu)
- Hotword boosting — biaiser le décodage ASR vers des noms personnalisés (shallow fusion sur les logits TDT, Parakeet uniquement)
- Whisper translate — traduction multi-cible via
task="translate"(EN uniquement, hors ligne) - Backend Moonshine CPU
- CLI speech-to-text — piper de l'audio, récupérer du texte
- VAD — dictée mains libres sans push-to-talk
- Transcription streaming avec affichage en direct
- Overlay intégré — remplacer
animation-speechexterne - Packaging AppImage / Flatpak
- Applets COSMIC / GNOME Shell (contributions bienvenues !)
v1.3.6 (actuelle) : compatibilité input-remapper + correction de la disposition clavier :
- Fonctionne avec input-remapper (#19, #20) : la dictée ne perd plus de texte et le push-to-talk ne casse plus quand input-remapper est installé. Deux nouvelles options avancées (délai de frappe, exclusion de périphériques) sur la page Extra options.
- Caractères corrects sur toutes les dispositions clavier : dictee détecte désormais votre disposition active (KDE/GNOME) pour que le texte tapé y corresponde, corrigeant les accents perdus et les lettres permutées sur les claviers non-US.
v1.3.5 — Modèle Parakeet Int8 + corrections + fiabilité :
- Nouveau modèle Parakeet Int8 — plus réactif sur CPU — meilleures performances par défaut, et le modèle Parakeet compact tourne désormais là où il est le plus rapide.
- Bascule GPU/CPU plus claire — le sélecteur GPU/CPU des réglages se grise et affiche CPU dès que le GPU n'est pas réellement utilisable (pas de carte NVIDIA, build CPU, ou le modèle int8), pour toujours refléter ce qui tourne vraiment.
- Changement de modèle plus fluide — la bascule int8 / FP32 devient disponible dès que les deux variantes sont installées, avec une notification confirmant chaque changement.
- Correction de la saisie push-to-talk (#8) — le dernier caractère ne se répète plus après un moment de dictée, sur les configurations à plusieurs claviers ou sous Wayland.
- Push-to-talk avec outils de remapping (#10) — les remappeurs de clavier comme logiops, keyd et kanata peuvent désormais déclencher la dictée, avec une nouvelle option dans les réglages.
- Le push-to-talk ne fige plus la souris — sur certaines configurations clavier/souris, le push-to-talk pouvait bloquer le pointeur jusqu'à la désinstallation ; il laisse désormais les périphériques de pointage tranquilles.
- Téléchargements de modèles plus sûrs — un téléchargement interrompu est maintenant détecté, au lieu de laisser un modèle corrompu qui échouait silencieusement au démarrage suivant.
- Whisper plus fiable — meilleure sélection automatique CPU/GPU et moins de mots inventés dans la transcription.
- Widget de bureau plus léger — consommation CPU réduite au repos.
- Et des corrections plus petites — réglages mieux conservés, compatibilité Fedora élargie, et diarisation des locuteurs plus stable.
v1.3.4 — Transcription découpée universelle + durcissement UX de dictee-transcribe :
- Transcription découpée universelle dans
dictee-transcribe— les fichiers de toute durée sont désormais découpés automatiquement en chunks de 180 s sur tout hôte (CPU et GPU). Nouveau cap par backend sur la durée de dictée live (Canary 2:30, Parakeet 4:30 ; Whisper / Vosk sans cap) pour éviter les crashes silencieux. - Durcissement de 5 points UI ciblés par onglet dans
dictee-transcribe— éditeur de texte, panneau de renommage, markers timeline, swap audio du lecteur, et rendu de la transcription ne mettent désormais à jour l'UI globale que si l'onglet cible est visible. Plus de corruption cross-onglet quand on transcrit un fichier tout en relisant un autre. - Statuts de skip traduction visibles — les cas de skip silencieux affichent désormais un message de statut coloré (i18n en 6 langues : fr / de / es / it / pt / uk).
- La diarisation bascule sur Parakeet + Sortformer standalone quand le daemon PTT est Canary — évite la mistranscription silencieuse sur les fichiers dont la langue ≠
DICTEE_LANG_SOURCE(le daemon Canary est verrouillé au démarrage). Le binaire standalone coûte ~5–10 s de chargement modèle supplémentaire. - Timeout de lecture socket porté de 30 → 120 s pour les gros fichiers.
- Warning de fallback GPU supprimé quand stderr est redirigé.
- Raccourci par défaut du cheatsheet désormais « Même touche + Maj » (était « Désactivé »).
- Nettoyage des fichiers d'état PTT / dictee périmés au prochain F9 (récupère après un daemon tué en plein vol, OOM, signal).
v1.3.0 → v1.3.3 — La série v1.3. Apports majeurs par rapport à la v1.2 :
dictee-transcribe— fenêtre dédiée pour la transcription hors-ligne de fichiers audio/vidéo (lecteur timeline, multi-onglets, traduction et analyse LLM par onglet, export PDF / SRT / JSON / Markdown).- Diarisation des locuteurs jusqu'à 4 locuteurs via NVIDIA Sortformer, plus un pipeline découpé qui lève la limite VRAM sur les fichiers longs (keynote de 54 min diarisée en 122 s).
- Analyse LLM sur les transcriptions diarisées — synthèse, chapitrage, correction ASR ; 14 providers configurables côte à côte (Ollama, OpenAI, Claude, Gemini, Mistral, DeepSeek, Groq, Cerebras, OpenRouter…).
- Backend ASR Canary-1B v2 (NVIDIA AED) avec traduction native sur 12 paires intra-modèle.
- Libs CUDA portables via venv pip au postinst — plus besoin du dépôt NVIDIA.
- Fallback automatique CUDA → CPU au runtime + override
DICTEE_FORCE_CPU=1(v1.3.2). - Cohérence du packaging cross-distro — hooks de groupes
.installArch,python-evdeven dépendance dure, wrapperssg docker/sg input, règle udev0660directe (v1.3.3, clôture #5 + #6). - Exceptions keepcaps short-text (7 langues), mode de correspondance étendu, dictée des numéros de version, sûreté multi-utilisateur, toggles cross-process du plasmoid, 682 tests postprocess + 148 tests pipeline (v1.3.0).
→ Historique complet : Wiki Changelog
Le moteur de transcription s'appuie sur parakeet-rs par Enes Altun — bibliothèque Rust pour l'inférence NVIDIA Parakeet via ONNX Runtime. L'implémentation Rust du backend Canary a initialement été portée depuis onnx-asr par Ivan Stupakov et est désormais entièrement autonome. Les modèles ONNX Parakeet et Canary sont fournis par NVIDIA (téléchargés séparément depuis HuggingFace, non redistribués par ce projet).
La simulation de saisie clavier utilise dotool par geb (GPL-3.0).
Ce projet est distribué sous licence GPL-3.0-or-later (voir LICENSE).
Le code original parakeet-rs par Enes Altun est sous licence MIT (voir LICENSE-MIT). dotool est inclus sous GPL-3.0.









