比如用键盘快捷键切换 内置音箱 /耳机 /蓝牙音箱。
1
zhaoxin 2022 年 11 月 22 日
你可以尝试写 shortcuts 或者 applescript ,然后绑定快捷键。不过其实这个意义也不大。你把音量图标拖到定栏用鼠标点不是一样吗?
|
2
hackpro 2022 年 11 月 22 日 via iPhone
Alfred workflow
|
4
jheroy 2022 年 11 月 22 日
|
5
jheroy 2022 年 11 月 22 日
如果不想用 Alfred, 也可以吧上面那个 worklfow 中间的脚本复制过来配合 skhd 直接用快捷键直接那个脚本就切换了, 参数直接写上你的输出设备就行.
|
6
jheroy 2022 年 11 月 22 日
直接那个脚本 = 执行那个脚本
|
7
fl2d OP |
8
arac 2022 年 11 月 22 日
也有这个需求,raycast 的官方 repo 找的 swift 脚本改的,配上 alias 也挺好用的
|
9
dufu1991 2022 年 11 月 23 日
@fl2d 装好了 switchaudio-osx ,在终端直接运行没问题,但是我尝试通过『自动操作』将 SwitchAudioSource -n 这个命令配置一个全局的快捷键,发现『自动操作』里面执行 shell 命令的时候找不到 SwitchAudioSource 这个命令,奇怪。导致快捷键这个最核心的步骤过不去,你们是如何解决的?
|
11
dufu1991 2022 年 11 月 23 日
@fl2d 命令不是很熟,能否详细点。我试了 cd /usr/local/bin/,然后 SwitchAudioSource -n 。还是不行。
|
12
fl2d OP @dufu1991
在你的脚本里,命令的前面,加上路径 /usr/local/bin/SwitchAudioSource -n xxx 这个是我这里的路径,你可以用 which SwitchAudioSource 看一下你电脑里的路径 |
13
19cm 1 月 25 日
老哥你实现了吗,lua 脚本我倒是实现了,但快捷指令没搞定
-- Hammerspoon: 切换音频输出设备( Headsets <-> Yamaha YVC-330 ) -- 将本文件保存为 ~/.hammerspoon/init.lua ,Reload Config 后按 F12 切换 -- 定义要切换的两个设备 local DEVICES = { {name = "Headsets", icon = "🎧"}, -- 耳机 {name = "Yamaha YVC-330", icon = "🔈"} -- 雅马哈设备 } -- 获取所有音频设备 local function getAllAudioDevices() local devices = {} for _, dev in ipairs(hs.audiodevice.allOutputDevices()) do devices[dev:name()] = dev end return devices end -- 切换音频设备 local function toggleAudioOutput() local allDevices = getAllAudioDevices() -- 检查两个设备是否都存在 local device1 = allDevices[DEVICES[1].name] local device2 = allDevices[DEVICES[2].name] if not device1 or not device2 then hs.alert.show("❌ 找不到音频设备") return end -- 获取当前设备 local current = hs.audiodevice.defaultOutputDevice() -- 决定切换到哪个设备 local target = nil local targetIcon = "" if current and current:name() == DEVICES[1].name then target = device2 targetIcon = DEVICES[2].icon else target = device1 targetIcon = DEVICES[1].icon end -- 执行切换 if target:setDefaultOutputDevice() then hs.alert.show(targetIcon .. " 已切换至: " .. target:name()) else hs.alert.show("❌ 切换失败") end end -- hs.hotkey.bind({"ctrl"}, "f1", toggleAudioOutput) -- 绑定热键 F12 (没有修饰键) hs.hotkey.bind({}, "f13", toggleAudioOutput) -- 加载提示 print("🎧 音频切换脚本已加载") print("📢 按 F12 切换设备:") for i, device in ipairs(DEVICES) do print(" " .. i .. ". " .. device.icon .. " " .. device.name) end |