处理音频数据包德$ C $光盘的ffmpeg [英] Process audio packets decoded with ffmpeg

查看:191
本文介绍了处理音频数据包德$ C $光盘的ffmpeg的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

随着我的其他<一个href=\"http://stackoverflow.com/questions/9429342/de$c$c-audio-and-video-and-process-both-streams-ffmpeg-sdl-opencv\">post,我wondernig是否可以做这样的德codeD音频数据包的MFCC提取一些过程。在code我使用的ffmpeg使用去code的音频和视频的MPEG-2文件。在视频处理使用OpenCV的,因为这个库允许由一个抓帧上进行。我需要处理相应的音频样本在同一时间

Following my other post, I am wondernig if it is possible to do some process like MFCC extraction on the decoded audio packets. The code I use decode audio and video from mpeg-2 file using ffmpeg. Process on video is done using opencv as this library permits to grab frames on by one. I need to process the corresponding audio samples in the same time.

感谢。

推荐答案

我已经创建了一个C ++命名音频引擎相声。

I've created a C++ audio engine named "Crosstalk".

虽然它被称为音频引擎,这真的只是一个实时的C ++数据(浮点)处理引擎。串扰允许您创建,并在设计时和实时路由系统。基本上,引擎需要的所有数据路由的关怀和给你一个简单的平台,用于创建通过数据得到处理元件(并联在视频频道组件例如你的音频频道部分)。只要你的分支是相等的总缓冲区长度,它们将被完全同步。

Although it's referred to as an "audio engine", It's really just a real-time C++ data (floating point) processing engine. Crosstalk allows you to create and route systems in design-time and real-time. Basically, the engine takes care of all the data routing and gives you a simple platform for creating components through which the data gets processed (E.g. your "Audio Feed" component connected in parallel with the "Video Feed" component). As long as your branches are of equal total buffer length, they will be perfectly synchronized.

这是非常容易使用。下面是如何在一个系统配置为播放​​MP3文件(这里所使用的元件进行发动机)的例子:

It's very easy to use. Here's an example of how to configure a system to play an mp3 file (The components used here are provided with the engine):

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

You can check out the API documentation and licensing details here: http://www.adaptaudio.com/Crosstalk

修改(2012年1月12日):

串扰已被取代所谓的 DSPatch 一个开源项目。 DSPatch本质上是落后的串扰路由引擎不再仅限于音频处理的升级版。 DSPatch允许您创建和路由几乎所有类型的工艺链的想象,并免费为个人和专有使用:)

Crosstalk has been replaced by an open-source project called "DSPatch". DSPatch is essentially an upgraded version of the routing engine behind Crosstalk that is no longer limited to only audio processing. DSPatch allows you to create and route almost any type of process chain imaginable, and free for personal AND proprietary use :)

这篇关于处理音频数据包德$ C $光盘的ffmpeg的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