当前位置: 首页 > 编程日记 > 正文

融云任杰:强互动,RTC 下一个“爆点”场景 | 拟合

从无序中寻找踪迹,从眼前事探索未来。

2021 年正值黄金十年新开端,CSDN 以中立技术社区专业、客观的角度,深度探讨中国前沿 IT 技术演进,推出年度重磅企划栏目——「拟合」,通过对话企业技术高管大咖,跟踪报道企业前沿技术资讯,分享真知灼见,以点到面折射出中国 IT 技术最新动态,传播技术影响力,帮助开发者与企业捋清思路,共创数字经济新未来。

实时音视频 RTC(Real-Time Communication),是新冠疫情黑天鹅事件中快速普及并崛起的技术与行业。2020年6月声网纳斯达克上市,年底即构获腾讯5000万美元C轮投资,2021年初马斯克带火语音社交Clubhouse。

资本加码,爆款应用,让实时音视频的想象空间再次被放大。《拟合》将试图从头部公司与用户的观点中,探知实时音视频的下一个爆点。

受访者 | 融云 CTO 任杰

作者 | 宋慧

出品 | AI 科技大本营(ID:rgznai100)

音视频从C端一直火到了开发界。Clubhouse刚爆红时,一位工程师仅用 72 小时就复刻了网页版的 Clubhouse。本期《拟合》专访了融云 CTO 任杰,对于 RTC 技术关键点、创新的使用场景有哪些,未来 RTC 将引爆什么行业,开发者的机会又在哪里,听听他的看法。

融云CTO 任杰

RTC 的新挑战

在 RTC 普及之前,高大上的视频会议和电视电话会议,需要用到专网和专有硬件。大概在 2012 年前后,随着 3G、4G 网络的建设和 Wi-Fi 普及,RTC 技术开始进入互联网。不过,任杰提到,各种手机、PC等设备都开始进入了互联网的视频通信领域,设备变得不可控。另外,从专有网络变成了广域网和互联网以及无线网络、4G 网络,网络也变得不可控。

“PC 不是为了通信这个场景进行的设计,所以在回声消除、降噪、视频采集编码层面都有不同的处理,有很多设备适配、算法的重新适配,大量细碎的功能要去做;手机在无线网络下,丢包和带宽会有瞬时变化,这些是新场景下面临的新问题,我们要重新去解决它,用新算法、新模式去处理它。”任杰说。

2021 年初,W3C(万维网联盟)和 IETF(互联网工程任务组)宣布 WebRTC 成为官方标准,任杰认为 WebRTC 被标准化组织接纳认可,但并不代表着 RTC 的技术已经成熟。“一个行业如果在持续爆发和持续高发展阶段,我们很难说它的技术是成熟的,因为场景越来越多,运用的设备技术也越来越多。音视频编码在不断变化,新场景下的网络对抗、机器学习、降噪技术,都在持续井喷的发展过程中。”任杰如是说。

新的技术、场景,也带来了新的挑战。任杰总结了四个融云在现阶段面临的RTC挑战:

1、高清视频:随着 Wi-Fi 和 5G 等基础设施的升级,用户对音视频质量要求更高,融云会跟随新的编码标准去提供高质量、高码率、高帧率的视频体验。

2、语音还原度:传统算法已经不能满足现有高质量、高还原度的使用体验与要求,RTC 将与 AI 结合,研发降噪、提升智能分辨率、提高整体视觉清晰度的技术,这是融云 RTC 技术研发的一大方向。

3、大量智能设备适配:除了安卓,将有大量实时操作系统 RTOS 设备进入 RTC 领域,而这些设备有些配置较低,标准参差不齐,都需要 RTC 厂商做好适配,保证交互体验。

4、全球节点部署,服务出海开发者:互联网市场的人口红利在逐渐消失,出海开发者的音视频业务需求量很大,融云在做全球节点的部署,以及更好的调度算法,确保全球任何一个地方、任何一种方式接入,都有优越的音视频体验。

RTC 的三大创新场景

虽然疫情让 RTC 极大普及,但是任杰认为,疫情本身并未创造新的 RTC 场景,而是推动了音视频在各类场景和行业落地,加速了 RTC 发展进程。

他举例说明,在线教育毫无疑问是疫情中被推动与广泛落地的 RTC 场景。除了k12(kindergarten through twelfth grade,学前教育至高中教育的缩写,代指基础教育)的在线课程外,现在素质教育也在向线上迁移。不过与基础教育不同的是,素质教育涉及经验的传递和指导,是更加个人化的过程,例如音乐、绘画,过程要求比较高。RTC 技术与使用体验感的提升,将有助于素质教育的在线化进程。

