位置: 编程技术 - 正文

Android学习 - android上实现编解码(android xui)

编辑:rootadmin
speex编解码

推荐整理分享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最先是为交换电路网络或无线网络而设计的,是设计来恢复位错误而非丢包的。

Android学习 - android上实现编解码(android xui)

丢包现象发生时,语音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 转载请保留说明!

上一篇:离线安装 Android Studio 更新(离线安装驱动)

下一篇:PullToRefresh实现下拉刷新和上拉加载(pull order)

  • 冲回多计提费用
  • 净利润是指税前利润
  • 记账错误怎么办
  • 发票低于实际支付的金额如何做账
  • 增值税发票如何作废流程
  • 丢失增值税发票已报税证明单怎么开
  • 个人承包工程如何避税
  • 新公司建账初始数据可以全部为零吗
  • 用于连续生产的消费税计入
  • 住房贷款利息专项附加扣除是返钱吗
  • 受托加工怎么做账
  • 一般纳税人怎么转小规模
  • 进项转出再差额征收待抵扣
  • 网贷公司的印花税怎么交
  • 土地房产税征收范围
  • 运费发票没有开 怎么做到成本
  • 盈余公积补亏影响资产吗
  • 投标标费退回怎么做分录
  • 预收账款预提费用
  • 借款不归还的法律条款
  • 将自产产品用于职工福利的账务处理
  • 营改增后挂靠工程会计分录具体怎么做?
  • 脑部病毒感染什么症状
  • 无法添加用户和组
  • kindeditor vue
  • 收到押金缴国库费怎么办
  • 360se进程太多
  • php判断查询是否有结果
  • 固定资产的减值准备,一经确认,不得转回
  • 什么是动态表单
  • 莫斯塔尔古桥多高
  • php显示错误报告方式
  • 附有退回条件的销售商
  • .size()
  • JavaScript の querySelector 使用说明
  • 股权转让怎样能不交税 认缴
  • 购买牵引车和挂车购车流程
  • sql翻译
  • 增值税发票日用品开票明细
  • 暂估入库跨年账务危险
  • 异地预缴税款少交了城建税怎么办
  • 暂估的原材料用不用记原材料明细账
  • 去年多交所得税今年怎么处理
  • 公允价值变动损益
  • 残料入库计入
  • 稀释股权违法吗
  • 发票超过定额了怎么处理
  • 现金流量的折现值公式
  • 银行对账单和回单有什么区别
  • ubuntu的系统设置在哪里
  • freebsd常用命令
  • mac怎么打开terminal
  • win10提示激活windows
  • ubuntu系统怎么安装python
  • mac新手必看教程
  • ubuntu安装chrom
  • 支持iphone
  • linux网卡bound
  • xp电脑关机后自动重启是什么原因
  • window10光驱
  • linux系统解压tar.gz文件
  • win 7笔记本连接投影仪
  • linux给文件赋全部权限
  • Css属性中表示字体的是
  • 如何用css画三角形
  • python开发技术详解(全27集),5
  • js处理跨域方式及原理
  • pg搭建
  • awk范围筛选
  • jquery设置宽高
  • windows python2和python3共存
  • js瀑布流布局
  • jquery模拟回车
  • 车险专票怎么做账
  • 广东国家税务局电子税务局官网入口
  • 重庆国税官网网址
  • 上海税务培训中心
  • 江苏省镇江市街道名称
  • 西安汽车购置税
  • 南通地税电话号码
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设