博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
转: ios与android语音互通方案,类微信
阅读量:6999 次
发布时间:2019-06-27

本文共 725 字,大约阅读时间需要 2 分钟。

hot3.png

Ios实现amr编解码

Feb 5th, 2012

介绍

学习ios第一个练手功能就是给已有产品加上语音通信功能,能够互通ios与android。这里给出自己的一些心得,希望能给他人一些参考。

资料搜集与参考

  1. 类似产品使用的技术

    • talkbox Android版用的是ilbc的第三方编解码库,在iPhone上用的是caf
    •    Android版估计是amr估计转码的是交给腾讯强大的服务器了。
    • 米聊   Android版和Iphone版用的都是speex

    目前支持的开源第三方库也就只有 ilbc和speex了

  2. 考虑采用的方案

    speex需要Android和ios都进入转码,工作量太大,不采用。剩下的方案就是在amr和ilbc上选择了,android支持amr,低版本不支持ilbc, ios高版本(4.3)只支持ilbc,不能支持amr。刚开始的测试方案使用的是android将语音转ilbc, 由于我对于android开发不是太熟悉,在同事的帮助下一直没有转换成功,现在想想可能是处理问题,如果能转换成或,这种方案应该是最方便的。

ios实现amr编解码

录制

  1. 将语音录成原始pcm码

    注意这里,虽然录制是pcm码,但出来的文件ios依然会封装一层,将其包装成pcf格式。所以就有了第二步。

  2. 将pcf中的pcm码取出来

  3. 使用libopencore库将其编成amr格式,这时可以发送给android端播放了。

播放

  1. 将android版本发送过来的amr解码出来

  2. 播放原始pcm即可

代码文件都放在github上了,有需要的可以参考一下。 

转载于:https://my.oschina.net/zhangjie830621/blog/338857

你可能感兴趣的文章
MVC5 的MicrosoftOwinSecurity扩展插件——微信,QQ登录第三方源码
查看>>
【AngularJS】—— 3 我的第一个AngularJS小程序
查看>>
抛弃NVelocity,来玩玩Razor
查看>>
在JavaScript面向对象编程中使用继承(1)
查看>>
论文笔记:Multi-Agent Actor-Critic for Mixed Cooperative-Competitive Environments
查看>>
论文笔记之:Learning Multi-Domain Convolutional Neural Networks for Visual Tracking
查看>>
(转)The 9 Deep Learning Papers You Need To Know About (Understanding CNNs Part 3)
查看>>
ARM单片机的嵌入式工控机主板功能应用
查看>>
EDB Postgres MTK 使用小记
查看>>
“宽带中国”尚未成功 FTTH应从“狂轰乱炸”进入“精耕细作”
查看>>
探秘视频编码黑科技,窄带高清2.0视觉模型及场景实战
查看>>
现场报道:第二届中国云计算大会开幕
查看>>
如何支撑HTAP场景——HybridDB for MySQL系统架构和技术演进
查看>>
云计算在存储领域的发展趋势和优势
查看>>
CSS3简单动画
查看>>
模块化数据中心的现状和潜在市场分析
查看>>
数据中心里的那些XDC们
查看>>
容器化操作系统概览
查看>>
高铁与机场成交通信息化建设的双驾马车
查看>>
上云不难,用友云赋能产业 让企业服务都在这!
查看>>