【Win下实现一键快速切换音频输出设备】

【Win下实现一键快速切换音频输出设备】

一键快速切换音频输出设备

目录1. 下载Nircmd2. 安装Nircmd3. 重命名音频输出设备的名称4. 编写批处理文件5. 键盘宏配置相关参考

目录

装完新电脑后遇到一个烦恼,我在看视频时喜欢用音响外放,但打游戏时又需要用耳机听声辨位,每次切换都得用鼠标点右下角的小喇叭,对于我这样的懒狗来说,这个过程真的很麻烦,就想自己搞一个脚本,只需要按下一个按键就能快速在两个设备间切换,就像静音键那样的效果。

本文的实现不需要复杂的操作,需要用到的工具仅有 Nircmd 和一个可以自定义宏的键盘(本文使用RAZER黑寡妇蜘蛛V3竞技版),Nircmd是一个非常强大的命令行实用工具,允许您在不显示任何用户界面的情况下执行一些有用的任务。通过使用简单命令即可重新启动Windows或关闭计算机、创建文件快捷方式、更改创建/修改日期、关闭你的显示器等等…在您按照本文复现后,可以用类似的方式DIY各种各样的快捷功能,拓展资料会放在文末。

具体实现方法如下:

1. 下载Nircmd

Download NirCmd 64-bit

该链接为官方链接,打开Nircmd官网,一直拉到底部,即可看到此链接)

一直划到底部

2. 安装Nircmd

将下载好的压缩包解压后打开,可以看到如下内容

双击nircmd.exe,弹出该弹窗

点击Copy To Windows Directory按钮(这一步是为了将nircmd加入Windows系统路径,使用时就不再需要每次都输入nircmd的路径 注意! 如果这一步报错,请用管理员身份运行,或者手动复制 nircmd.exe 到 C:\Windows 下即可。

如果在 C:\Windows 路径下可以找到 nircmd.exe 则代表安装成功,如图所示:

也可以简单测试一下nircmd:Win+R运行cmd,输入 nircmd infobox "Hello World !" "message" ,弹出下框即为正确安装:

此过程如有问题,可参考文末第二个视频

3. 重命名音频输出设备的名称

在电脑 设置 -> 系统 -> 声音 -> 更多声音设置 中将自己想要控制的音频输出设备重命名为“耳机”和“音响”(只是为了方便识别),并禁用了其它没用的输出设备:

4. 编写批处理文件

【23.11.9更新】今天看到评论突然意识到上面的注释如果直接复制到bat文件中可能会出问题导致无法使用,所以特意留一份删除注释版,直接复制下面无注释版本的,应该可行(11.30更新:不,并不可行)。 【23.11.30更新】今天看到另一条评论,发现我的删除注释版不能直接复制,可能是一些隐晦的格式问题,解决方法是直接复制原代码,然后自己删除注释即可。 初写博客问题很多,感谢指正!

在桌面新建一个记事本,并写入以下内容:

// 采用一个很简单的逻辑,如果能优化请告诉我,我也想学习学习

@echo off //关闭回显

chcp 65001 > nul //UTF-8编码

setlocal enabledelayedexpansion //设置局部变量

set tempfile=%TEMP%\tempfile.txt //导入一个临时文件用来存储当前设备标记(如果没有则会在%TEMP%路径下创建一个临时文件)

if exist "%tempfile%" (

for /F %%i in (%tempfile%) do (set currentdevice=%%i)//读取文件内容

) else ( //将默认设备初始化为耳机,或者改成你自己取的名字

echo 耳机 > "%tempfile%"

set currentdevice=耳机

)

if "!currentdevice!"=="耳机" (

echo 音响 > "%tempfile%"

C:\Windows\nircmd.exe nircmd.exe setdefaultsounddevice "音响"

) else (

echo 耳机 > "%tempfile%"

C:\Windows\nircmd.exe nircmd.exe setdefaultsounddevice "耳机"

)

endlocal

exit // 执行完后自动关闭窗口

保存文本,关闭记事本,重命名 .txt 文件后缀为 .bat ,使其成为一个批处理可执行文件

@echo off chcp 65001 > nul setlocal enabledelayedexpansion set tempfile=%TEMP%\tempfile.txt if exist “%tempfile%” ( for /F %%i in (%tempfile%) do (set currentdevice=%%i) ) else ( echo 耳机 > “%tempfile%” set currentdevice=耳机 ) if “!currentdevice!”==“耳机” ( echo 音响 > “%tempfile%” C:\Windows\nircmd.exe nircmd.exe setdefaultsounddevice “音响” ) else ( echo 耳机 > “%tempfile%” C:\Windows\nircmd.exe nircmd.exe setdefaultsounddevice “耳机” ) endlocal exit

此处可以双击试运行一下,看看设备是否更改

5. 键盘宏配置

本文使用了雷蛇自带的软件“雷云”,在“宏”一栏新建一个宏文件,然后点击插入 -> 运行命令

在运行命令框中输入你刚才编写的bat文件路径即可,然后将该宏绑定一个空闲按键(如F4)

这样就搞定了! (按两下F4试试效果吧~)

相关参考

【爱折腾】如何使用宏按键一键切换PC音频输出设备 【鼓捣东西】Nircmd?没听说过,但确实厉害 【Nircmd官网】【Nircmd使用文档中文翻译帖子】

相关推荐

创造与魔法黑曜石宝箱分布位置及刷新时间大全
365bet中文比分

创造与魔法黑曜石宝箱分布位置及刷新时间大全

📅 07-14 👁️ 2454
iphone最近经常无法连接网络
365365bet官

iphone最近经常无法连接网络

📅 07-30 👁️ 8373
教师专业技术资格证书是什么
365bet假网站

教师专业技术资格证书是什么

📅 07-06 👁️ 8551
迍剥是什么意思
365bet中文比分

迍剥是什么意思

📅 08-10 👁️ 2644
在 Google Play 上下載 Android 版 Beats App
365bet中文比分

在 Google Play 上下載 Android 版 Beats App

📅 07-03 👁️ 6220
材料速刷一览
365365bet官

材料速刷一览

📅 07-27 👁️ 2101
一招轻松掌握Java数据库驱动加载,告别繁琐配置难题
如何將Apple Pencil Pro或Apple Pencil USB
365365bet官

如何將Apple Pencil Pro或Apple Pencil USB

📅 06-27 👁️ 2696
“新百区”预注册6月25日14点抢先开放!
365365bet官

“新百区”预注册6月25日14点抢先开放!

📅 08-06 👁️ 2611