用 AI 把任何歌變成卡拉 OK?Nightingale 體驗報告與安裝踩坑全紀錄

更新 發佈閱讀 10 分鐘

Nightingale — Karaoke from your music library

Nightingale 是一款開源的 AI 卡拉 OK 應用程式,只要丟入任何歌曲,它就能自動分離人聲與伴奏、產生逐字歌詞,變成一個完整的卡拉 OK 體驗。

Rust + Bevy 遊戲引擎作為前端,Python + PyTorch 作為 AI 後端,兩者透過 JSON IPC 溝通。

主要功能

  • AI 人聲分離 — 使用 UVR Karaoke 模型或 Meta 的 Demucs 自動將歌曲拆成伴奏與人聲,可調整導唱音量
  • 自動歌詞產生 — 透過 WhisperX 逐字轉錄並對齊時間戳,或從 LRCLIB 線上歌詞庫抓取現成歌詞,不過WhisperX對歌詞的效果說不上好,最好還是LRCLIB 上有timestamp的歌詞檔
  • 即時音高評分 — 麥克風收音即時與原唱音高比對,給予星級評分
  • 多人檔案系統 — 支援建立多個使用者檔案,各自追蹤每首歌的最佳成績與排行榜
  • 影片與動態背景 — 支援 MP4 等影片作為背景,另有 7 種 GPU 著色器特效(Plasma、Aurora、Waves、Nebula、Starfield 等)
  • 遊戲手把支援 — 用手把就能操作所有功能
  • 單一執行檔部署 — 下載一個 exe,首次啟動自動安裝所有依賴,理論上是這樣,但我失敗了
  • 廣泛格式支援 — MP3、FLAC、OGG、WAV、M4A、AAC、WMA,以及 MP4、MKV、AVI、WebM 等影片格式
  • 跨平台 — Windows、macOS、Linux 都能用

運作原理

┌─────────────────────────────────────────┐
│ Rust + Bevy 遊戲引擎 │
│ 啟動 → 掃描音樂庫 → 選歌 → 即時播放 │
│ (音訊播放、歌詞同步、麥克風、評分) │
└──────────────┬──────────────────────────┘
│ stdin/stdout JSON 通訊
┌──────────────▼──────────────────────────┐
│ Python AI 分析伺服器 │
│ 人聲分離 → 歌詞轉錄 → 時間對齊 │
└─────────────────────────────────────────┘

首次播放一首歌時,Rust 主程式會呼叫 Python 後端進行分析,產出三個快取檔案:

檔案內容*_instrumental.ogg伴奏(去人聲)*_vocals.ogg人聲*_transcript.json逐字歌詞與時間戳

之後播放同一首歌就直接讀取快取,畫面、字幕、音高評分全部由 Bevy 引擎即時渲染,不會產出影片檔。


安裝踩坑紀錄

理論上只要下載一個 exe 就能用,但實際在 Windows 上安裝的過程踩了不少坑。

坑 1:安裝路徑寫死在 C 槽

所有資料(FFmpeg、Python、PyTorch、ML 模型等)一律存放在 C:\Users\<帳號>\.nightingale\,完全沒有任何選項可以更改。我的 C 槽空間已經不多了,而完整安裝大約需要 5~15 GB。

解法:用 Windows 的目錄連接(Junction)把路徑導到其他磁碟:

mklink /J "C:\Users\<帳號>\.nightingale" "E:\nightingale-data"

程式以為在寫 C 槽,實際上所有資料都存到了 E 槽。

坑 2:torch 版本太舊,安全漏洞導致直接報錯

首次啟動的自動安裝流程裝的是 torch 2.5.1+cu121,但最新的 transformers 套件因為 CVE-2025-32434(torch.load 的嚴重安全漏洞)要求至少 v2.6,直接噴出錯誤:

ValueError: Due to a serious vulnerability issue in `torch.load`, even with
`weights_only=True`, we now require users to upgrade torch to at least v2.6

坑 3:升到 2.6 還不夠,WhisperX 要求 2.8

以為升到 torch 2.6 就好了?沒有。WhisperX 3.8.2 的依賴寫的是 torch~=2.8.0,升到 2.6 之後又跳其他依賴錯誤,修了 A 壞了 B。

而且 CUDA 12.1 的 PyTorch wheel 倉庫根本沒有 2.8 版,必須換到 CUDA 12.8 (download.pytorch.org/whl/cu128) 才行。

坑 4:跨磁碟安裝造成 metadata 損壞

因為我用了 Junction 把資料導到 E 槽,uv 套件管理器的 hardlink 在跨磁碟時會失敗。雖然它會 fallback 到 copy 模式,但過程中 torch 的 package metadata 損壞了,importlib.metadata.version('torch') 直接回傳 None

TypeError: expected string or bytes-like object

這個錯誤訊息完全看不出跟 metadata 有關,找了好一陣子,雖然負責找的人是claude code 不是我

坑 5:重裝時 uv 從 PyPI 抓了 CPU 版的 torch

決定砍掉 venv 重建,一次裝好所有套件。但同時指定 --index-url cu128 和 --extra-index-url pypi 時,uv 竟然優先從 PyPI 拉了 CPU 版的 torch(沒有 CUDA 支援),導致 GPU 完全無法使用。

坑 6:日文歌詞辨識品質極差

好不容易裝好了,拿日文歌測試,結果歌詞辨識慘不忍睹。LRCLIB 沒有收錄這首歌的歌詞,回退到 WhisperX 自動轉錄後,日文對齊模型把歌詞拆成了一個一個字母:

{ "word": "I" }, { "word": "j" }, { "word": "u" }, { "word": "s" }, { "word": "t" }

原本應該是完整的日文歌詞,結果變成一堆毫無意義的單字母,不過這算是預想範圍內本來就不覺得whisper對唱歌的辨識度會高到哪裡去


最終解法

  1. 用 mklink /J 建立 Junction 解決路徑問題
  2. 砍掉整個 venv 重建
  3. 先從 PyPI 安裝所有套件(一次解析完依賴)
  4. 再單獨從 download.pytorch.org/whl/cu128 reinstall torch 三件套,並加上 --link-mode=copy 避免跨磁碟的 metadata 損壞
# 步驟 1:從 PyPI 一次裝好所有套件
uv pip install "torch==2.8.0" "torchaudio==2.8.0" "torchvision==0.23.0" \
"whisperx>=3.8.0" "demucs>=4.0.0" "soundfile" "huggingface_hub>=0.27.0" \
"audio-separator[gpu]>=0.25" "cython" "setuptools" \
--index-url https://download.pytorch.org/whl/cu128 \
--extra-index-url https://pypi.org/simple \
--link-mode=copy

# 步驟 2:單獨重裝 torch CUDA 版(蓋掉 PyPI 的 CPU 版)
uv pip install --reinstall "torch==2.8.0" "torchaudio==2.8.0" "torchvision==0.23.0" \
--index-url https://download.pytorch.org/whl/cu128 \
--link-mode=copy

總結

雖然我在安裝上花了一點時間,但Nightingale 的功能設計很棒——單一執行檔、AI 人聲分離、即時卡拉 OK,概念上非常吸引人,還有導唱功能。

日文歌詞辨識的部分則是 WhisperX 上游的限制,不完全是 Nightingale 的問題,但如果能加入手動匯入 LRC 歌詞檔的功能會好很多。

留言
avatar-img
電話喵的電波塔
1會員
26內容數
一個現實中找不到地方抒發內心想法的亞斯的碎唸
電話喵的電波塔的其他內容
2026/03/11
你有看過員工密碼都用同一組的公司嗎? 你有看過每天都要拖地的公司嗎? 你有看過欠實習生好幾個月薪水的公司嗎?痾~好吧欠薪偶爾新聞上也會看到 但這些全都是我在同一間新創看到的事情 真的...沒事別去新創賭自己人品啊 我就是賭輸的那個
2026/03/11
你有看過員工密碼都用同一組的公司嗎? 你有看過每天都要拖地的公司嗎? 你有看過欠實習生好幾個月薪水的公司嗎?痾~好吧欠薪偶爾新聞上也會看到 但這些全都是我在同一間新創看到的事情 真的...沒事別去新創賭自己人品啊 我就是賭輸的那個
2026/02/10
深圳高中老師出題「用一個字證明你不是AI」 學生答案顯人性溫度 用一個字證明你不是AI 之前在網上看到上面這篇報導,這題目的確很有趣,學生也給出了比方「媽」,因為AI沒有母親,也有人認為是「急」因為AI也沒有著急的情緒,另外也有不少人給出了「悔」、「憾」、「痛」、「我」、「情」之類充滿溫度的文字
2026/02/10
深圳高中老師出題「用一個字證明你不是AI」 學生答案顯人性溫度 用一個字證明你不是AI 之前在網上看到上面這篇報導,這題目的確很有趣,學生也給出了比方「媽」,因為AI沒有母親,也有人認為是「急」因為AI也沒有著急的情緒,另外也有不少人給出了「悔」、「憾」、「痛」、「我」、「情」之類充滿溫度的文字
2026/01/22
這幾天玩了一款很有意思的遊戲,叫做《Bober Bros: No Means Nothing》,號稱是「反約會模擬」。 光是遊戲名稱的設計就很巧妙,logo 上把「Nothing」拆成了「No」和「thing」,用不同顏色區隔開來,所以這句話有兩種解讀方式....
Thumbnail
2026/01/22
這幾天玩了一款很有意思的遊戲,叫做《Bober Bros: No Means Nothing》,號稱是「反約會模擬」。 光是遊戲名稱的設計就很巧妙,logo 上把「Nothing」拆成了「No」和「thing」,用不同顏色區隔開來,所以這句話有兩種解讀方式....
Thumbnail
看更多
你可能也想看
Thumbnail
作者分享Vaundy歌曲《踊り子》卡拉OK錄音試唱,並介紹多位歌手的翻唱版本,包含韓國女團成員、彩虹社Vtuber、以及其他獨立音樂人等,並附上影片連結及個人心得。適合喜歡Vaundy或翻唱歌曲的讀者閱讀。
Thumbnail
作者分享Vaundy歌曲《踊り子》卡拉OK錄音試唱,並介紹多位歌手的翻唱版本,包含韓國女團成員、彩虹社Vtuber、以及其他獨立音樂人等,並附上影片連結及個人心得。適合喜歡Vaundy或翻唱歌曲的讀者閱讀。
Thumbnail
卡拉OK是由井上大佑所發明的,他曾被時代雜誌選為《亞洲20世紀最有影響力人物》之一。關於卡拉OK的發明,可以追溯到1971年,當時在酒吧擔任樂手的井上大佑,替歌手打造了一台伴奏機器,這項劃時代的娛樂設備,更讓他榮獲搞笑諾貝爾和平獎,因為卡拉OK讓人們彼此學會容忍。
Thumbnail
卡拉OK是由井上大佑所發明的,他曾被時代雜誌選為《亞洲20世紀最有影響力人物》之一。關於卡拉OK的發明,可以追溯到1971年,當時在酒吧擔任樂手的井上大佑,替歌手打造了一台伴奏機器,這項劃時代的娛樂設備,更讓他榮獲搞笑諾貝爾和平獎,因為卡拉OK讓人們彼此學會容忍。
Thumbnail
本文分析導演巴里・柯斯基(Barrie Kosky)如何運用極簡的舞臺配置,將布萊希特(Bertolt Brecht)的「疏離效果」轉化為視覺奇觀與黑色幽默,探討《三便士歌劇》在當代劇場中的新詮釋,並藉由舞臺、燈光、服裝、音樂等多方面,分析該作如何在保留批判核心的同時,觸及觀眾的觀看位置與人性幽微。
Thumbnail
本文分析導演巴里・柯斯基(Barrie Kosky)如何運用極簡的舞臺配置,將布萊希特(Bertolt Brecht)的「疏離效果」轉化為視覺奇觀與黑色幽默,探討《三便士歌劇》在當代劇場中的新詮釋,並藉由舞臺、燈光、服裝、音樂等多方面,分析該作如何在保留批判核心的同時,觸及觀眾的觀看位置與人性幽微。
Thumbnail
這是一場修復文化與重建精神的儀式,觀眾不需要完全看懂《遊林驚夢:巧遇Hagay》,但你能感受心與土地團聚的渴望,也不急著在此處釐清或定義什麼,但你的在場感受,就是一條線索,關於如何找著自己的路徑、自己的聲音。
Thumbnail
這是一場修復文化與重建精神的儀式,觀眾不需要完全看懂《遊林驚夢:巧遇Hagay》,但你能感受心與土地團聚的渴望,也不急著在此處釐清或定義什麼,但你的在場感受,就是一條線索,關於如何找著自己的路徑、自己的聲音。
Thumbnail
卡拉ok擴大機專賣店 詳情 https://shop.chyihong.com 我們一直傾聽聲音,始終堅持給人信心,讓每個家庭留下永恆 金嗓、音圓、美華伴唱機展售店面可供試聽、試唱,保證物超所值。 預約來店試聽、試唱 0935 920 881 ZSound GINKGO LZBAN AUDIOLI
Thumbnail
卡拉ok擴大機專賣店 詳情 https://shop.chyihong.com 我們一直傾聽聲音,始終堅持給人信心,讓每個家庭留下永恆 金嗓、音圓、美華伴唱機展售店面可供試聽、試唱,保證物超所值。 預約來店試聽、試唱 0935 920 881 ZSound GINKGO LZBAN AUDIOLI
Thumbnail
逛街逛到腳酸了嗎?行程突然有空餘,但是回去飯店又太遙遠嗎? 如果你是會在洗澡時騎車時趁沒人發現的時候大聲唱歌的人——去卡拉OK吧。
Thumbnail
逛街逛到腳酸了嗎?行程突然有空餘,但是回去飯店又太遙遠嗎? 如果你是會在洗澡時騎車時趁沒人發現的時候大聲唱歌的人——去卡拉OK吧。
Thumbnail
OMG,這部BL作品竟然也映畫化了!!! 但我卻萬萬沒料想會找綾野剛來演那位黑道大叔,同原著的氛圍感好像有哪裡不一樣(汗)但看在他的演技有品質保証,基本上用不著太擔心。 原著的畫風雖非美型,但帶有一種濃厚的日本早期復古風味,看久了,我想估計還是可以習慣的(?) 故事主要就是講述一個
Thumbnail
OMG,這部BL作品竟然也映畫化了!!! 但我卻萬萬沒料想會找綾野剛來演那位黑道大叔,同原著的氛圍感好像有哪裡不一樣(汗)但看在他的演技有品質保証,基本上用不著太擔心。 原著的畫風雖非美型,但帶有一種濃厚的日本早期復古風味,看久了,我想估計還是可以習慣的(?) 故事主要就是講述一個
Thumbnail
假日和朋友相約唱卡拉OK對我們來說是司空見慣的事,但在歐洲可不是。卡拉OK的發明人 ── 根岸重一 (Shigeichi Negishi)於2024年1月26日辭世,享年100歲。這位日本企業家在1967年發明了第一個歌唱機,取名為 « Sparko Box »,但卻從未申請專利。
Thumbnail
假日和朋友相約唱卡拉OK對我們來說是司空見慣的事,但在歐洲可不是。卡拉OK的發明人 ── 根岸重一 (Shigeichi Negishi)於2024年1月26日辭世,享年100歲。這位日本企業家在1967年發明了第一個歌唱機,取名為 « Sparko Box »,但卻從未申請專利。
Thumbnail
這篇是一篇綜合介紹了位於臺北市中正區的日歌KT卡拉OK店家的體驗分享文章,平日晚上約朋友一起前往唱歌,店家提供日本演歌、JPOP流行歌曲以及切換中文系統的服務,並介紹店家的位置、營業時間、設備配置以及社群媒體資訊。
Thumbnail
這篇是一篇綜合介紹了位於臺北市中正區的日歌KT卡拉OK店家的體驗分享文章,平日晚上約朋友一起前往唱歌,店家提供日本演歌、JPOP流行歌曲以及切換中文系統的服務,並介紹店家的位置、營業時間、設備配置以及社群媒體資訊。
Thumbnail
Datum: 19.08.2025 Heute war die Kulturaktivität des Goethe-Instituts eine Karaoke-Party. Sie wurde 2015 eröffnet und war die erste Karaoke-Bar im a
Thumbnail
Datum: 19.08.2025 Heute war die Kulturaktivität des Goethe-Instituts eine Karaoke-Party. Sie wurde 2015 eröffnet und war die erste Karaoke-Bar im a
Thumbnail
《轉轉生》(Re:INCARNATION)為奈及利亞編舞家庫德斯.奧尼奎庫與 Q 舞團創作的當代舞蹈作品,結合拉各斯街頭節奏、Afrobeat/Afrobeats、以及約魯巴宇宙觀的非線性時間,建構出關於輪迴的「誕生—死亡—重生」儀式結構。本文將從約魯巴哲學概念出發,解析其去殖民的身體政治。
Thumbnail
《轉轉生》(Re:INCARNATION)為奈及利亞編舞家庫德斯.奧尼奎庫與 Q 舞團創作的當代舞蹈作品,結合拉各斯街頭節奏、Afrobeat/Afrobeats、以及約魯巴宇宙觀的非線性時間,建構出關於輪迴的「誕生—死亡—重生」儀式結構。本文將從約魯巴哲學概念出發,解析其去殖民的身體政治。
Thumbnail
背景:從冷門配角到市場主線,算力與電力被重新定價   小P從2008進入股市,每一個時期的投資亮點都不同,記得2009蘋果手機剛上市,當時蘋果只要在媒體上提到哪一間供應鏈,隔天股價就有驚人的表現,當時光學鏡頭非常熱門,因為手機第一次搭上鏡頭可以拍照,也造就傳統相機廠的殞落,如今手機已經全面普及,題
Thumbnail
背景:從冷門配角到市場主線,算力與電力被重新定價   小P從2008進入股市,每一個時期的投資亮點都不同,記得2009蘋果手機剛上市,當時蘋果只要在媒體上提到哪一間供應鏈,隔天股價就有驚人的表現,當時光學鏡頭非常熱門,因為手機第一次搭上鏡頭可以拍照,也造就傳統相機廠的殞落,如今手機已經全面普及,題
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News