繁体   English   中英

如何在Visual Basic .NET中找到默认音频设备?

[英]How can I find the default audio device in Visual Basic .NET?

这需要能够适用于最后两个或三个Windows版本(7,Vista,可能还有XP)。 在Visual Basic .NET中,如何找到默认音频设备(我正在寻找扬声器和东西,而不是麦克风)。 谢谢!

编辑:伙计们,我真的走进了这里不熟悉的领域。 似乎每次我尝试使用代码示例时,都会出现构建错误,这些错误不会更加神秘,并且涉及库内部发生的错误以及各种类似的错误。 有没有什么可以让初学者学习如何做到这一点? 谢谢!

Windows中有一些音频API,它们都提供设备枚举。 最近的“主要”API仅限Vista +,因此您需要确定XP支持是否重要。

Vista +枚举: 枚举音频设备

代码适用于所有Windows版本: 示例:如何枚举系统上的waveIn和waveOut设备

这些是上面的C ++代码链接,在VB.NET中你需要P / Invoke调用或包装库,比如NAudio来处理内部细节。

某些音频API(winMM,DirectSound,DirectShow,Media Foundation,WASAPI)允许您枚举设备,但提供默认值; 某些(Beep,PlaySound)仅允许通过默认设备播放。

最简单的API是PlaySound(好吧,除了Beep之外,但它的用处有限。)你想玩什么? 这将有助于确定要使用的API的选择。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM