张晋清
摘 要:随着高清播出系统的推广,传统方式下采用主备进口专业视频服务器架构搭建的高清播出案例不断涌现。进口专业视频服务器的高稳定、高解码质量的特点也得到很大的发挥。伴随着全台网文件化送播的盛行,播出服务器对各种送播文件兼容性的要求也不断在提高,而高清格式文件在编码方式、封装格式及码率方面相对标清也增加很多标准,为了提升视频服务器群对送播文件编码的兼容性及对细微误码的宽容度,配备异构的主、备、三备播出视频服务器群作为解码核心的高清播出系统越来越有必要。本文主要围绕上述问题作一个探讨。
关键词:高清播出;视频服务器;通用IT平台;异构;三备
DOI:10.16640/j.cnki.37-1222/t.2016.08.132
吴江电视台自2003年启用第一代标清硬盘播出系统以来,经历了二次技术升级改造:2009年配合数字化改造从标清的模拟硬盘播出改造为标清的数字硬盘播出,2014年配合高清数字化改造从标清数字化升级到高清数字化硬盘播出,目前台内所有自办栏目实现高清化拍摄、制作、播出,在全省乃至全国区县台中处于领先地位。
1 进口服务器存在的问题
在搭建高清播出平台前期方案论证阶段,我们结合以往使用中的经验教训,并借鉴周边大台的成功做法,提出了一个以主备进口专业服务器为主,再加一个采用通用IT平台搭建的第三备视频服务器为辅的异构平台方案,力求在稳定性和兼容性方面做到双赢。
众所周知,以国外专业视频服务器为核心的硬盘播出系统在全国各大电视台有很多的应用案例。进口服务器的高稳定、高解码指标的优点也得到广大客户的认同。但进口专业服务器为了确保其高稳定工作而设立的一些使用规范和技术壁垒限制了文件多格式送播愈发流行下的各台节目生产流程的多样化变革。主要表现在如下三点:
(1)进口服务器为了确保其解码的稳定性,一般建议用它自带的编码通道进行播出视频的文件化,服务器在编码过程中会对编码生成视频文件添加特有优化微代码来提高解码效率和稳定性,而對于由台内非编及其它设备打包迁移过来的文件,虽然码率及封装格式基本一致,但由于缺乏其特有的微代码优化,解码的效率和稳定性都和它自身编码生产的文件有差异。
(2)编解码核心技术的不透明导致二次开发很难开展。国外的视频服务器全是采用专业的系统架构,好多核心的技术服务并不对外开放,而硬盘播出软件大部分全是国内公司开发,由于技术细节的不透明,软件和服务器的配合也很难做到完美匹配,从而导致很多实用功能由于进口服务器的限制无法实现,如播出文件只能用视频服务器的某个通道进行采集或通过迁移,不能使用通过其它采集平台采用分布式直接服务器上载等高时效性上载方式。
(3)同质化的解码技术和近亲繁殖一样,可能存在相同的瑕疵,极端情况下会导致有微小误码的文件在多台相同的服务器上产生同样的故障现象。
2 第三备视频服务器的配置
我台的第三备服务器采用的是HP的DL580 Gen8通用服务器,配2个Intel 8核Xeon E7-4820v2处理器 (2.0GHz/8-core/16MB/) , 16GB内存。采用内置的Smart Array P830i/2GB FBWC阵列控制器,二块200GB 12G SAS SSD做raid1镜像为系统盘,八块1TB 6G SAS 7.2K硬盘做raid1+0为素材盘,实际容量3.64T。配备双端口万兆以太网卡,带4个1200W热插拔电源。解码I/O板卡采用DeckLink Duo ,该卡具有两块独立的SDI类型采集播放卡,它配备两个SDI输入接口和两个SDI输出接口,还有一个常用三电平/黑场同步信号输入接口,却只占用单个PCI Express插槽。由于DeckLink的板卡开放sdk开发包,所以为后续的播出软件二次开发提供了必要的技术支持。
视频服务器目前配备一张DeckLink Duo卡,带二个高标清兼容输出通道,可以承担二个频道的高标清播出任务。I/O卡解码和传统的视频服务器最大的区别是解码卡的类型,I/O卡解码主要由CPU承担解码任务,I/O卡本身只承担数据的输入输出,所以I/O卡解码时对服务器性能的要求较高,服务器安装了win2008 server版 64位系统,正常二个通道工作时的cpu使用率在10%以下,说明该通用平台的资源富裕度很高,完全能胜任4个通道的高标清播出。
3 优化组合式视频服务器的策略
当然采用通用IT平台硬件、通用I/O视频通道卡搭建的视频服务器和进口专业硬件平台配合硬解压视频输出卡组成的视频服务器,在配置调试过程中还是需要做一些针对性的优化及修改,主要有如下二个方面:
(1)如何确保有一个恒定的读性能,确保视频的平稳解码输出。我们在调试过程中,发现视频服务器自带的阵列卡在有素材迁移写入时,发生读性能下大幅下降导致播出卡顿的情况发生。通用IT服务器面向的应用可能更多的是要求有快速的写入功能,所以默认高速缓存主要性能全放在写上。而视频服务器为了保证视频信号的平稳流畅解码输出,必须优先保证读,所以我们更改了阵列卡的高速缓存设置,把原来默认的10%的读、90%的写改成100%读。
(2)如何保证不同的解码通道解码数据缓存空间的专用性,确保随时可以调用。I/O卡由于板卡自身没有设立专用硬件解码缓存区,解码的缓存数据是通过占用系统共享内存完成的,多路输出通道共同占用同一个系统共享内存区。我们的调试过程中发现在转播信号后回到硬盘播出后会出现声画不同步,且声音滞后大约500ms。为此我们和软件的研发进行多轮沟通,多次修改软件,查找问题产生的规律和原因,初步怀疑是由于某一通道在转播外来信号解码暂停时,由于另一通道在正常解码,导致原来保存在系统共享内存里的解码缓存数据空间被占用。等到该通道再次解码时,会发生数据读阻塞导致声画不同步。最后通过修改通道暂停解码时启用循环预读解码缓存数据来防止共享内存空闲时被占用的办法解决了这个问题。
这套采用通用IT硬件平台加I/O输出卡组成的高清第三备视频服务器在架构上和进口专业视频服务器完全不同,且解码采用软解码,和进口视频服务器有很好的互补性,启用半年来,运行非常稳定,图像指标也符合国标,能充分发挥二者各自的优点,用它来做高清视频服务器的第三备份,应该是一个不错的选择。能为整个高清硬盘播出系统提供一个强有力的播出核心,并拥有足够的冗余备份且可二次开发能力强,价格公道,非常适合区县电视台使用。