教育的另一个创新场景是在线考试,考试一直是严肃的事,过程控制更加严格。而因为疫情影响,考试也开始线上化,例如考场设前置摄像头、后置摄像头,并全程录像,方便监督和考试后抽查。

除了教育,任杰提到第二个 RTC 创新场景将是强互动型与娱乐应用。电商直播、共享电影、线上拍卖、3D 虚拟形象的语音社交、在线合唱等等,这些强互动型应用将会越来越多,值得开发者从产品层面发挥想象力。

第三个创新场景在行业应用中,疫情之后需要“无接触服务”各个行业,包括政府办事、金融、保险、交通、海关等等领域,都在将办事、审批服务过程转向线上,这些也是RTC非常重要的新场景。

当 AI 遇见 RTC

对于 RTC 和 AI、5G 等新技术的融合趋势,任杰分别介绍了 AI 技术对音视频领域四类问题的解决办法。

AI 智能降噪。比如在线教育场景下,(老师/学生)敲击键盘、倒水、咳嗽的声音,过去的算法对这些非稳态噪音无能为力,而AI技术可以分辨的场景和分辨的噪声更多,将帮助RTC在降噪方面有较大提升;

AI 超分处理。在相同带宽下传输的视频图像,利用AI技术可以使其在解码还原后较之前更加清晰;

利用 AI 技术把不同的视频场景或者音频场景分辨与分开。对于静态场景编码、清晰度和帧率的控制,对于动态场景下编码和帧率的控制,用AI技术都可以将其区分开,做不同的处理;以及用AI技术重构带宽估计的算法。

对于更远的未来,在全真互联网时代,任杰表示,音视频从采集到编码、传输、解码、渲染、互动的整个过程,将是全真互联网必须具备的一大块能力,而RTC有望成为全真互联网的基础设施。

受访者简介:

任杰:融云CTO,负责融云音视频整体技术规划和演进;拥有 20 年以上互联网通信领域产品设计、架构设计、技术研发经验,是移动通信领域顶级技术专家,致力于为全球开发者提供专业的互联网通信云服务;加入融云前,曾担任神州泰岳集团副总裁;原飞信CTO,带领飞信平台从零开始到千万在线;曾担任微软中国顾问咨询部电信行业负责人,带领团队完成多个千万级项目的实施。


更多精彩推荐后疫情时代,RTC期待新的场景大爆发
Python + 爬虫:可视化大屏帮你选粽子
二次元会让人脸识别失效吗?
点分享点收藏点点赞点在看

相关文章:

推荐一个个人感觉比较有吸引力的网站

2019独角兽企业重金招聘Python工程师标准>>> 廖雪峰的官方网站 转载于:https://my.oschina.net/AaronCN/blog/294293

C# 2进制、8进制、10进制、16进制...各种进制间的轻松转换

在.NET Framework中,System.Convert类中提供了较为全面的各种类型、数值之间的转换功能。其中的两个方法可以轻松的实现各种进制的数值间的转换: Convert.ToInt32(string value, int fromBase): 可以把不同进制数值的字符串转换为数字&#x…

solrj操作单机solr

2019独角兽企业重金招聘Python工程师标准>>> 在目前的生产过程中全文检索技术应用越来越广,其中涌现了一批非常好得开源搜索引擎框架,如solr,elasticsearch等等。其中我工作使用最多的是solr,并在此对之前工作做一个总结。 solr的…

基于微软开源深度学习算法,用 Python 实现图像和视频修复

‍‍作者 | 李秋键编辑 | 夕颜出品 | AI科技大本营(ID:rgznai100)图像修复是计算机视觉领域的一个重要任务,在数字艺术品修复、公安刑侦面部修复等种种实际场景中被广泛应用。图像修复的核心挑战在于为缺失区域合成视觉逼真和语义合理的像素&…

C#实现光盘做启动盘

一 :编程思想 1、创建启动盘 插入要创建的启动盘,程序自动检测光驱中光盘,利用WMI(Windows管理架构:Windows Management Instrumentation)读取该光盘的序列号(具有唯一性)&#xf…

为云服务立规矩——首批可信云服务认证名单公布

俗话说,没有规矩不成方圆。在云服务蓬勃发展的今天,无论从规范行业发展,还是为用户提供保障,推动政府云服务采购的角度来说,云服务市场都需要立规矩。7月15日至16日,以“可信中国云,未来新生态”…

Java:多个文档合并输出到一个文档

多个文档合并输出到一个文档 方法:Java NIO package First;import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.nio.channels.FileChannel; import java.nio.channels.WritableByteChannel;public class Test {pu…

线性表之顺序表(C语言实现)

线性表是从数据元素的逻辑结构上定义的. 这种数据元素的逻辑结构的特征如下: 1.除开第一个和最后一个元素之外.所有元素都有一个前驱元素和后继元素. 2.第一个元素无前驱元素,但有后继元素. 3.最后一个元素有前驱元素,单无后继元素. 可以抽象为如下表述: 元素1元素2元素3元素4元…

C# POP3编程

POP3的使用很简单,所以.net没有向SMTP那样给出相应的类来控制. 废话少说,程序员最需要的使代码,:)! 1.打开VS.NET 2003. 2.新建一个WinForm Application. 3.添加命名空间 using System; using System.Drawing; using System.Collections; using System.ComponentModel; usi…

终于有人把 Python 讲清楚了!

Python因为其优越的特性广泛应用于数据分析、人工智能、Web开发、后端开发、自动化测试/运维、爬虫等领域,也得到了很多企业的青睐。甚至连BATZJ的技术大牛,都无可否认Python现在对于一个程序员发展的重要性!最近一两年,我身边也有…

ASP.NET Core的配置(5):配置的同步[设计篇]

本节所谓的“配置同步”主要体现在两个方面:其一,如何监控配置源并在其变化的时候自动加载其数据,其目的是让应用中通过Configuration对象承载的配置与配置源的数据同步;其二、当Configuration对象承载的配置放生变换的时候如何向…

C#分析数据库结构,使用XSL模板自动生成代码

<html> <head> <TITLE>分析数据库结构,自动生成代码</TITLE> <meta http-equiv"Content-Type" content"text/html; charsetgb2312"> </head> <frameset cols"237,767" rows"*"> <…

超棒整理 | Python 关键字知识点大放送

作者 | 黄伟呢来源 | 数据分析与统计学之美其实前面我已经为大家总结了《Python系统关键字 “超全总结” 及其 “含义”》。今天呢&#xff0c;我将对每一个关键字列出一个例子&#xff0c;供大家参考学习和记忆。1、and、or、notand、or、not关键字都是逻辑运算符&#xff0c;…

linux下java进程占用高问题分析过程

2019独角兽企业重金招聘Python工程师标准>>> 1.用top命令找出占用cpu高的进程&#xff0c;记录下pid 2.用top -H -p pid(上面的pid)查看该进和下各线程占用cpu的情况&#xff0c;找出占用cpu高的线程pid 3.printf "%x\n" pid(上面线程的pid)打印出对应的十…

AWS - Couldformation 初探

AWS里面&#xff0c;所有的管理界面的功能都可以通过API或者JSON脚本实现&#xff0c;这样的好处是很容易的就和cloudwatch一起实现各种HA和autoscaling的应用。豆子初次使用cloudformation&#xff0c;写了一个简单JSON来创建一个EBS的Volume。我的模板定义的很简单&#xff0…

清华团队让 AI 写诗“更上一层楼”,诗歌图灵测试迷惑近半数玩家

作者 | 黄珊来源 | 数据实战派比特币外挖无穷洞&#xff0c;机神犹未休。卡中窥币影&#xff0c;池里验沙流。屡载吸金主&#xff0c;孤深渍盗求。方知区块链&#xff0c;本是古来游。这首诗歌来自一支清华团队开发的古诗 AI。它的创作才华可不仅限于此。再看下面这首诗&#x…

js中Dom元素及获取方法

DOM基础对象documentdocument.documentElement html部分document.head document.titledocument.body body部分获取元素对象方法document.getElementById(); 通过id找到对象document.getElementsByTagName(); 通过标签名找到对象并放到数组集合中document.getElementsByNam…

JavaBean简单及使用

一、JavaBean简介 JavaBean是使用Java语言开发的一个可重用的组件&#xff0c;在JSP的开发中可以使用JavaBean减少重复代码&#xff0c;使整个JSP代码的开发更简洁。JSP搭配JavaBean来使用&#xff0c;有以下的优点&#xff1a; 1.可将HTML和Java代码分离&#xff0c;这主要是为…

华为发布《AR洞察与应用实践白皮书》,提出用5G点燃AR,用AR照亮5G

