问题标签 [xaudio2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
786 浏览

midi - 使用 DirectMusic 弹奏单个音符

我正在开发的应用程序中使用 DirectMusic 进行 MIDI 播放。有谁知道是否可以使用 DirectMusic 播放单个音符?目前,我正在将表示整个“歌曲”的内存数据结构转换为 MIDI 缓冲区并通过 DirectMusic 播放。我希望能够播放单个音符,而不必为其生成 MIDI 缓冲区、加载它并播放它。DirectMusic甚至可以实现这种类型的事情吗?

这是我第一次进入 DirectMusic 世界,所以希望我不会太不了解它的功能......

0 投票
1 回答
605 浏览

c++ - mmioOpen 出现奇怪的文件未找到错误

我一直在玩 XAudio2 但遇到了一些奇怪的mmioOpen问题

由于某种原因,它似乎失败了MMIOERR_FILENOTFOUND,即使文件在那里,实际上该文件与我正在加载的其他文件位于同一目录中,这些文件工作正常......

我用来测试的 wav 文件只是 August SDK 示例中的文件,如果我将名称复制到 XAudio2BasicSound 示例中,这些文件可以正常工作......在某些情况下,我实际上不得不将声音重命名为 1.wav 之类的东西让他们打开...

我只是使用 SDKwavefile.h 中的 wav 类。我添加了mmioinfo结构来获取错误号,并且在它给我的不起作用的情况下MMIOERR_FILENOTFOUND,即使文件在那里,都在同一个目录中......我只是稍微更改了第 63 行,所以我可以从中获取错误代码mmioOpen. 除了将它传递给方法Audio.Sound之外,不对字符串做任何事情。wav.Open

我真的看不出它为什么无法打开其中一些波浪的原因......

0 投票
2 回答
9064 浏览

c++ - 在 DirectX 中显示视频

在使用 XAudio2 和 Direct3D9/10 的应用程序中显示视频(带声音!)的最佳/最简单方法是什么?

至少它需要能够流式传输可能更大的视频,并注意窗口纵横比可能与视频不同的事实(例如通过添加信箱),尽管理想情况下我喜欢将视频嵌入到一个 3D 场景。

我当然可以想办法将每一帧加载到纹理中,丢弃/重新使用渲染后的纹理,并通过 XAudio2 单独播放音频,但是除了为至少一种格式编写加载器外,我还得处理使用诸如同步视频和音频组件之类的东西,因此希望有一个更简单的解决方案可用,甚至是一个具有合适许可证的现成免费解决方案(二进制形式的商业分发,在 LGPL 的情况下动态链接很好)。

0 投票
1 回答
1722 浏览

c++ - XAudio2 和可变比特率音频

如何正确播放可能具有可变比特率(在某些情况下甚至是可变数量的通道)的音频文件,例如 ogg/vorbis?

XAudio 期望在创建源语音时在 WAVEFORMATEX 结构中提供此信息,并且似乎没有提供一种方法来为每个提交的缓冲区更改它...

0 投票
3 回答
7593 浏览

c# - C# 中用于数字信号处理的音频库

我的问题是这样的:

我正在开发一个相当小的应用程序(它需要能够在未来增长,但目前,有限的功能就足够了)接收音频(16 位单声道 @ 44.1kHz)并对数据执行傅里叶变换和过滤。我在你能想象到的所有领域的经验是有限的,但我最近一直在研究它并且有一些了解。我的资金有限,我无法使用 GPL 或类似许可下的任何库(我需要能够分发这个应用程序)。对于信号处理,我选择了 MathNet 库,这似乎可以处理大部分处理(我将编写必要的过滤器)。

真正的问题是找到要使用的声音库——我希望在 C# 中有一些东西,虽然它似乎 directSound 是最好的选择,但我不愿意使用它,因为微软几乎已经放弃了它(我工作的公司将在不久的将来升级它的装备;我只是想尽可能地增加应用程序的寿命)。我使用 XAudio2 吗?我需要能够从 USB 设备记录原始 pcm 数据并对其进行处理(+将其写入 .wav 文件),并直接从 .wav 文件中读取数据。

任何帮助表示赞赏

0 投票
2 回答
1745 浏览

audio - XAudio2,开始/停止循环?

如何在 IXAudio2SourceVoice 中启动/停止音频循环?

基本上它有一个 start/stop 来启动和暂停音频执行,以及一个 ExitLoop() 函数,它在完成播放后停止音频。我想做的是调用“ExitLoop()”,然后稍后重新启动循环过程。我怎样才能做到这一点?

0 投票
1 回答
758 浏览

c++ - 需要有关 XAudio2 的 XAPO 效果的资源

我最近一直在使用 XAudio2。在查看了 Microsoft 和 MSDN 提供的示例、示例代码和比我想要的更稀疏的文档之后,我发现没有任何易于 Google 的资源来创建和使用 XAPO效果,也不是我可以下载和/或购买的第三方制作的任何 XAPO 效果。

因此,看起来如果我创建一个使用 XAPO 效果的应用程序,我将不得不自己创建它们,因为没有像 Apple 的 AU 或 Steinberg 的 VST 等技术那样强大的现有应用程序社区。这是真的,还是有其他人使用 XAudio2 和 XAPO 而我只是没有找到它们?

有没有地方可以询问有关 XAudio2 和相关技术的程序员支持相关问题(或者 StackOverflow 是最好的目的地)?到目前为止,我发现的最好的是 XNA 论坛,它们是特定于游戏的,并且在音频领域的交易很少,所以并不是很有用。

0 投票
1 回答
67 浏览

windows - XAPO 过滤器可以全局应用吗?

我正在研究 Microsoft XAudio2 XAPO,我猜它仅适用于通过 XAudio2 发送的音频流,还是可以将其用作系统范围的音频过滤器?

0 投票
1 回答
2226 浏览

c++ - 如何检查/更改声卡的采样率?

我正在使用 XAudio2 将 PCM 格式的波发送到我的声卡,我遇到了一个让我想到这个问题的问题。我用 MATLAB 创建了一个 440 Hz 正弦波的 .csv 文件,起初我以 1 KHz(1 秒)对其进行采样。

然后我的 C++ 程序将加载该文件并将缓冲区发送到声卡。问题是输出失真(削波),听起来根本不像正弦波。然后我想,也许声卡不喜欢 1 kHz 的采样率,所以我加倍了,突然一切都好了。

有没有办法确认这确实是问题所在?

0 投票
1 回答
653 浏览

c++ - 指向向量第一个字节的指针

指向XAUDIO_BUFFERXAudio2 中结构的音频缓冲区的指针定义为BYTE *pAudioData. 当我使用 16 位整数 PCM 时,我的程序如下所示:

"sineInt16"是一个 .csv 文件。由于向量在内存中是按顺序组织的,所以我只需这样做pAudioData = &vec[0],它就会起作用。如果我想将 .csv 的格式更改为float怎么办?如何给向量中第一个字节的指针?我应该使用另一个容器,比如一个简单的字符数组吗?