时延是语音通信中的一个重要指标,当端到端(end2end)的时延(即one-way-delay,单向时延)低于150Ms时人感觉不到,当端到端的时延超过150Ms且小于450Ms时人能感受到但能忍受不影响通话交流,当端到端的时延大于1000Ms时严重影响通话交流,用户体验很差.同时时延也是语音方案过认证的必选项,超过了规定值这个方案是过不了认证的.今天我们就讲讲时延是怎么产生的以及怎么样在通信终端上减小时延. 1,时延产生 下图是语音从采集到播放的传输过程. 从上图看出,传输过程包括三部分,一是…
今天谈的这个主题(tone)存在于我们的日常打电话过程中.先举两个场景:1,你拿起固话话筒准备打电话,按电话号码前先从话筒里听到"嗡"的连续音,这叫dial tone(拨号音,表示你可以拨电话号码了),你拨完号码对方振铃后你又听到有规律的"嘟-嘟-"的断续音,这叫ring back tone(回铃音,表示对方已振铃了).2,你给企业服务号(比如中国移动的10086)打电话,对方叫你按键选择,当你按下键后会听到按键声,这叫DTMF tone(双音多频音).感觉到它存在…
业务场景: 我们经常会跑一些月级别或者周级别的报表. 周级别的报表还比较好确定,就是七天前的直接用timedelta(days=7)来获取开始日期就可以了; 但是月级别的报表就要麻烦一些,因为timedelta这个函数没有month这个参数,那我们怎么来获取一个月前的一号呢,还要考虑到这个月有多少天,会不会跨年,之类的... 我今天想到了一个简单的办法,分享给大家 有了这个办法,就不用再去判断闰年那些很麻烦的逻辑了 如果大家发现这个算法有什么问题可以指出来,共同学习 from datetime…
本人在传统的语音通信公司做过手机和IP电话上的语音软件开发,也在移动互联网公司做过APP上的语音软件开发.现在带实时语音通信功能的APP有好多,主流的有微信语音.QQ电话.钉钉等,当然也包括我开发过的那款APP(那款APP在实时通信APP排名中一直靠前).既然都做语音软件开发,那肯定有很多共同的地方,比如需要相同的语音专业知识,都有语音前处理.编解码.传输等.通过自己的观察,也有一些不同的地方.我们今天主要聊聊这些不同点. 1,在传统语音通信公司都是在具体硬件上开发音频软件.有了硬件就要有相应的…
开发一个语音通信解决方案是一个软件项目.既然是软件项目,就要有相应的计划:有多少功能,安排多少软件工程师去做,这些工程师在这一领域的经验如何,是否需要培训,要多长时间做完,中间有几个主要的milestone等.我们曾经四个人花了近一年时间开发了一个语音解决方案,成功通过验收,各项关键指标(语音质量.单向时延)均达到运营商要求.当时是在芯片公司,在公司自己的芯片上做语音解决方案,增加芯片的卖点,增强芯片竞争力.我们做语音数据面实现,同时提供API.用户在上层控制协议(例如SIP)中调用API,从而…
C# 最基本的涉及模式(单例模式) //密封,保证不能继承 public sealed class Xiaohouye    { //私有的构造函数,保证外部不能实例化        private Xiaohouye()        {        }        //防止多线程,并发        private static object syncObj = new object(); //我们在给类型中创建一个静态实例.当用户需要该类型的实例时,我们就返回这个实例        p…
本文首发在云+社区,未经许可,不得转载. 云+导语:4月21日,腾讯云+社区在京举办"'音'你而来,'视'而可见--音视频技术开发实战沙龙",腾讯音视频实验室高级工程师张轲围绕网络传输方面讲解了<腾讯云H5语音通信QoE优化>,包含腾讯云H5解决方案,音频QOS优化整体框架及优化技术,和运营方法几个方面.QOS优化包含带宽估计拥塞控制.抗丢包技术.延时.抗抖动技术四个领域.张珂重点分享了WebRTC与WebRTC之间,tbs与WebRTC之间,tbs与natvie之间互通所…
源:串口通信中ReadFile和WriteFile的超时详解! 在用ReadFile和WriteFile读写串行口时,需要考虑超时问题.如果在指定的时间内没有读出或写入指定数量的字符,那么ReadFile或WriteFile的操作就会结束.要查询当前的超时设置应调用GetCommTimeouts函数,该函数会填充一个COMMTIMEOUTS结构.调用SetCommTimeouts可以用某一个COMMTIMEOUTS结构的内容来设置超时. 有两种超时:间隔超时和总超时.间隔超时是指在接收时两个字符…
本文主要介绍WebRTC视频通信中的错误恢复机制(我们翻译和整理的,译者:jiangpeng),最早发表在[这里] 支持原创,转载必须注明出处,欢迎关注我的微信公众号blacker(微信ID:blackerteam). 道路交通与网络交通有很相似之处.就像道路上的车辆一样,网络分包也可能转错了弯,或者因为堵塞导致延迟.但是,网络分包经常会发生丢失,而道路上的车辆很少会出现这张状况.在这篇文章中,我们将讨论媒体流是如何被压缩.通过网络进行传输以及各种错误恢复机制. 1.视频传输.编码与解码 在开始…
#region Server /// <summary> /// 用于保存非对称加密(数字证书)的公钥 /// </summary> private string publicKey = string.Empty; /// <summary> /// 用于保存非对称加密(数字证书)的私钥 /// </summary> private string pfxKey = string.Empty; ///=========================== //…