重覆的困擾
聽說這情況會不斷重覆:
半夜睡不著覺,身體累了,腦袋卻不肯休息,白天的片段不連貫,一段又一段的反覆出現。有以下勸說:就好好休息啊, 別想太多 ,快去運動。可惜,這就好像叫人到大海邊去阻止海浪朵朵開花一樣,無力辨到,思緒也如此這般 襲擊 上岸,擋不住的。
重覆的好處
現在,您也有機會體驗思緒和聲音不斷侵入腦袋,MPV播放器是您的好選擇,它可以外掛 腳本 ,好讓您設定歌曲的AB點循環播放!不是全首喔,是中間隨喜好設定二個端點並在之間不斷重覆,直到你關掉為止。除此之外,這功能可以用在重覆練習,比如練習 唱詩歌 的一小段、英文會話的幾句話、爸媽嘮叨的其中一句…等等,一定可以聽到在腦子裡盤旋不已。
操作簡便
舉練歌來說,播放器沒有外掛這功能以前,我們要記得想要的片段在幾分幾秒,然後自己瞄得老半天的去按時間橫軸,還不是每次都按得準,無形中損失了不少零碎的時間。
現在,您只要聽到片段開始的地方,優雅地按下a鍵設定起始,聽到結束的地方,愉快地按下b鍵,播放器就自動重覆播放您選的這一小段,直到您 受不了 滿足地按下z鍵為止。
外掛.lua腳本
- 在
~/.config/mpv/scripts目錄建立ab_loop.lua腳本,若沒目錄的話自行建立:
mkdir -p ~/.config/mpv/scripts
vim ~/.config/mpv/scripts/ab_loop.lua
mkdir建立目錄,-p建立目錄時遞迴建立父目錄
用vim編輯ab_loop.lua,若沒有該檔會自動建立新檔
- 輸入以下程式碼:
-- ~/.config/mpv/scripts/ab_loop.lua
local mp = require 'mp'
local a_pos = nil
local b_pos = nil
local loop_active = false
local function show_message(msg)
mp.osd_message(msg, 2)
end
local function set_a()
a_pos = mp.get_property_number("time-pos")
if b_pos and a_pos >= b_pos then
show_message("A 點不能大於或等於 B 點")
a_pos = nil
return
end
loop_active = (a_pos and b_pos)
show_message("設定 A 點: " .. string.format("%.2f", a_pos) .. " 秒")
end
local function set_b()
b_pos = mp.get_property_number("time-pos")
if a_pos and b_pos <= a_pos then
show_message("B 點不能小於或等於 A 點")
b_pos = nil
return
end
loop_active = (a_pos and b_pos)
show_message("設定 B 點: " .. string.format("%.2f", b_pos) .. " 秒")
end
local function reset_ab()
a_pos = nil
b_pos = nil
loop_active = false
show_message("取消 AB 循環")
end
mp.observe_property("time-pos", "number", function(name, value)
if loop_active and a_pos and b_pos and value then
if value >= b_pos then
mp.set_property_number("time-pos", a_pos)
end
end
end)
mp.add_key_binding("a", "set_a_point", set_a)
mp.add_key_binding("b", "set_b_point", set_b)
mp.add_key_binding("z", "reset_ab_loop", reset_ab)- 腳本的最後已直接綁 key,所以不用到
~/.config/mpv/input.conf去設定按鍵a、b、z的功能
使用畫面
📢 獨家腳本
我向AI要腳本的來源,結果她回答我:這是客製化的,同時把各個來源傳給我。原來,我的需求是綜合各個高手的智慧,所以,達則兼濟天下,請大家好好使用吧!
客製化功能
-
顯示 A/B 點提示訊息
-
支援按鍵切換與重置
-
保持 User Interface 簡單直覺
-
未設定 A/B 時:按 a → 設 A,再按 a → 設 B,自動循環
-
按 z 取消循環
各家優勢
📣 目前只有Linux作業系統上的mpv可以自由地擴充許多腳本!
🥇1. MPV(目前使用的)
- ✅ 完全開源、極度輕量
- ✅ 可用 Lua 腳本自訂 幾乎任何行為
- ✅ 支援 AB 循環、快捷鍵綁定、提示顯示、OSC 視覺控制
- ✅ 支援 CLI、GUI(如 Celluloid、mpv.net、IINA)
- ⚠️ 缺點:對新手來說入門門檻高
🥈2. VLC media player
- ✅ 支援 AB 重播(選單上就有 A → B 重播)
- ✅ 跨平台、開源、功能齊全
- ✅ GUI 易用、還支援錄音、串流等
- ❌ 不能自訂快捷鍵做 AB 控制,也無法顯示目前 A/B 點提示
- ❌ 腳本功能不如
mpv靈活(LUA 支援也有限)
👉 適合需要 AB 循環但不想寫程式的用戶
🥉3. PotPlayer(Windows 專用)
- ✅ 功能極強大,支援 AB 循環、快捷鍵自訂、截圖、錄音
- ✅ 可設定 AB 區間顯示提示
- ❌ 專有軟體,非開源
- ❌ 僅支援 Windows(但對 Windows 使用者來說功能媲美 mpv)
👉 適合進階 Windows 用戶,尤其需要精準剪輯音訊/影像者
⭐ 4. IINA(macOS 專用 GUI,底層用 mpv)
- ✅ 支援 mpv 的所有功能 + Mac 原生圖形介面
- ✅ 同樣可以支援 AB 循環、快捷鍵、腳本
- ✅ OSD 提示等可視化非常優美
- ❌ 僅限 macOS
👉 對Mac 使用者來說,這是 mpv 的最美 GUI 版本
上次修改於 2025-08-06