-
Notifications
You must be signed in to change notification settings - Fork 2
fr Troubleshooting
🌐 Langue : English | Français
Problèmes courants, leurs symptômes et fixes — organisés par catégorie. Si votre problème n'est pas listé, voir FAQ ou ouvrir une issue sur https://github.com/rcspam/dictee/issues avec les extraits de logs listés au fond.
Pour chaque problème : symptôme (ce que vous voyez), cause (pourquoi ça arrive), fix (comment résoudre).
- Problèmes d'installation
- Problèmes GPU
- Problèmes audio
- Problèmes daemon
- Problèmes post-traitement
- Problèmes UI
- Collecte de logs
Symptôme : apt install ./dictee-cuda_1.3.1_amd64.deb échoue avec "paquet en conflit dictee-cpu".
Cause : Les deux variantes sont mutuellement exclusives — toutes deux fournissent dictee.
Fix :
sudo apt remove dictee-cpu
sudo apt install ./dictee-cuda_1.3.1_amd64.debSymptôme : dpkg: dependency problems prevent configuration of dictee-cpu: pyqt6-pyside6 >= 6.5 is not installable.
Cause : Ubuntu 22.04 livre PyQt6 5.15, mais dictée a besoin de 6.5+.
Fix : Soit upgrade vers Ubuntu 24.04, soit installer PyQt6 depuis pip :
pip install --user 'PyQt6>=6.5'Symptôme : Unable to locate package libcudnn9-cuda-12 pendant l'install CUDA.
Cause : Dépôt CUDA NVIDIA non ajouté.
Fix : Suivre la configuration par distro dans GPU-Setup.
Depuis v1.3.1. Si vous installez dictee-cuda sur une machine où le driver NVIDIA est absent, cassé ou simplement non exposé (typique sur VM virtio ou conteneurs headless), le daemon affiche désormais ceci dans les logs et bascule en CPU au lieu de crasher en boucle :
[dictee] No NVIDIA GPU detected (or DICTEE_FORCE_CPU set) — using CPU provider.
La détection regarde /proc/driver/nvidia/gpus/ et /dev/nvidia0. Si vous voulez forcer le mode CPU même quand un GPU est présent (par ex. pour partager la VRAM avec un autre process), exportez DICTEE_FORCE_CPU=1 avant de démarrer le service :
systemctl --user edit dictee
# ajoutez :
# [Service]
# Environment=DICTEE_FORCE_CPU=1
systemctl --user restart dicteeAvec v1.3.0 et avant, le daemon dictee-cuda crashait avec cudaSetDevice failed: driver insufficient et dictee-ptt ne se connectait jamais à sa socket. Mettez à jour vers v1.3.1 pour corriger sans toucher au driver.
Symptôme : La transcription marche mais est lente (~1 s latence chaude au lieu de ~0,16 s sur GPU).
Vérification :
nvidia-smi # pilote présent ?
journalctl --user -u dictee | grep -iE "cuda|gpu" # daemon a vu le GPU ?Sortie attendue si GPU fonctionne :
dictee[12345]: Loading Parakeet-TDT on CUDA execution provider
dictee[12345]: GPU: NVIDIA GeForce RTX 4070 Laptop GPU (8 GB)
Si le daemon est tombé sur CPU :
dictee[12345]: CUDA init failed: libcudnn.so.9: cannot open shared object file
→ Installer libcudnn9-cuda-12 (Debian/Ubuntu) ou libcudnn9 (Fedora).
Symptôme :
Failed to allocate memory for requested buffer of size 1073741824
on /pre_encode/conv/conv.0/Conv
Cause : Un bug connu dans le modèle Parakeet-TDT v3 fait planter l'outil en ligne de commande brut transcribe sur tout audio de plus de ~5:20 min sur tout GPU. L'erreur exacte dans les logs est right operand cannot broadcast on dim 3. Sur les GPU bas de gamme avec ≤ 4 Go de mémoire vidéo, vous pouvez heurter une erreur de mémoire (Failed to allocate memory sur /pre_encode/conv/conv.0/Conv) sur un fichier légèrement plus court. Dans les deux cas, le contournement est le même — utiliser le pipeline découpé. Voir Parakeet-TDT-Deep-Dive#utilisation-vram--limites-durée pour les détails techniques.
Fix :
-
Le plus simple (depuis v1.3.4) : ouvrir le fichier dans
dictee-transcribe(l'interface graphique). Elle découpe automatiquement les fichiers longs en morceaux plus petits (180 s chacun, bien sous le bug) et les réassemble. Aucun découpage manuel, aucun plafond. -
Alternative ligne de commande : utiliser
transcribe-diarize-batch <fichier>au lieu dutranscribebrut (voir CLI-Reference#transcribe-diarize-batch). -
Si aucune des deux n'est disponible : découper le fichier manuellement en morceaux de 5 minutes ou moins (par ex.
ffmpeg -i input.wav -f segment -segment_time 300 chunks-%03d.wav) et transcrire chacun séparément. - Note : le backend CPU n'aide pas — le bug est dans le modèle lui-même, pas dans le driver GPU.
Voir Parakeet-TDT-Deep-Dive#utilisation-vram--limites-durée pour la matrice complète.
Symptôme :
libcublasLt.so.12: version `libcublasLt.so.12` not found
Cause : cuBLAS système plus ancien que ce avec quoi dictée a été buildé.
Fix : Le paquet CUDA intègre cuBLAS en interne (via venv pip à /usr/lib/dictee/venv-cuda/) depuis v1.3. Vérifiez que vous n'avez pas supprimé ce répertoire et que transcribe-daemon positionne LD_LIBRARY_PATH correctement. Réinstaller le paquet en cas de doute :
sudo apt reinstall dictee-cudaSymptôme : CUDA error: forward compatibility was attempted on non supported HW.
Fix : Le pilote NVIDIA < 535 n'est pas supporté. Upgrade :
# Ubuntu
sudo ubuntu-drivers install nvidia-driver-550
# Fedora
sudo dnf install --refresh akmod-nvidia
sudo rebootSymptôme : La dictée démarre, le plasmoid affiche "recording", mais la transcription est vide ou contient du charabia.
Vérification :
wpctl status | grep -iE "audio|source"Fix : S'assurer qu'une source est configurée par défaut :
wpctl set-default <SOURCE_ID> # ID depuis wpctl statusSymptôme : Après une dictée réussie, le micro reste muet dans pavucontrol. Les dictées suivantes échouent silencieusement.
Cause : dictée mute automatiquement le micro pendant la transcription pour éviter le bleed, et parfois échoue à le remettre sur les chemins d'erreur.
Fix : Unmute manuel :
wpctl set-mute @DEFAULT_AUDIO_SOURCE@ 0Ou reset état dictée :
dictee --resetSymptôme : Warning dans les logs : parecord not found, falling back to arecord.
Cause : PipeWire non installé (setups XFCE/i3 minimaux).
Fix : Soit installer pipewire-pulse, soit laisser ALSA gérer — les deux marchent, PipeWire est juste préféré pour l'intégration mixer.
Symptôme : Le push-to-talk ne fait rien. journalctl --user -u dictee-ptt montre :
evdev.uinput.UInputError: "/dev/uinput" does not exist or is not a
character device file - verify that the uinput module is loaded
Cause : Fedora, RHEL et openSUSE ne chargent pas automatiquement le module kernel uinput par défaut (Arch et Ubuntu si). Sans ce module, /dev/uinput n'existe pas et dictee-ptt / dotool ne peuvent pas injecter de touches.
Correction en v1.3.1 : le paquet shippe désormais /etc/modules-load.d/dictee-uinput.conf et lance modprobe uinput depuis son hook post-install. Réinstallez ou mettez à jour vers v1.3.1 pour récupérer le fix automatiquement.
Workaround manuel sur les anciennes versions :
sudo modprobe uinput # charger maintenant
echo uinput | sudo tee /etc/modules-load.d/uinput.conf # auto-load au boot
sudo udevadm control --reload-rules
sudo udevadm trigger /dev/uinput
systemctl --user restart dictee-pttSymptôme :
Connection refused: /run/user/1000/transcribe.sock
Cause : Daemon non lancé, ou $XDG_RUNTIME_DIR inaccessible.
Fix :
systemctl --user status dictee
systemctl --user restart dicteeSymptôme : La dictée se bloque après que le portable se réveille de la veille.
Cause : Le contexte CUDA meurt parfois à travers les cycles de suspend.
Fix :
systemctl --user restart dicteeOu configurer systemd pour auto-restart au resume :
# ~/.config/systemd/user/dictee.service.d/override.conf
[Service]
Restart=always
RestartSec=5
Symptôme : Deux utilisateurs sur la même machine → l'état d'un utilisateur fuit dans les dictées de l'autre.
Cause : Corrigé en v1.3-beta1. Les versions pré-beta1 partageaient /dev/shm/.dictee_state sans suffixe UID.
Fix : Upgrade vers v1.3.0 ou plus récent.
Symptôme : Quand le LLM est activé, la sortie finale est vide ou répète le texte ASR brut.
Vérification :
# Ollama est joignable ?
curl http://localhost:11434/api/tags
# Le modèle est pullé ?
ollama listFix :
- Ollama ne tourne pas :
systemctl start ollama - Modèle manquant :
ollama pull gemma3:4b - Mauvais endpoint :
export DICTEE_OLLAMA_HOST=http://localhost:11434 - Essayer de contourner le LLM pour la dictée problématique :
DICTEE_PP_LLM=0 dictee
Symptôme : Vous avez édité ~/.config/dictee/rules.conf mais les dictées ne reflètent pas les nouvelles règles.
Cause : dictee-postprocess cache le fichier de règles par invocation. Le cache est frais à chaque dictée, donc pas de redémarrage nécessaire — mais vous pourriez tester une sortie obsolète.
Fix : Lancer dictee-test-rules pour vérifier que la règle marche. Puis re-dicter.
Symptôme : Dire "virgule" produit le mot "virgule" dans la sortie, pas ,.
Cause : Les règles de commandes vocales sont désactivées ou remplacées par une règle utilisateur.
Fix :
# Lister toutes les règles actives
dictee-test-rules --list
# Vérifier si votre règle utilisateur a la priorité
grep -n "virgule" ~/.config/dictee/rules.confVoir Rules-and-Dictionary#commandes-vocales pour le set FR par défaut.
Symptôme : "vingt-trois" reste en texte au lieu de devenir "23".
Vérification : la conversion des nombres est activée dans le wizard (Post-traitement → Nombres).
Fix : Activer, ou vérifier que text2num est installé :
pip show text2num
# ou via paquet système
dpkg -l python3-text2numSymptôme : Widget ajouté via clic droit → chercher → "Dictée", mais rien n'apparaît dans le panneau.
Vérification :
kpackagetool6 -t Plasma/Applet -l | grep dicteeFix :
- Non installé :
sudo apt install dictee-plasmoidoukpackagetool6 -t Plasma/Applet -i /usr/share/dictee/dictee.plasmoid - Installé mais caché : clic droit panneau → Entrer en mode édition → Ajouter des widgets → Dictée → glisser sur panneau
Symptôme : dictee-tray tourne mais aucune icône n'apparaît dans la barre du haut.
Cause : GNOME a retiré le system tray natif en 3.26.
Fix : Installer l'extension AppIndicator et recharger GNOME Shell (Alt+F2, r sur Xorg ; deconnexion/reconnexion sur Wayland).
Symptôme : Clic sur plasmoid → popup s'ouvre → clic sur un bouton → popup devrait se fermer mais reste.
Cause : Bug connu avant v1.3.0 (commit 130ab95).
Fix : Upgrade vers v1.3.0 ou plus récent.
Quand vous reportez une issue, attachez ces logs :
# Daemon principal
journalctl --user -u dictee -n 100 > dictee.log
# Tray
journalctl --user -u dictee-tray -n 50 > dictee-tray.log
# Wizard setup (tourne au premier plan, pas de systemd)
dictee-setup 2>&1 | tee dictee-setup.log
# Daemon détaillé
DICTEE_DEBUG=1 dictee 2>&1 | tee dictee-debug.log
# État GPU
nvidia-smi > nvidia-smi.log
# Info paquets
dpkg -l | grep -E "dictee|cudnn|cuda" > packages.logPuis ouvrir sur github.com/rcspam/dictee/issues.
| Composant | Chemin |
|---|---|
| Daemon principal (tous backends ASR) | journalctl --user -u dictee |
| Daemon Canary | journalctl --user -u dictee-canary |
| Daemon Whisper | journalctl --user -u dictee-whisper |
| Daemon Vosk | journalctl --user -u dictee-vosk |
| Tray | journalctl --user -u dictee-tray |
| Push-to-talk | journalctl --user -u dictee-ptt |
| État | /dev/shm/.dictee_state_<UID> |
| Socket | $XDG_RUNTIME_DIR/transcribe.sock |
Symptôme : avec « Copier la transcription dans le presse-papier » activé dans dictee-setup (ou DICTEE_CLIPBOARD=true dans ~/.config/dictee.conf), la dictée F9 tourne et le daemon journalise une transcription réussie, mais le texte n'apparaît pas dans certaines apps cibles — typiquement Claude Desktop, certains terminaux, et autres apps Electron. Le curseur du champ de saisie arrête de clignoter ; cliquer à nouveau dans le champ ré-active la saisie.
Cause : wl-clipboard < 2.3.0 (le défaut sur Ubuntu LTS et d'autres distros plus anciennes) ne parle pas le protocole Wayland ext-data-control-v1 que KDE/Plasma 6.x expose. Pour poser le presse-papier, wl-copy retombe sur un contournement qui prend brièvement le focus clavier via une surface transparente, puis le relâche. Les apps Electron blurent leur champ de saisie interne sur tout focus-out et ne le re-focusent pas au retour rapide → les touches que dotool injecte juste après partent dans un champ bluré et sont perdues. Affecte Electron en --ozone-platform=x11 ET =wayland ; les apps Qt/Wayland natives (Kate, etc.) encaissent sans problème.
Fix : dictee désactive la copie presse-papier par défaut depuis v1.3.5. Si vous l'aviez activée, ouvrez dictee-setup et décochez « Copier la transcription dans le presse-papier » (ou mettez DICTEE_CLIPBOARD=false dans ~/.config/dictee.conf).
Pour activer la copie en toute sécurité, upgradez wl-clipboard vers ≥ 2.3.0 :
- Arch — déjà à jour via pacman.
-
Ubuntu 24.04 / Debian stable — backport, ou build depuis source :
git clone -b v2.3.0 https://github.com/bugaevc/wl-clipboard cd wl-clipboard && meson setup build && ninja -C build && sudo ninja -C build install
- Fedora Rawhide — généralement à jour.
Une fois wl-clipboard ≥ 2.3.0 installé, wl-copy utilise la voie focus-neutre ext-data-control-v1 sur KDE et la pose du presse-papier ne vole plus le focus.
Limitation GNOME : Mutter n'expose pas encore ext-data-control-v1 en stable (mutter#524 toujours ouverte). Même avec wl-clipboard ≥ 2.3.0, le contournement focus-volant continue à se déclencher → laissez l'option presse-papier désactivée sur GNOME jusqu'à ce que Mutter intègre ext-data-control.
- FAQ — questions de design, comparaisons
- GPU-Setup — détails de configuration GPU
- CLI-Reference#codes-de-sortie — signification de chaque code de sortie
- Developer-Guide — internes pour debug plus profond
Getting started / Premiers pas
- Installation · 🇬🇧 · 🇫🇷
- Setup-Wizard · 🇬🇧 · 🇫🇷
- Configuration · 🇬🇧 · 🇫🇷
- Plasmoid-Widget · 🇬🇧 · 🇫🇷
- Tray-Icon · 🇬🇧 · 🇫🇷
- Keyboard-Shortcuts · 🇬🇧 · 🇫🇷
- Voice-Commands · 🇬🇧 · 🇫🇷
- GPU-Setup · 🇬🇧 · 🇫🇷
- Diarization · 🇬🇧 · 🇫🇷
- LLM-Diarization · 🇬🇧 · 🇫🇷
Speech recognition / ASR
Translation / Traduction
Post-processing / Post-traitement
- Overview · 🇬🇧 · 🇫🇷
- Rules-and-Dictionary · 🇬🇧 · 🇫🇷
- LLM-Correction · 🇬🇧 · 🇫🇷
- Numbers-Dates-Continuation · 🇬🇧 · 🇫🇷
CLI
Reference / Référence
🏠 Repo · 📦 Releases · 🐛 Issues