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

这篇具有很好参考价值的文章主要介绍了【Win下实现一键快速切换音频输出设备】。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

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

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

具体实现方法如下:

1. 下载Nircmd

Download NirCmd 64-bit

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

快捷键切换音量输出设备,1024程序员节

一直划到底部

快捷键切换音量输出设备,1024程序员节

2. 安装Nircmd

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

快捷键切换音量输出设备,1024程序员节

双击nircmd.exe,弹出该弹窗

快捷键切换音量输出设备,1024程序员节

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

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

快捷键切换音量输出设备,1024程序员节

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

快捷键切换音量输出设备,1024程序员节

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

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

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

快捷键切换音量输出设备,1024程序员节

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

快捷键切换音量输出设备,1024程序员节

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

5. 键盘宏配置

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

快捷键切换音量输出设备,1024程序员节
在运行命令框中输入你刚才编写的bat文件路径即可,然后将该宏绑定一个空闲按键(如F4)快捷键切换音量输出设备,1024程序员节

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

快捷键切换音量输出设备,1024程序员节文章来源地址https://www.toymoban.com/news/detail-790694.html

相关参考

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

到了这里,关于【Win下实现一键快速切换音频输出设备】的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • win11 系统暂无可用音频设备导致播放失败/音频服务未响应

    win11再一次更新后音频突然用不了了,驱动和输出设备都显示正常,但每次播放就会出现下面的问题,重启和更新驱动也没用。最后百度了好久终于解决了。 最后发现可能是新的驱动和电脑不兼容,重装回原来的驱动即可。 1.按下键盘win+x,打开设备管理器,展开’声音、视频

    2024年02月11日
    浏览(54)
  • Qt之事件过滤器讲解并且实现快捷键切换鼠标焦点

    现在有一个类似于下方图的ui,用户需要在输入前一行内容后,需要摁下指定案件能够跳转到下一行继续进行输入。 一种更为直接的解决方案是子类化 QLineEdit 并且重新实现鼠标事件 keyPressEvent() ,然后调用 focusNextChild() 。 首先需要创建一个子类MyLineEdit继承于QLineEdit类。然后重

    2024年02月12日
    浏览(57)
  • vue实现音频audio列表循环,实现暂停播放切换

    功能界面如下 功能使用如下: 首先根据后端返回的音频地址进行渲染,其中playAudioSrc字段用来控制暂停样式还是播放样式,audio进行隐藏 vue处理逻辑如下

    2024年02月11日
    浏览(44)
  • 如何实现Java JDK的多版本共存&&一键切换版本

    学习Java最一开始就是需要做环境配置啦,安装JDK是必不可少的。大家都知道JDK是Java开发者工具包,那么一般来说要选择什么样的版本来安装呢?可以安装多个JDK吗?是否可以我随时想切换哪个JDK就使用哪个呢? 下面我会主要说明如何实现Java JDK的多版本共存。 一般来说,企

    2024年04月17日
    浏览(57)
  • 用 C# 实现独占音频设备降低其它程序的音量

    C#调用 Windows 辅助功能 API \\\"AccSetRunningUtilityState\\\" 函数实现音频避闪功能 音频闪避是指当自身应用程序,例如辅助功能程序,正在播放音频的时候,降低其他应用程序的音量。这样可以让用户更清楚地听到自身应用程序的音频,例如文字转语音或者导航提示。Windows API 提供了一

    2024年02月03日
    浏览(33)
  • 微信小程序英文版:实现一键切换中英双语版(已组件化)

    已经重新优化代码做成了组件,需要可自取:https://github.com/CrystalCAI11/wechat-language-compoment 所有操作都打包在组件里不需要在额外的地方添加代码,直接在你需要的页面里导入组件,再在对应页面的onLoad()里set文本就行了。 第一步,找个地方新建中英文两个字典,我是放在ut

    2024年04月17日
    浏览(60)
  • Naive UI+Vue3来实现点击按钮一键切换明暗主题的功能

    记录一下如何使用Naive UI+Vue3代码来实现一键切换明暗主题的功能。 效果如下: 终端下输入: 起好项目的名称,然后一路回车即可。 至此Vue3的项目已经搭建完毕,打开http://127.0.0.1:5173/就可以看到项目的默认首页了。 安装Naive UI依赖库 然后我们根据官方出的配置对项目进行

    2024年02月12日
    浏览(42)
  • vim多文件切换快捷键设置

    vim中在打开多个文件时,会有多个文件进行切换的需求。按:bn切换到下一个文件,按:bp切换到上一个文件。 为了便捷操作,将切换命令设置成快捷键。 进入/home/yys个人目录下,vim .vimrc进入vimrc文件。 注意:yys是我个人设置的的账号名称,每个人的名称会不一样! 在vimrc文件

    2024年02月12日
    浏览(90)
  • vim/vi 模式切换和常用快捷键

    vim/vi 切换模式: vim/vi 常用快捷键: 一般模式: gg :文件开头、 G :文件结尾 shift+^ :光标当前行首、 shift+^ :光标当前行尾 yy :复制、 p :粘贴、 dd :删除当前行、 u :撤回 命令模式: :/ :查找、 n 下一处 :wq :保存并退出、 :q :退出、 :q! :强制

    2024年01月20日
    浏览(47)
  • 安卓设备蓝牙键盘快捷键

    日期:2023年1月。 安卓设备可以通过蓝牙或有线外接键盘,值得一提的是,安卓平板连接蓝牙键盘和蓝牙鼠标是一个不错的组合。本文以鸿蒙3.0平板进行测试,介绍一些安卓设备常用的快捷键,内容包含鼠标按键、系统快捷键、桌面快捷键、输入法快捷键、其它快捷键、等等

    2024年02月09日
    浏览(53)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包