Labs 导读
慢直播是一种新兴的媒介形式,在技术上慢直播两种实现方式:一种是基于传统摄像机通过外接SDI/HDMI数据线将采集后的原始信号直接传到带网络的音视频编码器,最后实时传输到慢直播平台;第二种是基于安防网络摄像头(IPC)直接接入互联网实现音视频数据实时传输到慢直播平台。
Part 01、 技术简介
摄像头的慢直播就是指借助摄像头对实景进行长时间不间断的的实时记录并原生态呈现的一种直播形态。直播画面没有任何剪辑、没有主播,也没有旁边解说,让观看者的参与感以及沉浸式的体验更加真实。因为慢直播也是一种公众直播,所以需要严格的牌照资质才能对外提供。对于安防厂家或者网络运营商来说,一般都是将直播音视频流通过网络标准传输协议提供给第三方公众直播平台(如微信直播、抖音或者CCTV等)来进行慢直播推广。
为提高慢直播效果,如上图所示,实际直播过程中会在直播画面加上一些Logo、字幕、时间OSD和背景音乐等信息,也会做多个摄像头画面的定时轮播。这样对慢直播技术就有了更高要求,涉及到对摄像头流源的重新编解码和多路流的融屏技术。
Part 02、架构介绍
摄像头慢直播在架构上一般都是由安防网络摄像头(IPC)、视联网云平台和第三方直播平台三者组成,其中视联网云平台负责接入安防摄像头的各种协议直播流并转换成常见的标准直播流协议(RTMP和HLS等),并完成对直播流的各种加logo、文字、背景音乐和融屏等处理,最后再对直播内容进行管控;第三方直播平台一般由直播流分发、时间管理,用户管理、直播安全、录制和数据运营等功能模块组成,大型的直播平台还会引入CDN对直播流加速处理。本文主要探讨视联网云平台的相关慢直播技术。
2.1 摄像头接入
摄像头接入主要负责适配摄像头直播流的各种接入协议。摄像头直播流协议常见的有私有协议、GB/T28181协议、行业标准协议(RTSP)和直播协议(RTMP),兼容性好首选私有协议,但是接入流程比较复杂且不适合互联网模式接入;GB/T28181协议支持的摄像头最广,基本市面上所有的安防摄像头都支持它,缺点是在互联网环境接入不安全;行业标准协议RTSP接入一般都采用拉流模式,因此需要固定的公网IP,这个在很多互联网环境是很难实现的;支持直播RTMP协议的摄像头一般比较少,很少考虑采用。综合考虑上述因素,常见开放的视联网云平台(如腾讯的慢直播平台)在接入安防摄像头做慢直播都首选GB/T28181协议,然后信令和流传输的过程采用了安全保护措施,确保接入安全。
2.2 协议转换
协议转换负责将摄像头接入直播流转封装成标准协议的流数据。转成标准直播流之后一般不会选择直接推送到第三方直播平台,因为摄像头的裸流中携带的结构化信息不多,最多只带有时间OSD信息,而且里面的音频也一般不适合直接做直播。因此需要将标准流做成服务并提供拉流URL地址,提供给流加工和安全管控进行拉流处理。
2.3 流加工
流加工常见两种形式:一种是利用开源GUI工具(比如OBS)对摄像头的流做二次加工之后再通过标准的网络实时流传输协议(常见RTMP)推送到直播平台;第二种就是直接在后端使用服务器利用开源的编解码解决方案(比如FFmpeg)对流源进行二次处理,然后再推送到直播平台。下面就分别介绍下两种技术方案:
2.3.1 使用第三方视频工具OBS进行流加工处理
OBS是一个免费的开源的视频录制和视频实时交流软件,它支持从视联网云平台的拉取转换后的标准流,并在Window环境提供了方便的可加工操作界面,用户直接简单的拖拽就可以实现加log、文字、背景音乐和多屏融合功能,通过简单配置也可以实现多摄像头画面定时轮播切换的效果。最后,通过在OBS上配置RTMP协议的推流密钥和地址(第三方直播平台提供),可以直接将加工好的流直接推送到第三方直播平台进行慢直播。OBS进行加工也有缺点:首选必须选用高性能的WindowPC电脑,其次配置操作尽管比较简单但是流程比较多,最后直播过程中需要人工看守,随时干涉直播界面出现的各种异常。
2.3.2 在后端使用服务器利用开源的编解码解决方案(比如FFmpeg)对流源进行二次处理
FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序,它提供了录制、转换以及流化音视频的完整解决方案。可以使用FFmpeg的标准协议处理libavformat库从协议转换服务获取到的URL拉取标准流,然后使用其音频/视频编解码库libavcodec对拉取到的流做加logo、文字和背景音乐处理,最后再使用libavformat库将处理好的流封装成RTMP协议推送到第三方直播平台。相比使用OBS,在服务端使用FFmpeg做加工优点是可以实现在后端服务自动化处理,不需要人工干涉;性能比较高,资源消耗如果不涉及像由H265转成H264这样的编码格式转换会小很多,对服务器性能要求低。缺点是需要专业的工程师开发服务程序进行加工处理;多摄像头的定时轮播和融屏等复杂功能的开放难度较大,比如多摄像头的定时轮播功能需要实现直播画面的精准切换需要开发过程中实现GOP缓存技术。
2.3.3 两种加工模式的优缺点比较
2.4 安全管控
尽管很多公众大直播平台对慢直播内容也会做安全方面的管控,但是实际在慢直播前都会要求提供者先确保直播源的安全可靠。这部分我们可以通过调用第三方成熟的图片和文字审核库来完成。因为摄像头接入服务已经实现将直播ES裸流化,所以我们只要从裸流中定期提取到I帧,使用FFmpeg的libavcodec库将I帧转换成图片审核库要求的格式进行审核处理;有些慢直播比如赛事直播需要保留摄像头的原有音频,所以也要对声音进行额外的审核。音频部分的处理比较复杂,需要先将音频转换为文字(推荐使用科大讯飞开源库),然后再将处理好的文字提交给文字审核库处理。安全管控的技术难点就是要预留摄像头一定的直播处理时延,及时将直播流审核异常的报警信息上报并第一时间将慢直播关停,最大限度的降低直播事故。
Part 03、 总结
最后,慢直播作为融媒线上宣传的新兴工具已经取到了很大成功,从最初的CCTV采用摄像头24小时全程展现火神山医院和雷神山医院建造过程,再到现在的数字乡村的三农原生态养殖、乡村美景宣传,慢直播技术应用越来越广,相关技术也得到不断提升,慢直播也在尝试引入新的技术比如AI智能技术、虚拟数字人直播、VR/AR直播,使得慢直播内容更加丰富,效果更加精彩。