如何在 Windows 7 中更改音频输出设备的默认共享模式采样率?

Posted

技术标签:

【中文标题】如何在 Windows 7 中更改音频输出设备的默认共享模式采样率?【英文标题】:How can I change audio output device default share mode sample rate in Windows 7? 【发布时间】:2014-01-27 09:09:38 【问题描述】:

我正在使用 windows 音频核心 api 进行环回捕获,但失败了: // spClient 是一个智能 comptr 包装的 IAudioClient hr = spClient->Initialize(AUDCLNT_SHAREMODE_SHARED, AUDCLNT_STREAMFLAGS_LOOPBACK,iRequestedDuration, 0, &m_struWaveFormat, 0);

返回 AUDCLNT_E_UNSUPPORTED_FORMAT,因为 m_struWaveFormat 是 44100,16bit 格式,但是在共享模式下设备属性页中的配置是 48000,24bit 格式。如果我将其更改为 44100,16 位格式,上面的代码运行良好。那么,任何人都可以告诉我如何使用音频核心 api 更改默认共享模式采样率吗? 感谢和问候

【问题讨论】:

【参考方案1】:

您无法使用 WASAPI 更改共享模式采样率。

WASAPI 级别非常低,仅支持底层设备支持的内容。但即使设备支持您想要的采样率,也只有管理员可以通过进入控制面板中的音频设置来更改共享模式的采样率。

不过,您可能想查看 Windows 注册表,看看是否有任何可以调整的地方(假设您以管理员权限运行)。控制面板中的内容通常只是 Windows 注册表中值的前端。

【讨论】:

非常感谢,我去试试 @bigbigcat 你能改变采样率吗? 如果它对任何人有帮助,我可以找到this answer to a similar question。它是俄语的,但谷歌翻译对我来说效果很好。

以上是关于如何在 Windows 7 中更改音频输出设备的默认共享模式采样率?的主要内容,如果未能解决你的问题,请参考以下文章

如何更改 Objective-C 中的音频输出设备?

如何以编程方式更改电子内部 Angular 中的音频输出设备?

更改 Windows Media Player 的目标扬声器

Windows Vista/7:如何对输出音频混合进行采样?

WebView 更改音频输出设备

在 OSX 上更改 AVAudioPlayer 的输出设备