Heim > Backend-Entwicklung > Python-Tutorial > Journal Transcriber: Schreiben Sie ein Tagebuch, indem Sie es diktieren

Journal Transcriber: Schreiben Sie ein Tagebuch, indem Sie es diktieren

DDD
Freigeben: 2024-11-29 10:00:17
Original
172 Leute haben es durchsucht

Journal Transcriber: Write journal by dictating it

Hallo

Liebe Leserinnen und Leser, heute werde ich über ein Tagebuchskript sprechen, das ich sozusagen geschrieben habe. ?

Das Problem, meine Gedanken zu retten

Das Problem, das ich zu lösen versuche, ist, dass ich meine Gedanken speichern möchte.

Ich habe kein Problem damit, zu lesen, was ich geschrieben habe, aber das Warten macht mir keinen Spaß. Ich kann diktieren, aber ich möchte meine Stimme nicht speichern oder anhören.

Immer wenn ich auf eine solche Situation stoße, wechsle ich in den Engineering-Modus, und wenn es etwas ist, das ich innerhalb weniger Arbeitsstunden bewältigen kann, dann mache ich es.

Erste Forschung

Zuerst habe ich nach einer benutzerfreundlichen Voice-to-Text-Bibliothek recherchiert und bin auf Vosk gestoßen. Es verfügt über eine riesige Modellbibliothek. Ich habe mich für zwei kleine entschieden, weil ich die App beim Programmieren nutzen möchte. Sie liefern einigermaßen anständige Ergebnisse.

Die Python-Lösung

Dann kam ich mit der Magie mehrerer KI-Modelle zu einer Lösung in Python. Es überträgt meinen Mikrofon- und Systemton an das Vosk-Modell, das eine mit Zeitstempeln geschriebene Transkription in einer Datei mit dem aktuellen Datum bereitstellt.

Vom Prototyp zur täglichen Nutzbarkeit

Es erfüllt seinen Zweck, ist aber für den täglichen Gebrauch nicht geeignet. Eines meiner Mottos ist: Wenn es nicht einfach und schnell geht, nutze ich es nicht. Also habe ich das Skript in ein Python-Modul gepackt und eine *.desktop-Datei geschrieben, um es als reguläre Linux-Anwendung in meinem Fall Pop!_OS zu registrieren.
Als kleiner Extragriff haben wir einfach eine Tastenkombination hinzugefügt und sehen Sie, was für ein Wunder es funktioniert!
Benachrichtigungen mit notify-send dienen dazu, Sie über den aktuellen Status der App zu informieren.

Beseitigung der Unordnung in der Konsole

Eine Sache, die mich irritiert, ist, wenn eine Anwendung in der Konsole ausgeführt wird, weil sie meinen Arbeitsbereich überfüllt. Um dies zu vermeiden, brauchte ich eine einfache Möglichkeit, die App zu starten und zu stoppen, ohne auf das Terminal angewiesen zu sein. Meine Lösung bestand darin, ein Sperrdateisystem zu implementieren.

Wenn die App startet, erstellt sie eine Sperrdatei mit ihrer Prozess-ID (PID). Wenn die Sperre bereits vorhanden ist, sendet das Skript damit ein KeyboardInterrupt-Signal, um die laufende Instanz zu stoppen und zu beenden. Auf diese Weise startet der erste Anruf die App und beginnt mit der Transkription, während der zweite Anruf sie stoppt.

Probleme auf erfinderische Weise lösen

Ich hoffe, dieser Artikel hat bei jemandem den Wunsch geweckt, sein eigenes Problem auf einzigartige, einfallsreiche und einigermaßen ausgefeilte Weise zu lösen.

Schauen Sie sich gerne meinen anderen ähnlichen Artikel an:
Automatisieren der Textextraktion aus Screenshots

Schauen Sie sich auch gerne den Code an:
auf Github

Haben Sie einen schönen Tag?

Das obige ist der detaillierte Inhalt vonJournal Transcriber: Schreiben Sie ein Tagebuch, indem Sie es diktieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:dev.to
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage