它不播放任何音樂。
只負責顯示。
teulda 不是音樂播放器。它不開啟檔案,也不解碼。它把 Windows 正在播放的東西 —— 串流、YouTube 或遊戲配樂 —— 放回二十年前的那個視窗,按鈕照樣能用。
免安裝執行 · 不需管理員權限 · 直接用你現有的 .wsz 面板
上圖是為說明版面而畫的示意。真實視窗長什麼樣,由 你選的面板 決定 —— teulda 不附帶任何面板素材。
這不是讓你再裝一個播放器
在你原本聽歌的地方繼續聽。teulda 會把聲音從任何來源接住,匯到同一個視窗。
在你原本聽歌的地方繼續聽。teulda 會把聲音從任何來源接住,匯到同一個視窗。
播放仍由你的應用程式負責
Spotify、韓國各家 PC 用戶端(Melon · Genie · Bugs · FLO)、Chrome 與 Edge 裡的 YouTube,乃至遊戲啟動器的背景音樂。帳號和 DRM 依舊歸它們管,teulda 從不插手。
Windows 本來就知道
Windows 會把正在播放的內容登記到一個叫 SMTC 的視窗。鍵盤上的播放、暫停鍵之所以在任何應用程式裡都管用,就是因為它。
teulda 去讀那個視窗
取出曲名、演出者、播放進度和封面畫到面板視窗裡;你按視窗上的按鈕,它再原路傳回那個應用程式。
韓國四大音樂用戶端,全部可用
這是整個產品的前提。如果 PC 用戶端不向 Windows 登記,使用者看到的就是一個空視窗。所以我們沒有猜,而是在每個應用程式裡真放了一首歌來測。
| 播放來源 | 曲名 | 進度 · 時長 | 可接受的操作 |
|---|---|---|---|
| Melon · Genie · Bugs · FLO PC 用戶端 | 能拿到 | 能拿到 | 播放 · 暫停 · 拖曳 |
| YouTube Music · Spotify 網頁版 —— 使用 Media Session 的網站 | 曲名 | 準確 | 播放 · 暫停 · 上一首 · 下一首 · 拖曳 |
瀏覽器 —— 只用 <audio> 的網站 |
頁面標題 | 準確 | 播放 · 暫停 · 拖曳 |
2026 年 9 月 14 日在真實 Windows 電腦上用發行版本實測。可用操作因應用程式而異 —— 應用程式沒登記的按鈕在 teulda 裡同樣是灰的。有些應用程式根本不傳送演出者名稱,那就只顯示曲名。
二十年份的面板,早已做好了
經典 Winamp 面板留存下來的超過十萬個。teulda 直接讀那些 .wsz 檔案 —— 不轉換,也不重畫。
我們不附帶面板
每一個都屬於畫它的人。讀懂一種檔案格式,和把別人的畫塞進自己的安裝包裡,是兩碼事。
不守規格的面板照樣畫得出來
進度條做成 307×5 而不是 307×10 的面板;字型圖在檔案中途被截斷的面板;region.txt 語法完全隨意的面板。teulda 有多少畫多少,只丟掉讀不出來的那一塊。
主視窗 · 等化器 · 播放清單 · 專輯封面
封面視窗在經典版裡並不存在,所以用 A 鍵開啟。它的邊框不是新畫的,而是用那套面板自己的播放清單切片拼出來的 —— 不管你換哪套面板,它看起來都像那套面板自帶的視窗。
雙倍大小 · 摺疊模式 · 頻譜
頻譜條和示波器不是動畫。它們畫的是真正從你喇叭裡出來的聲音。
你的文字能顯示出來
經典面板裡的字型圖只有 ASCII。所以照原樣顯示時,中文、韓文、日文、西里爾字母的曲名會整塊消失。
偏偏是你最想看的曲名和演出者不見了。十萬個面板裡絕大多數只帶 ASCII,所以換面板根本解決不了。
只要有一個字畫不出來,那一整行就改用系統字型疊上去。純 ASCII 的曲名仍舊用面板自帶的字型 —— 那才是這個視窗該有的樣子。
曲名欄原本只有 6 像素高。teulda 只借用每套面板在它上下真正空著的那幾列(背景是照片的面板一列也借不到),文字按視窗倍率以實際大小繪製。字色則透過測量該欄背景亮度來決定。
不再錯過剛剛溜走的那首歌
Spotify 永遠不會知道你在 YouTube 上聽了什麼。teulda 兩邊都看得見 —— 在任何地方按 Ctrl+Alt+S,此刻正在播的這首就會在這台電腦上留下一列。
哪怕視窗不在前面
你真正錯過的,是 打遊戲或寫東西時 溜走的那首。Ctrl+Alt+S 不管你在哪、在做什麼都管用。要是這個組合已經被別的程式占了,它會往下找一個沒被占的,並 把實際拿到的鍵寫在收藏視窗裡。
聽完一整首,它自己就留下了
不用按鍵。但 只有親眼看著它走到結尾才算 —— 歌快放完時才開啟視窗,不等於你聽過它。會和你親手挑的分開標記。
在收藏裡檢視,也能帶走
檢視收集到的內容、刪掉某一列、匯出為 CSV —— 存成 Excel 開啟時不會亂碼的格式。也可以整份複製,貼到任何地方。
根本沒有出去的路
你在何時聽了什麼,屬於個人資訊。處理這份紀錄的程式碼裡 沒有任何一行碰網路,而且有測試守著這一點。匯出只在你按下按鈕時才會發生。
「來源」一欄的應用程式名稱是 大家一起補的。 Windows 交出來的是 neowizinternet.234211C5E0 這樣的值,不是給人看的名字。知道哪個值對應哪個應用程式的,只有用那個應用程式的人,所以這張表放在儲存庫裡,表上沒有的值就原樣顯示。猜出來的名字更糟 —— 看自己紀錄的人根本無從察覺它是錯的。
做不到的,和故意不做的
下載之前該知道的事,免得下完失望。藏著不說,最後也會變成 bug 回報回來。
等化器不會改變聲音
播放清單看的是過去,不是將來
kbps 那一格留空
最小化按鈕沒有接線
音量滑桿調的是系統音量
僅限 Windows
現在是指示燈,接下來是聆聽紀錄
收集這件事已經能做了。接下來是 怎麼讀這些紀錄,以及跨服務認出同一首歌。
認出同一首歌
那個視窗不提供曲目 ID。所以第一件事是把 Song (feat. X)、Song (Feat. X) 和 Song (2024 Remaster) 歸成同一首 —— 這裡錯了,下面所有數字都會悄悄跟著錯。
把過往的紀錄搬進來
讀取 Last.fm 或 Spotify 給你的匯出檔案,把過去吸收進來。從空收藏起步,和從裝著十年紀錄的收藏起步,是兩個不同的產品。
一個能看紀錄的介面
各服務的占比、按時段的聆聽,以及 你聽完的歌和三十秒內就跳過的歌 —— 這個數字沒有一家服務會給你看。
傳送到 Last.fm · ListenBrainz
如果你本來就有 scrobble 紀錄,就往那邊送。用你的帳號,而且只在你打開它的時候。
給直播用的字幕來源
它會持續把目前曲目寫進一個文字檔。讓 OBS 指向它就行了。
做面板
存世的有十萬個,可是 新做一個的路已經堵了二十年。 我們手裡有完整的座標表,所以能做出編輯器。
紀錄只留在這台電腦裡。 你在何時聽了什麼,屬於個人資訊。任何會離開這台機器的東西都得你親手開啟;不開啟,它哪兒也不去。
解壓縮,執行,就這樣
不需要安裝程式,也不需要管理員權限。把 .wsz 檔案拖到視窗上就能換面板。
- 1
把下載的 zip 解壓縮,執行
teulda.exe。不用安裝程式,也不用系統管理員權限。 - 2
Winamp Skin Museum 會在新視窗開啟。挑一個喜歡的,按 Download skin,就會拿到一個
.wsz檔。 - 3
把那個
.wsz拖到 teulda 視窗上。這就是安裝 —— 不用解壓縮,也不用放進哪個資料夾。
- 你會拿到
- teulda-0.2.0-win64.zip下載約 35 MB,解壓縮後 81 MB · 無需另裝執行環境
- 執行環境
- Windows 10 / 1164 位元
- 你需要準備
- 一個
.wsz面板要是沒有,Winamp Skin Museum 裡有十萬個 - 操作
S收藏 ·L收藏夾任何地方Ctrl+Alt+S·D雙倍 ·W摺疊 ·A封面 ·Esc關閉
如果什麼都沒在播,視窗是空的才是對的。去放點什麼吧。