位置: 编程技术 - 正文
推荐整理分享Android学习 - android上实现编解码(android xui),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:android study jam,android入门视频教程,android教学,android教学,android study jam,android教学,android教学,android学习网站,内容如对您有帮助,希望把文章链接给更多的朋友!
Speex是一套主要针对语音的开源免费,无专利保护的音频压缩式。Speex工程着力于通过提供一个可以替代高性能语音编解码来降低语音应用输入门槛。另外,相对于其它编解码,Speex也很适合网络应用,在网络应用上有着自己独特的优势。同时,Speex还是GNU工程的一部分,在改版的BSD协议中得到了很好的支持。Speex是基于CELP并且专门为码率在2-kbps的语音压缩而设计的。Speex源码是基于c语音实现的(也有java实现,效率相对较低)。
1、去Speex官网下载最新Speex源码。
2、创建新的android工程,并创建jni文件夹。
3、把speex源码目录下的libspeex和include目录及其子目录文件全部拷贝到$project/jni目录下。
4、在jni目录下新增Android.mk文件,编辑内容如下:
5、在jni目录下新增Application.mk文件,编辑内容如下
6、在$project/jni/include/speex/目录下新增speex_config_types.h文件,编辑内容如下
7、创建JNI包装类speex_jni.cpp,用来调用Speex中的C代码函数,编辑内容如下
8、在Java层创建Speex工具类,内容如下:
9、使用cygwin编译,生成so文件。
ilbc编解码iLBC是为专为提供稳健的IP语音通信而开发的语音codec,以窄带语音为设计基础,具有8kHz的采样率。iLBC codec支持两种基本的帧长度:.3 kbps比特率下编码帧长度为ms;而.2 kbps比特率下编码帧长度则为ms。
采用iLBC算法可以获得一个具有丢包响应控制的语音编码系统。iLBC对每一个数据包的处理都能够独立于其它数据包来进行,是数据包通信的理想选择。即使IP丢包和/或延迟现象的恶化,这种codec的语音质量下降情况也不会太差。这与基于CEIP模型的一般codec的行为不同,这类codec最先是为交换电路网络或无线网络而设计的,是设计来恢复位错误而非丢包的。
丢包现象发生时,语音codec的一项相关基准是从单个丢包情况下恢复过来所需的帧/包数量。在iLBC的情况中,数量是零。在丢包之后的第一个数据包总仍能按原本安排的被精确解码。
iLBC是一种窄带语音codec,使用了整个4kHz频带,而大多数标准低比特率codec只利用从Hz到Hz的频带。这一点对音质的影响是相当明显的。此外,iLBC语音编码的频谱特性精确模拟了原始信号的特性,其语音比标准低比特率codec的更自然清晰。
总而言之,iLBC算法为数据包网络实现了尖端的固定比特率编码,在质量与比特率之间取得了非常出色的平衡。
iLBC算法也是开源算法,在GitHub可以下载到,源地址如下:
Codec是一个语音和音频编解码算法,对于音频带宽、网络带宽和算法复杂度都具有很好的弹性。支持4种采样率:8KHz、KHz、KHz、KHz;三种复杂度:低、中、高。编码码率在6~kbps(不同采样率具有不同的码率范围)以及还支持VAD、DTX、FEC等模块,感觉还是比较全面。最重要的一点是提供了定点C代码,非常有利于向ARM、DSP移植和优化。这一篇主要参考了pjsip中的silk实现。
1、获取silk源码( Free的算法部分,遵循开源的法则,取之于民,用之于民;
第二、商业上。Skype根本不靠Codec赚钱,他本身最大的优势是网络条件做的比较好,这种环境下无论是SILK、iLBC还是G.都可以达成比较不错的音质。
第三、口碑上。提高知名度,都已经把SILK定点好了,将来一定会有很多第三方去推广,广告、市场和口碑双赢;
2)、iLBC一定就比Speex质量好吗?
根据目前的评测,当二者的编码速率差不多时,iLBC的质量要好于Speex,但是也有一些牛人认为iLBC这种每帧独立编码的思想其实是低效率的,通过增加编码冗余也可以达到相同的音质,意思是将CELP编码器增加一些前后冗余信息适当提高码率,也可以提高丢包情况下的抗干扰性,这个暂时还没有定论。
3)、Speex总感觉用的人少?
到底是Speex的推广差、维护差,还是音质差?虽然Speex的开发者出来解释了很多原因,可是目前好像用的第三方不是很多,同时我也感觉它的音质好像是有一点差。
4)、有了SILK,还有人用iLBC吗?
SILK和iLBC来自两个不同公司skypeand GIPS,个人感觉会同时存在。
PullToRefresh实现下拉刷新和上拉加载 一、导入Library下载源码后(
Android车载导航的一些困境 车载导航从最初的用解码芯片,过渡到用WinCE系统,已经形成了一个较大的产业。车载导航使用上的一些大原则,基本上被固定了下来。现在WinCE走到了
【Android开发】关于android-beacon-library iBeacon是苹果公司称为一种可以检测到附近IOS7设备出现的一种新的低功耗、低成本信号传送器的一套室内定位系统的商标。这种技术可以使一个智能手机
标签: android xui
本文链接地址:https://www.jiuchutong.com/biancheng/379658.html 转载请保留说明!友情链接: 武汉网站建设