Maison > développement back-end > Tutoriel Python > Transcripteur de journal : rédigez un journal en le dictant

Transcripteur de journal : rédigez un journal en le dictant

DDD
Libérer: 2024-11-29 10:00:17
original
177 Les gens l'ont consulté

Journal Transcriber: Write journal by dictating it

Bonjour

Chers lecteurs, aujourd'hui, je vais parler d'un scénario de journal que j'ai en quelque sorte écrit. ?

Le problème de sauvegarder mes pensées

Le problème que j'essaie de résoudre est que je veux sauvegarder mes pensées.

Je n’ai aucun problème à lire ce que j’ai écrit, mais je n’aime pas attendre. Je peux dicter, mais je ne veux pas enregistrer ni écouter ma voix.

Chaque fois que je rencontre une telle situation, je passe en mode ingénierie, et si c'est quelque chose que je peux aborder en quelques heures de travail, je me lance.

Recherche initiale

Tout d’abord, j’ai recherché une bibliothèque voix-texte facile à utiliser et j’ai trouvé Vosk. Il possède une énorme bibliothèque de modèles. J'ai opté pour deux petits car je souhaite utiliser l'application pendant que je code. Ils donnent des résultats assez corrects.

La solution Python

Puis, grâce à la magie de plusieurs modèles d'IA, je suis arrivé à une solution en Python. Il diffuse le son de mon microphone et de mon système sur le modèle Vosk, qui fournit une transcription écrite avec des horodatages dans un fichier avec la date actuelle.

Du prototype à l’utilisabilité quotidienne

Cela fait l’affaire, mais ce n’est pas pratique pour un usage quotidien. Une de mes devises est : si ce n’est pas facile et instantané, je ne l’utiliserai pas. J'ai donc emballé le script dans un module Python et écrit un fichier *.desktop pour l'enregistrer en tant qu'application Linux standard dans mon cas, Pop!_OS.
Il suffit d'une petite touche supplémentaire pour ajouter un raccourci clavier et voici le miracle que cela fonctionne !
Les notifications utilisant notify-send sont là pour vous informer de l'état actuel de l'application.

Éliminer l'encombrement de la console

Une chose qui m'énerve, c'est lorsqu'une application s'exécute dans la console car elle encombre mon espace de travail. Pour éviter cela, j'avais besoin d'un moyen simple de démarrer et d'arrêter l'application sans dépendre du terminal. Ma solution était d'implémenter un système de fichiers verrouillé.

Lorsque l'application démarre, elle crée un fichier de verrouillage contenant son ID de processus (PID). Si le verrou existe déjà, le script l'utilise pour envoyer un signal KeyboardInterrupt afin d'arrêter l'instance en cours d'exécution et se termine. De cette façon, le premier appel démarre l'application et commence la transcription, tandis que le deuxième appel l'arrête.

Résoudre les problèmes de manière inventive

J'espère que cet article a suscité le désir de quelqu'un de résoudre son propre problème d'une manière unique, inventive et quelque peu raffinée.

N'hésitez pas à consulter mon autre article similaire :
Automatisation de l'extraction de texte à partir de captures d'écran

N'hésitez pas également à consulter le code :
sur Github

Passez une bonne journée ?

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:dev.to
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal