和國外原廠、客戶開線上會議時,最吃力的往往不是會議內容,而是語言。對方講得快,要一邊聽一邊想怎麼回應;換自己講英文,又擔心表達不清楚。
jt-live-whisper 是我開發的全地端 AI 語音工具箱,提供即時轉錄、即時翻譯字幕、錄音檔批次處理、講者辨識與會議摘要,所有模型都可以在自己的設備上執行。過去它在會議中只能顯示雙語字幕,v2.28.0 起,英中雙向模式加入了「語音口譯」,可以在會議中做英中雙向口譯。
開啟後,對方說的英文會翻成中文念到我的耳機,我說的中文則翻成英文,以合成語音送進會議,對方直接聽到英文。

功能概述
開啟語音口譯後,jt-live-whisper 在我的電腦上同時處理兩個方向:
- 念給我聽
擷取電腦播出的會議聲音,辨識對方的英文、翻成中文,以台灣華語的合成語音念到耳機。 - 念給對方聽
擷取我的麥克風,把中文翻成英文,以合成語音送進「虛擬麥克風」,會議軟體再把它當成我的麥克風送給對方。 - 雙語字幕
雙方說的話都以原文、譯文並排顯示,每一句標出口譯狀態。
兩個方向可以只開一個。對方英文流利、只是我聽得比較吃力時,只開「念給我聽」就夠了。
適用的會議軟體
jt-live-whisper 不是會議軟體的外掛,它擷取的是電腦播出的聲音,我說的話則經由麥克風送出,所以原理上任何線上會議軟體都能使用,不需要會議軟體配合,前提是會議的聲音由這台電腦播放,會議軟體的麥克風也能設成系統預設或虛擬麥克風。目前實際測試過的會議軟體是 Jitsi Meet,Zoom、Microsoft Teams、Google Meet 尚未實測。
對方不用安裝任何東西。上面的示範中,Bianca 那台電腦只開了瀏覽器版的 Jitsi Meet。

事前準備
完成 jt-live-whisper 的基本安裝與系統音訊擷取設定後(macOS 13 以上要授權一次「螢幕錄製」),「念給我聽」三個平台都不用另外安裝。「念給對方聽」需要一支虛擬麥克風,因為會議軟體只能從麥克風收音:
| 平台 | 虛擬麥克風 |
|---|---|
| macOS | 要先安裝免費的 BlackHole 2ch(brew install --cask blackhole-2ch,需要管理者密碼,裝完重新開機) |
| Windows | v2.29.0 起支援,先執行一次 .\install.ps1 -InterpMic 安裝 usbip-win2(免費、開放原始碼,核心驅動由微軟簽署),需要系統管理員權限。開始口譯時自動建立「jt-live-whisper Interpreter Mic」,結束時移除 |
| Linux | 不用另裝驅動,要有 PulseAudio,或 PipeWire 搭配 PulseAudio 相容服務,以及 pactl、pacat 指令。開始時自動建立、結束時移除 |
注意:Windows 安裝 usbip-win2 時,USB 集線器會重新啟動,USB 鍵盤、滑鼠、耳機會斷線幾秒,請勿在會議中安裝。安裝後開始口譯時若顯示沒有接上口譯麥克風,先重新開機一次。
語音合成在 GPU 伺服器上執行,GPU 伺服器要是 v2.28.0 以上,並啟用文字轉語音功能。以下的設定都假設已經完成基本安裝,也設好 GPU 伺服器與 LLM 伺服器的連線,GPU 伺服器沒有可用的語音合成時,口譯無法開始。
WebUI 設定
設定只有三個地方。先在「輸入來源」選「即時音訊擷取」,「語音辨識」區的「功能模式」選「英中雙向字幕」。

下方會出現「語音口譯」區。勾選「念給我聽(中文)」與「念給對方聽(英文)」,各自選擇播放裝置與聲音。macOS 偵測到 BlackHole 2ch 時會顯示綠色提示,沒裝則顯示黃色提示。

