中小电视台高清网络直播系统的搭建
2018-04-10张莉沛县广播电视台
张莉 沛县广播电视台
1.引言
随着Internet的飞速发展,4G、WIFI网络的全面覆盖以及智能手机、平板电脑等智能终端的应用普及 ,现场直播可以随时随地在网上发起,吸引众多网友围观。与传统的电视直播相比,网络直播没有时段限制和节目调整等问题,受众也不再受限于电视接收和屏幕观看,只要有网络环境就可以通过计算机、手机、平板电脑等设备随时随地进行收看。近年来,在国家全力推进“三网融合”的驱动下,传统的广电媒体纷纷抢滩网络直播阵地,逐步建立起自己的网络直播系统。
2. 网络直播的一般流程
网络直播是对视音频信号采集编码后转换成数字码流,并通过网络边传输边播放的一种流媒体应用。通用的网络直播模型如图1所示。
从图1我们可以看到,直播流程主要包括以下三个部分:
(1)采集编码
图1 通用网络直播模型
网络直播的首要环节是图像和声音的采集。图像和声音的采集设备主要有手机、电脑和摄像机,它们都是通过图像传感器和声音传感器将图像和声音转换成电信号,经数字采样、量化、编码后生成数字基带信号。中间可能还需要对视频进行美颜、水印等处理。数字基带信号要在网上进行传输还必须要进行压缩编码和封装。网上常用的视频压缩编码格式有MPEG、H.264等。常见的视频封装格式有:MP4、3GP、AVI、MKV、WMV、MPG、VOB、FLV、MOV、RMVB和WebM等。与网络直播视频相关的术语有:
① 图像传输格式:通用影像传输格式(Common Intermediate Format)是网络直播传输中使用的影像传输格式。
② 图像格式:通常采用YCBCR格式存储原始数据信息,其中包含黑白亮度图像信息,以及可由CB、CR两个色差信号组合成的彩色图像信息。
③ 传输通道:正常情况下只需1路通道传输信号,但随着虚拟现实技术的日渐成熟,为了拍摄一个完整的360°视频,需要通过不同角度的拍摄,并经多通道传输在终端进行合成。
④ 分辨率:随着设备屏幕尺寸的日益增大,视频采集过程中原始视频分辨率越来越重要,后续处理环节中使用的所有视频分辨率的定义都以原始视频分辨率为基础。视频采集卡能支持的最大点阵反映了其分辨率的性能。⑤ 采样频率:采样频率就是模数转换时抽取样本的频度,它反映了采集卡处理图像的速度和能力。在进行高清晰度图像采集时,需要注意采集卡的采样频率是否满足要求。采样率越高,图像质量越高,同时保存这些图像信息的数据量也越大。
音频的采集过程是先通过设备将环境中的模拟信号采样、量化、编码为PCM的原始数据,然后将这些数据压缩编码成音频格式数据。常见的音频压缩格式有:MP3、AAC、OGG、WMA、OPUS、FLAC、APE、M4A和AMR等。
与网络直播音频相关的技术术语有:
① 采样率:采样就是把模拟信号数字化的过程,采样频率越高,记录这一段音频信号所用的数据量就越大,同时音频质量也就越高。
② 量化位宽:每一个采样点都需要用一个量化数值来表示大小,这个量化数值可以是8bit、16bit、20bit、32bit等,位数越多,就越精细,声音质量就越好,而数据量也会成倍增大。在音频采样过程中常用的量化位宽是16bit。
③ 声道数:由于音频的采集和播放是可以叠加的,因此,可以同时从多个音频源采集声音,并分别输出到不同的扬声器。声道数一般表示声音录制时的音源数量或回放时相应的扬声器数量。声道数为1和2分别称为单声道和双声道,是比较常见的声道参数。
④ 音频帧:音频跟视频不一样,视频每一帧就是一幅图像,而音频数据是流式的,本身没有明确的一帧帧的概念。在实际应用中,为了音频处理和传输的方便,一般约定俗成取2.5ms-60ms为单位的数据量为一帧音频。这个时间被称之为“采样时间”,其长度没有特别的标准,它是根据编解码器和具体应用的需求来决定的。
(2)推流存储
推流是直播的“第一公里”,直播的推流对直播链路影响非常大,如果推流不稳定,就会出现图像和声音卡顿、暂停等现象,观众的体验就会很差。网络直播推流的关键是推送协议的采用。目前常用的网络推送协议有以下几种:
① RTMP和HTTP-FLV
RTMP是Real Time Messaging Protocol(实时消息传输协议)的缩写。该协议基于TCP,是一个协议族,包括RTMP基本协议及RTMPT/RTMPS/RTMPE等多个变种。RTMP是一种设计用来进行实时数据通信的网络协议,主要用来在Flash/AIR平台和支持RTMP协议的流媒体/交互服务器之间进行音视频和数据通信。支持该协议的软件包括Adobe Media Server/Ultrant Media Server/red5等。RTMP是目前主流的流媒体传输协议,广泛应用于直播领域,市面上绝大多数的直播产品都采用了这个协议。它的优点是CDN支持良好,主流的CDN厂商都支持,而且协议简单,在各平台上容易实现。它的缺点是基于TCP,传输成本高,在弱网环境下丢包率高,且不支持浏览器推送。
HTTP-FLV协议实际上和RTMP协议传输的数据是一样的,HTTP-FLV是一个无限大的HTTP流的文件,只能用于直播,而RTMP还可以推流和更多的操作。但是HTTP的优点是网络穿透性强,而RTMP是非开放协议。
这两个协议是如今直播平台主选的直播方式,主要原因就是延时极低。
② HLS
HLS是Apple推出的直播协议,通过将视频流切片成文件片段实现直播。客户端首先会请求一个m3u8文件,里面会有不同码率的流,或者直接是TS文件列表,通过给出的TS文件地址去依次播放。在直播的时候,客户端会不断请求m3u8文件,检查TS列表是否有新的TS切片。这种方式直播的主要弊端就是延迟过大,最小延时为TS单个文件的时长。
③ DASH
DASH 实际工作原理和HLS一样,只不过不是mpegts文件,DASH 可以支持多种切片文件,比如mp4切片。当为mp4切片,客户端直接可用js控制利用html5直接播放。DASH 也有延时。
视音频内容通过网络推流,最终都存储到网络云存储上进行分发和点播。现在的云存储有很多,像荔枝云、阿里云、腾讯云等等,都提供网络直播平台服务。内容存储需主要考虑两个问题,一个是内容源的集中存储,另一个是内容在Cache节点中的分布式存储。由于内容的规模比较大,会有很大的数据吞吐量,因此,通常采用海量存储架构。目前常用的存储技术主要有直连附加存储(DAS)、网络附加存储(NAS)和存储区域网(SAN)。网络直播一般都会购买第三方的云存储平台服务,采用的技术方案一般由第三方去考虑。
(3)分发播放
内容分发技术是通过网络的构建减小IP骨干网络的传输压力,将连接到IP网络上的内容迅速分发到用户终端。分发技术有两种:
① 分段分发技术
流媒体对边缘内容的完整性没有要求,节点只需存储少量的节目或节目片段即可实时推送内容,为用户提供完整的服务。当用户点播的内容只有部分片段或没有时,系统将采用分发技术进行内容的快速分发。
② 部分分发技术
部分分发技术可提升边缘系统的命中率,如果对10%的内容采用全复制,20%的内容采用50%复制,50%的内容采用10%复制,那么,系统可以实现95%以上的命中率,大大降低骨干网的负荷,具有优越的分发性能。
播放其实是推流的逆过程——拉流。标准的拉流格式有RTMP、FLV、HLS等。RTMP是Adobe的专利协议,开源软件和开源库都支持的比较好,播放端只要支持FlashPlayer就能非常简单的播放RTMP直播,直播延迟一般在1-3秒。FLV(HTTPFLV)协议和RTMP协议一样,直播延迟同样可以做到1-3秒。HLS是苹果提出的基于HTTP的流媒体传输协议,HTML5可以直接打开播放,同时,通过微信、QQ等软件分享的直播,用户也可以直接观看。HLS的缺点是延迟通常大于10秒。
网络直播分发播放示意图如图2所示。
3. 电视台网络直播系统需求分析
作为广播电视的专业机构,电视台举办的活动进行网络直播与普通的网络直播存在较大差异。电视台网络直播的一些特殊需要主要表现在以下几个方面:
(1)专业接口
电视台进行的网络直播一般都会采用广播级和专业级的设备进行现场录制,提供较高质量的视音频,并采用专业接口进行传输。因此,直播系统必须具有专业接口与广电的直播系统进行对接。
(2)分辨率
电视目前主流的分辨率是标清和高清两种格式。我国标清格式分辨率是720×576。除了一部分的播出系统还是标清系统外,我国高清电视的应用已经非常普及。目前电视台采用的主流高清格式有 1080i、720p、1080p等,分辨率为1920×1080、1280×720。
图2 网络直播分发播放示意图
(3)网络带宽
不同的视频格式产生不同的码流,码流越大,需要的网络带宽越大,充裕的网络带宽可保证网络直播图像和声音的稳定性。网络直播的视频格式与码率如表1所示。
表1 视频格式与码率
电视直播通常采用720p以上分辨率的高清格式,按720p格式计算,直播应用需要1024kbps的带宽,即1M带宽。而实际直播应用中,还有消息推送、附属数据等信息,会有更多的带宽消耗,因此一般直播带宽的要求是视频码率的2倍以上。
在分发端,如果有2万人同时在线观看高清直播,所需的并发峰值带宽会达到2G,这需要合作的网络直播平台的技术支持和提供的服务技术。网络直播平台一般都可以提供5万人以上同时在线观看的服务。
(4)与官网、官微的衔接
电视台都有自己的官网和官微,直播的相关信息都要通过这些渠道传送给网络观众。因此,网络直播必须和官网和官微衔接好,观众通过官网和官微的链接,简单点击就能进行网络收看。通过网络现场直播,可以进一步扩大官网和官微的影响力。
4.电视台网络直播系统搭建
2017年9月,我台举办的《沛县好声音·第3季》总决选活动采用了网络直播的形式,这也是我台的首次网络直播。这次网络直播系统的搭建和测试只有半个月的时间,为快速建成这个系统,我们搭建了一个简单易用的网络直播链路。
视频采集端我们用直播车来实现高清视频及音频的摄取和输出。编码推流环节我们采用了天创恒达的30S编码器,该编码器的输入具有SD/HD-SDI接口,编码后可以通过4G、WIFI和网络进行推流。直播平台我们选择与微赞直播平台进行合作,我台的官网和官微都建立了微赞直播的链接,观众可以直接通过微信和网站进行观看和互动。网络直播系统如图3所示。
网络直播平台应用主要有以下两个关键点:(1)编码器的设置
图3 沛县广播电视台网络直播系统图
图4 主流编码设置
图5 主流协议设置
图6 微赞电脑操作界面
图7 微赞手机操作界面
编码器的设置,首先要确定使用何种网络进行推流。因为这次活动是在沛县广播电视台台内进行,我们选择了网络传输的方式,网络带宽有保证而且可靠。先用手机通过WIFI与编码器建立连接,为编码器分配一个固定IP地址并接入交换机。然后通过在相同网段内的计算机对其进行编码及推流的相关设置。主流编码设置如图4所示。
因为我台直播车输出的信号是1080 50i的高清信号,编码方式选择了H.264格式,编码帧率可选择25或30。编码后分辨率选择1280×720。视频比特率可选择1024到3500,比特率越高,网络直播的视频质量越好,所需推流带宽也越高。我们折中选择1500,带宽确保在3M以上。
主流协议设置主要用来确定推流采用的方式。我们选择主流的RTMP方式,只需把推流地址的三段分别填入相应的设置窗口即可。主流协议设置如图5所示。
(2)微赞直播间的设置
微赞需首先确定一名管理员,管理员通过自己的账号建立一个频道,频道下面可以建立多个直播间,每个直播间就是一次活动直播。管理员可以通过电脑和手机微信进行相关的设置,可以设置直播开始时间,生成直播二维码,发言权限,流字弹幕等。电脑、手机操作界面如图6、图7所示。
5.结束语
2017年9月16日,我台的《沛县好声音·第3季》总决选活动准时进行网络直播。在直播时段内,有2.5万人实时在线收看了比赛实况。无论是手机还是电脑收看,都非常流畅,画质和音质清晰。这次网络直播的系统比较简洁,可迅速搭建,达到了我们的直播预期效果。