iOS使用OpenAL播放PCM流-创新互联
之前在做一个项目通过蓝牙接收PCM数据并实时播放出来(类似对讲机的功能), 之前没做过跟音频有关的东西, 网上搜索出来的资料大部分都是播放本地文件或者URL的。很少有播放PCM流的现成代码可以用。
估计搜索到最多的就是那个通过OpenAL播放的代码了吧。那个我自己用起来有各种问题。不得已只好自己研究OpenAL。重新写了一下,亲测好用。
功能说明:
简单的实现了播放流式PCM数据的功能
使用方法: (.h文件内也有详细说明)
1. 导入OpenAL.framework
2. alloc/init方法创建对象
3. 调用initOpenAL方法初始化OpenAL
4. 使用insertPCMDataToQueue:size:方法将PCM数据加载到缓冲队列里, 会自动播放
5. 不用的时候, 先调用clean方法关闭OpenAL然后再销毁对象. (不clean的话, 下次初始化会有问题)
注意事项:
使用时需要根据自己的情况将insertPCMDataToQueue:size:方法内的下列语句里的参数更改一下。
alBufferData(bufferID, AL_FORMAT_MONO16, (char *)[nData bytes], (ALsizei)[nData length], 8000);
下载地址:
http://pan.baidu.com/share/link?uk=3271899445&shareid=2537685654
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
网页名称:iOS使用OpenAL播放PCM流-创新互联
网站网址:http://cdiso.cn/article/deihji.html