具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
视联网是网络发展的重要里程碑,是一个实时网络,能够实现高清视频实时传输,将众多互联网应用推向高清视频化,高清面对面。
视联网采用实时高清视频交换技术,可以在一个网络平台上将所需的服务,如高清视频会议、视频监控、智能化监控分析、应急指挥、数字广播电视、延时电视、网络教学、现场直播、VOD点播、电视邮件、个性录制(PVR)、内网(自办)频道、智能化视频播控、信息发布等数十种视频、语音、图片、文字、通讯、数据等服务全部整合在一个系统平台,通过电视或电脑实现高清品质视频播放。
为使本领域技术人员更好地理解本发明实施例,以下对视联网进行介绍:
视联网所应用的部分技术如下所述:
网络技术(Network Technology)
视联网的网络技术创新改良了传统以太网(Ethernet),以面对网络上潜在的巨大视频流量。不同于单纯的网络分组包交换(Packet Switching)或网络电路交换(CircuitSwitching),视联网技术采用Packet Switching满足Streaming需求。视联网技术具备分组交换的灵活、简单和低价,同时具备电路交换的品质和安全保证,实现了全网交换式虚拟电路,以及数据格式的无缝连接。
交换技术(Switching Technology)
视联网采用以太网的异步和包交换两个优点,在全兼容的前提下消除了以太网缺陷,具备全网端到端无缝连接,直通用户终端,直接承载IP数据包。用户数据在全网范围内不需任何格式转换。视联网是以太网的更高级形态,是一个实时交换平台,能够实现目前互联网无法实现的全网大规模高清视频实时传输,将众多网络视频应用推向高清化、统一化。
服务器技术(Server Technology)
视联网和统一视频平台上的服务器技术不同于传统意义上的服务器,它的流媒体传输是建立在面向连接的基础上,其数据处理能力与流量、通讯时间无关,单个网络层就能够包含信令及数据传输。对于语音和视频业务来说,视联网和统一视频平台流媒体处理的复杂度比数据处理简单许多,效率比传统服务器大大提高了百倍以上。
储存器技术(Storage Technology)
统一视频平台的超高速储存器技术为了适应超大容量和超大流量的媒体内容而采用了最先进的实时操作系统,将服务器指令中的节目信息映射到具体的硬盘空间,媒体内容不再经过服务器,瞬间直接送达到用户终端,用户等待一般时间小于0.2秒。最优化的扇区分布大大减少了硬盘磁头寻道的机械运动,资源消耗仅占同等级IP互联网的20%,但产生大于传统硬盘阵列3倍的并发流量,综合效率提升10倍以上。
网络安全技术(Network Security Technology)
视联网的结构性设计通过每次服务单独许可制、设备与用户数据完全隔离等方式从结构上彻底根除了困扰互联网的网络安全问题,一般不需要杀毒程序、防火墙,杜绝了黑客与病毒的攻击,为用户提供结构性的无忧安全网络。
服务创新技术(Service Innovation Technology)
统一视频平台将业务与传输融合在一起,不论是单个用户、私网用户还是一个网络的总合,都不过是一次自动连接。用户终端、机顶盒或PC直接连到统一视频平台,获得丰富多彩的各种形态的多媒体视频服务。统一视频平台采用“菜谱式”配表模式来替代传统的复杂应用编程,可以使用非常少的代码即可实现复杂的应用,实现“无限量”的新业务创新。
视联网的组网如下所述:
视联网是一种集中控制的网络结构,该网络可以是树型网、星型网、环状网等等类型,但在此基础上网络中需要有集中控制节点来控制整个网络。
如图1所示,视联网分为接入网和城域网两部分。
接入网部分的设备主要可以分为3类:节点服务器,接入交换机,终端(包括各种机顶盒、编码板、存储器等)。节点服务器与接入交换机相连,接入交换机可以与多个终端相连,并可以连接以太网。
其中,节点服务器是接入网中起集中控制功能的节点,可控制接入交换机和终端。节点服务器可直接与接入交换机相连,也可以直接与终端相连。
类似的,城域网部分的设备也可以分为3类:城域服务器,节点交换机,节点服务器。城域服务器与节点交换机相连,节点交换机可以与多个节点服务器相连。
其中,节点服务器即为接入网部分的节点服务器,即节点服务器既属于接入网部分,又属于城域网部分。
城域服务器是城域网中起集中控制功能的节点,可控制节点交换机和节点服务器。城域服务器可直接连接节点交换机,也可直接连接节点服务器。
由此可见,整个视联网络是一种分层集中控制的网络结构,而节点服务器和城域服务器下控制的网络可以是树型、星型、环状等各种结构。
形象地称,接入网部分可以组成统一视频平台(虚线圈中部分),多个统一视频平台可以组成视联网;每个统一视频平台可以通过城域以及广域视联网互联互通。
视联网设备分类
1.1本发明实施例的视联网中的设备主要可以分为3类:服务器,交换机(包括以太网网关),终端(包括各种机顶盒,编码板,存储器等)。视联网整体上可以分为城域网(或者国家网、全球网等)和接入网。
1.2其中接入网部分的设备主要可以分为3类:节点服务器,接入交换机(包括以太网网关),终端(包括各种机顶盒,编码板,存储器等)。
各接入网设备的具体硬件结构为:
节点服务器:
如图2所示,主要包括网络接口模块201、交换引擎模块202、CPU模块203、磁盘阵列模块204;
其中,网络接口模块201,CPU模块203、磁盘阵列模块204进来的包均进入交换引擎模块202;交换引擎模块202对进来的包进行查地址表205的操作,从而获得包的导向信息;并根据包的导向信息把该包存入对应的包缓存器206的队列;如果包缓存器206的队列接近满,则丢弃;交换引擎模202轮询所有包缓存器队列,如果满足以下条件进行转发:1)该端口发送缓存未满;2)该队列包计数器大于零。磁盘阵列模块204主要实现对硬盘的控制,包括对硬盘的初始化、读写等操作;CPU模块203主要负责与接入交换机、终端(图中未示出)之间的协议处理,对地址表205(包括下行协议包地址表、上行协议包地址表、数据包地址表)的配置,以及,对磁盘阵列模块204的配置。
接入交换机:
如图3所示,主要包括网络接口模块(下行网络接口模块301、上行网络接口模块302)、交换引擎模块303和CPU模块304;
其中,下行网络接口模块301进来的包(上行数据)进入包检测模块305;包检测模块305检测包的目地地址(DA)、源地址(SA)、数据包类型及包长度是否符合要求,如果符合,则分配相应的流标识符(stream-id),并进入交换引擎模块303,否则丢弃;上行网络接口模块302进来的包(下行数据)进入交换引擎模块303;CPU模块204进来的数据包进入交换引擎模块303;交换引擎模块303对进来的包进行查地址表306的操作,从而获得包的导向信息;如果进入交换引擎模块303的包是下行网络接口往上行网络接口去的,则结合流标识符(stream-id)把该包存入对应的包缓存器307的队列;如果该包缓存器307的队列接近满,则丢弃;如果进入交换引擎模块303的包不是下行网络接口往上行网络接口去的,则根据包的导向信息,把该数据包存入对应的包缓存器307的队列;如果该包缓存器307的队列接近满,则丢弃。
交换引擎模块303轮询所有包缓存器队列,在本发明实施例中分两种情形:
如果该队列是下行网络接口往上行网络接口去的,则满足以下条件进行转发:1)该端口发送缓存未满;2)该队列包计数器大于零;3)获得码率控制模块产生的令牌;
如果该队列不是下行网络接口往上行网络接口去的,则满足以下条件进行转发:1)该端口发送缓存未满;2)该队列包计数器大于零。
码率控制模块208是由CPU模块204来配置的,在可编程的间隔内对所有下行网络接口往上行网络接口去的包缓存器队列产生令牌,用以控制上行转发的码率。
CPU模块304主要负责与节点服务器之间的协议处理,对地址表306的配置,以及,对码率控制模块308的配置。
以太网协转网关:
如图4所示,主要包括网络接口模块(下行网络接口模块401、上行网络接口模块402)、交换引擎模块403、CPU模块404、包检测模块405、码率控制模块408、地址表406、包缓存器407和MAC添加模块409、MAC删除模块410。
其中,下行网络接口模块401进来的数据包进入包检测模块405;包检测模块405检测数据包的以太网MAC DA、以太网MAC SA、以太网length or frame type、视联网目地地址DA、视联网源地址SA、视联网数据包类型及包长度是否符合要求,如果符合则分配相应的流标识符(stream-id);然后,由MAC删除模块410减去MAC DA、MAC SA、length or frame type(2byte),并进入相应的接收缓存,否则丢弃;
下行网络接口模块401检测该端口的发送缓存,如果有包则根据包的视联网目地地址DA获知对应的终端的以太网MAC DA,添加终端的以太网MAC DA、以太网协转网关的MACSA、以太网length or frame type,并发送。
以太网协转网关中其他模块的功能与接入交换机类似。
终端:
主要包括网络接口模块、业务处理模块和CPU模块;例如,机顶盒主要包括网络接口模块、视音频编解码引擎模块、CPU模块;编码板主要包括网络接口模块、视音频编码引擎模块、CPU模块;存储器主要包括网络接口模块、CPU模块和磁盘阵列模块。
1.3城域网部分的设备主要可以分为2类:节点服务器,节点交换机,城域服务器。其中,节点交换机主要包括网络接口模块、交换引擎模块和CPU模块;城域服务器主要包括网络接口模块、交换引擎模块和CPU模块构成。
2、视联网数据包定义
2.1接入网数据包定义
接入网的数据包主要包括以下几部分:目的地址(DA)、源地址(SA)、保留字节、payload(PDU)、CRC。
如下表所示,接入网的数据包主要包括以下几部分:
DA |
SA |
Reserved |
Payload |
CRC |
其中:
目的地址(DA)由8个字节(byte)组成,第一个字节表示数据包的类型(例如各种协议包、组播数据包、单播数据包等),最多有256种可能,第二字节到第六字节为城域网地址,第七、第八字节为接入网地址;
源地址(SA)也是由8个字节(byte)组成,定义与目的地址(DA)相同;
保留字节由2个字节组成;
payload部分根据不同的数据报的类型有不同的长度,如果是各种协议包的话是64个字节,如果是单组播数据包话是32+1024=1056个字节,当然并不仅仅限于以上2种;
CRC有4个字节组成,其计算方法遵循标准的以太网CRC算法。
2.2城域网数据包定义
城域网的拓扑是图型,两个设备之间可能有2种、甚至2种以上的连接,即节点交换机和节点服务器、节点交换机和节点交换机、节点交换机和节点服务器之间都可能超过2种连接。但是,城域网设备的城域网地址却是唯一的,为了精确描述城域网设备之间的连接关系,在本发明实施例中引入参数:标签,来唯一描述一个城域网设备。
本说明书中标签的定义和MPLS(Multi-Protocol Label Switch,多协议标签交换)的标签的定义类似,假设设备A和设备B之间有两个连接,那么数据包从设备A到设备B就有2个标签,数据包从设备B到设备A也有2个标签。标签分入标签、出标签,假设数据包进入设备A的标签(入标签)是0x0000,这个数据包离开设备A时的标签(出标签)可能就变成了0x0001。城域网的入网流程是集中控制下的入网过程,也就意味着城域网的地址分配、标签分配都是由城域服务器主导的,节点交换机、节点服务器都是被动的执行而已,这一点与MPLS的标签分配是不同的,MPLS的标签分配是交换机、服务器互相协商的结果。
如下表所示,城域网的数据包主要包括以下几部分:
DA |
SA |
Reserved |
标签 |
Payload |
CRC |
即目的地址(DA)、源地址(SA)、保留字节(Reserved)、标签、payload(PDU)、CRC。其中,标签的格式可以参考如下定义:标签是32bit,其中高16bit保留,只用低16bit,它的位置是在数据包的保留字节和payload之间。
基于视联网的上述特性,本发明实施例的核心构思之一为提出一种录播方法,以提高视联网录播系统的可靠性以及稳定性。
参照图5,示出了本发明的一种录播方法实施例的步骤流程图,该方法可以应用于视联网中的管理设备,具体可以包括如下步骤:
步骤501,若所述管理设备发生重启事件,则从录播设备端获取与当前录播会议对应的第一会议设置信息以及目标标识信息。
具体的,在本发明的实施例中,管理设备中安装有帕米尔客户端,帕米尔客户端通过调用底层的媒体合成模块控制视联网中的录播设备执行录播操作。在本发明的实施例中,管理设备可以以服务器的形式存在于视联网中。
管理设备发生故障并重启后,可通过8f85协议生成会议设置信息查询请求以及目标标识信息查询请求,并发送至录播设备。录播设备响应上述请求,并通过8785协议向管理设备返回会议设置信息响应和目标标识信息响应,其中,会议设置信息响应中携带有当前正在进行的一个或一个以上录播会议对应的会议设置信息(即本发明实施例中的第一会议设置信息),目标标识信息响应中携带有管理设备所需的目标标识信息。
在本发明的一个优选的实施例中,目标标识信息包括但不限于:虚拟终端信息、会议主席对应的MAC地址、媒体合成终端信息。其中,所述虚拟终端、所述会议主席对应的MAC地址以及所述媒体合成终端信息均用于唯一标识所述当前录播会议。
步骤502,若检索到数据库列表中存在所述目标标识信息,则从所述数据库列表中提取与所述目标标识信息对应的第二会议设置信息。
具体的,在本发明的实施例中,管理设备根据获取到的目标标识信息,检索数据库列表中是否存在该目标标识信息。在本发明的实施例中,数据库列表可存放于后台数据库服务器中。
在管理设备检索到数据库列表中存在目标标识信息的情况下,从数据库列表中提取出于目标标识信息对应的会议设置信息,即本发明实施例中的第二会议设置信息。
在本发明的实施例中,若数据库列表中未查询到目标标识信息,则确认录播系统发生错误或数据库发生错误,向操作人员告警。
步骤503,对比所述第一会议设置信息与所述第二会议设置信息。
具体的,在本发明的实施例中,管理设备将获取到的第一会议设置信息与第二会议设置信息进行对比,检测第一会议设置信息与第二会议设置信息是否一致。若一致,则可确定当前正在进行录播的会议与管理设备重启之前的录播会议为同一录播会议,并且,在管理设备重启过程中,录播会议的设置信息未发生改变,即确定当前录播会议正常。否则,确定录播会议失败。
步骤504,依据对比结果,若确定所述当前录播会议正常,则根据所述第二会议设置信息,对所述当前录播会议执行录播管理操作。
具体的,在本发明的实施例中,管理设备依据对比结果,进行相应的后续操作。即,若确定当前录播会议正常,则管理设备可根据第二会议设置信息,迅速接管当前录播会议,并对当前录播会议执行录播管理操作。
在本发明的实施例中,若确定当前录播异常,则管理设备向录播设备发送通知录播请求,并向操作人员告警。
综上所述,本发明实施例中的技术方案,通过若所述管理设备发生重启事件,则从录播设备端获取与当前录播会议对应的第一会议设置信息以及目标标识信息;若检索到数据库列表中存在所述目标标识信息,则从所述数据库列表中提取与所述目标标识信息对应的第二会议设置信息;对比所述第一会议设置信息与所述第二会议设置信息;依据对比结果,若确定所述当前录播会议正常,则根据所述第二会议设置信息,对所述当前录播会议执行录播管理操作。从而使管理设备在发生重启事件后,能够在确认当前录播会议的会议设置信息与重启之前的录播会议设置信息无偏差的情况下,迅速接管正在进行的录播会议,有效地提高了视联网录录播系统的可靠性、以及稳定性,进而提升了用户体验。
此外,在本发明的一个优选的实施例中,目标标识信息包括以下至少之一:
虚拟终端信息、会议主席对应的MAC地址、媒体合成终端信息;
其中,虚拟终端、会议主席对应的MAC地址以及媒体合成终端信息均用于唯一标识当前录播会议。
在本发明的一个优选的实施例中,方法还包括:
根据接收到的会议设置指令,向录播设备发送录播执行请求,以使录播设备根据录播执行请求中携带的第二会议设置信息执行录播操作;以及,
根据会议设置指令,生成会议标识信息,并获取目标标识信息;
将目标标识信息、会议标识信息以及第二会议设置信息对应写入数据库列表中。
在本发明的一个优选的实施例中,方法还包括:
通过向录播设备发送状态查询请求,获取录播设备的录播状态信息;
根据录播状态信息,判断录播设备的录播状态是否正常;
若否,则向录播设备发送停止录播请求,并删除数据库列表中记录的第二会议设置信息以及目标标识信息。
在本发明的一个优选的实施例中,按照以下方法判断当前录播会议是否正常,具体包括:
若第一会议设置信息与第二会议设置信息一致,则确定当前录播会议正常;
否则,确定当前录播会议失败,并向录播设备发送停止录播请求。
在本发明的一个优选的实施例中,第一会议设置信息与第二会议设置信息包括:
当前录播会议对应的录制文件信息、分屏模式信息、参会成员信息以及与参会成员信息对应的媒体合成终端信息。
为了使本领域技术人员更好的理解本发明实施例中的技术方案,下面以具体实施例进行详细阐述。
参照图6,示出了本发明的一种录播方法实施例的具体步骤流程图,该方法可以应用于视联网中的管理设备,具体可以包括如下步骤:
步骤601,录播准备。
具体的,在本发明的实施例中,用户向管理设备发送指令,以启动帕米尔终端。帕米尔终端启动后,显示操作界面。用户可通过在操作界面上进行相应的操作,以根据实际需求向帕米尔客户端发送设置指令,设置内容包括但不限于:录制文件信息、分屏模式信息、参会成员信息以及与参会成员信息对应的媒体合成终端信息。
如图7所示,为本发明实施例中的网络连接示意图。安装有帕米尔客户端的管理设备与录播设备和数据库服务器进行通信连接,其中,在本发明的实施例中,录播设备包括但不限于:录播系统中的录播服务器以及录播存储服务器。以及,录播服务器与多个终端进行通信连接。
在本实施例中,用户期望建立录播会议,并通过在操作界面上进行点击、拖拽等操作,向管理设备发送会议设置指令,在本实施例中,会议设置指令内容包括:设置录制文件名称(即本发明实施例中的录制文件信息),以及,指示终端A为会议主席,终端B、终端C为发言人,终端D、终端E为参会方(即本发明实施例中的参会成员信息);以及,终端对应的音频合成规则进行设定(即本发明实施例中媒体合成终端信息)。在本发明的实施例中,每个终端在视联网录播服务器中对应有媒体合成模块(为区分管理设备中的媒体合成模块,以下将视联网录播服务器中的媒体合成模块简称合成模块),合成模块用于根据用户设置的音频合成规则,执行音频合成操作,并将合成后的音频发送给对应的终端。本实施例中仅以音频为例进行详细阐述,视频会议录播方式与音频相同,此处不赘述。
在本实施例中,用户通过输入会议设置指令指示终端A为音频输入端,即终端A仅输出音频,而不接收其他终端输入的音频;指示终端B、终端C在发言时,不接收自身的音频,但是可接收其他发言人的音频;指示终端D、终端E禁止输入音频,仅能接收其他所有发言人输入的音频。
用户点击操作界面的开始录制按钮,以触发录播流程。
管理设备检测到作用于开始录制按钮的触摸操作,则启动录播流程。具体的,帕米尔客户端以广播方式向已连接的录播服务器发送空闲录播服务器查询指令。
具体的,在视联网中,帕米尔客户端可以通过8f85协议生成各类查询指令,该8f85协议的规范可以如下表所示:
8f85协议由管理设备发出,长度为32W的短信令,用于管理设备做出一些指定操作(包括会议角色设置,录播开始等)。具体将在下面的实施例中做出详细说明。
其中,在本发明的实施例中,子协议类型及指令内容具体包括:
1)0x0040,用于查询终端的录制任务状态。
指令内容:无。
2)0x100B,用于查询会议名称。
指令内容:无。
3)0x100C,用于查询录制文件名称。
指令内容:无。
4)0x1015-0x1018,用于查询第一、第二、第三、第四路视频使用的终端号和终端名称。
指令内容:无。
5)0x1019-0x101C,查询第一、第二、第三、第四路音频使用的终端号和终端名称。
指令内容:无。
6)0x100D,查询分屏模式。
指令内容:无。
在本实施例中,管理设备向空闲录播服务器查询指令(子协议类型为0x0001)。录播服务器接收到该指令后,空闲录播服务器向管理设备返回空闲查询响应。
具体的,在视联网中,录播设备可以通过8785协议生成各类查询反馈指令,即,录播设备通过8785协议生成的查询反馈指令响应管理设备发来的8f85协议指令。该8785协议的规范可以如下表所示:
8785协议由录播设备,具体由录播存储服务器发出,并由录播服务器转发至管理设备,长度为32W的短信令。具体将在下面的实施例中做出详细说明。
其中,在本发明的实施例中,子协议类型及指令内容具体包括:
1)0x0041:查询终端的录制任务状态指令0x0040的返回值。
WORD[0]:0:空闲,无录制任务。
1:正常录制中。
2:录制异常停止。
WORD[1]:WORD[0]为0时:无数据。
WORD[0]为1或2时:为当前正在录制中的任务的命令序列标识符。
WORD[2]:WORD[1]为0或1时:无数据。
WORD[1]为2时:表示录制异常停止,其中,错误码包括:0x0001:未知错误,录制结束;0x0002:会议终止,录制结束;0x0003:视/音频数据接收超时,录制结束;0x0004:录播服务器错误,录制结束;0x0005:与视联网服务器心跳超时,录制结束;0x0006:虚拟终端关闭(比如用户退出存储网关程序),录制结束;0x0007:系统性能下降(比如磁盘满了,或者系统资源占用太高),录制结束。
2)0x100B:查询会议名称指令0x100B的返回值。
指令内容:GBK编码的会议名称。
3)0x100C:查询录制文件名称0x100C的返回值。
指令内容:GBK编码的会议名称。
4)0x1015-0x1018:查询第一、第二、第三、第四路视频使用的终端号和终端名称指令的返回值。
指令内容:
WORD[0]:终端号。
WORD[1]..[22]:GBK编码的终端名称。
5)0x1019-0x101C:查询第一、第二、第三、第四路音频使用的终端号和终端名称指令的返回值。
指令内容:
WORD[0]:终端号。
WORD[1]..[22]:GBK编码的终端名称。
6)0x100D:查询分屏模式0x100D指令的返回值。
指令内容:
WORD[0]:帕米尔客户端的分屏模式。
具体的,如图7所示,本实施例中,录播服务器向管理设备返回空闲查询响应(子协议类型:0x0002)。
管理设备接收到空闲查询响应后,与该录播服务器进行通信连接。
步骤602,根据接收到的会议设置指令,向所述录播设备发送录播执行请求,以使所述录播设备根据所述录播执行请求中携带的所述第二会议设置信息执行录播操作。
具体的,在本发明的实施例中,管理设备根据会议设置指令,即上述设置内容(即本发明实施例中的第二会议设置信息),向录播设备发送录播执行请求,该录播执行请求中携带有相关的会议设置信息。
具体的,管理服务器向录播服务器发送的执行请求包括多个8f85数据包,每个数据包中包括不同的子协议类型以及内容,用于指示录播服务器根据第二会议设置信息,执行录播操作。发送的数据包类型以及对应的子协议类型包括但不限于:
录制文件名称(子协议类型:0x000C),该录制文件名称为录播存储器存储录播会议时使用的文件名称;以及,分屏模式(子协议类型:0x000D);第一、第二、第三、第四路音频使用的终端号和终端名称(子协议类型:0x0019-0x001C)。
在本发明的实施例中,管理设备可向录播服务器发送开始录制请求(子协议类型:0x001F),录播服务器接收开始录制请求,并返回录制响应(子协议类型:0x0020),其中,若录播服务器录制过程启动成果,则提示用户开始录制,若失败,则通过返回的录制响应提示用户开始录制失败及失败原因。
在本发明的实施例中,录播存储服务器在确认开始录制之后,生成与该录播任务对应的录播服务虚拟终端号(即本发明实施例中的虚拟终端信息),该录播服务虚拟终端号可用于唯一确认该录播任务。其次,在本发明的实施例中,录播服务器中与每个会议终端对应的合成模块均具有媒体合成终端号(即本发明实施例中的媒体合成终端信息),该媒体合成终端号同样可用于唯一确认该录播任务。在本发明的实施例中,录播会议中的会议主席的MAC地址,同样可用于唯一确认录播任务。需要说明的是:管理设备需要从录播服务器端获取录播服务器虚拟终端号,而主席MAC地址、媒体合成终端号分别存储于录播服务器与管理服务器的内存中。
步骤603,根据所述会议设置指令,生成会议标识信息,并获取所述目标标识信息。
具体的,在本发明的实施例中,管理设备根据会议设置指令,生成与本次录播任务对应的会议标识信息,即会议ID。并获取目标标识信息。
具体的,在本发明的实施例中,目标标识信息包括但不限于:虚拟终端信息、会议主席对应的MAC地址、媒体合成终端信息。其中,虚拟终端、会议主席对应的MAC地址以述媒体合成终端信息均用于唯一标识录播任务,即当前录播会议。在本发明的一个实施例中,目标标识信息可以包括上述信息中的任意一个或一个以上信息。
在本实施例中,以目标标识信息为虚拟终端信息为例进行详细阐述。
步骤604,将所述目标标识信息、会议标识信息以及所述第二会议设置信息对应写入所述数据库列表中。
具体的,在本发明的实施例中,管理终端将获取到的虚拟终端信息(即本发明实施例中的目标标识信息)、会议ID以及第二会议设置信息对应写入数据库服务器的数据库列表中。
在本发明的一个优选的实施例中,数据库服务器可建立索引列表,以目标标识信息为索引对象。即,管理设备可通过检索索引对象,查找到是否存在于索引对象,即目标标识信息对应的第二会议设置信息。
步骤605,通过向录播设备发送状态查询请求,获取录播设备的录播状态信息。
具体的,在本发明的实施例中,管理设备在录播开始后,以预定时间间隔向录播服务器发送状态查询请求,子协议类型为:0x0040。
录播设备通过子协议类型0x0041响应0x0040,协议内容如上文所述,此处不赘述。
管理设备接收录播服务器返回的状态查询响应,从而获取录播设备的录播状态信息。
步骤606,根据录播状态信息,判断录播设备的录播状态是否正常。
具体的,在本发明的实施例中,管理设备根据获取到的录播状态信息,即,录播设备返回的状态查询响应中的子协议类型及内容,判断录播设备的录播状态是否正常。
若正常,则继续进行录播过程。
若录播设备发生异常,则录播设备返回的状态查询响应,即8785数据包会携带异常类型及原因。管理设备接收该数据包,解析异常原因,并在操作界面中显示。步骤进入607。
步骤607,向录播设备发送停止录播请求,并删除数据库列表中记录的第二会议设置信息以及目标标识信息。
具体的,在本发明的实施例中,若管理设备检测到录播设备的录播状态异常,则向录播设备发送停止录播请求。录播设备接收该请求,并停止当前的录播操作。
同时,管理设备删除数据库列表中记录的与录播任务相关的会议信息,包括:第二会议设置信息以及目标标识信息。在本发明的一个实施例中,删除内容还包括会议ID等相关信息。
在本发明的实施例中,若管理设备发生重启事件,则方法进入步骤608。
步骤608,从录播设备端获取与当前录播会议对应的第一会议设置信息以及目标标识信息。
管理设备发生故障并重启后,管理服务器向录播设备发送录制任务状态查询请求,以查询录制任务是否仍在进行当中。
在确定录制任务仍在进行当中后,管理设备科通过8f85协议生成目标标识信息查询请求。录播设备响应该请求,并返回查询响应,其中,在本实施例中,查询响应中携带有虚拟终端信息,即目标标识信息。
同时,管理设备可通过8f85协议生成会议设置信息查询请求。会议设置信息查询请求可包括多个8f85数据包,每个数据包包括不同的子协议类型和内容,用于从录播设备端获取当前正在进行的录播会议对应的会议设置。
具体的,在本发明的实施例中,会议设置信息查询请求包括但不限于:查询录制文件名称(子协议类型:0x100C);查询分屏模式(子协议类型:0x100D);查询第一、第二、第三、第四路音频使用的终端号和终端名称(子协议类型:0x1015-0x1018)。
管理设备接收来自录播设备的响应信息,并提取响应信息中携带的会议设置信息(即本发明实施例中的第一会议设置信息)。
步骤609,若检索到数据库列表中存在所述目标标识信息,则从所述数据库列表中提取与所述目标标识信息对应的第二会议设置信息。
在本实施例中,管理设备根据获取到的虚拟终端信息,对数据库列表中的索引列表进行检索,查看是否存在相同的虚拟终端信息。
若存在,则检索并提取与该虚拟终端信息对应的第二会以设置信息。
在本发明的实施例中,若数据库列表中未查询到目标标识信息,则确认录播系统发生错误或数据库发生错误,向操作人员告警。
步骤610,对比所述第一会议设置信息与所述第二会议设置信息。
具体的,在本发明的实施例中,管理设备将获取到的第一会议设置信息与第二会议设置信息进行对比,检测第一会议设置信息与第二会议设置信息是否一致。
若一致,则可确定当前正在进行录播的会议与管理设备重启之前的录播会议为同一录播会议,并且,在管理设备重启过程中,录播会议的设置信息未发生改变,即确定当前录播会议正常。否则,确定录播会议失败。
步骤610,依据对比结果,若确定所述当前录播会议正常,则根据所述第二会议设置信息,对所述当前录播会议执行录播管理操作。
具体的,在本发明的实施例中,管理设备依据对比结果,进行相应的后续操作。即,若确定当前录播会议正常,则管理设备可根据第二会议设置信息,迅速接管当前录播会议,并对当前录播会议执行录播管理操作,从而保证了录播会议在管理设备启动前后的一致性。
在本发明的实施例中,若确定当前录播异常,则管理设备向录播设备发送通知录播请求,并向操作人员告警。
综上所述,本发明实施例中的技术方案,通过若所述管理设备发生重启事件,则从录播设备端获取与当前录播会议对应的第一会议设置信息以及目标标识信息;若检索到数据库列表中存在所述目标标识信息,则从所述数据库列表中提取与所述目标标识信息对应的第二会议设置信息;对比所述第一会议设置信息与所述第二会议设置信息;依据对比结果,若确定所述当前录播会议正常,则根据所述第二会议设置信息,对所述当前录播会议执行录播管理操作。从而使管理设备在发生重启事件后,能够在确认当前录播会议的会议设置信息与重启之前的录播会议设置信息无偏差的情况下,迅速接管正在进行的录播会议,有效地提高了视联网录录播系统的可靠性、以及稳定性,进而提升了用户体验。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图8,示出了本发明的一种录播装置实施例的结构框图,该装置可以应用于视联网中的管理设备,具体可以包括如下模块:
第一获取模块801,用于若管理设备发生重启事件,则从录播设备端获取与当前录播会议对应的第一会议设置信息以及目标标识信息。
提取模块802,用于若检索到数据库列表中存在目标标识信息,则从数据库列表中提取与目标标识信息对应的第二会议设置信息。
对比模块803,用于对比第一会议设置信息与第二会议设置信息。
管理模块804,用于依据对比结果,若确定当前录播会议正常,则根据第二会议设置信息,对当前录播会议执行录播管理操作。
在本发明的一个优选的实施例中,目标标识信息包括以下至少之一:
虚拟终端信息、会议主席对应的MAC地址、媒体合成终端信息;
其中,虚拟终端、会议主席对应的MAC地址以及媒体合成终端信息均用于唯一标识当前录播会议。
在本发明的一个优选的实施例中,装置还包括:
发送模块(图中未示出),用于根据接收到的会议设置指令,向录播设备发送录播执行请求,以使录播设备根据录播执行请求中携带的第二会议设置信息执行录播操作;以及,
生成模块(图中未示出),用于根据会议设置指令,生成会议标识信息,并获取目标标识信息;
写入模块(图中未示出),用于将目标标识信息、会议标识信息以及第二会议设置信息对应写入数据库列表中。
在本发明的一个优选的实施例中,装置还包括:
第二获取模块(图中未示出),用于通过向录播设备发送状态查询请求,获取录播设备的录播状态信息;
判断模块(图中未示出),用于根据录播状态信息,判断录播设备的录播状态是否正常;
删除模块(图中未示出),用于若否,则向录播设备发送停止录播请求,并删除数据库列表中记录的第二会议设置信息以及目标标识信息。
在本发明的一个优选的实施例中,对比模块803按照以下方法判断当前录播会议是否正常,具体包括:
若第一会议设置信息与第二会议设置信息一致,则确定当前录播会议正常;
否则,确定当前录播会议失败,并向录播设备发送停止录播请求。
在本发明的一个优选的实施例中,第一会议设置信息与第二会议设置信息包括:
当前录播会议对应的录制文件信息、分屏模式信息、参会成员信息以及与参会成员信息对应的媒体合成终端信息。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种录播方法及装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。