WEBRTC音视频实时互动技术

为了解决听得远和看得远的问题,科学家们一直在为此孜孜不倦地探索。1876年,贝尔发明了电话,使人们真的可以听到千里之外的声音,如图所示。

        从此掀起了一场技术革命。对于我国来说,电话的引入是非常早的。

        1882年,我国第一部磁石电话交换机在上海开通。

        1904年,北京的第一个官办电话局在东单二条胡同开通,采用了100门人工交换机。

        1960年,我国自行研制的第一套1000门纵横制自动电话交换机在上海吴淞局开通使用。不过,我国在这方面真正走上快车道是在20世纪80年代中后期,当时大量的通信设备制造企业如雨后春笋一般涌现,华为、中兴都是在这一时期开始起步的。视频的发展与音频几乎是同时的。

        1872年美国人斯坦福与他的好友科恩进行了一场激烈的争论,争论的问题是,马在奔跑时,四只马蹄是否是腾空的?最终,他们在摄影师迈布里奇的帮助下,利用相机连续拍照技术,将多张照片按时间顺序生成了一条连贯的照片带,最终确定奔跑的马始终会有一条腿着地,从而解决了争论。但故事并未因争论终止而结束,有人将迈布里奇制作的照片带快速牵动,结果神奇的一幕出现了,照片带中每张静止的马竟然“活”了起来,这件事引起了巨大轰动,并被迅速传开。

        1888年,生物学家马莱受到迈布里奇的启发,利用连续拍照来研究动物的形态,从而发明了固定底片摄影机。同年,法国的路易斯·普林斯在英国使用同样的方法拍摄了世界上第一部电影《朗德海花园场景》,从此人类进入了有视频的时代。只不过此时的视频还无法改变人们的生活,它唯一的用途就是记录过去。音视频技术自诞生以来,一直属于科技中的尖端技术,由于它们都诞生在欧美国家,所以百年来这两项技术一直由欧美国家所掌控。许多大家耳熟能详的巨头公司都是由于掌握了音视频的核心技术而称霸世界的,如AT & T是有线电话的先驱,摩托罗拉开创了无线通信的时代,诺基亚因其是2G技术标准的制定者和早期智能手机的开创者而闻名于世,苹果就更不用说了,iPhone的出现为智能手机开启了一个新的时代。不过最近几十年,全世界科技的发展趋于同步。在通信领域,从固定电话到移动电话,从模拟信号到数字信号,从1G发展到现在的3G、4G、5G……速度越来越快,音视频技术也随着通信技术的发展而突飞猛进。现在我们可以看到,音视频技术与通信技术的结合已经开始改变人们的生活方式了。

音视频直播的两条技术路线

        音视频直播就是众多音视频应用中最亮眼,也是大家最需要的应用。对于不同的行业和领域,在使用音视频直播时,人们往往给直播不同的称谓,比如:在教育领域中使用的直播称为在线教育直播,在远程办公领域的直播称为网络音视频会议,在娱乐领域则称为娱乐直播,等等。而这些直播底层都是使用音视频和网络传输技术来实现的。

        这里分为2个方面:以视频清晰度为主要目标的娱乐直播,和以通话质量为主要目标的音视频会议。目的不同,侧重点不同。

        对于音视频会议来讲,它关注的是实时通话的质量,也就是说当你开启摄像头、打开麦克风后,远端的用户就可以立即看到你的视频、听到你的声音。同样,你也可以立即看到对方的视频、听到对方的声音。而娱乐直播则与音视频会议不同,它追求的目标是可以让尽可能多的用户观看到节目,视频清晰、不卡顿。但它对音视频延迟要求不高,因此这类直播的实时性比较差。

        所谓实时互动直播,就是指以实时互动为目标的直播。其中1996年朱敏创建的WebEx公司应该是这个领域中影响最广泛的一家公司。在20世纪90年代末就可实现多人实时互动聊天,可见它当时的技术有多么前沿。

        而娱乐直播是从2002年开始真正发展起来的,当时Adobe推出了基于RTMP的流媒体服务器FMS,它推动了媒体分发技术的广泛应用。

        这两种技术各有优缺点:互动直播主要解决人们远程音视频交流的问题,所以其优点是实时性强,时延一般低于500ms;而娱乐直播则主要解决音视频的大规模分发问题,因此其在大规模分发上更具优势,但实时性比较差,通常时延在3s以上。下表中给出了目前常见的几种直播技术。

         在表1.1中,只有WebRTC技术用于实时互动直播,而其他几种技术都用于娱乐直播。实际上,最初娱乐直播也只有RTMP这一种方案可选,但后来由于苹果宣布不再支持RTMP,并推出了自己的解决方案HLS,最终导致RTMP走向了消亡。

音视频直播的现状

        从直播客户端的角度看,虽然音视频技术已经很成熟,允许我们自研音视频会议产品,但自研这种产品费用十分昂贵。而Google帮我们解决了这个问题,2011年Google花了6000多万美元收购GIPS公司(它也是一家从事音视频实时互动引擎开发的公司,在音频编解码、网络传输等方面,有很多的技术积累和非常大的技术优势),并将其技术重新组织,开源成为现在的WebRTC。

        那么,什么是WEBRTC呢?又有什么功能呢?

        WebRTC的愿景是让浏览器间可以快速、方便地实现端到端的实时音视频互动。随着这几年WebRTC技术的演进,以及WebRTC1.0规范的推出,在浏览器间进行实时音视频互动已成为可能。目前主流的浏览器(Chrome、Firefox、Safari、Edge)都已支持WebRTC,其愿景已初见成效。此外,WebRTC不仅可以用在浏览器之间进行音视频互动,它还可以应用在非常广泛的产品上,如P2P传输、文本聊天、文件传输、游戏、多人实时互动、音频处理(回音消除、降噪)等各种各样的应用中,甚至是人工智能软件上。

        比如阿里、腾讯就在使用WebRTC技术替换自己的CDN直播网络。现在在它们的一些实验产品中,已经可以使用RTMP推流,然后在浏览器上使用WebRTC技术拉流观看了。这种技术对于视频监控行业来说应该是一个特别好的解决方案。

猜你喜欢

转载自blog.csdn.net/qq_45444021/article/details/123275078