All Questions
Questions Per Page:
  • 语音自适应回声消除(AEC)算法     2017年05月04日 11:17:20 shichaog 阅读数:21539 标签: 智能语音算法matlab 更多 个人分类: 语音识别             语音增强和语音识别系列博文 自适应回声消除算法 欢迎留言交流 AEC算法早期用在Voip,电话这些场景中,自从智能设备诞生后,智能语音设备也要消除自身的音源,这些音源包括音乐或者TTS机器合成声音。 本文基于开源算法阐述AEC的原理和实现,基于WebRTC和speex两种算法,文末会附上两种算法的matlab实现。   回声消除原理 回声消除的基本原理是使用一个自适应滤波器对未知的回声信道:ωω 进行参数辨识,根据扬声器信号与产生的多路回声的相关性为基础,建立远端信号模型,模拟回声路径,通过自适应算法调整,使其冲击响应和真实回声路径相逼近。然后将麦克风接收到的信号减去估计值,即可实现回声消除功能。 …

    AEC Asked on 2018年11月27日 in 移动互联.
    • 88 views
    • 0 answers
    • 0 votes
  •  在手机兴起的这几年中,手机的闪传规格有了很大的提高,从eMMC规格的标准逐渐从eMMC4.3时代发展到现时的eMMC5.0存储产品,手机的闪传性能有了十分大的提高。不过,在现在主流旗舰手机都采用eMMC5.0规格的闪存的潮流中,一种新的闪传规格悄然出现,它就是UFS2.0闪传标准,有着比eMMC5.0更快的读取性能。   eMMC      eMMC (EmbeddedMulti Media Card) 为MMC协会所订立的、主要是针对手机或平板电脑等产品的内嵌式存储器标准规格。eMMC目前是最当红的便携移动产品解决方案,目的在于简化终端产品存储器的设计。由于NAND Flash芯片的不同厂牌包括三星、东芝或海力士、镁光等,当设计厂商在导入时,都需要根据每家公司的产品和技术特性来重新设计,过去并没有1个技术能够通用所有厂牌的NAND Flash芯片。        eMMC的设计概念,就是为了简化内存储器的使用,将NAND Flash芯片和控制芯片设计成1颗MCP芯片,手机客户只需要采购eMMC芯片,放进新手机中,不需处理其它繁复的NAND Flash兼容性和管理问题,最大优点是缩短新产品的上市周期和研发成本,加速产品的推陈出新速度。      现在,eMMC 4.5已经问世,eMMC 4.4的读取速度大约为104MB/s、eMMC 4.5则为200MB/s,性能在当时也是十分优秀的;而在2013年7月29日三星开始量产行业首款eMMC …

    chenwj Asked on 2017年7月13日 in 移动互联.
    • 925 views
    • 0 answers
    • 0 votes
  • 摘要:虽然很多人并不知道UFS 2.1/2.0和eMMC 5.1全称是什么,但是在各大手机厂商的强力轰炸下,大家多多少少知道这是一种闪存标准,并且在速度上UFS 2.1>UFS 2.0>eMMC 5.1。目前来看,UFS闪存在速度上大幅领先eMMC,后者就像是上一个时代的产物。 UFS和eMMC到底是什么呢?两者之间的速度差距在理论测试中究竟有多大? UFS与eMMC之间的关系 在外观与功能上面,UFS与eMMC没有明显的差异,它们既不是一种接口(跟PC的SATA/M.2接口不是一个概念),也不是一种单纯的储存芯片(跟NAND闪存也不是一个概念),可以说UFS/eMMC是一种内嵌式存储器的标准规格(基于闪存介质的基础上集成主控芯片,而且拥有标准接口)。 eMMC全称是embedded Multi Media Card,中文翻译为“嵌入式多媒体存储卡”,采用并行数据传输技术,主控和存储单元之间拥有8个数据通道,它们可以同步工作,工作模式为半双工,每个通道允许读写传输,但是同一时间只能读/写。 UFS全称是Universal Flash Storage,中文翻译为“通用闪存存储”,采用串行数据传输技术,只有两个数据通道但速率超越eMMC,工作模式为全双工模式,同一条通道允许读写传输,而且读写能够同时进行,传输效率效率提高。不论是数据传输技术,还是工作模式,UFS都全面领先于eMMC。 手机eMMC闪存读写性能孱弱,拍马赶不上SSD,但UFS出现后情况变了。UFS打通任督二脉: LVDS(低压差分信号)有专门串行接口,读写操作同时进行; CQ(命令)队列动态调配任务,无需等待上一进程结束)。 数据来说话,我们来测一测 …

    chenwj Asked on 2017年7月13日 in 移动互联.
    • 1151 views
    • 0 answers
    • 0 votes
  • 几年前,作为一名开发人员,你需要的就是编辑器、编译器,以及某种版本控制系统。(可悲的是,许多开发人员目前仍然不能正确地使用版本控制系统) 现在,即使是要做基本的软件开发工作,你也需要知道地更多。下面是每个现代开发人员应该知道并会使用的十大工具列表: Git和GitHub:尽管有些公司仍然在使用SVN或CVS,甚至可怕的Clearcase,但并不建议你用这其中任何一个工具。Git现在是一个基本的技能,就像穿鞋或拼写检查一样。 SSH:是的,我知道,你是一个Windows开发人员,你不需要使用那个讨厌的shell。但是,你需要使用它来创建SSH密钥或使用其他SSH功能。所以,你现在可以学习SSH了。 终端服务或远程登陆:即使你平时使用的是Linux或Mac,你早晚也会用到Windows。你可以利用这些工具来访问Windows。 Amazon Web服务:AWS不仅仅是云端,而是还是你不用等待IT的里有。虽然还有其他的云服务供应商,但你早晚会涉及到AWS。AWS已经变得非常之大,你甚至都无法全面地了解AWS,但你至少需要了解一下EC2。 JavaScript:如果一个产品或工具需要添加脚本类型的API,那很可能就是JavaScript。 Bash和PowerShell:虽然,更现代的devops工具使用起来是方便,但总有一天它会停止工作。所以,对于要编写一个重启脚本,从一个退出命令中获取错误码,或者在一个循环中做一些事情,Bash(在Linux,许多Unixes,MacOS和Windows 10中)和Microsoft的PowerShell都能为你做到。另外,增加一个像grep(PowerShell中等效的工具是Select-String)这样的工具,这两个工具的功能会变得更强大。 MongoDB:你至少需要知道一个文档数据库的使用方法。MongoDB是最容易学习的,无论你最终是否使用MongoDB都没有关系,重要的是学习如何使用新一代的数据库。如果你要使用像Apache Solr(它是基于文档的)那样的索引,或者你平时经常使用纵列数据库,那么MongoDB的使用技能对你来说就非常有用。 Curl和Invoke-RestMethod:大多数软件现在都有REST API。在Mac和Linux上,curl是一个命令行工具,可以让你针对REST API进行测试,甚至编写脚本。在PowerShell中,可以用Invoke-RestMethod这个工具代替(尽管像PowerShell一样,它需要打更多的打字)。另外还有像Postman这样的GUI工具可以完成同样的工作,但一个认真负责的开发人员需要能够通过使用点选式的界面来提高效率。 Markdown:这是GitHub中README.md文件的格式。你应该能够读写一个简单的Markdown文档。这很容易,因为它只有七个符号(#是标题,##是子标题,*是着重号,__和**是粗体,_和*是斜体,`是等宽体,而—是间隔符)。Markdown编辑器通常会支持扩展语法,但这些是基础。通过这个基本的标记语言,你可以输出幻灯片、PDF和HTML格式的文件。通常,这些输出格式可以通过CSS或其他方式进行格式化。 基本的HTML:不论你是要标记某些内容还是要解析HTML,你都需要了解一些Web标记语言的基础知识。

    cook Asked on 2017年6月16日 in android.
    • 1042 views
    • 0 answers
    • 0 votes
  • 本文算是一篇漫谈,谈一谈关于android开发中工程初始化的时候如何在初期我们就能搭建一个好的架构。本文先分析几个当今比较流行的android软件包,最后我们汲取其中觉得优秀的部分,搭建我们自己的通用android工程模板。 AD:51CTO 网+ 第十二期沙龙:大话数据之美_如何用数据驱动用户体验 关于Android架构,因为手机的限制,目前我觉得也确实没什么大谈特谈的,但是从开发的角度,看到整齐的代码,优美的分层总是一种舒服的享受的。 从艺术的角度看,其实我们是在追求一种美。 本文先分析几个当今比较流行的android软件包,最后我们汲取其中觉得优秀的部分,搭建我们自己的通用android工程模板。 1. 微盘 微盘的架构比较简单,我把最基本,最主干的画了出来: 第一层:com.sina.VDisk:com.sina(公司域名)+app(应用程序名称) 。 第二层:各模块名称(主模块VDiskClient和实体模块entities) 第三层:各模块下具体子包,实现类。 从图中我们能得出上述分析中一个最简单最经典的结构,一般在应用程序包下放一些全局的包或者类,如果有多个大的模块,可以分成多个包,其中包括一个主模块。 在主模块中定义基类,比如BaseActivity等,如果主模块下还有子模块,可以在主模块下建立子模块相应的包。说明一点,有的时候如果只有一个主模块,我们完全可以省略掉模块这一层,就是BaseActivity.java及其子模块直接提至第二层。 在实体模块中,本应该定义且只定义相应的实体类,供全局调用(然而实际情况可能不是这样,后面会说到)。在微盘应用中,几乎所有的实体类是以 xxx+info命名的,这种命名也是我赞成的一种命名,从语义上我觉得xxxModel.java这种命名更生动更真实,xxxModel给我一种太机 械太死板的感觉,这点完全是个人观点,具体操作中以个人习惯为主。还有一点,在具体的xxxInfo,java中有很多实体类中是没有get/set的方 法,而是直接使用public的字段名。这一点,我是推荐这种方式的,特别是在移动开发中,get/set方法很多时候是完全没有必要的,而且是有性能消 …

    ladz Asked on 2017年5月17日 in android.
    • 1069 views
    • 0 answers
    • 0 votes
  • 史上最全的录屏指南 刘丢丢3 小时前 屏幕录制算不上刚需,但绝对是个痛点。当你想把手机、电脑屏幕上的一段内容录制下来时,通常为了省事儿会直接用手机拍,但手头可能没有多余的手机,或者腾不出另一只手,身边又没有人来帮你拍。就算拍到了,这种方法拍到的视频也会抖动,或者不清晰,这时候你需要一个趁手的屏幕录制软件。 下面就是为大家整理的全平台屏幕录制攻略,包含移动端 iOS、Android,桌面端 Mac、Windows 四大平台,赶紧收藏备用吧! Android Android 4.4 版本中添加了对屏幕录制的支持,但只有少数手机自带录屏功能,所幸 Android 平台有很多第三方录屏软件。对于 Android 平台的录屏软件,以下面这些标准为参考,共有以下三个软件推荐大家使用。 豌豆荚智能录屏 操作最简单的,但有些功能可能不满足,而且录制视频必须 10 秒以上。 …

    ladz Asked on 2017年5月17日 in android.
    • 1157 views
    • 0 answers
    • 0 votes
  • 从trust zone之我见知道,支持trustzone的芯片会跑在两个世界。 普通世界、安全世界,对应高通这边是HLOS,QSEE。 如下图: 如下是HLOS与QSEE的软件架构图 HLOS这两分为kernel层,user层。user层的通过qseecom提供的API起动trustzone那边的app。 qseecom driver 除了提供API,还调用scm函数做世界切换。 scm driver 那边接到qseecom的调用后,会把HLOS相关数据(包括指令参数)放入指它buffer,然后执行scm调用。 qsapp通过qsee提供的api接受来自HLOS那边的请求,并把执行结果返回HLOS。 qsee除了提供API,还与从monitor把来自HLOS的数据传给qsapp,然后把qsapp的数据返回给HLOS。 monitor就不用说了,切换世界用的,还处理shared buffer的内容。 是大概的架构图,细节比较复杂,没有开元。 下面通过一个简单的qseecom_security_test代码来说明整个调用流程。 如下图: qseecom_security_test.c …

    hlos Asked on 2017年4月28日 in android.
    • 1096 views
    • 0 answers
    • 0 votes
  • EGL接口介绍 标签: bufferimport平台api图形null 2011-12-15 14:40 5930人阅读 评论(3) 收藏 举报 分类: Android(141) 版权声明:本文为博主原创文章,未经博主允许不得转载。 目录(?)[+] EGL 是 OpenGL ES 和底层 Native 平台视窗系统之间的接口。本章主要讲述 OpenGL ES 的 EGL API ,以及如何用它创建 Context 和绘制Surface 等,并对用于 OpenGL 的其他视窗 API 做了比较分析,比如 WGL 和 GLX 。本章中将涵盖如下几个方面: EGL 综述 EGL 主要构成( Display , Context , Configuration ) 在 Brew 和 Windows …

    gles Asked on 2017年3月16日 in android.
    • 1053 views
    • 0 answers
    • 0 votes
  • 面向忙碌开发者的 Android 视频教程(Tuts+) Android 开发资源列表(Sharif Ahmed) 我如何在23天内开发了一款 Android 游戏?(Bigosaur) Android 学习教程 Android Bootstrap [PDF] Android 性能小贴士(Romain Guy & Chet Haase) …

    haidao_74 Asked on 2016年11月29日 in android.
    • 1017 views
    • 0 answers
    • 0 votes
  • 尽管互联网已经弥漫于人们生活中的方方面面,但是如果要说它给所有的行业带来了革命,显然是不准确的。在特定的领域,互联网确实是一场革命,它颠覆了许多行业。然而在另外一些领域,互联网所带来的影响,则没有看上去那么大。 今年,我曾经尝试一家新出现的水果电商,该水果电商所销售的水果要比线下一些水果店更便宜,而作为消费者,在它的网店内下单之后,需要到该电商的线下实体店去提货。 虽然全世界植物的物种丰富,我们日常吃的水果的品类实在不多,一间不大的水果店面,基本上就可以供应人们所需的全部水果。那么,同样是到实体店去买水果,上述水果电商同那些传统的水果摊比起来,区别在哪里呢? 区别在于,作为消费者,可以预先下好订单,之后店家根据实际的下单情况进行采购,可以降低库存成本,避免水果放太久坏掉。 对于一家规模不大的水果店来说,水果坏掉是一个很大的问题吗?显然不是。一家水果店,可以根据客流量估计每天卖掉的水果数量,以此来决定进货的数量。有人会说,这样的方式不够精确,因为店主不知道这一天当中会卖掉多少苹果,多少桔子,然而,店主并不需要知道这么细致的数据。每一天,多了几个苹果没有卖掉,或是最后一个顾客来的时候桔子已经卖完了,对他的生意影响是否有那么大? 我所说的那家新兴的水果电商,开发了一个网站,两个app(苹果和安卓),还做了公众号,所做的这一切“互联网+”的创新,相比开了很久水果店但并没有尝试互联网的张老汉,其实只是每天能够精确地卖完水果而已,但相比之下,它的运营成本,比起张老汉来可高了不止一点两点。电商的水果看上去更为便宜一些,却只是假象,它的水果能卖得更便宜,是因为在烧钱补贴用户。 在京东下过订单的人,可能会知道,京东除了强大的配送服务,还提供自提服务——用户下单之后,可以到京东指定的自提点去提货。这项服务是不错,方便了那些收货不方便的顾客。不过,仔细想想看,如果反正要到自提点去提货,跟亲自到沃尔玛这种超级大超市购买,又有什么区别? 作为线下和线上的超级大超市,理论上,沃尔玛有的东西京东都应该有,反之,京东上能买得到的东西沃尔玛也都应该有,否则,其中的一家就有必要向另外一家看齐,补充自己还没有的商品。实际上,作为线下的商店,沃尔玛的商品还是要比京东更全,比如,沃尔玛可以买到自行车,京东自营的商品中则没有。 和京东一样,沃尔玛也有送货上门的服务,在我住处附近的一家沃尔玛,只要购买满188元,3公里即可送货上门。 看到这里,肯定有人会说,看,这就是沃尔玛和京东的差距,京东配送是不管你在哪里的,而且只要买满79元就可以免费送货上门。要知道的是,与京东不同,沃尔玛是一家赚钱的超市,它的免费配送标准基于市场考量,是在衡量各种成本之后作出的决定,再低就没必要做了。京东能够提供更为优惠的配送条件,不是因为互联网多么伟大,而是因为它在烧钱补贴用户。 拿沃尔玛和京东来比的话,沃尔玛的仓储成本,京东一点也没少。有人说,京东的仓储成本要比沃尔玛低,因为它可以把仓库健在偏远的郊外,而不是像沃尔玛一样把超市建在市中心。 表面上看,京东这样做,是比沃尔玛少付了租金。可是,购物的人们毕竟多数住在市中心而不是郊外,相比起沃尔玛来,京东需要一件件地把商品运到市中心来进行配送,在土地上节约的成本在配送上又花了出去。反过来说,如果京东像沃尔玛一样,在市中心建立大型仓储基地,就可以很大程度地降低配送成本,同时还可以鼓励用户来到它的仓储中心来自提。从经济学的角度来看,沃尔玛和京东是自由市场内的两个竞争者,在建立仓储基地上完全平等,任意一方都没有额外的优势,因而它们的成本是大致相同的。否则就会出现一方向另一方学习,最终采取完全相同的仓储模式。 也就是说,互联网给零售行业带来的影响,并没有想象中那么大,都说互联网的出现会给实体店带来冲击,然而互联网出现了这么久,实体商店的数量并没有减少,反而在增加。我们所看到的,只是书店开不下去,改开服装店而已,这只是一种资源的重新配置,在互联网出现之前,一家商店同样会因为经营不善而转作他途。 之所以互联网给零售业带来的影响有限,是因为,信息可以通过互联网传播,实体商品却无法通过互联网来传输,这是最大的问题。 那么互联网有没有给零售业带来影响呢?当然有。 在没有互联网的时代,人们如何获知大卖场里最新的促销信息?有好几种方式——在邮箱里发现了大卖场的传单,在报纸上看到了最新广告,又或者,收到了直邮商品目录,上面写着,只要买满188元,一个电话,商品免费送到家。 互联网给零售领域带来的影响正在于此,互联网出现之后,人们不再需要从促销传单、报纸广告或是直邮商品目录上了解商品信息,转而通过网络来了解。也就是说,在零售领域,互联网革掉了商品传单和直邮目录的命,却没有革掉零售本身的命。不管你是从网上、公众号上或是商家app上看到的商品信息,你想要的那件商品都不可能通过互联网传到你的身边。你要么去现场拿,要么商家派人给你送过来。 这正是我要在“互联网之核”这一主题之下探讨的话题,互联网之核,在于它从根本上改变了信息传递的方式,而它所带来的一切变革,也都基于这一点。   文/刘淼(简书签约作者)

    haidao_74 Asked on 2016年11月29日 in 移动互联.
    • 942 views
    • 0 answers
    • 0 votes