最後按「開始」,並把會議軟體的麥克風設成「與系統相同」或「預設」。
這個麥克風設定只要做一次。v2.31.0 起,口譯期間 jt-live-whisper 會自動把系統預設麥克風切到虛擬麥克風,正常結束時切回原本的麥克風,會議軟體跟著系統預設走,不用每場會議手動切換。程式意外結束而沒有切回的話,下次啟動 jt-live-whisper 時會補切回;在那之前,會議軟體會一直用虛擬麥克風,建議開會前先看一下系統預設的輸入裝置,也請對方確認聽得到。不想自動切換的話,可以在同一區取消勾選,改成自己在會議軟體選擇虛擬麥克風,但會後要記得改回來,否則下一場對方會聽不到。
命令列啟動
習慣用命令列的話,三個平台的寫法如下:
# macOS:先安裝 BlackHole 2ch
./start.sh --mode en_zh --speak-me default --speak-them "BlackHole 2ch"
# Linux:自動建立虛擬麥克風
./start.sh --mode en_zh --speak-me default --speak-them auto
# Windows:先執行一次 .\install.ps1 -InterpMic
.\start.ps1 --mode en_zh --speak-me default --speak-them auto
其他常用參數:--speak-me-rate、--speak-them-rate 調整語速,--interp-intro none 關閉開場說明,--passthrough 同時送出原聲,--no-switch-default-mic 不自動切換系統預設麥克風。
會議中的字幕頁

左邊是對方說的英文與中文翻譯,標「已播」代表已經念到我的耳機;右邊是我說的中文與英文翻譯,標「已送」代表程式已經把英文送進虛擬麥克風,但不代表對方一定收到,例如會議軟體選錯麥克風或處於靜音時。每一句的「辨」「譯」是辨識與翻譯各花了幾秒。
口譯狀態還有「排隊」「略過」「失敗」,念給對方聽的句子在還沒念出之前,可以按「取消」不送出。畫面底部兩個方向各有靜音鈕與語速設定,語速預設 1.2 倍(v2.31.3 起),每按一次 − 或 + 調整 0.1 倍,下一句就生效,不用重新開始。
回授與重複翻譯的防護
念給我聽的中文和會議的聲音從同一個輸出裝置播出,擷取系統音訊時會直接錄到;從喇叭或耳機漏出來的聲音,也可能被麥克風收進去。對方那一側沒開回音消除的話,我送出的英文也可能從會議聲音傳回來。不處理的話,同一句話會被翻來翻去。jt-live-whisper 用三道機制處理:
- 系統音訊是中文就不辨識
正在念中文給我聽,或剛念完時,GPU 伺服器先判斷這段會議聲音是不是中文,是就略過。這道機制只在由 GPU 伺服器辨識時有作用,在本機辨識時,改成系統音訊辨識出中文字就略過。 - 20 秒內念過的句子不再處理
記住最近 20 秒念過的原文與譯文,辨識到相似的句子就略過。 - 念的期間放寬判斷
念中文給我聽的期間與之後 8 秒,系統音訊的比對門檻會放寬,正在念時連 3 個字以內的短句也略過。
這些是保險機制,實際使用時仍然要戴耳機,至少能避免麥克風收到漏音。
延遲與排隊處理
邊合成邊播。 不等整句合成完才播放,GPU 伺服器第一段約 0.3~0.7 秒就送出。GPU 伺服器同時在處理其他工作、合成速度比說話慢時,會先多緩衝一段再播放,避免念到一半中斷,這時延遲會稍長。
優先處理送給對方的句子。 同一時間只合成一句,兩個方向都在排隊時,送給對方的英文優先,因為對方正在等我回答。同一個方向排了 2 句以上時,語速至少提高到 1.2 倍;等超過 15 秒還沒開始念的句子就不念,字幕照常顯示並標「略過」。
半句話以整句取代。 說話時辨識可能先拿到半句,等講完再換成完整的一句。還沒念的半句會直接換成整句。整句的開頭和已經念出的前半句相同時,只念多出來的部分;但翻譯重組語序,或前半句聽錯時,整句仍會再念一次。
開場先說明。 第一次念給對方聽之前,會先念一句「Hi, I'm using an AI interpreter, so there will be a short delay.」,讓對方知道接下來的是 AI 合成語音而且有延遲,這句可以關閉。
可同時送出原聲。 預設對方只聽到英文。勾選「同時送出我的原聲」的話,我的原聲也會送進虛擬麥克風,念英文時原聲自動調小到約四分之一。要注意的是,暫停的是口譯,原聲照樣會送出,想私下交談時請用 WebUI 的麥克風靜音或會議軟體的靜音。
另外,v2.30.0 起即時模式期間會防止電腦因為閒置而睡眠,Windows 與 macOS 也會防止螢幕自動關閉,避免會議開到一半中斷錄音與口譯。公司以群組原則強制的閒置鎖定仍可能生效;不需要這項功能時,命令列加 --no-keep-awake。
模型與資料位置
語音口譯用到三種 AI 模型:
| 用途 | 模型 | 執行位置 |
|---|---|---|
| 語音辨識 | Whisper large-v3-turbo | GPU 伺服器或本機 |
| 翻譯 | 本地端 LLM,預設 Ollama 的 gemma4:26b | LLM 伺服器 |
| 語音合成 | VoxCPM2 | 只在 GPU 伺服器 |
jt-live-whisper 的台灣華語朗讀可以在 Apple Silicon Mac 本機合成,但口譯不行:本機合成的速度大約和說話一樣快,同時處理兩個方向加上辨識會跟不上,所以口譯的合成只在 GPU 伺服器。
英文聲音內建女聲、男聲 2 個,預設男聲,都是 VoxCPM2 依文字描述產生的 AI 聲音,不是真人錄音。中文則沿用朗讀的聲音,預設是「女聲・溫柔」。
GPU 伺服器與 LLM 伺服器都是自架的話,辨識、翻譯與合成都不會把會議內容送到雲端的 AI 服務。會議本身的聲音與畫面怎麼傳送,仍由各會議平台決定。要注意的是,v2.31.4 起 LLM 伺服器可以填外部的 https 網址,如果指向雲端服務,要翻譯的文字就會送出去。
測試環境與問題回報
目前這個功能只在幾台電腦上測試過:
| 平台 | 測試狀況 |
|---|---|
| Windows 11 | 念給我聽、念給對方聽都在實體機上以 Jitsi Meet 實測,開頭的示範圖就是這台 |
| macOS 27 | 念給我聽、念給對方聽都已實測 |
| macOS 26(Apple Silicon) | 念給對方聽已實測,包含自動切換系統預設麥克風;念給我聽尚未完整實測 |
| Linux(Ubuntu 24.04) | 自動測試通過,尚未在實際會議中完整實測 |
會議軟體只實測過 Jitsi Meet,Zoom、Microsoft Teams、Google Meet 尚未實測。
使用時如果遇到問題,歡迎到 GitHub 開 Issue,附上作業系統與版本、會議軟體和問題狀況,確認是問題後我會盡快修正。
- jt-live-whisper GitHub Issues
https://github.com/jasoncheng7115/jt-live-whisper/issues
目前的限制
- 只支援英文與中文互譯。
- 辨識要先累積一段聲音(場景選「線上會議」時約 5 秒),再翻譯與合成,所以會有幾秒延遲,長句也可能分段處理。比較適合輪流發言的會議,搶話多的討論會比較吃力。
- 已經開始念的句子收不回來。
- 適合每個人都戴耳機的線上會議,不適合喇叭外放、多人在同一個空間的實體會議室。
- 對方說話時,如果我正在聽中文,那段錄音被判斷成中文的話會整段略過,字幕會少那幾秒。
- 實測 Jitsi Meet 時,進出會議的提示音偶爾會被當成英文辨識,翻成中文念出來。
結論
語音口譯無法取代專業口譯員,延遲與輪流發言的限制都很明顯。但對英文讀得懂、聽說比較吃力的人,或需要和國外原廠、客戶開例行會議的團隊,它能減輕不少負擔。
我最重視的是對方不用配合安裝,任何會議軟體都能用,而且只要伺服器都自架,辨識、翻譯到合成都在自己的設備上完成。
參考資料
- jt-live-whisper 專案網站
https://jasoncheng7115.github.io/jt-live-whisper/ - jt-live-whisper GitHub
https://github.com/jasoncheng7115/jt-live-whisper - BlackHole 2ch
https://github.com/ExistentialAudio/BlackHole - jt-live-whisper 台灣華語語音合成與朗讀
https://blog.jason.tools/2026/11/jt-live-whisper-tts.html - usbip-win2
https://github.com/vadimgrn/usbip-win2



