播放、佇列、Crate
Crateforge 支援本機播放(rodio + symphonia),可直接解碼各種格式。 在右側欄(選曲工作台)的 Now Playing / Up Next / Crate / Similar 組建播放與選曲。
截圖稍後補上
- 雙擊 曲目即可播放。
Space為 播放 / 暫停,Enter播放焦點/選取列。J/K為上一首 / 下一首,Shift + ←/Shift + →為 5 秒搜尋。S為隨機播放,R為重複播放(關閉 / 全部 / 單曲)。Ctrl + ↑/Ctrl + ↓為音量。
在播放器列中,可拖曳搜尋列進行 scrub,點選時間顯示可切換「已經過 ⇄ 剩餘」, 音量列有滑塊與 % 顯示。波形以解析峰值的實際波形繪製。
曲目的自動接續由 Rust 端的工作執行緒 驅動。即使將視窗最小化播放仍會持續,
若找不到下一首的檔案,會自動跳過並繼續播放。
播放失敗的曲目會以 toast 通知,並將失敗內容(檔案不存在 / 解碼失敗 / 解碼器當機)
記錄到 crateforge.log。
隨機播放 / 重複播放的切換,會在播放引擎套用完成後才反映到畫面上
(避免 Up Next 顯示過期的順序)。切換失敗時不會變更狀態,並以錯誤通知。
從行動裝置 / 遙控器變更 shuffle / repeat / volume 時,桌面端的顯示也會同步。
ReplayGain
Section titled “ReplayGain”可在設定中切換 ReplayGain(逐曲音量正規化,以 −18 LUFS 為基準)。
在 設定 → 一般 → 輸出裝置 中,可選擇播放使用的音訊輸出(Booth 輸出 / 筆電喇叭 / USB 音訊介面等)。
- 選擇 系統預設 時會跟隨作業系統的預設輸出(在作業系統中切換預設後,數秒內就會跟隨)。
- 播放中切換時,正在播放的曲目、播放位置、播放 / 暫停狀態、佇列、音量與 ReplayGain 都會維持不變。
- 插拔裝置後,按 「更新」 按鈕重新取得清單。
- 選擇的裝置會 以名稱儲存,並在下次啟動時(還原佇列之前)自動選用。 若找不到該裝置,會 以系統預設播放,並以通知告知(選擇會保留,重新連接後再啟動即可恢復)。
- 播放中所選裝置被中斷連線時,會自動切換至系統預設並通知。
投放播放(Google Cast)
Section titled “投放播放(Google Cast)”Crateforge 可以將音樂投放到同一個 LAN 上的 Google Cast 裝置(Chromecast / Google TV / 支援 Cast 的喇叭)播放。 裝置端使用 Google 標準的 Default Media Receiver,PC 負責提供音源與操作。
- 按下播放器列上的 「再生先」按鈕(投放圖示)。
- 從清單中選擇裝置。清單最上方的 「このコンピューター」 是一般的本機播放。
- 連線後,正在播放的曲目會 從相同位置在投放端繼續(播放中就繼續播放,暫停中就維持暫停)。
- 要回到本機時,在清單中選擇 「このコンピューター」,或按下 「切断してローカルへ戻す」。 投放會停止,並從相同位置在 PC 上以 暫停狀態 載入。
若找不到裝置,請按 「再検索」。 投放中按鈕會高亮顯示,連線中 / 重新連線中 / 已中斷等狀態會顯示在清單標題與裝置名稱下方。
- 內建 Google Cast 的電視與喇叭、Chromecast、Google TV
- 不支援:HomePod 等 AirPlay 裝置(無法透過 Cast 使用;macOS 請見下方「AirPlay(macOS)」)、Miracast / 螢幕鏡射
- PC 與投放裝置位於 同一個 LAN。
- Crateforge 的 內建 API 伺服器已啟動,且已啟用「LAN 公開」。投放裝置需要由此從 PC 取得音源。 若尚未啟用就選擇裝置,會顯示 確認對話框,只有在你同意時才會啟用 LAN 公開(不會未經同意就公開)。 隨時都可以在設定 → AI 整合 / API中停用。
- mDNS(多播)必須能通過。下列情況可能找不到裝置或無法連線:
- 路由器啟用了 AP 隔離,或處於訪客 Wi-Fi 等不同網路
- 防火牆擋住 UDP 5353(mDNS) 或 API 連接埠(預設 8787)的傳入連線
- 在有 VPN 或多張網卡的環境中,可能選到與裝置不同網路的介面而導致連線失敗。 這時請關閉 VPN,或只使用與裝置相同的網路。
目前可投放的格式如下:
- MP3
- AAC(M4A / MP4 容器)
FLAC / ALAC / WAV / AIFF / Opus 等其他格式,會顯示「這首曲目的格式尚不支援投放」錯誤,播放目標也不會切換 (若已在本機播放,會繼續播放)。
投放中的行為
Section titled “投放中的行為”- 佇列、隨機播放、重複與自動接續 都與本機播放一樣持續運作。曲目結束後,下一首會在投放端開始。
- 播放次數等播放紀錄,會依投放端實際播放的時間記錄。
- Preview / Audition 會停用(投放中無法開始;反過來,Preview 期間也無法切換播放目標,請先按
Esc結束後再選擇)。 - 與投放端的通訊中斷時,會自動嘗試重新連線數次。若仍無法連上,會顯示 「切断」。 此時 不會自動切換到 PC 的喇叭(避免聲音突然從意外的喇叭播出)。 請重新選擇裝置以重新連線,或回到本機。回到本機時,會從最後的位置以暫停狀態載入。
- 應用程式 一律以本機輸出啟動。即使上次正在投放,也不會自動重新連線。
- 投放中仍可使用播放器列的播放 / 暫停、跳轉與音量(音量為投放端的音量)。
投放裝置不會取得 PC 的 LAN API 權杖。取而代之的是,會發給它一組 只對單一曲目、短時間有效、且隨時可撤銷的專用 URL。 此 URL 會在切換曲目、中斷連線、結束應用程式時失效。
不過,投放 以 LAN 公開為前提,預期在家中或錄音室等可信任的 LAN 中使用。 不適用於透過網際網路,或與陌生人共用的公共 Wi-Fi。
AirPlay(macOS)
Section titled “AirPlay(macOS)”實際運作視環境而定。此流程是依設計分析所作的推測,尚未在實機上驗證。
Crateforge 本身並未實作 AirPlay。在 macOS 上,請將系統的聲音輸出設為 AirPlay 喇叭來播放。
- 在 系統設定 → 聲音 → 輸出(或控制中心)中選擇 AirPlay 喇叭。
- 將 Crateforge 的 設定 → 一般 → 輸出裝置 維持在 系統預設。 系統預設輸出改變後,數秒內就會跟隨。
- 若清單中有列出該 AirPlay 裝置,也可以直接在此選擇。
Audition / Preview(試聽)
Section titled “Audition / Preview(試聽)”按 A 進入 Audition 模式 後,波形會變高並顯示 25 / 50 / 75% 的標記,可快速在曲目內來回移動。
1/2/3跳至 25% / 50% / 75% 位置,Home跳至開頭,End跳至尾段(結尾 −3 秒)。Alt + ←/Alt + →為 ±15 秒。- 從右側欄 Crate / Similar 的列,可在不破壞佇列的情況下就地開始 Preview。
Esc會結束 Preview,並 回到原本的曲目與播放位置。即使 Preview 播到曲目結尾, 也不會前往下一首,而是回到原本的位置。
以 Preview 聽過的部分不會計入播放次數、略過次數與最近播放,可以在不弄髒統計的情況下試聽。
播放器列的 AUDITION / PREVIEW 徽章可點選解除(與 A / Esc 相同)。
Audition 模式僅限本次工作階段,不會延續到下次啟動。
Up Next(播放佇列)
Section titled “Up Next(播放佇列)”右側欄的 Up Next 即接下來會播放的佇列。
- 透過內容選單的 「Play Next(接著播放)」,可將選取的曲目(可多選、保持選取順序) 插入正在播放曲目的緊接之後。
- 用列懸停時出現的 「×」 可從佇列移除,拖放 可重新排序。
- 標頭會顯示 件數、總時間、隨機播放徽章。
- 清單最多顯示前 100 首,其餘會在底部以「+N more」顯示件數(標頭的件數為整個佇列)。
- 隨機播放會事先計算實際的播放順序(排列),因此 Up Next 會直接反映接下來實際播放的順序。 切換隨機播放後,Up Next 也會立即更新為新的順序。
- 佇列(含隨機播放順序)、目前曲目與播放位置、隨機播放 / 重複 / 音量會自動儲存, 並在下次啟動時以 暫停狀態 還原(不會自動播放)。已從資料庫刪除的曲目會從佇列中移除。 以 Audition / Preview 試聽的曲目不會被儲存為目前曲目。
右側欄(選曲工作台)
Section titled “右側欄(選曲工作台)”右側欄由 Now / Up Next 與 Crate / Similar 兩組分頁構成。
- 拖曳左緣可 調整寬度(280〜560px),雙擊可還原為預設(348px)。寬度會被保存。
- Split 按鈕可將 Crate 與 Similar 上下同時顯示。Split 只在 Crate / Similar 分頁有效, 在 Now / Up Next 分頁會顯示為停用。
- 分頁不會擅自切換。把曲目加入 Crate 或執行「Find similar」時,你正在看的分頁會保持不變。
取而代之的是 Crate 分頁會顯示件數徽章,Similar 分頁會以圓點 表示已釘選基準曲。
(內容選單的「Find similar」與
Ctrl/Cmd + Shift + S屬於明確操作,因此仍會移動到 Similar 分頁。) Ctrl + ]可顯示右側欄,Ctrl + 1〜4可切換到 Now / Up Next / Crate / Similar 分頁。
Crate(DJ 選曲)
Section titled “Crate(DJ 選曲)”右側欄的 Crate 是用來組建選曲初稿的暫存區。
- 把曲目逐一加入 Crate,湊齊後可 「儲存為播放清單」。
Ctrl + Shift + C可整批加入選取曲目,也可以把清單的列拖曳到 Crate。 - 以 smooth(平滑排序) 按鈕,可根據解析值以貪婪最近鄰自動排序成順暢的流動。
- 每一列都可執行 Preview / Find Similar / Play next / 從這裡播放 / 從 Crate 移除。
Set Workspace(Anchor / Section / Arc / Lint)
Section titled “Set Workspace(Anchor / Section / Arc / Lint)”Crate 同時也是 一整套演出的設計台(不會變更資料庫,內容會在下次啟動時還原)。
- 可為這一套設定 名稱、目標長度(分鐘)、備註,並顯示實際總長度與目標的差距。
- Anchor — 點選列上的徽章可設定
Lock/Opening/Peak/Closing。 設有 Anchor 的曲目在 smooth 排序時位置也會固定。 - Section — 可插入
Opening/Build/Peak/Reset/Closing等區段界線。 smooth 排序不會跨越 Section 的界線。 - Set tools(Arc / Lint) — Arc 會以圖表顯示 BPM / Energy 的起伏。 Lint 則在不做任何破壞性變更的前提下列出結構上的提醒(同一演出者過於接近、重複、BPM 大幅跳動、 Energy 落差、和聲不相容、檔案不存在 / 未解析、評分過低、目標長度過長或不足、 Opening / Closing 的矛盾)。個別警告可以隱藏。
Gig Readiness(演出前檢查)與 Snapshot
Section titled “Gig Readiness(演出前檢查)與 Snapshot”從 Crate 標頭的 「Ready?」,可在一個畫面確認 Crate 或目前顯示之播放清單的準備狀況。
- 阻斷項目:沒有曲目 / 找不到檔案的曲目
- 警告:未解析的曲目 / 重複 / 低位元率(低於 256 kbps 的有損音源,無損格式不在此列)/ 目標長度過長或不足 / Set Lint 的提醒 / 自動匯出的狀態
- Snapshot — 可保存當下的內容與判定結果,之後再回顧(最多 20 筆)。
- 從 Prepare 可開啟同步對話框,繼續進行帶出用的準備。
Inbox / Triage(整理剛匯入的曲目)
Section titled “Inbox / Triage(整理剛匯入的曲目)”側邊欄的 Inbox 會集中剛匯入的曲目與未評分的曲目(件數以徽章顯示)。
- 會列入 Inbox 的是 最近 14 天內加入的曲目、未評分(無★)的曲目,以及標記為 「稍後」 的曲目 (候選取自最近加入的 500 筆視窗加上「稍後」的曲目,因此音樂庫很大時也能輕快開啟)。
- 在 Inbox 按
T即可進入 Triage 模式,只用鍵盤逐曲處理。
| 按鍵 | 操作 |
|---|---|
Space |
預覽播放 / 暫停 |
J / ↓ |
下一首 |
K / ↑ |
上一首 |
1〜5 |
評分 |
Shift+1〜5 |
半星評分(0.5〜4.5) |
C |
加入 Crate |
D / Enter |
標記為已處理並前往下一首 |
S |
稍後(保留在 Inbox) |
Esc |
結束 Triage 並回到 Inbox 清單 |
Triage 的試聽屬於 Preview,因此不會弄髒播放次數。
評分以 0.5 星 為單位。在曲目清單、曲目編輯、右鍵選單與 Triage 中,點擊星星的 左半邊為半星(例如第 4 顆的左半邊 → 3.5),右半邊為整數星;點擊與目前值相同的位置則清除。數值以 iTunes 相容的 0〜100 儲存(★1 = 20,半星以 10 為單位)。行動版 / TV 會四捨五入為最接近的整數星顯示。 「已處理 / 稍後」的狀態保存在應用程式內,不會變更資料庫的結構。
Now Playing(BPM / Key / Energy)
Section titled “Now Playing(BPM / Key / Energy)”右側欄的 Now Playing 會與正在播放曲目的封面圖一起顯示 Album / Artist / Genre / BPM / Key / Energy。 BPM、Key (Camelot)、Energy 會在已解析的曲目上顯示,可用於判斷銜接。
在 Similar 分頁中,會針對正在播放(或右鍵 →「Find similar」)的曲目, 提示 Camelot 鍵相容 + 節奏相近的「下一手」。 關於如何繼續深掘,請參閱相似度選曲(Similar Digging)。