eclipse 如何编写 C++ 音频处理应用程序?
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/2399607/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
How to write C++ audio processing applications?
提问by Cesko82
I'm an Electronics and Telecommunications student, next to my graduation. I'm gonna work on a project that involves my knowledge about DSP, music and audio in general. I allready know all the basic mathematic instruments and all the stuff I need to manage it, such as FFT, circular convolution ecc ecc.
我是电子和电信专业的学生,即将毕业。我将从事一个涉及我对 DSP、音乐和音频的一般知识的项目。我已经知道所有基本的数学仪器以及管理它所需的所有东西,例如 FFT、循环卷积 ecc ecc。
I want to learn C++ programming basically for one reason: it's very important in the professional world!!! And I think it's one of the most used to write applications working with audio, especially when it's about real time processing.
我想学习 C++ 编程基本上有一个原因:它在专业领域非常重要!!!而且我认为它是最常用于编写处理音频的应用程序之一,尤其是在涉及实时处理时。
Ok, after this small introduction I would like to know first, which are the most used libraries to work with audio processing in c++?? I was longer looking on the web but i couldn't find a lo of working stuff. (I work under linux with eclipse CDT enviroment).
好的,在这个简短的介绍之后,我想首先知道,在 C++ 中进行音频处理最常用的库是哪些??我在网上看的时间更长了,但我找不到很多有用的东西。(我在 linux 下使用 eclipse CDT 环境工作)。
Then I would like to know if there are good sources to learn how to write some working code, such as for example how to write a simple low pass filter. Basically now i will not write real time applications, I would like to start from the processing of a WAV file, or even better an MP3 file, so basically on vectors of samples.
然后我想知道是否有很好的资源来学习如何编写一些工作代码,例如如何编写一个简单的低通滤波器。基本上现在我不会编写实时应用程序,我想从处理 WAV 文件,甚至更好的 MP3 文件开始,所以基本上是在样本向量上。
Let's say that basically for now I would like to extract the waveform from an audio file, and save it to a thumbnail or to a PNG image.
假设现在基本上我想从音频文件中提取波形,并将其保存为缩略图或 PNG 图像。
Ok, for now I think it's all I would need.
好的,现在我想这就是我所需要的。
Any ideas, advices, libraries, books, interesting sources about that?
有什么想法、建议、图书馆、书籍、有趣的资源吗?
Thanks a lot in advance for any kind of answer.
非常感谢您提供任何类型的答案。
Giovanni.
乔瓦尼。
回答by RP.
Checkout this linkwhich will give you some information on the available (commercial and open source) audio editing softwares.
查看此链接,该链接将为您提供有关可用(商业和开源)音频编辑软件的一些信息。
Some interesting open source audio editing tools which are written in c++,
一些用 C++ 编写的有趣的开源音频编辑工具,
C++ library for audio processing.
用于音频处理的 C++ 库。
C++ Code and links related Filters and audio processing..
C++ 代码和与过滤器和音频处理相关的链接..
回答by Warpin
I would suggest for you to write your own WAVE file reader and writer in C++, without relying on external libraries. The WAVE format is fairly straight forward, at least if you only intend on supporting the most common wave files.
我建议您用 C++ 编写自己的 WAVE 文件读取器和写入器,而不依赖于外部库。WAVE 格式相当简单,至少如果您只打算支持最常见的波形文件。
Then you'll have access to the audio data, which you can easily manipulate in C++. I would recommend starting by modifying the volume, the number of channels to calculating statistics on the audio. Creating a PNG of the audio waveform requires some more advanced C++ skills...
然后您就可以访问音频数据,您可以在 C++ 中轻松操作这些数据。我建议从修改音量、通道数开始计算音频的统计数据。创建音频波形的 PNG 需要一些更高级的 C++ 技能......