【问题标题】:Looking for a simple audio playback library for C++ [closed]为 C++ 寻找一个简单的音频播放库 [关闭]
【发布时间】:2011-07-02 21:36:24
【问题描述】:

我正在开发一个简单的音频播放器,使用 Qt 和其他一切,运行良好。但我需要一个可靠但简单的音频库。我不需要任何花哨的东西,比如 3D 声音,我知道现在这些东西还有什么。我只是在寻找简单高效的东西。

我正在寻找的功能列表:

  1. 从文件中播放音频
  2. 至少应该支持.ogg、.mp3 和.flac。
  3. 应该可以暂停播放。
  4. 我打算在 C++ 中使用它

看。没什么大不了的,但同时我很难找到合适的东西。我的目标平台是 Windows 7。

有人知道我可能正在寻找的东西吗?

【问题讨论】:

  • 嘿,这里有很多答案,对我来说看起来不错。您不想选择一个作为正确答案吗?
  • 是的,我来这里已经有一段时间了。现在完成。 :-)

标签: c++ windows audio


【解决方案1】:

我认为最好的选择是BASS 音频库,它不是开源的,但可免费用于非商业用途。

用于AIMP2音频播放器,可用于检查音质,原生支持MP3、OGG等多种格式,并通过插件支持更多格式,包括FLAC。

【讨论】:

    【解决方案2】:

    libavcodec 怎么样?它的 LGPL。我不确定ogg >_

    【讨论】:

    • 这似乎是朝着正确方向迈出的一大步。太糟糕了,它还涵盖了视频内容,理想情况下我只寻找音频。无论如何,这最接近我现在所需要的。
    【解决方案3】:

    我之前在一个 Windows C++ 程序中使用过BASS,它使用起来非常简单——链接 DLL 并调用几个方法来指定要播放的文件。

    它当然可以处理文件中的 MP3 播放,就像我正在做的那样。

    我希望我可以验证 OGG 和 Flac,但可惜我在防火墙后面,该网站被阻止了。

    【讨论】:

    • 我看过 BASS,但它似乎不支持 FLAC。尽管通过扩展它显然可以。这是一个选项,但我不知道,必须通过扩展添加功能似乎很麻烦。我只想要一个不需要太多努力的图书馆。让我们看看其他人是否有宝石。
    【解决方案4】:

    Miles 是一个不错的常用音频库。

    【讨论】:

    • 最好考虑到它的成本为 4000 美元,这远远超出了我 0 美元的预算。
    • 嗯,他们曾经有非商业用途的免费许可证,但我现在似乎找不到它。
    【解决方案5】:

    通过另一个人的回答找到了我自己问题的一个很好的答案。 FFmpeg 几乎正是我正在寻找的。谢谢大家。

    【讨论】:

    • 这不是Reno建议的libavcodec的父项目吗?
    【解决方案6】:

    我建议 Openframeworks 或直接使用 openframeworks 正在使用的 rtAudio 库。哦,另一方面:rtAudio 几乎没有许可证限制。 ;-) 如果我错了,请纠正我。

    【讨论】:

      【解决方案7】:

      DirectShow 实际上非常易于使用、灵活且随 Windows 提供。有一百万个例子,它可以像你需要的那样简单或复杂。当我把需要播放 MP3 的东西放在一起时,我会使用它。请注意,您的目标是 Windows 7,因此您可以考虑改用 Media Foundation。

      【讨论】:

        【解决方案8】:

        我使用 FFMPEG 的 C++ 封装:FOBS
        易于使用和 C++ :)

        编辑:

        不再维护 Fobs。但是,您可以使用它作为起点,对 FFMPEG 进行自己的 C++ 封装。

        【讨论】:

        • 很遗憾已停产。
        • @DecvSolar:不幸的是。我更新我的答案...
        猜你喜欢
        • 2012-01-21
        • 1970-01-01
        • 1970-01-01
        • 2012-09-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-07-17
        相关资源
        最近更新 更多