首頁 >後端開發 >Python教學 >日記抄寫員:透過聽寫寫日記

日記抄寫員:透過聽寫寫日記

DDD
DDD原創
2024-11-29 10:00:17177瀏覽

Journal Transcriber: Write journal by dictating it

你好

親愛的讀者們,今天我要談談我寫的一篇日記劇本。 ?

保存我的思想的問題

我要解決的問題是我想保存我的想法。

我讀自己寫的東西沒有問題,但我不喜歡等待。我可以口述,但我不想保存或聽我的聲音。

每當我遇到這樣的情況時,我就會進入工程模式,如果這是我可以在工作幾個小時內解決的問題,我就會去做。

初步研究

首先,我研究了一個易於使用的語音轉文本庫,然後找到了 Vosk。它有一個巨大的模型庫。我選擇了兩個小的,因為我想在編碼時使用該應用程式。他們給出了一些不錯的結果。

Python 解決方案

然後,借助多種 AI 模型的魔力,我找到了 Python 解決方案。它將我的麥克風和系統聲音傳輸到 Vosk 模型,該模型提供在包含當前日期的檔案中使用時間戳編寫的轉錄。

從原型到日常可用性

可以達到目的,但是日常使用不太方便。我的座右銘之一是:如果它不簡單、不即時,我就不會使用它。因此,我將腳本打包到 Python 模組中,並編寫了一個 *.desktop 文件,將其註冊為常規 Linux 應用程式(在我的範例中為 Pop!_OS)。
只需快速添加一個鍵盤快捷鍵即可看到它的奇蹟!
使用notify-send 的通知可以讓您了解應用程式的當前狀態。

消除控制台混亂

令我惱火的一件事是當應用程式在控制台中運行時,因為它弄亂了我的工作空間。為了避免這種情況,我需要一種簡單的方法來啟動和停止應用程序,而不依賴終端。我的解決方案是實作一個鎖定檔案系統。

當應用程式啟動時,它會建立一個包含其進程 ID (PID) 的鎖定檔案。如果鎖定已經存在,則腳本將使用它來發送 KeyboardInterrupt 訊號來停止正在執行的實例並退出。這樣,第一個呼叫會啟動應用程式並開始轉錄,而第二個呼叫則會停止它。

以創意的方式解決問題

我希望這篇文章能激發人們以一種獨特、有創意且有些精緻的方式解決自己的問題的願望。

歡迎查看我其他的類似文章:
自動從螢幕截圖中擷取文字

也請隨時查看程式碼:
在 Github 上

今天過得愉快嗎?

以上是日記抄寫員:透過聽寫寫日記的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn