Win32环境PortAudio库编译简介:音频播放

        PortAudio库简介:免费开源的跨平台音频播放库,支持Windows, Macintosh (8,9,X), Unix (OSS), SGI, and BeOS.等平台;

        PortAudio库完成从类似wav数据驱动声卡发音这个过程。如果要播放mp3等其他格式还需要先用相应的格式解码库,解码后转换成PortAudio库提供的格式。

如下是在Win32 + VS 环境下编译

一、 准备
     1、PortAudio开源库
        官方主页:http://www.portaudio.com/下载源码包

     2、依赖ASIO库:用于异步处理
        网址:http://www.steinberg.net/en/home.html
        下载:http://www.steinberg.net/en/company/3rd_party_developer.html

     3、依赖DirectX库:用于驱动声卡
         微软主页

二、步骤
      1、将ASIO库 拷贝到 portaudio、src\hostapi\asio\目录下 文件夹改名为ASIOSDK。
      2、安装DirectX库。
      3、用VS8.0 打开portaudio\build\msvc\portaudio.sln
      4、可选:

      官方说明:http://www.portaudio.com/trac/wiki/TutorialDir/Compile/Windows(参照设置)
             http://www.portaudio.com/trac/wiki/TutorialDir/Compile/WindowsASIOMSVC(参照检查文件)

       注:

           Finally, open the "pa_win_hostapis.c" file. Add the following:

           #define PA_NO_WMME

           #define PA_NO_DS

几句话,郁闷了我半天,总是在后面测试时通不过,总得到后面错误的结果。在Win32环境中是需要WMME和DS的。这两个define语句是不能加的,小小的惩罚,看文章要认真点哦。

三、Win32下音频编程过程
待续。。四、测试
      打开Test/patest_saw.c添加到新的VS工程,编译运行。

某次运行的结果----纪念

如下图是错误的结果:原因是在"pa_win_hostapis.c"中加了#define PA_NO_WMME #define PA_NO_DS

如下是正确的结果:(示例文件“patest_sine.c”,加了一小短代码)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值