在我的另一个post之后,我想知道是否可以对解码的音频包进行一些处理,比如MFCC提取。我使用的代码使用ffmpeg解码来自mpeg-2文件的音频和视频。视频处理是使用opencv完成的,因为这个库允许逐个抓取帧。我需要同时处理相应的音频样本。
谢谢。
发布于 2012-04-09 15:45:39
我已经创建了一个名为“C++”的串音引擎。
尽管它被称为“音频引擎”,但它实际上只是一个实时C++数据(浮点)处理引擎。串扰允许您以设计时间和实时方式创建和布线系统。基本上,引擎负责所有的数据路由,并为您提供一个简单的平台来创建组件,通过这些组件处理数据(例如,您的"Audio Feed“组件与"Video Feed”组件并行连接)。只要你的分支的缓冲区总长度相等,它们就会完全同步。
它非常容易使用。以下是如何配置系统播放mp3文件的示例(这里使用的组件是随引擎提供的):
XtSystem system;
XtMp3Decoder mp3Decoder;
XtAudioDevice audioDevice;
long md = system.addComponent(&mp3Decoder);
long ad = system.addComponent(&audioDevice);
system.connOutToIn(md,0,ad,0);
system.connOutToIn(md,1,ad,1);
mp3Decoder.loadFile("../05 Tchaikovski-Swan Lake-Scene.mp3");
mp3Decoder.play();您可以在此处查看API文档和许可细节:http://www.adaptaudio.com/Crosstalk
EDIT (01-12-2012):
相声已经被一个名为"DSPatch“的开源项目所取代。DSPatch本质上是串扰背后的路由引擎的升级版本,不再仅限于音频处理。DSPatch允许您创建和路由几乎任何类型的流程链,并免费供个人和专有使用:)
发布于 2021-11-26 20:08:10
我下载了你的库,我正在使用它。您是否与其他IPC技术(如套接字/本地主机、消息队列、音频流的循环缓冲区)进行了某种性能比较?我正在开发一个软件应用程序,它接收一个多通道UDP流(128个通道),对其中的一个子集执行FFT,播放一个选定的通道,可视化两个通道的光谱和一个通道的频谱图。你认为DSPatch足够快可以使用它吗?我下载了你的库,我正在使用它。您是否与其他IPC技术(如套接字/本地主机、消息队列、音频流的循环缓冲区)进行了某种性能比较?我正在开发一个软件应用程序,它接收一个多通道UDP流(128个通道),对其中的一个子集执行FFT,播放一个选定的通道,可视化两个通道的光谱和一个通道的频谱图。你认为DSPatch足够快来使用它吗?
https://stackoverflow.com/questions/9444208
复制相似问题