最近家人在準備日檢考試,常常要聽課本上的音檔。

於是我用光碟機把幾張 CD 的音檔給轉出來,放到自己的網站上。一開始只是用網頁當作檔案瀏覽的方式來播放音檔,雖然能用,但缺點就是不能夠切換上下首,要一直切換頁面很麻煩。

所以我試著找一些現成的自架方案,像是 Navidrome 或是 Gonic(Subsonic API)。它們雖然功能強大,但還是會遇到幾個問題:

  1. Navidrome 前端網頁會出現中文亂碼、也不支援以資料夾的方式瀏覽。
  2. 手機要下載支援 Subsonic API 的 APP,檔案多的時候常常會卡住,跑起來速度也慢。

搞到最後,我乾脆用 ChatGPT 生成一個用 PHP 寫的簡單 MP3 播放器。經過一些調整後(其實不少),就完成了一個簡單的「MP3 網頁播放器」。整個部屬過程只需要把一個 index.php 放到一台能跑 PHP 的網頁伺服器上就可以了。

大致的功能如下:

  • 播放控制按鈕:播放/暫停、上一首/下一首。
  • 四種播放模式:循環播放、單曲播放、隨機播放、手動播放。
  • 檔案瀏覽功能:當作檔案瀏覽器也沒問題。
  • 可切換顯示模式:僅顯示 MP3 檔案/顯示全部檔案。
  • 輕量快速,舊手機也能順跑(真的超快)。
  • 零依賴,無需任何前後端的套件或框架。

透過 LLM(大型語言模型)生成再自己調整過的解決方案,真的最能符合自己的需求。