网络化的电视节目制作合成系统的设计与实现
2021-03-07孙慧璞
孙慧璞
(唐山广播电视台制作保障部 河北省唐山市 063000)
对于电视节目来讲,节目的制作是电视业务中的重点内容。随着网络技术的广泛应用,使网络化电视节目成为了电视节目制作的主要发展趋势。为了促进网络电视节目能够展现出更高的设计水平,需要在系统设计方面给予更多的关注,令网络电视节目拥有可靠的技术支撑。为此,电视节目制作单位需要积极掌握各类电视节目制作新兴技术,为网络化电视节目制作合成系统的设计与实现给予可靠保障。
1 系统分析与设计
1.1 系统任务与目标
1.1.1 系统任务
在制定电视节目的过程中,节目制作合成系统所承担的工作任务主要呈现出以下两个方面。首先,系统需要及时接受节目演播室系统制定的节目合成表单,并且根据表单上面的具体内容和要求,从所属的局域网中提取相应的节目素材,半并且将获取的节目素材进行充分整合,使其能够成为一个完成的节目文件。在完成了节目制作合成之后,需要将节目文件进行备份并且上传至备份机当中[1]。其次,节目制作合成系统需要接收演播室系统发出了各项控制查询指令,并且及时对其进行处理。例如当播控系统针对播出MSV主机发出了查询操作指令的时候,节目制作合成系统会对播控系统发出的操作指令进行接收处理,根据指令的具体要求在本地文件查询入口中输入查询关键词,在完成了节目列表查询工作之后,会将查询结果反馈给播控系统当中,这个过程中需要保证精准高效。
1.1.2 系统目标
1.1.2.1 支持多种节目类型制作
演播室播控系统向节目制作合成系统输送的节目表单通常拥有不同的类型,例如缩编EDL类、文件快速合成类、延时播类以及演播室共享类。在这些文件类型当中,缩编EDL类节目合成表单内容中涉及的内容素材会通过两种方式来获取,第一种为MSV及其,另一种为从中心存储中获得。文件快速合成类所需的文件素材主要源于中心存储,另一种延时播表单所需的制作素材则是来自收录MSV机器当中。由于不同的节目表单的源素材在来源方式方面存在一定的差别,所以需要节目制作合成系统能够支持不同节目类型的制作,使其能够呈现出多方面发展的趋势。
1.1.2.2 冗余备份
数据冗余主要是指在一个固定的数据集合当中,同样的数据内容重复出现。在电视节目制作合成的过程中,数据的正确运用对于节目制作的质量具有一定的影响,占据着十分重要的地位。如果节目制作合成所需的播出素材或者源素材存在缺失或者损坏的情况,势必会对电视播出情况造成不良影响。为了避免这样的情况,节目制作合成系统应当对重要的文件素材进行冗余备份,降低素材文件缺失损坏对电视节目带来的不良影响。在本系统当中,进行冗余备份的主要对象是播出文件。系统在备份的过程中需要将新和成的播出文件存储在播出MSV主机当中,此时会将内网备份的各类数据在MSV备份机当中进行备份保存。当MSV主机出现特殊情况不能保持正常播放时,能够将对外播出系统切换到备份机处,进而保障节目的顺利播放。
1.1.2.3 音频过渡
针对系统主要面对的节目合成表单类型及其涉及的相关素材,可以根据源素材来源将其划分为不同的类型[2]。第一种为素材合成阶段可能会需要使用不同来源的素材,例如在EDL节目合成表单就需要使用多段不同来源的素材。而另一种则是在素材合成过程中使用的素材都是同样的来源,例如在文件快速合成类,此时所需的素材通常为同一个源文件。由于素材合成过程中通常会应用到多段不同的源素材,因此需要结合实际需求进行特殊处理,使两个素材内容在衔接的过程中实现自然过渡。如果在处理素材的过程中没有对此给予足够的关注,处理工作不充分,很容易使两个源素材在衔接的时候出现爆音的情况。这种情况会严重降低素材展现的效果,影响节目质量。为了避免这种情况的出现,在节目制作合成的过程中需要对多段不同源素材文件进行音频处理,确保两个素材在衔接的时候不会出现爆音的情况。对来自于同一个源文件的素材使用的时候,尽量确保素材的连续性,这样就不需要对其进行音频的过渡处理。
1.2 系统拓扑结构设计
从图1中我们可以知道,节目制作合成系统当中含有两个播出MSV组,系统为例保证各类程序正常运行,会使每个播出MSV组都拥有特定的MSV主机和备份机。在当前的系统架构当中,每个播出MSV组会可能与交换机进行操作关联,这是实现演播室共享节目类型的重要物理基础。从图1中可以看出,系统中的每个播放MSV都会与交换机进行关联,随后与演播室系统、收录需提报过以及中心存储系统进行关联,使整个系统的各个组成部分实现有效连接。
图1:系统拓扑结构图
观察这个系统架构,播出MSV组下的播出MSV主备机器在运行过程中,需要与借助交换机来和演播室系统建立连接关系[3]。在工作的过程中,播出MSV主机与备份机会及时接收演播室发出的节目合成表单与各类控制命令。由于每个播出MSV组都会有序对应一个播出控制程序,因此,系统会默认MSV当中的各类系统设备都会与演播室系统中的播控机器都是在一个局域网里面,因此系统中的播出MSV主机会以及备份机和局域网交换机建立连接关系。在各类机器在同一个局域网保持关联之后,播出MSV可以利用特定网卡来接收演播室发出的各项操作指令,完成节目合成表单的接收。这样能够及时准确对指令进行处理,以免素材出现堆积的情况,促进了演播室操控命令接收效果的速度。当MSV主机完成了操作指令以及节目合成表单的接收工作之后,素材合成程序会依据相关要求来获取所需素材,实现操作指令的快速相应,源素材会通过收录系统和中心存储系统来获取,并且将各类源素材整合成一个完整的节目文件。由于收录系统和中心存储系统需要向外界提供源素材,为了确保各项素材获取的便利,需要将收录系统和中心存储系统与系统局域网交换机进行连接。
1.3 功能设计
1.3.1 素材合成端功能模块
1.3.1.1 控制命令接收处理模块
由于在制作电视节目的过程中会运用到不同的节目文件,而节目文件的制作合成则需要借助演播室播控系统的调度与控制,鉴于这种情况,素材合成端应当能够对演播室发出的各项操作指令做好准确的接收。演播室播控系统运用了UDP的方式来发送各项操作指令,控制命令接收处理模块会处理各项指令,并且分析指令的具体要求,以便于快速展现指令要求的各项操作。鉴于演播室播控系统需要对素材合成程度状态有着实时、全面的掌握,分析节目合成表单任务的完成质量,可以将这个模块中获取素材合成程序状态与其他控制查询命令进行区分处理,便于保持程序的规范性和稳定性。
1.3.1.2 节目合成表单接收解析模块
电视台在制作电视节过程中通常会涉及到较大的制作量,并且节目类型较为繁多,因此工作内容较为丰富。鉴于这种情况,演播室所做的节目合成表单也会包含更多的细节,由于表单内容的增多使表单所占的存储空间也进一步增大。在发送节目合成表单的过程中,如果采用优UDP的形式进行输送,通常会将节目合成表单进行划分,呈现出分包发送的形式。但是这样的发送方式不能够充分保证表单可以完整输送到素材合成端。为了解决这种情况,系统可以采用TCP的方式对演播室系统所发送的节目合成表单进行接收和处理。当节目合成表单接收解析模块接收到相应的信息之后,可以对节目合成表单内容进行充分的解析。并且根据解析内容进行相应的指令操作,随后借助刚才的TCP通道将解析结果反馈给演播室系统。
1.3.2 素材提供端功能模块
1.3.2.1 素材提供者调度模块
收录MSV机器与中心存储方面通常会有四个素材提供者程序在同时运行,在播出MSV机器通常会包含两个素材提供者程序,两个程序会保持同时运行。素材提供者程序在运行过程中能够和素材合成端建立管理,实现通讯效果和数据传输。当系统当中有很多素材合成程序需要与素材提供者建立关系,寻求合成素材的获取,提供端的信息是需要及时进行相应的调度,否则这些素材合成程序的连接请求与数据传输将呈现出排队等待的状态。素材提供端会根据相应的程序对其一次提供相应的资料,这种情况会拖慢节目制作工作的进度,使节目制作所需的时间不断延长。为了达到这样的目的,素材提供者调度模块需要做好调度工作,在同时接收到多个素材提供者的连接申请的时候,素材提供调度模块可以根据素材提供者的相应序号进行一定的调度,合理处理连接和数据传输请求。
1.3.2.2 素材提供者监控模块
素材提供者在素材提供端的状态通常为空闲、预占和使用三种状态[4]。当素材提供者保持空闲状态的时候,可以及时接受素材合成程序的连接性,就并且能够快速与素材合成程序建立数据连接通道,实现数据的传输。当素材提供者处于预占状态的时候,表明素材提供者被其他的素材合成程序预先占用,尚未完成数据的传输,此时需要进行一段时间的等待。如果素材提供者保持使用状态时,则是由于素材提供者已经和其他素材合成程序产生了连接关系,并且处于数据传输的过程中。当数据传输任务完成或者失败之后,素材提供者的状态便会重新恢复为空闲状态。但是在实际情况下,素材提供端还可能会因异常情况影响到素材提供和数据传输。第一种情况为素材提供者被申请预占之后,在等待了很长时间之后仍然没有得到相应,不能够与素材提供者建立关联关系。另一种情况是运行状态的时候发生的,素材提供者显示为运行状态。在经历了一段时间之后,文件迁移证后没有发生变化。素材提供者监控模块通常可以对这两种情况进行监视和处理。
2 系统详细设计与实现
2.1 素材合成端详细设计与实现
从图1中系统拓扑结构图可以得知,素材合成端不仅需要接受演播室发送出的节目合成表单,还需要及时接受演播室播控系统发送出的操作指令。图2为素材合成程序的控制命令接收处理模块对播控系统发送的操作指令进行接收与处理的流程图。
图2:控制命令接收流程图
2.1.1 控制命令接收处理模块
由于演播室端发送的操作指令通常为UDP方式。由于这项技术已经日渐成熟,因此UDP通信双方只需要处理好消息体的格式,就可以实现双方的数据通信。在进行通信的过程中,当接收或者处理不成功的命令时,这个模块会采取返回NAK的方式对命令进行正确的解析,当命令完成处理之后会返回ACK。对于演播室端发送出的操作指令可以划分为两种类型,一种为表单接收指令,另一种是控制查询指令。在接收到查询指令之后,系统会依据控制查询命令的相应要求进行处理,完成处理工作之后,会将处理分析结果进行反馈,将其输送到演播室端当中。在处理分析表单接收命令的时候,这个处理流程具有一定的复杂程度,需要在接收命令之后由处理模块来生成合成表单事件,并且由节目合成表单接收解析模块对数据通信进行初始化操作。
在完成了控制命令的接收工作之后,需要对控制命令进行相应的处理工作再进行处理,工作的过程中,通常会由素材合成程序生成一个固定。接收播放控制系统命令线程。以及处理接收命令的线程。但是传统的素材合成程序结构存在一定的缺陷不能够得到理想的处理效果,因此需要对素材合成程序结构进行一定的改进。在改进后的素材合成程序结构相比于原来的结构,在原有的基础上添加了一个命令调度线程和状态组。
2.1.2 节目合成表单接收解析处理模块
在节目合成表单接收模块下,新线程在完成创建之后线程会处于运行状态。控制命令接收模块会决定线程接收节目合成表单的时间,因此会涉及到线程之间的通信。线程在获取节目表单的过程中会需要获取节目合成表单的总长度,程序会以4kb为单位对数据进行接收,随后将接收到的数据进行重新组装,实现节目合成表单都接收。当完成节目合成表单接收工作之后,节目合成表单接收子模块会将其传递给解析子模块。在解析模块进行表单的解析操作的时候,需要向演播室端来反馈处理结果。将表单反馈数据分别设置为0和1。当表单为正确的时候,可以向演播室端反馈数值1。当表单为错误情况的时候,或者表单内容无法实现解析,则需要反馈数值为0。
2.2 素材提供端详细设计与实现
2.2.1 素材提供者调度模块
素材提供者与素材提供者调度监控程序两种程序具有一定的差别。当素材提供者调度监控程序发出了素材提供端发出连接请求的时候,一般情况下会关系到进程间的通信。系统在此时会运用共享内存的方式来实现两者之间的通信。素材提供者调度模块会按照素材提供端对于素材提供者容纳情况来进行共享内存的构建。一般情况下,素材提供端最多可以容纳10个素材提供者,但是一般情况下会将默认数量设定为4。共享内存会将素材提供者的状态情况进行详细地记录,并且将其存储在相对应的内存单元当中进行保存。在这个过程中,素材提供者调度模块主要是进行共享内存的创建以及素材提供者的管理调度。
2.2.2 素材提供者监控模块
由于素材提供端可能会出现异常情况影响到节目文件的制作合成,因此需要运用素材提供监控模块会异常情况进行处理。为了便于系统使用者能够随时掌握素材提供者的具体状态,素材监控模块需要将各个素材提供者的状态情况显示在调度监控程序界面上,并且每间隔1s刷新一次页面。素材提供者监控模块可从内存单元中掌握素材提供者的具体状态,并且将其与界面显示的状态进行对比,如果两种结果存在差别,系统需要及时更新页面。如果两种结果保持一致,系统需要采取进一步的处理。系统可以为各个素材提供者设定状态技术变量,当素材提供者状态发生变化时,素材计数变量就会进行计数。
3 结束语
为了保障网络化的电视节目制作合成系统的设计,使其能顺利实现,需要正确掌握节目制作合成系统的组成,制定出系统任务与目标,对系统结构进行合理的设计。在功能设计方面,将素材合成端功能模块与素材提供端功能模块作为重点研究内容,针对当前存在的问题制定解决措施,促进网络化的电视节目制作合成系统的设计与实现。