首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >RtAudio或PortAudio,使用哪一个?

RtAudio或PortAudio,使用哪一个?
EN

Stack Overflow用户
提问于 2011-03-03 06:35:30
回答 3查看 13.1K关注 0票数 20

我正在考虑为一个需要实时音频和midi处理的新项目使用RTAudio + RTMidiPortAudio + PortMidi。有使用这两个库经验的人能推荐其中一个吗?为什么?与C应用程序接口相比,我更喜欢C++应用程序接口,但这还不足以让我做出决定。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-05-05 06:04:25

很长一段时间以来,我一直在锁定与那个需求的完美匹配。现在我更喜欢

  • 端口音频:

代码语言:javascript
复制
- (+) on Windows, supports asio, DirectSound, MME, WASAPI (with header headaches)
- (+) on Linux, supports ALSA, OSS, Pulse, JACK
- (+) on Mac, supports Core Audio
- (+) very active project,and some good gurus are developing it).
- (+) used by many very successful apps + the C++ is not native but there is a binding that is integrated to the main branch (since last year i think)
- (+) It's really reliable with libsdnfile (which is great)
- (-) It's not native c++
- (-) the projects, configure, integration is pretty annoying
- (-) working well for multiple platforms (debian, osx, seven : my own experience)
- (-) much of the documentation sucks and is mostly outdated and contradictory when googling for answers

  • rt audio

代码语言:javascript
复制
- (+) on Windows, supports asio, DirectSound, WASAPI (as of 10-04-2014)
- (+) on Linux, supports ALSA, OSS, Pulse, JACK
- (+) on Mac, supports Core Audio
- (+) native c++, 
- (+) really easy to get into it
- (-) not so much active
- (-) much of the documentation sucks and is mostly outdated and contradictory  when googling for answers

其他解决方案:

  • Qt :

代码语言:javascript
复制
- (-) heavy, not exactly what i'm looking for
- (-) real time audio support is recent and not stable
- (+) easy to use if you use QtCreator (and less if using QtAddon with visual, and less with xcode)
- (+) midi integrated

  • Juce:

代码语言:javascript
复制
- java like design
- heavy, not exactly what i'm looking for
- simple, and working pretty well (used professional audio)
- midi integrated, file reading of aiff and wave, and flac

票数 15
EN

Stack Overflow用户

发布于 2012-03-19 20:59:54

这里有一个出现在Linux音频开发列表上的相关线程。对于我的新应用程序,我将采取的方法是为jack编写代码,并在linux+jack中进行所有调试,然后将RTAudio用于我最终发布的端口。

干杯!

Getting jack sample rate and buffersize with portaudio

票数 2
EN

Stack Overflow用户

发布于 2017-05-01 19:29:29

PortAudio Java绑定过于简单。例如,你不能为设备访问设置独占模式或共享模式,这是一种遗憾,因为它有效地减少了7毫秒的延迟--特别是如果你在Windows 10下捕获麦克风输入(通常不需要共享访问)。如果你把输出计算在内,你就失去了14毫秒的RTT来监控你的麦克风/东西。

RtAudio现在似乎支持WASAPI,但我不确定它是否比PortAudio更好。在问题中没有被问到,我知道,但仍然... :)

另一个相当新的项目是XtAudio。它将对设备的独占和共享访问作为不同的设备集暴露到前端,并且通常看起来有更好的API支持。我不认为它支持MIDI tho。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5174393

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档