温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

iOS使用OpenAL播放PCM流

发布时间:2020-07-03 23:39:10 来源:网络 阅读:4785 作者:rainbownight 栏目:移动开发





之前在做一个项目通过蓝牙接收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

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI