APP下载

基于阿里云的高清视频多路传输系统研究

2019-05-10戴洵

新媒体研究 2019年4期

戴洵

摘  要  随着物联网技术和互联网技术的发展,视频远程传输和处理的相关业务越来越常见,尤其是在线电影播放、远程视频非线性编辑等业务,更是对视频传输速度、清晰度、通道数等指标提出了更高的要求。文章以阿里云服务器为平台搭建流媒体服务器,实现了全终端的视频下载、高清传输、在线播放、云编辑等功能,具有较强的工程实用性。

关键词  阿里云;高清视频;多路传输;云端编辑

中图分类号  G2      文献标识码  A      文章编号  2096-0360(2019)04-0023-02

传统的视频服务器必须依靠一定的硬件资源才能实现,并且需要向网络运营商购买带宽和分配IP,费时费力[1]。云服务器的出现,实现了较为成熟的云存储体系,并且视频服务器也逐渐向云端转移[2]。然而,将在线视频编辑服务从本地实体服务器迁移到云端服务器仍然是业内面临的一个难题[3]。本文将对基于云端的视频传输和在线编辑等问题進行深入的研究。

1  总体设计方案

本系统是基于阿里云的高清视频多路传输,采用了H.265视频标准,可以为安防监控、远程编辑、广电系统、互联网视频等应用提供高速传输服务。首先,前端的各种图像采集设备实时采集目标区域的视频图像,然后通过网络发送至阿里云平台上的流媒体服务器上,用户通过各种终端、手机、客户端、网页等可以实现视频的读取、转发、编辑等功能。由于云服务器处于整个系统的核心,因此视频的前端采集和视频后端处理互不影响,可独立进行。系统整体框架如图1所示。

在本系统中,摄像头采集到视频图像后首先进行H.265编码,接着进行RTMP封装并传输到云端服务平台并存储起来。用户可以通过客户端软件对云端的视频资源进行请求,视频资源经过相反的过程传输到本地计算机。用户也可以通过远程的方式对云端服务器的视频资源进行编辑制作,充分利用阿里云的高速计算能力和大数据处理技术。

2  系统模块设计

2.1  前端视频采集单元设计

视频采集设备处于整个系统的前端,支持多种采集方式,例如互联网领域的智能机、摄像头和广电图像的SDI、HDMI,可以完成视频信息的实时采集,视频数据由Hi3516D进行处理器。为了降低时延并提高压缩率,系统前端采用了H.265硬编码的方式,分别由视频编码层和网络提取层来实现。前端视频数据到用户本地的传输采用了推送模式,因为推送模式对网络环境的要求更低,避免了拉取模式要求的固定IP、稳定公网环境等苛刻要求。为了满足后期系统的扩展,本系统还预设了电源接口、RJ45网线接口、红外信号接口和红外滤光接口等常用扩展接口。

2.2  云端流媒体服务器设计

云端流媒体服务器设计的关键点和难点在于在线播放和在线编辑功能,而在线编辑功能也是以在线播放为基础的。从目前的技术来看,一般可以选择两种方式来实现在线播放:一是先将云端视频资源下载到本地,直到视频传输完成后再进行播放,这种方式的核心在于视频高速传输;二是通过客户端软件与云平台建立连接,然后服务器会以数据流的形式将用户需要的资源传输给用户。可见,第二种方式才是真正意义上的在线播放,由于这种方式又可以分为顺序流传输和实时流传输两种方案,其中前者采用标准HTTP服务器来传输数据,在点播领域有较广泛的应用,但对于直播而言则无法满足要求。因此本文采用实时流式传输,通过专用的传输协议来对现场的图像进行实时传输,因而满足在线编辑和现场直播的要求。

流媒体服务器基于阿里视频云技术可以完成二次开发,对RTMP协议有很好的兼容性,也使第三方厂商的硬件接入更加方便,可以和前端采集硬件建立长连接。流媒体服务器底层技术采用FFMPEG,通过推模式发送码流数据,实现高速传输。由于系统有多路传输的特殊需求,因此必须有一个标识可以区分各路数据,本文为每一路视频数据都指定了一个唯一的URL链接。用户只需通过客户端访问该URL,即可完成向服务器端请求数据的过程,数据经过RTMP协议传输到本地后,再进行解码即可在线播放或转发。为了支持多终端在线播放,云端流媒体服务器还设计了在线转码功能,通过RTMP上传的视频文件,经过FFMPEG转码、转封装后变为常见的HLS、FLV等格式,实现对多终端的兼容。

2.3  视频播放客户端设计

视频播放客户端安装在用户本地PC平台上,它是基于开源流媒体播放器来开发设计的,一方面可以向云端服务器发送数据请求,并建立连接,另一方面还可以对云端返回的码流进行接收、解包、解码和播放。客户端与前端采集单元相对应,支持HLS、FLV和RTMP等协议格式,可以实现多路码流的同时传输和播放。显然,除了传输系统的高性能要求之外,还需要客户端具有较强的解码能力,本系统采用了H.265视频数据的软解码,由FFMPEG 完成客户端所有视频数据的解码。客户端可以由用户将界面配置为多个小窗口,每个窗口对应一个URL地址,各窗口后台线程分别向服务器请求相应的前端视频图像,最终实现多路视频的采集、传输和播放。客户端可以运行在智能手机、PC、OTT等多种终端系统上,视频格式支持HLS、FLV、RTMP等多种常用格式。

3  多用户同时在线编辑

为了扩展更多的应用场合,充分利用阿里云的强大计算功能和智能化服务,使系统进一步实用化,本系统还在客户端中集成了在线编辑功能,并且支持多用户同时在线操作,实现了视频云编辑的功能。为了避免多用户同时向服务器请求数据造成的网络堵塞,本文采用流媒体服务器来对所有的在线编辑服务器进行统一管理,对计算资源进行合理分配。同时充分利用分布式系统的计算能力,采用分布式技术解决大规模并发用户请求的难题。当大量客户端同时发来在线编辑请求时,由流媒体服务器动态分配相应的计算机为其提供服务,各计算任务之间相互独立,互不影响。当某个客户端的在线编辑完成后,将自动释放计算机资源,为其他用户的计算提供了更多资源。这个方案虽然解决了多路传输的问题,但由于视频是在云端进行编辑的,用户无法像本次资源一样随意对视频进行预览,自然也很难知道编辑效果是否满意。为此,充分利用了阿里云的人工智能服务,通过智能算法提取云端视频图像的边缘轮廓,也就是关键帧和时间戳,由流媒体服务器将其传回客户端,使用户可以对云端编辑视频进行高保真度的预览。为了记录当前正在编辑的视频文件和位置,采用集中式的拓扑索引服务器来动态记录各进程的视频编辑列表信息。

4  结束语

随着互联网的发展以及各种视频传输业务的增长,视频存储已基本实现了较为成熟的云存储体系,并且视频服务器也逐渐向云端转移。近年来,随着云服务器性能和网络传输技术的发展,各大互联网企业开始关注视频的云编辑功能,云端技术的发展正在经历着一场前所未有的革命,并且推动着网络视频相关技术的不断发展,基于云服务的视频应用体系成为未来互联网和人工智能的重要发展方向。

参考文献

[1]大洋与松下签署战略协议 为视频云端专业制作开启新模式[J].现代电视技术,2018(4):160.

[2]覃东骏.区域性电视制作机构的EFP直播远程制作实践[J].数码影像时代,2017(5):89-95.

[3]朱婕.全媒体时代“云”编辑模式研究[D].北京:中国科学技术大学,2014.