跨平台的C++库,用于播放/录制音频(.wav、.ogg格式)。

3

我有一个跨平台应用程序,想要添加音频注释功能。

我正在寻找以下特点的音频播放/录制库:

  • 跨平台(Windows、Linux、Mac)
  • 简单快速地集成到现有项目中
  • 不使用cygwin进行Windows构建
  • 具有C++绑定

我看到了gstreamer,但我觉得它对于我的简单用例来说太高级了。

3个回答

1

1

我曾经使用过sox,但目前在Mac上录音似乎出了问题。如果您可以在没有它的情况下从设备录制,它具有良好的文件处理功能。

PortAudio被用于高知名度的声音应用程序Audiomulch中。

我没有使用过RtAudio,但我使用过使用它的项目。它可以处理JACK、CoreAudio、ALSA、OSS、DirectSound和ASIO。

libsndfile是需要处理音频文件的项目的常见依赖项,作为sox的替代方案。


0

我相信ffmpeg可以胜任。它几乎支持所有格式,并且已经证明了其价值。不幸的是,它需要一个类UNIX的shell来构建。你不需要Cygwin,但可以使用MSYS,你可以在这里找到最新的二进制分发版。对于简单的音频(录制)功能来说,它可能过于复杂,但你提到了支持不同格式的能力。你不能使用Visual C++编译器编译ffmpeg,但是一旦库被GCC或其他符合C99标准的编译器构建,你就可以使用它。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接