开发一个实时音视频通信系统,你需要什么技术储备?

RTC(real time communication)实时通讯系统是最近互联网应用的一个新领域。RTC系统的应用极其广泛,我们常见的视频电话,会议系统,远程桌面与控制都是RTC系统的一个应用。在移动互联网飞速发展的今天,各种应用都渴望加入RTC的功能,实现用户与企业,用户与用户之间的音视频交流。于是问题出现了,开发一个RTC系统需要什么技术储备?

有人说只需要懂javascript就可以了。WebRTC的出现极大的降低了RTC的开发门槛。只需要编写javascript代码就可以实现浏览器之间的音视频通话。且不论通话质量,浏览器的兼容性,网络穿透能力,那些不使用HTML的原生APP怎么办?

又有人提出WebRTC也支持Native开发,只要有懂C++和相关应用平台(Android,iOS,Windows,Mac)开发的软件工程师就可以了。WebRTC确实可以在这些平台上开发原生的应用。将WebRTC编译打包后嵌入APP可以实现RTC的功能,就是说能通了。但一个合格的RTC系统仅仅是能通就可以了吗?

以音视频通话为例,用户期望的RTC应用应该是:通话不卡不掉低延时,声音清晰真实无回声,画面流畅清晰无卡顿。如果直接采用上面WebRTC集成,我们很容易发现,在大多数情况下,通话并不像原来想象的那样完美。由于网络的原因,通话断断续续,延时很大。由于终端的适配不好,语音通话回声严重,噪声严重影响体验。视频不清楚,不流畅。

RTC系统的每一个部分都需要优化,需要打磨,才能打造出完美的用户体验。现在的问题是,开发一个优秀的RTC系统需要具备哪些技术储备呢?

先看终端方面。解决语音通话的问题,首先需要有合适的语音编解码器,然后需要调整音频处理模块的算法。这里面内容比较广,有噪声消除,回声抑制,自动增益。比较前沿的还有多麦克风降噪,盲扩增强等等。总之这些都需要算法的储备,涉及语音信号处理、统计信号处理等方面的内容。有了算法还不够,还需要有好的实现。各个平台(Android,iOS,Windows,Mac)底层音频系统也需要深入了解。有时候算法挺好的,但有些机器先天不足,比较特别,需要特殊处理。这需要投入许多人力物力对各种型号的硬件做适配。优秀的系统可能需要适配几百上千个不同的设备。

同样的,对于视频,我们需要对视频编解码器有深入的了解。这样才能用最低的码率展示清晰的视频画面。视频的前后处理,比如降噪,增强(包括流行的美颜)也少不了。这就需要图像与视频信号处理。视频数据量比较大,对底层视频设备也需要深入研究。适配也少不了。

说完了终端,再说说网络。网络抗丢包是必备选项。互联网不是一个可靠的实时音视频传输网络。在不可靠的网络中实现可靠的音视频传输考验系统设计的能力。这里既有信道编码的理论也有网络对抗的实际经验。

如果要实现可靠的云服务,遍布全球的服务器网络也必不可少。高可用性,负载均衡等等。。。

现在我们知道开发一个RTC系统需要什么技术了。这个系统涉及到几乎所有的网络与音视频处理的理论与实践。

作者简介:

郑仲侯 声网Agora.io音视频构架师

硕士毕业于上海交通大学电子工程系,信号处理专业。先后在National Instruments,SRS,DTS工作十余年。专注信号处理算法与实践,加入Agora后从事音视频引擎的开发,持有双麦降噪专利。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 200,045评论 5 468
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 84,114评论 2 377
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 147,120评论 0 332
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,902评论 1 272
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,828评论 5 360
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,132评论 1 277
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,590评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,258评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,408评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,335评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,385评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,068评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,660评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,747评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,967评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,406评论 2 346
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,970评论 2 341

推荐阅读更多精彩内容