孟佳佳,白新跃,唐继勇
(电子科技大学图像与广播电视工程中心,四川 成都 611731)
电视台播控系统是数字电视的一个重要环节,一个设计合理的自动播出控制系统不仅可以提高播出的质量和播出的稳定性,还可以降低播出工作人员的劳动强度及扩展播出功能。关系到播控系统能否做到正常运转的一个非常重要的条件就是数据服务,而播控系统的实时性则对数据服务提出了更高的要求,要求数据服务不能中断,出现故障后能够在很短时间内恢复到正常播出状态,这样才能够最大限度地保证播出的正常进行。
容错技术[1-2]是指在计算机网络或者计算机硬件、软件产生故障的情况下,仍有能力将指定的应用程序或者算法继续完成,并且能够以最快的速度使系统恢复正常,同时能够保证系统的整体性能不降低。传统的播控系统视频服务器中一般采用主备方式,但是,随着电视台的不断发展,节目量的不断增大,其自身缺点也逐渐暴露出来:首先,这种主备方式难以适应播控系统数字化改造过程中所带来的管理模式上的变化;其次就是由于购置成本及复杂性等原因,让众多中小型广播电视台望而止步。
笔者结合在播控系统项目设计过程中采用的音视频文件多路径分发、文件服务器容错、数据库容错的设计与实现,探讨相关技术的应用和发展前景。
系统框图如图1所示。
图1 数字音视频播出系统结构图
为了保证播控系统能够做到高可靠性和易用性,同时能够保证播控系统的数据得到及时备份,并且能够在播控系统出现灾难性错误时进行及时恢复,从播控系统的功能性需求分析的角度出发,数据容错系统的功能应包含:
1)能够实现音视频文件的多路径分发并进行实时备份,保证节目的安全播出和降低服务器的负载量。
2)能够使文件服务器的数据服务不中断,一旦出现故障中断,能快速接管主服务器并进行数据恢复。
3)提供可靠的数据库接管功能,当播控系统发生故障时,容错系统能够保证数据在很短时间内恢复,并且数据不会丢失。
数据容错系统的设计与实现包括3个部分,即音视频文件多路径分发设计与实现、文件服务器数据容错设计与实现、数据库容错设计与实现。
多路径分发是指将主服务器上的节目素材自动地分发到多个备份路径(即多个备文件服务器)上,这样可以保证数据不会丢失和损坏,即使在系统出问题时也能够保证播出的实时性,如图2所示。
图2 服务器间的多路径分发
为了能够实现音视频文件的多路径分发,常常需要对素材文件中更新的文件进行实时更新,为了获取这些事件的信息,这里使用了SQL中的Trigger。通过一个拷贝的程序来实现音视频文件的多路径分发,采用了Socket套接字实现数据库调用的控制命令和该拷贝程序之间的通信。音视频的文件多路径分发流程如图3所示。
图3 音视频的文件多路径分发流程图
这里主要采取文件服务器错误检测和文件检查恢复。前者采用双机热切换中的Active-Standby方式[3](见图4)。其中备机每隔0.1 s向主机发送ping命令用以检查主机的网络是否正常。文件检查与恢复有3个方面的内容,分别是:检查文件的一致性(Handle Coherence Thread)、检查无用文件(Check Useless File Thread)、消除无用文件(Delete Useless File Thread)。
图4 双机主从热备份模式(Active-Standby)
针对数字音视频播出系统的需要,在数据库容错技术上采用了数据复制技术。数据复制技术的概念是将一个数据库中的数据复制到局域网相同服务器上的备份数据库中,每当数据有更新时,数据就会实时复制到备份数据库中,这样能够最大限度地保证数据的同步性。
当主数据库出现错误时,切换到备服务器继续工作,其实现过程如图5所示。
图5 数据库服务器主、备切换
基于音视频文件多路径分发、文件服务器数据容错和数据库容错的设计能够很好地解决电视台播控系统中数据容错的问题,很大程度上降低了成本。该设计能够很好地实现文件备份、数据服务不中断、文件数据恢复和数据库容错等功能。
[1]徐美荣.基于实时操作系统的多机冗余、容错技术研究[D].杭州:浙江大学,2006.
[2]杨俊.关于数字视音频播出与控制的一些关键技术的研究[D].长沙:国防科技大学,2002.
[3]谢希仁.计算机网络[M].北京:电子工业出版社,2008.