把想留下的聲音,轉成隨身可聽的音檔——在自己的電腦上跑,沒有滿版廣告,也沒有來路不明的「下載」按鈕。
網路上「YouTube 轉 MP3」的線上服務一大堆,但用過的人都知道:滿版廣告、假的下載按鈕、跳出新分頁、品質參差,有些甚至有安全疑慮。想單純把一段音訊留下來,卻得先過五關斬六將。
所以我自己做了一個:一支在本機執行的桌面小工具,貼上連結、選資料夾、按下轉換,就這樣。沒有廣告、不上傳到任何第三方伺服器,全程在你自己的電腦上完成。介面用 CustomTkinter,下載交給成熟的 yt-dlp,轉檔用內嵌的 ffmpeg 輸出 192 kbps 的 MP3。
把 YouTube 連結貼進輸入框,需要的話填個自訂檔名(留空就用影片標題)。
挑一個要存放的資料夾,視窗會顯示目前選定的路徑。
按下轉換,進度條即時更新,完成後在選定資料夾得到一份 MP3。
多數教學都要使用者自行安裝並設定 ffmpeg 環境變數。這支工具把 ffmpeg.exe / ffprobe.exe 一併打包,啟動時透過 sys._MEIPASS 取得解壓路徑並指向內嵌執行檔,下載即用、零設定。
下載與轉檔放在獨立的 Thread 執行,避免長時間任務卡住主視窗。過程中視窗仍可正常回應,狀態列即時顯示「下載中/完成/失敗」。
透過 yt-dlp 的 progress_hook 取得已下載與總位元組數,換算百分比後即時推進進度條,而非只給一個轉圈圈。
允許自訂輸出檔名,並自動濾除 \ / : * ? " < > | 等 Windows 不允許的字元,避免存檔失敗;留空則回退使用影片標題。
未填連結或未選資料夾會先跳提示;下載或轉檔若失敗,以對話框回報實際錯誤,狀態列同步轉為紅色,不會默默結束。
請僅用於下載你有權使用的內容,例如自己的影片、無版權/創用 CC 授權的素材,或合理範圍內的個人留存。YouTube 上多數內容受版權保護,下載前請先確認你擁有相應的權利,並遵守當地法規與平台條款。
| 核心 | Python · yt-dlp(音訊下載)· 多執行緒(threading.Thread) |
| 介面 | CustomTkinter(深淺色跟隨系統)· Tkinter 檔案/資料夾對話框 |
| 音訊轉檔 | ffmpeg(內嵌打包)· FFmpegExtractAudio → MP3 192 kbps |
| 打包 | PyInstaller 單檔 exe · 以 datas 內嵌 ffmpeg / ffprobe · 內含版本資訊 |
| 平台 | Windows(免安裝、本機執行) |
單一執行檔,免安裝、本機執行。由於把 ffmpeg 一併內嵌打包,檔案體積較大(約 150 MB),換來的是「下載即用、零環境設定」。
有權使用的內容。