【问题标题】:Portaudio: Importing sound example into my bufferPortaudio:将声音示例导入我的缓冲区
【发布时间】:2012-06-09 19:00:33
【问题描述】:

我再次需要你的帮助。

短版: 您可以将声音片段导入 Portaudio 吗?如果没有,我在哪里可以得到“真实”的声音示例,将其转换为可以存储到声音缓冲区中的离散值?

加长版: 作为一个小型项目的一部分,我决定实施 HRTF。为此,我正在使用 PortAudio (http://www.portaudio.com/),它是一个用于声音处理的 C/C++ 库。作为其中的一部分,我正在尝试模拟 ITD(内耳时差)。为此,PortAudio 会生成一个正弦波并将其存储到缓冲区中,尽管正弦波用于测试是有问题的。 这就是为什么我需要一个“现实”的声音例子。问题是,我似乎找不到任何允许我导入声音剪辑并将它们存储到缓冲区中的 PortAudio 功能。 作为第二种选择,我可以查找一个声音剪辑,该剪辑被转换为离散值并存储到一个数组中。然后我可以将该数组复制到我自己的缓冲区中,尽管我不知道在哪里可以找到这样的数组,我什至不知道它们是否存在。

所以问题是: PortAudio 是否允许您导入自己的声音剪辑,如果没有,我在哪里可以找到以离散值存储声音剪辑的数组。

如果对我的问题有任何疑问,请提出。 最好的问候 - Marc Pilgaard

【问题讨论】:

    标签: audio buffer signal-processing simulation portaudio


    【解决方案1】:

    PortAudio 只是一个音频播放/录音库。它既不操纵声音,也不带来任何加载/存储声音的设施。它只是实现了缓冲区 --> 扬声器和麦克风 --> 缓冲区。

    如果我理解正确,您正在寻找一个库,可以让您将 wav 或 mp3 文件加载到缓冲区中,而缓冲区又可以由 portaudio 播放。由于您已经在 C 世界中,最好的方法是使用libsndfile,它基本上模仿了标准 C 文件访问接口,用于加载和编写 pcm 文件,例如 wav。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-11-27
      • 1970-01-01
      • 1970-01-01
      • 2013-11-22
      • 1970-01-01
      • 1970-01-01
      • 2021-07-16
      • 1970-01-01
      相关资源
      最近更新 更多