[中国&#xff0c;深圳&#xff0c;2021年06月17日] 今日&#xff0c;在华为共赢未来5GAR全球峰会&#xff08;Better World Summit&#xff09;上&#xff0c;华为运营商BG首席营销官蔡孟波&#xff0c;发表了主题演讲《5GAR&#xff0c;让梦想照进现实》&#xff0c;提出用5G…

C#中虚函数,抽象,接口的简单说明

虚函数&#xff1a;由virtual声明&#xff0c;它允许在派生类中被重写&#xff0c;要重写方法&#xff0c;必须先声名为virtual public class myclass { public virtual int myint() { 函数体&#xff1b;} } class myclass1:myclass { public override int myint() { 函数体1&…

【开源】博客园文章编辑器4.0版发布

源起 最近个人时间多起来了&#xff1b; 于是打算持续写一点东西&#xff1b; 前面写了两篇关于riot.js的东西&#xff1b; 被博客园的领导移出首页了&#xff1b; 原因之一是排版不整齐&#xff1b; 确实是不整齐&#xff0c;这我认&#xff0c; 然而&#xff0c;我自己可是博…

C#中Timer组件用法

Timer组件是也是一个WinForm组件了&#xff0c;和其他的WinForm组件的最大区别是:Timer组件是不可见的&#xff0c;而其他大部分的组件都是都是可见的&#xff0c;可以设计的。Timer组件也被封装在名称空间System.Windows.Forms中&#xff0c;其主要作用是当Timer组件启动后&am…

微软全球副总裁洪小文:应对数字化转型挑战,跨界共创正当时

2021年6月16日&#xff0c;以“跨界共创”为主题的第四届微软亚洲研究院创新论坛在北京举办。今年&#xff0c;大会讨论的主题围绕“跨界创新”&#xff0c;数十家来自不同行业的企业代表&#xff0c;与微软亚洲研究院的计算机科学家就跨领域融合创新、共创精神推进数字化转型、…

Away3d 骨骼动画优化

很多朋友说Away3D 的骨骼数限制在32根&#xff0c;确切的说应该是Stage3D 的限制。在 AGAL2.0之前 VC寄存器是128个&#xff0c;每个vc常量寄存器最大只能容纳4位&#xff0c;transform占用一个4*4的矩阵&#xff0c;所以如果把一个transform存进vc里面&#xff0c;需要到4个寄…

postgresql中COPY的用法

一.测试创建表&#xff1a;[postgrescacti ~]$ cat test.sql CREATE TABLE weather ( city varchar(80), temp_lo int, temp_hi int, prcp real,date date);二.导入test.sql文件生成表&#xff1a;testdb01> \i test.sql***(Single step mode: verify command)*************…

C#中虚方法重载

在&#xff23;&#xff03;中&#xff0c;进行虚方法的重载有些体会&#xff0c;现与大家分享。 首先请大家看看下面的例子&#xff0c; using System; abstract public class contact { public virtual string prinf() { return ("这是虚方法"); } } publi…

Unity 4.x游戏开发技巧集锦(内部资料)

2019独角兽企业重金招聘Python工程师标准>>> Unity 4.x游戏开发技巧集锦&#xff08;内部资料&#xff09;淘宝书店地址&#xff1a;http://item.taobao.com/item.htm?spma1z10.3.w4002-6661947338.36.FdOZqM&id40302732808试读样章下载地址&#xff1a;http:/…

百度CTO王海峰阐释AI融合创新,降低门槛,按下产业智能化加速键

6月17-18日&#xff0c;第五届未来网络发展大会在南京隆重开幕。大会由中华人民共和国科学技术部、中国工程院、中国科学技术协会、江苏省人民政府指导&#xff0c;南京市人民政府主办&#xff0c;以“努力成为世界主要科学中心和创新高地的使命担当”为主线&#xff0c;邀请国…

[LeetCode系列]最大连续子列递归求解分析

本文部分参考Discuss: LeetCode. 步骤1. 选择数组的中间元素. 最大子序列有两种可能: 包含此元素/不包含. 步骤2. 步骤2.1 如果最大子序列不包含中间元素, 就对左右子序列进行步骤1. 步骤2.2 如果最大子序列包含, 则结果很简单, 就是左子列的最大后缀子列(即包含左子列最后一个…

C#中的多线程编程

C#是.Net平台的通用开发工具&#xff0c;它能够建造所有的.Net应用。在.Net中所有线程都运行在应用程序域(AppDomain)中&#xff0c;这也许让你想到Win32进程&#xff0c;实际上它们还是有很大的不同。应用程序域提供了一种安全而通用的处理单元&#xff0c;公共语言运行库可使…