什么是网络直播

今天有幸给一群90后的年轻人培训网络直播技术,这对于我个人来说也是对网络直播技术和经验的一个回顾和总结。
网络直播是最近几年兴起的一种热门技术,它之所以今天被普及,我想是因为满足以下的几个关键技术条件:
  1.目前我国的固网提速和4G普及,使得直播视频的传输不再是一个制约瓶颈;
  2.普通智能手机芯片的处理能力能够应付h264编码格式的编解码;
  3.直播开源软件的特别是OBS的出现和完善,使得在普通电脑上也可以做直播,当然也免不了各种闭源软件不断被破解的助攻。
  在网络直播中我们经常听见的2个词是推流和拉流,何意呢?推流和拉流都牵涉到一个网络url地址问题,在实际工作中,假设我们是信源提供方,那么推流就是对方给我们一个url地址,我们把信号“上载”到该地址上去,而拉流是指我们信源本身就有一个网络url地址,对方来“下载”这个地址提供的音视频信号,其实就是谁是主动发起者的问题。在技术实现上,一般情况下,推流是编码器把信号推送到流媒体服务器上,而拉流是编码器主动来拉流媒体服务器上的内容,当然并非绝对。
  网络直播系统总体上可以看成由三大块组成,按照信号的传递方法,依次为:
  1.信源端的推流系统,其核心部件是各种硬件编码器、安装推流软件的电脑以及安装有直播软件的手机等。
  对于手机直播,我们手机的就是一个推流系统,它包括了作为信源采集的摄像头,作为信号编码和推送的app,以及4G网络接口,从而形成了一个完整的系统。
  对于基于电脑推流系统,它包含用于SDI或者HDMI信源的采集卡(或者笔记本自带的摄像头或者USB摄像头)、对视音频信号进行编码的推流软件以及网络接口。
  对于硬件编码器,一般是一个盒子,该盒子有SDI和(或)HDMI接口用于采集信号,基于FPGA的硬编码芯片和网络接口,其网络接口可能是普通的RJ45有线网口,可能是wifi网络接口,也可能是4G网络接口,还可能是他们的组合,比如LiveU有一款编码器就带有1个RJ网口、wifi、6个4G卡插槽还有2个USB接口,其USB接口可以接4G网卡,从而有最多同时有10个网络接口同时跑数据,既提高了网络带宽,又提高了网络可靠性,洋铭的一款编码器NVS-30就只有一个RJ45的有线网络接口。硬件编码器除了具有推流功能外,有的编码器还有录制功能,我们可以插上一个U盘或者SD卡,能够达到边推流边录制的效果。
  2.网络传输系统,指各种有线网络和4G网络、CDN直播加速云、(应用层)传输协议等等。
  网络传输系统是个复杂的工程,但对于信源提供方来说,我们不用去管它的具体实现,拿来使用就好。首先是处于最底层的有线网络和4G(5G)无线网络,这个直接找运营商提供即可,就是钱的问题,当然在实际案例中的问题是如何省钱。其次是CDN直播加速云,它的本质是一个分布式流媒体服务器集群,而流媒体服务器的核心作用就只有一个:复制它所接收到的音视频流,然后分发出去,从而满足更多人同时接收同一个信源。当然CDN还有一个好处是它的分布式机房都有BGP网络接入,即联通、移动、电信和(或)教育网等都有接口,而且是自动负载均衡,这就不存在因跨运营商导致卡顿的问题。比如一场演唱会要做网络直播,我们自己是信源提供者,在演唱会现场把现场信号转成网络流信号,而该演唱会需要在爱奇艺、微博、优酷、头条等等等等几十家平台上直播,我们不可能为每个平台都推一路流过去吧(甚至每个平台可能要主备两路)?如果真如此,我们要准备N个编码器,带宽也要足够大,我想这个成本是很难承受的,对于这种情况,我们就可以推主备2路信号到CDN直播加速云上,各个直播平台来拉主备流即可。
  再往上层走就是直播应用层传输协议的问题,它是解决编码后的音视频流以怎么的方式在网络上传输的问题。直播传输协议有很多,比如rtp、rtsp、rtmp、flv-http、udp、srt等等,可能要有部分厂家的封闭协议。各种传输协议都有其优缺点,目前对于在公网上直播、最为常用的rtmp。无论是编码器还是CDN直播加速云,它们都支持一种或者几种传输协议,具体因厂家不同而不同。
  3.终端呈现系统,即各种网络直播平台,如爱奇艺、sohu直播、今日头条、抖音等等。终端呈现其实可以看出两个部分组成,一个是终端的入口,也就是我们手机上安装的爱奇艺、抖音客户端,通过这个入口,我们观众才能找到所想看的直播节目;另一部分是支撑广大观众同时在线看的CDN直播加速云。没错,这个直播加速云在源信号传输到直播平台时可能会用到,但在终端呈现这里,就一定会用到,因为世界上还没有任何一个服务器可以支撑1万人同时流畅的观看2Mbps的高清直播视频,即使有,我们的网络基础设施也满足不了要求,因为这1万人可能都在某一个城市,也可能分散在全国乃至世界各地,运营商不可能在其网络的每个节点之间,都铺设支持10000x2Mbps=20Gbps的带宽的硬件网络。

你可能感兴趣的:(视频网络直播)