任何用于音频处理的类似 OpenCV 的 C/C++ 库?
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/6938634/
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
Any OpenCV-like C/C++ library for Audio processing?
提问by icarus74
Is there anything more out there, that resembles (in spirit) OpenCV, but for processing audio and deriving some intelligence from it ? Capabilities could range from:-
有没有更多的东西,类似于(在精神上)OpenCV,但用于处理音频并从中获得一些智能?能力范围可以从:-
- Multiplatform audio capture and audio playback
- DSP - Audio filters
- Tone detection
- Tonal property analysis
- Tone synthesis (various standard waveforms)
- Recognition given some recognition corpus and model (e.g. determine musical instruments, beats, human speech etc.) -- could potentially use other open-source projects for the actual recognition part (sphinx)
- Speech / music synthesis -- could be again using some other open-source projects (festival)
- 多平台音频捕获和音频播放
- DSP - 音频过滤器
- 音调检测
- 音调属性分析
- 音调合成(各种标准波形)
- 给定一些识别语料库和模型(例如确定乐器、节拍、人类语音等)的识别——可能会使用其他开源项目进行实际识别部分(狮身人面像)
- 语音/音乐合成——可以再次使用其他一些开源项目(节日)
It is fine if the library works on raw audio s.t. format/encoding conversion are external issues handled by other existing libraries (s.a. from ffmpeg).
如果库处理原始音频 st 格式/编码转换是由其他现有库(来自 ffmpeg 的 sa)处理的外部问题,那很好。
I am not an expert in this field, but need to use such API, and wondering if such libraries exist, so my choice of terms to determine capabilities is probably not the best, so experts might like to edit this question.
我不是这个领域的专家,但需要使用这样的 API,并且想知道是否存在这样的库,所以我选择的术语来确定功能可能不是最好的,所以专家可能喜欢编辑这个问题。
采纳答案by Jong Bor Lee
For audio capture and playback, portaudiocomes to my mind.
对于音频捕获和播放,我想到了portaudio。
For audio processing, STKlooks promising.
对于音频处理,STK看起来很有前途。
Have a look at this related question too: Can anyone recommend a decent DSP/speech library in C++?
也看看这个相关的问题:谁能推荐一个像样的 C++ DSP/语音库?
I recommend these three libs:
我推荐这三个库:
very easy to use and friendly for general signal processing Aquila-dsp
strong lib for audio signal processing although hard to use and it's very big and complicated for beginners: CLAM Project
another one I have no experience about it, is worth considering though. tspl
非常易于使用和友好的一般信号处理 Aquila-dsp
用于音频信号处理的强大库,虽然很难使用,而且对于初学者来说非常庞大和复杂:CLAM 项目
另一个我没有经验,但值得考虑。tsp
回答by Borg
Check out Essentia http://essentia.upf.edu/Essentia is an open-source C++ library for audio analysis and audio-based music information ...It contains an extensive collection of reusable algorithms which implement audio input/output functionality, standard digital signal processing blocks, statistical characterization of data, and a large set of spectral, temporal, tonal and high-level music descriptors.
查看 Essentia http://essentia.upf.edu/Essentia 是一个开源 C++ 库,用于音频分析和基于音频的音乐信息......它包含大量可重用算法,可实现音频输入/输出功能、标准数字信号处理块、数据的统计特征以及大量的频谱、时间、音调和高级音乐描述符。
There is also an openFrameworks branch, although you might want to hold off until is officially 64 bit, C++11 in a couple of months. https://github.com/GiantSteps/Essentia-Libraries
还有一个 openFrameworks 分支,尽管您可能想推迟到几个月后正式发布 64 位 C++11。 https://github.com/GiantSteps/Essentia-Libraries
回答by Petx
I think you can try Gaudio sound library - http://www.geek-audio.org
我想你可以试试 Gaudio 声音库 - http://www.geek-audio.org
Gaudio library support audio decoding, encoding and dps.
Gaudio 库支持音频解码、编码和 dps。