【发布时间】:2017-09-22 23:51:52
【问题描述】:
场景
出于个人原因,我需要将耳机放在相反的方向,所以应该是左声道/耳机我把它放在我的右耳,而右声道/耳机放在左耳。
在玩电子游戏时,这在游戏中变成了一个大问题,玩家必须集中精力找出游戏声音的来源(左声道或右声道),例如在在线射击游戏中,因为......好吧,游戏中来自左声道的声音在我的右耳上听到,而来自右声道的声音在我的左耳上。这就是这个问题有意义的地方。
问题
如何使用 C# 或 VB.NET 在 Windows 中以编程方式切换主声音设备/耳机的(或目标可执行文件的通道)的(立体声)音频通道?
我没有任何问题可以依赖 NAudio 或 VistaCoreAudioApi 库。
【问题讨论】:
-
这可能是个愚蠢的问题,但是您是否尝试过将耳机放在相反的方向?
-
@maccettura 哈哈哈好一个。问题是耳机是无线的,如果我把它放在正确的方向上,它会产生很多干扰。购买新耳机不是解决方案,因为它会产生相同的干扰,因此我只需要修复/切换系统中的通道输出即可。
-
您是否尝试过移动头部另一侧的无线信号源并正确戴上耳机?
-
假设这个使用的是3.5mm的音频插孔,自己做“延长”芯,但是左右引线倒转。或者,购买延长线,剪断电线并重新拼接。
-
NAudio 可以让您使用
WasapiLoopbackCapture捕获来自其他应用程序的音频,但不能对其进行修改。您需要一个虚拟音频设备驱动程序来执行此类低级操作,因此编写自己的驱动程序将非常困难。交换频道部分很简单——它会在其他应用程序发出声音之前截取声音,而不是从其他应用程序中截取。
标签: c# .net vb.net audio naudio