CN113259621B - 一种云会议分步录制方法及*** - Google Patents
一种云会议分步录制方法及*** Download PDFInfo
- Publication number
- CN113259621B CN113259621B CN202110799447.XA CN202110799447A CN113259621B CN 113259621 B CN113259621 B CN 113259621B CN 202110799447 A CN202110799447 A CN 202110799447A CN 113259621 B CN113259621 B CN 113259621B
- Authority
- CN
- China
- Prior art keywords
- data
- conference
- recording
- conversion
- server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/14—Systems for two-way working
- H04N7/15—Conference systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/565—Conversion or adaptation of application format or content
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/14—Systems for two-way working
- H04N7/15—Conference systems
- H04N7/155—Conference systems involving storage of or access to video conference sessions
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Multimedia (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明公开了一种云会议分步录制方法及***。通过将数据录制和数据转换互相分离,对云会议的录制分为两步进行。具体包括以下步骤:包括以下步骤:数据录入:建立录制服务录制云会议过程中的源数据;将源数据录入到网络磁盘中,并同时录制数据的状态标志位;数据转换:建立数据转换服务,定时读取数据的状态标志位,一旦发现有会议开始录制,则到该会议目录去读取网络磁盘中的数据,进行云转换;把转换后的数据按特定媒体文件格式生成到网络磁盘中的特定目录中供回放下载。本发明可提升合流录制MP4的高并发率,可有效提高云会议录制过程中的异常修复能力。
Description
技术领域
本发明涉及云会议技术领域,更具体的,涉及一种云会议分步录制方法及***。
背景技术
云会议指基于云计算技术的一种高效、便捷、低成本的会议形式,可在世界各地使用多种终端方式如电话、手机、电脑、专用终端等通过共享音频、视频、终端桌面、文档、白板等进行远程沟通和远程协助。
云会议录制指的是录制从客户端和云端其他服务器发送过来的原始数据,包括控制信令数据和音视频等媒体数据并把这些数据准确的转换为可播放的媒体文件。
在云会议过程中,不只是多个视频源的数据融合,更是有桌面、文档、白板、批注、参会人说话的声音、电脑播放的声音等数据参与融合,是一个比多源视频融合更复杂的场景。
通常情况下的云录制是在云端录制服务器把接受到的数据通过实时的编解码后生成了可播放的媒体文件,但这样做存在一些难解或者解不了的问题:
问题1:数据处理的速度远慢于接受网络数据的速度时怎么处理积压数据问题;
问题2:由于服务崩溃或运维需要重启服务时,正在进行录制会议怎么办;
问题3:录制从整个***中断开一段时间之后又重新连接上时对正在录制的会议怎么处理;
问题4:极其消耗服务器性能的编解码操作影响了数据的接收,导致数据延迟、数据丢失、并发量受限。
发明内容
鉴于上述问题,本发明的目的是提供一种云会议分步录制方法,使数据录制和转换相互分离,从而提高云会议录制的可靠性。
本发明第一方面提供了一种云会议分步录制方法,包括以下步骤:
数据录入:建立录制服务录制云会议过程中的源数据;将源数据录入到网络磁盘中,并同时录制数据的状态标志位;
数据转换:建立数据转换服务,定时读取数据的状态标志位,一旦发现有会议开始录制,则到该会议目录去读取网络磁盘中的数据,进行云转换;
把转换后的数据按特定媒体文件格式生成到网络磁盘中的特定目录中供回放下载,或通过云端服务器发送给客户端进行播放。
本方案中,所述数据录入包括:
客户端发送音视频数据给云端服务器,云端服务器将接收到的音视频数据发送给录制服务器;
录制服务器添加自定义信息构造录制的数据,同时录制数据的状态标志位,然后把数据写到网络磁盘,生成会议数据文件。
本方案中,所述会议数据文件中的每一个数据是一个可读取单元,每个单元数据的头部为自定义信息;一场会对应一个会议数据文件。
本方案中,所述自定义信息的生成具体如下:
客户端发送各种会议控制指令给云端服务器,云端服务器接收控制信令后将信令发送给录制服务器;录制服务器根据信令生成自定义信息。
本方案中,所述自定义信息包括数据大小、数据类型、各场会议的ID,会议中各路视频的ID,以及每路视频在显示时所分布的位置等。
本方案中,所述数据转换具体为:
数据转换服务器定时读取数据的状态标志位,一旦发现有会议开始录制,则从网络磁盘上读取会议数据文件,并对读取的会议数据文件进行音视频编解码转换处理;
对编解码之后的数据进行MP4打包处理;
把经MP4打包处理好的每一帧数据写到网络磁盘上,生成可供回放的媒体文件,或通过云端服务器发送给客户端进行播放。
本方案中,在数据录入的同时,把源数据也录入到网络磁盘,当服务器出现异常时,在异常恢复后,在数据库中写入一异常状态标志;
启动一个定时器,定时检查数据库状态,发现出现过异常并已经结束的会议,则对该场录制重新从头转换。
本发明第二方面还提供一种云会议分步录制***,所述***包括云端服务器、录制服务器、网络磁盘、数据转换服务器、数据库;
云端服务器负责从客户端接收音视频数据,并将数据发送给录制服务器;
云端服务器还负责从数据转换服务器接收转换后的可播放媒体数据,并发送给客户端进行播放;
录制服务器负责添加自定义信息构造录制的数据,同时录制数据的状态标志位,然后把数据写到网络磁盘,生成会议数据文件;
数据转换服务器负责定时读取数据的状态标志位,一旦发现有会议开始录制,则从网络磁盘上读取会议数据文件,并对读取的会议数据文件进行音视频编解码转换处理;对编解码之后的数据进行MP4打包处理;把经MP4打包处理好的每一帧数据写到网络磁盘上,生成可供回放的媒体文件,或通过云端服务器发送给客户端进行播放。
所述数据库作为一个会议数据转换的记录节点,一场会对应一条数据库记录;异常状态标志和会议ID一一对应起来,同时对应有该场会的未转换、转换中、转换结束的标志;
当会中转换服务出现服务器宕机或者人为停止了服务或者其他导致服务中断的事件时,数据库会一直处于转换中的状态;
当服务恢复正常,重新接入会议***时,会中转换服务通过程序内部定时器检查服务器转换状态,如果发现有转换中的状态,则在数据库异常标志中记录该场会异常,并且停止对这场会议数据的转换。
本方案中,所述***还包括定时器;
所述***在数据录入的同时,把源数据也录入到网络磁盘,当服务器出现异常时,在异常恢复后,在数据库中写入一异常状态标志;
定时器用来定时检查数据库状态,发现出现过异常并已经结束的会议,则对该场录制重新从头转换。
本方案中,所述自定义信息包括数据大小、数据类型、各场会议的ID,会议中各路视频的ID,以及每路视频在显示时所分布的位置。
本方案中,所述数据转换服务器包括若干台,若干台数据转换服务器以会议位转换单位进行任务抢占,每台数据转换服务器定时检查数据转换状态,若发现可转换任务,则立即抢占;抢占后并在数据库设置抢占说明,防止其他数据转换服务器再转换这场会议。
本发明公开了一种云会议分步录制方法及***。通过将数据录制和数据转换互相分离,对云会议的录制分为两步进行。当数据的接收和转换处理分离到不同的服务器之后,由于数据接收不消耗内存也不消耗CPU,所以在高并发的时候,数据再大,只要能稍微增加数据接收服务器就能做到把所有数据正确的录制下来。数据转换服务器能增加机器则增加,不能增加则按照当前机器情况以最大的消耗最快的速度排队进行数据转换,最坏的结果就是会有一些会议由于在排队等待机器资源而稍微延迟生成回放文件,但决不会影响数据的接收,不会出现数据丢失,录制失败等问题。此外,本发明在数据录入的同时,把源数据也录入到网络磁盘,当服务器出现异常时,在异常恢复后,在数据库中写入一异常状态标志;通过定时器用来定时检查数据库状态,发现出现过异常并已经结束的会议,则对该场录制重新从头转换。可有效提高云会议录制过程中的异常修复能力。
附图说明
图1示出了一种云会议分步录制方法流程图;
图2示出了一种云会议分步录制***框图。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
图1示出了本申请一种云会议分步录制方法流程图。
如图1所示,本申请公开了一种云会议分步录制方法,包括以下步骤:
S102:数据录入:建立录制服务录制云会议过程中的源数据;将源数据录入到网络磁盘中,并同时录制数据的状态标志位;
S104:数据转换:建立数据转换服务,定时读取数据的状态标志位,一旦发现有会议开始录制,则到该会议目录去读取网络磁盘中的数据,进行云转换;
S106:把转换后的数据按特定媒体文件格式生成到网络磁盘中的特定目录中供回放下载;或通过云端服务器发送给客户端进行播放。
需要说明的是,本发明通过将数据录制和数据转换互相分离,对云会议的录制分为两步进行。所述录制指是把源数据记录到磁盘文件中,转换指的是把源数据通过编解码或者媒体文件格式封装成可播放文件存储到磁盘中。分离录制和转换,是相对于通常录制转换合为一体的而言的不一样的处理方案。
传统录制方法不说在高并发下,就是在单场会议录制情况下也是有问题的。因此,需要把数据接收和数据处理分开。要平衡数据接收和数据处理的依赖关系,通常的做法就是把这两个事情分到不同线程中去处理。使用多线程处理,在少量数据情况下应该还是可以的,但是当数据量增加时仍然存在数据被丢弃或者内存耗光的问题。通常情况下,接收网络数据是很快的,但对于要把这个数据通过编解码然后打包处理成可播放媒体文件是耗时的。
本发明通过将数据录制和数据转换互相分离,对云会议的录制分为两步进行。分离数据的录制和转换,就是把数据的录制放到一个服务,编解码转换放到另一个服务,两个服务分属不同的进程或者不同的机器,相互之间不影响。当数据的接收和转换处理分离到不同的服务器之后,由于数据接收不消耗内存也不消耗CPU,所以在高并发的时候,数据再大,只要能稍微增加数据接收服务器就能做到把所有数据正确的录制下来。数据转换服务器能增加机器则增加,不能增加则按照当前机器情况以最大的消耗最快的速度排队进行数据转换,最坏的结果就是会有一些会议由于在排队等待机器资源而稍微延迟生成回放文件,但决不会影响数据的接收,不会出现数据丢失,录制失败等问题。
根据本发明实施例,所述数据录入包括:
客户端发送音视频数据给云端服务器,云端服务器将接收到的音视频数据发送给录制服务器;
录制服务器添加自定义信息构造录制的数据,同时录制数据的状态标志位,然后把数据写到网络磁盘,生成会议数据文件。
需要说明的是,在本实施例中会议数据文件可以为conf.data,conf.data文件并非会议数据文件的固定的名称,可随时更改为其他名称,只要属于会议数据文件,皆属于本发明保护范围之类。
根据本发明实施例,所述conf.data中的每一个数据是一个可读取单元,每个单元数据的头部为自定义信息;一场会对应一个conf.data。
需要说明的是,所述录制云会议过程中的源数据。录制的数据除了收到的数据内容外,需要加入必要的录制自定义信息——数据大小,数据类型。源数据录制服务器把数据录入到网络磁盘中,一场会对应一个conf.data,即conf.data中装着整场云会议的信令和数据。在conf.data中的每个信令或数据是一个可读取单元,定义每个单元数据的头部约定字节为数据大小、数据类型。
需要说明的是,本发明采用录制服务器和数据转换服务器两个服务分开进行数据处理,但需要协同工作。它们协同的基础为共享的网络磁盘数据conf.data,协同的媒介为网络磁盘中的数据库。云会议过程中,当客户端开启录制时,源数据录制服务器把数据写到文件conf.data的同时往数据库写个已开始录制数据的状态标志位。转换服务器定时读取数据库状态标志位,一旦发现有哪一场会议已经开始录制了,则到这场会议的目录去读取conf.data数据,把读到的每一个数据拿来进行相应的媒体文件转换。整个过程相当于借助数据库来触发数据的转换处理,而以共享的网络磁盘文件conf.data作为进程间的消息和数据队列,这样就解决了一个进程中单个线程或者多个线程处理时遇到的队列满、数据丢或者机器内存耗尽的问题。
根据本发明实施例,所述自定义信息的生成具体如下:
客户端发送各种会议控制指令给云端服务器,云端服务器接收控制信令后将信令发送给录制服务器;录制服务器根据信令生成自定义信息。
根据本发明实施例,所述自定义信息包括数据大小、数据类型、各场会议的ID,会议中各路视频的ID,以及每路视频在显示时所分布的位置等。
根据本发明实施例,所述数据转换具体为:
数据转换服务器定时读取数据的状态标志位,一旦发现有会议开始录制,则从网络磁盘上读取conf.data,并对读取的conf.data进行音视频编解码转换处理;
对编解码之后的数据进行MP4打包处理;
把经MP4打包处理好的每一帧数据写到网络磁盘上,生成可供回放的媒体文件,或通过云端服务器发送给客户端进行播放。
需要说明的是,conf.data作为客户端现场采集的原始数据,长期保存于服务器。一旦在以后录制回放过程中,发现播放的MP4存在异常,则可在修改程序或者升级***之后,重新发起修复转换,把存在异常的视频修复正常。
conf.data与可回放的MP4文件分开存储,用户在客户端点击了删除操作之后只删除MP4文件,可在需要时申请恢复,服务器端可通过conf.data再次发起转换给用户恢复MP4文件。
需要说明的是,所述可供回放的媒体文件可以是MP4、FLV、HLS等媒体文件,但不局限于上述几种媒体文件,其他可实现可供回放的媒体文件也应在本发明的保护范围之内。需要说明的是,本发明通过将数据录制和数据转换互相分离,对云会议的录制分为两步进行。所述录制指是把源数据记录到磁盘文件中,转换指的是把源数据通过编解码或者媒体文件格式封装成可播放文件存储到磁盘中。分离录制和转换,是相对于通常录制转换合为一体的而言的不一样的处理方案。
传统录制方法不说在高并发下,就是在单场会议录制情况下也是有问题的。因此,需要把数据接收和数据处理分开。要平衡数据接收和数据处理的依赖关系,通常的做法就是把这两个事情分到不同线程中去处理。使用多线程处理,在少量数据情况下应该还是可以的,但是当数据量增加时仍然存在数据被丢弃或者内存耗光的问题。通常情况下,接收网络数据是很快的,但对于要把这个数据通过编解码然后打包处理成可播放媒体文件是耗时的。
本发明通过将数据录制和数据转换互相分离,对云会议的录制分为两步进行。分离数据的录制和转换,就是把数据的录制放到一个服务,编解码转换放到另一个服务,两个服务分属不同的进程或者不同的机器,相互之间不影响。当数据的接收和转换处理分离到不同的服务器之后,由于数据接收不消耗内存也不消耗CPU,所以在高并发的时候,数据再大,只要能稍微增加数据接收服务器就能做到把所有数据正确的录制下来。数据转换服务器能增加机器则增加,不能增加则按照当前机器情况以最大的消耗最快的速度排队进行数据转换,最坏的结果就是会有一些会议由于在排队等待机器资源而稍微延迟生成回放文件,但决不会影响数据的接收,不会出现数据丢失,录制失败等问题。
需要说明的是,本发明采用录制服务器和数据转换服务器两个服务分开进行数据处理,但需要协同工作。它们协同的基础为共享的网络磁盘数据conf.data,协同的媒介为网络磁盘中的数据库。云会议过程中,当客户端开启录制时,源数据录制服务器把数据写到文件conf.data的同时往数据库写个已开始录制数据的状态标志位。转换服务器定时读取数据库状态标志位,一旦发现有哪一场会议已经开始录制了,则到这场会议的目录去读取conf.data数据,把读到的每一个数据拿来进行相应的媒体文件转换。整个过程相当于借助数据库来触发数据的转换处理,而以共享的网络磁盘文件conf.data作为进程间的消息和数据队列,这样就解决了一个进程中单个线程或者多个线程处理时遇到的队列满、数据丢或者机器内存耗尽的问题。
需要说明的是,在数据转换过程中数据转换服务器需要通过读取网络磁盘上的conf.data来完成这个云会议的转换,然后再把转换后的数据按特定媒体文件格式生成到网络磁盘的特定目录中供回放下载。读取数据时,解析头部约定字节的大小,得到该数据包内容的实际大小,按这个大小读取内容。读取约定字节的数据类型,知道该数据是信令或者媒体数据。按特定类型分配处理方式实现信令和数据的处理。
根据本发明实施例,在数据录入的同时,把源数据也录入到网络磁盘,当服务器出现异常时,在异常恢复后,在数据库中写入一异常状态标志;
启动一个定时器,定时检查数据库状态,发现出现过异常并已经结束的会议,则对该场录制重新从头转换。
需要说明的是,在云会议录制过程中,存在录制单流的模式,即音频、视频、桌面等都单独录制,单独生成单份HLS文件或者单个mp4文件,这种情况下,为了无延迟给用户生成在线播放,即录制一结束就生成了在线播放提供给用户,从客户端传上来的数据都是无需再进行编码的H264视频数据,这种情况下,只需要将接受到的数据组成帧,然后按HLS或MP4标准把H264数据封装成可播放媒体文件即可。这种不消耗机器性能的录制可以把数据接收和数据处理放在一起进行处理,不需要分离数据接收和数据转换处理。但会存在其他异常情况导致的问题,如服务器网络超时导致掉线、服务崩溃重启、运维需求重启,这些情况出现后,录制服务器都会重新再连接到整个***。重新连接上之后由于可播放媒体文件是不可编辑和续写的,只能销毁之前转换的成果后重新创建新文件。显然,这样得到的结果是有问题的,针对这种情况如果不采取异常处理措施就会导致严重的客户故障。而本发明通过在数据接收并处理的同时,把源数据也录到到网络共享磁盘。当服务由异常恢复正常之后,在数据库中写入一异常状态标志。启动一个定时器,定时检查数据库状态,发现出现过异常并已经结束了的会议,则对该场会议录制重新从头转换。这样可以有效的提升录制过程中的异常修复。
根据本发明实施例,还包括:
获取云会议的等级信息;
判断所述等级信息是否为预设的高等级模式;
若是,则确定源数据传输和存储的方式为第一模式;若否,则确定源数据传输和存储的方式为第二模式。
需要说明的是,所述第一模式为加密传输和存储模式,其中源数据通过加密方式传输数据,也就是说数据进行加密之后,以密文的方式进行传输,并且在存储的时候进行加密存储。首先,需要获取云会议的等级信息,所述的等级信息为高等级、低等级,在高等级时也就意味着会议内容较为机密,为了防止第三方破解或者对信息进行截取,则需要在传输和存储时进行加密,提高了会议的机密性。如果等级为低等级,则可以采用低加密等级或者不加密的方式进行传输,从而降低因加密带来的资源消耗。
根据本发明实施例,还包括:
获取云会议的等级信息和资源占用数据;
若所述等级信息为高等级模式,则判断所述资源占用数据是否超过预设的占用阈值;
若超过,则确定源数据传输和存储的方式为第三模式;所述第三方式为通过第一加密方式进行源数据传输和通过第二加密方式进行源数据存储。
需要说明的是,在终端的资源占用较多,也就是空闲资源较为紧张时,可以实时动态调整加密的方式,首先判断云会议等级为高等级模式时,再判断资源占用数据是否超过预设的占用阈值,如果超过,则说明资源占用率较高,这时候可以调整源数据传输和存储的方式为第三模式。其中第三方式为通过第一加密方式进行源数据传输和通过第二加密方式进行源数据存储。所述的第一加密方式为低等级加密方式,第二加密方式为高等级加密方式,第一加密方式占用的资源比第二加密方式占用资源低。通过本发明的这种方式,在传输的时候采用等级低一些的加密方式可以降低会议终端的资源占用率,在服务器采用等级高一些的加密方式可以更好的确保会议文件不被第三方破解。例如,第一加密方式为8位加密方式,第二加密方式为32位加密方式。
根据本发明实施例,还包括:
获取云会议参会者的用户信息和会议信息;
根据所述用户信息和会议信息生成会议文件提取码,将所述会议文件提取码分别发送至云会议参会者端。
需要说明的是,本发明数据录入和转换之后形成的会议文件存储在服务器中,也就是存储到服务器磁盘中,以供回放或者下载播放。为了保证只有参会者可以下载会议文件,可以先获取云会议参会者的用户信息和会议信息,其中用户信息可以为ID信息,会议信息可以为会议的名称和会议开始时间,形成的提取码以用于区别用户参与不同的会议。根据所述用户信息和会议信息生成会议文件提取码可以是将用户的ID信息以及会议名称和时间信息通过特征值计算或者哈希计算得到提取码,并且通过提取码可以反向计算用户信息,具体的提取码生成可以采用现有的提取码计算方法,本发明不再一一赘述。最终将提取码发送至每个参会者端,只允许参会者端的用户进行下载和回放,防止文件泄漏,提高了会议的安全性。
根据本发明实施例,还包括:
接收会议文件提取码;
获取提取会议文件终端的用户信息;
根据所述会议文件提取码计算用户信息,与提取会议文件终端的用户信息进行比较;
若一致,则发送会议文件;若不一致,则发送警示信息。
需要说明的是,参会者在进行会议文件提取的时候,可以通过提取码反向计算用户信息,然后比较当前提取的用户信息是否与提取码的一致,如果一致,则说明是本人进行会议文件提取,如果不一致,说明提取码遭到泄漏,可能为第三方提取,因此发送警示信息至管理者端或者提取码对应的用户端。
根据本发明实施例,还包括:
接收第三方提取请求信息;
根据第三方提取请求信息获取用户信息和提取码;
根据所述提取码计算用户信息,与第三方提取请求信息中的用户信息进行比较;
若一致,则发送会议文件;若不一致,则发送警示信息。
需要说明的是,在实际会议文件提取时,往往会使用其他账号或者设备进行文件的提取,在进行文件提取时,需要发送第三方提取请求信息至服务器,其中第三方提取请求信息中包括提取的用户信息和提取码。服务器在接收到第三方提取请求信息之后分析得到用户信息和提取码,然后根据所述提取码计算用户信息,与第三方提取请求信息中的用户信息进行比较,若一致,则发送会议文件;若不一致,则发送警示信息。通过本发明的方法,可以使得用户使用不同的设备或者账号都可以进行会议文件的提取,提高了用户使用体验感。
根据本发明实施例,还包括:
获取提取会议文件失败的终端设备信息;
对失败次数进行统计;
若失败次数超过预设的失败次数阈值,则发送每次提取会议文件的关联信息至服务器;
服务器根据每次提取会议文件的关联信息进行分析,若为非正常状态,则发送警示信息。
需要说明的是,当一个设备提取多次会议文件都失败后,则需要引起警示,首先先获取终端设备信息,然后对失败次数进行统计,如果超过了失败次数阈值,说明可能存在被盗用或者故意提取的情况,所以需要进行具体分析,将每次提取会议文件的关联信息至服务器,其中关联信息就包括当前的网络环境信息,用户信息,提取码,登录账号信息等,通过关联信息可以分析出是否存在恶意提取或者破解的风险。服务器根据关联信息可以分析出是否为正常或者非正常状态,非正常状态为存在恶意提取或者破解的风险,则会发送警示信息至管理者端或者预设的其他客户端,以进行提醒。
图2示出了本发明一种基于大数据分析的健康警示***的框图。
如图2所示,本发明公开了一种云会议分步录制***,所述***包括云端服务器202、录制服务器203、网络磁盘205、数据转换服务器204、数据库206;
云端服务器202负责从客户端201接收音视频数据,并将数据发送给录制服务器203;
云端服务器202还负责从数据转换服务器204接收转换后的可播放媒体数据,并发送给客户端201进行播放;
录制服务器203负责添加自定义信息构造录制的数据,同时录制数据的状态标志位,然后把数据写到网络磁盘205,生成conf.data;
数据转换服务器204负责定时读取数据的状态标志位,一旦发现有会议开始录制,则从网络磁盘205上读取conf.data,并对读取的conf.data进行音视频编解码转换处理;对编解码之后的数据进行MP4打包处理;把经MP4打包处理好的每一帧数据写到网络磁盘205上,生成可供回放的媒体文件,或通过云端服务器202发送给客户端201进行播放。
所述数据库206作为一个会议数据转换的记录节点,一场会对应一条数据库记录。异常状态标志必须和会议ID一一对应起来,同时对应有该场会的未转换、转换中、转换结束的标志。当会中转换服务出现服务器宕机或者人为停止了服务或者其他导致服务中断的事件时,数据库206会一直处于转换中的状态,当服务恢复正常,重新接入会议***时,会中转换服务通过程序内部定时器检查服务器转换状态,如果发现有转换中的状态,则在数据库异常标志中记录该场会异常,并且停止对这场会议数据的转换。修复转换服务的定时器检测到数据库中的异常标志后重新读入conf.data数据进行修复转换。
根据本发明实施例,所述***还包括定时器;
所述***在数据录入的同时,把源数据也录入到网络磁盘205,当录制服务器203出现异常时,在异常恢复后,在网络磁盘205的数据库中写入一异常状态标志;
定时器用来定时检查数据库状态,发现出现过异常并已经结束的会议,则对该场录制重新从头转换。
根据本发明实施例,所述数据转换服务可部署多台服务器同时工作。以会议为转换单元进行多台任务抢占,以此提升服务器的并发性能。设计多台任务抢占的基础是共用同一个数据库和同一个网络磁盘。每台数据转换服务器204都会定时检查数据转换状态,如果其中一台发现有可转换的任务,立即抢占,并在数据库206设置一些值说明该任务已它被抢占,其他数据转换服务器204不可再转这场会。转换完的MP4都放到同一个网络磁盘205中,以供用户能以统一的方式访问到。多台转换的时候,因为数据库206是多台共用,如果某一台服务被中断,则在服务恢复正常之后它通过数据库检查哪些会议转换任务是因为自己被中断的,并置异常会议标记,它不能对不属于它的任务进行操作。
需要说明的是,数据转换服务与录制服务为两个不同的服务,每个服务可以同时并发处理多个会议数据。录制服务负责录制源数据,转换服务负责将录制源数据转换成MP4文件。转换服务又分为会中转换服务和数据修复转换服务,会中转换服务负责转换正常情况下会中不断录入的数据, 数据修复转换服务负责转换异常情况下被中断后的会议数据。引入修复转换服务的是因为MP4的转换是不能被中断的,转换中被中断的MP4必须重新从头转换。会中正常转换服务如果在服务中断恢复之后还要去做修复转换工作的话会加重它的负担,影响会中正常的并发量。
根据本发明实施例,还包括:
获取云会议的等级信息;
判断所述等级信息是否为预设的高等级模式;
若是,则确定源数据传输和存储的方式为第一模式;若否,则确定源数据传输和存储的方式为第二模式。
需要说明的是,所述第一模式为加密传输和存储模式,其中源数据通过加密方式传输数据,也就是说数据进行加密之后,以密文的方式进行传输,并且在存储的时候进行加密存储。首先,需要获取云会议的等级信息,所述的等级信息为高等级、低等级,在高等级时也就意味着会议内容较为机密,为了防止第三方破解或者对信息进行截取,则需要在传输和存储时进行加密,提高了会议的机密性。如果等级为低等级,则可以采用低加密等级或者不加密的方式进行传输,从而降低因加密带来的资源消耗。
根据本发明实施例,还包括:
获取云会议的等级信息和资源占用数据;
若所述等级信息为高等级模式,则判断所述资源占用数据是否超过预设的占用阈值;
若超过,则确定源数据传输和存储的方式为第三模式;所述第三方式为通过第一加密方式进行源数据传输和通过第二加密方式进行源数据存储。
需要说明的是,在终端的资源占用较多,也就是空闲资源较为紧张时,可以实时动态调整加密的方式,首先判断云会议等级为高等级模式时,再判断资源占用数据是否超过预设的占用阈值,如果超过,则说明资源占用率较高,这时候可以调整源数据传输和存储的方式为第三模式。其中第三方式为通过第一加密方式进行源数据传输和通过第二加密方式进行源数据存储。所述的第一加密方式为低等级加密方式,第二加密方式为高等级加密方式,第一加密方式占用的资源比第二加密方式占用资源低。通过本发明的这种方式,在传输的时候采用等级低一些的加密方式可以降低会议终端的资源占用率,在服务器采用等级高一些的加密方式可以更好的确保会议文件不被第三方破解。例如,第一加密方式为8位加密方式,第二加密方式为32位加密方式。
根据本发明实施例,还包括:
获取云会议参会者的用户信息和会议信息;
根据所述用户信息和会议信息生成会议文件提取码,将所述会议文件提取码分别发送至云会议参会者端。
需要说明的是,本发明数据录入和转换之后形成的会议文件存储在服务器中,也就是存储到服务器磁盘中,以供回放或者下载播放。为了保证只有参会者可以下载会议文件,可以先获取云会议参会者的用户信息和会议信息,其中用户信息可以为ID信息,会议信息可以为会议的名称和会议开始时间,形成的提取码以用于区别用户参与不同的会议。根据所述用户信息和会议信息生成会议文件提取码可以是将用户的ID信息以及会议名称和时间信息通过特征值计算或者哈希计算得到提取码,并且通过提取码可以反向计算用户信息,具体的提取码生成可以采用现有的提取码计算方法,本发明不再一一赘述。最终将提取码发送至每个参会者端,只允许参会者端的用户进行下载和回放,防止文件泄漏,提高了会议的安全性。
根据本发明实施例,还包括:
接收会议文件提取码;
获取提取会议文件终端的用户信息;
根据所述会议文件提取码计算用户信息,与提取会议文件终端的用户信息进行比较;
若一致,则发送会议文件;若不一致,则发送警示信息。
需要说明的是,参会者在进行会议文件提取的时候,可以通过提取码反向计算用户信息,然后比较当前提取的用户信息是否与提取码的一致,如果一致,则说明是本人进行会议文件提取,如果不一致,说明提取码遭到泄漏,可能为第三方提取,因此发送警示信息至管理者端或者提取码对应的用户端。
根据本发明实施例,还包括:
接收第三方提取请求信息;
根据第三方提取请求信息获取用户信息和提取码;
根据所述提取码计算用户信息,与第三方提取请求信息中的用户信息进行比较;
若一致,则发送会议文件;若不一致,则发送警示信息。
需要说明的是,在实际会议文件提取时,往往会使用其他账号或者设备进行文件的提取,在进行文件提取时,需要发送第三方提取请求信息至服务器,其中第三方提取请求信息中包括提取的用户信息和提取码。服务器在接收到第三方提取请求信息之后分析得到用户信息和提取码,然后根据所述提取码计算用户信息,与第三方提取请求信息中的用户信息进行比较,若一致,则发送会议文件;若不一致,则发送警示信息。通过本发明的方法,可以使得用户使用不同的设备或者账号都可以进行会议文件的提取,提高了用户使用体验感。
根据本发明实施例,还包括:
获取提取会议文件失败的终端设备信息;
对失败次数进行统计;
若失败次数超过预设的失败次数阈值,则发送每次提取会议文件的关联信息至服务器;
服务器根据每次提取会议文件的关联信息进行分析,若为非正常状态,则发送警示信息。
需要说明的是,当一个设备提取多次会议文件都失败后,则需要引起警示,首先先获取终端设备信息,然后对失败次数进行统计,如果超过了失败次数阈值,说明可能存在被盗用或者故意提取的情况,所以需要进行具体分析,将每次提取会议文件的关联信息至服务器,其中关联信息就包括当前的网络环境信息,用户信息,提取码,登录账号信息等,通过关联信息可以分析出是否存在恶意提取或者破解的风险。服务器根据关联信息可以分析出是否为正常或者非正常状态,非正常状态为存在恶意提取或者破解的风险,则会发送警示信息至管理者端或者预设的其他客户端,以进行提醒。
本发明公开了一种云会议分步录制方法及***。通过将数据录制和数据转换互相分离,对云会议的录制分为两步进行。可提升生成合流录制MP4的高并发率。所述合流MP4指的是把所有云会议过程中共享的音频、视频、桌面、白板等按特定布局重新编码后生成一个MP4。由于编解码特别消耗CPU,为了录制回放生成的实时性,需要在编解码时以CPU最高使用率来获取数据处理速度,如果不分离数据的接收和数据的处理,会由于CPU的消耗而导致数据接收受限,即使不断的增加机器,在数据量大的时候仍然难得到满足。当数据的接收和转换处理分离到不同的服务器之后,由于数据接收不消耗内存也不消耗CPU,所以在高并发的时候,数据再大,只要能稍微增加数据接收服务器就能做到把所有数据正确的录制下来。数据转换服务器能增加机器则增加,不能增加则按照当前机器情况以最大的消耗最快的速度排队进行数据转换,最坏的结果就是会有一些会议由于在排队等待机器资源而稍微延迟生成回放文件,但决不会影响数据的接收,不会出现数据丢失,录制失败等问题。此外,本发明在数据录入的同时,把源数据也录入到网络磁盘,当服务器出现异常时,在异常恢复后,在数据库中写入一异常状态标志;通过定时器用来定时检查数据库状态,发现出现过异常并已经结束的会议,则对该场录制重新从头转换。可有效提高云会议录制过程中的异常修复能力。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个***,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
Claims (3)
1.一种云会议分步录制方法,其特征在于,包括以下步骤:
数据录入:建立录制服务录制云会议过程中的源数据;将源数据录入到网络磁盘中,并同时录制数据的状态标志位;
数据转换:建立数据转换服务,定时读取数据的状态标志位,一旦发现有会议开始录制,则到所述会议的目录去读取网络磁盘中的数据,进行云转换;
把转换后的数据按特定媒体文件格式生成到网络磁盘中的特定目录中供回放下载,或通过云端服务器发送给客户端进行播放;
所述数据录入包括:
客户端发送音视频数据给云端服务器,云端服务器将接收到的音视频数据发送给录制服务器;
录制服务器添加自定义信息构造录制的数据,同时录制数据的状态标志位,然后把数据写到网络磁盘,生成会议数据文件;
所述会议数据文件中的每一个数据是一个可读取单元,每个单元数据的头部为自定义信息;一场会议对应一个会议数据文件;
所述自定义信息包括数据大小、数据类型、各场会议的ID,会议中各路视频的ID,以及每路视频在显示时所分布的位置;
所述数据转换具体为:
数据转换服务器定时读取数据的状态标志位,一旦发现有会议开始录制,则从网络磁盘上读取会议数据文件,并对读取的会议数据文件进行音视频编解码转换处理;
对编解码之后的数据进行MP4打包处理;
把经MP4打包处理好的每一帧数据写到网络磁盘上,生成可供回放的媒体文件,或通过云端服务器发送给客户端进行播放;
所述自定义信息的生成具体如下:
客户端发送各种会议控制指令给云端服务器,云端服务器接收控制信令后将信令发送给录制服务器;录制服务器根据信令生成自定义信息;
在数据录入的同时,把源数据也录入到网络磁盘,当服务器出现异常时,在异常恢复后,在数据库中写入一异常状态标志;
启动一个定时器,定时检查数据库状态,发现出现过异常并已经结束的会议,则对所述出现过异常并已经结束的会议录制重新从头转换;
还包括:
获取云会议的等级信息;
所述的等级信息为高等级或低等级;所述高等级的会议内容为机密,为防止第三方破解或信息截取,则在传输和存储时加密;若等级为低等级,则采用低加密等级或不加密方式传输;
判断所述等级信息是否为预设的高等级模式;
若是,则确定源数据传输和存储的方式为第一模式;若否,则确定源数据传输和存储的方式为第二模式;
所述第一模式为加密传输和存储模式,其中,源数据通过加密方式传输数据,即对数据加密并以密文方式进行传输,并在存储时进行加密存储;
还包括:
获取云会议的等级信息和资源占用数据;
若所述等级信息为高等级模式,则判断所述资源占用数据是否超过预设的占用阈值;
若超过,则确定源数据传输和存储的方式为第三模式;所述第三模式为通过第一加密方式进行源数据传输和通过第二加密方式进行源数据存储;
所述第一加密方式为低等级加密方式,第二加密方式为高等级加密方式,第一加密方式占用资源比第二加密方式占用资源低;
还包括:
获取云会议参会者的用户信息和会议信息;
根据所述用户信息和会议信息生成会议文件提取码,将所述会议文件提取码分别
发送至云会议参会者端;
还包括:
接收会议文件提取码;
获取提取会议文件终端的用户信息;
根据所述会议文件提取码计算用户信息,与提取会议文件终端的用户信息进行比
较;
若一致,则发送会议文件;若不一致,则发送警示信息。
2.一种云会议分步录制***,其特征在于,所述***包括云端服务器、录制服务器、网络磁盘、数据转换服务器、数据库;
云端服务器负责从客户端接收音视频数据,并将数据发送给录制服务器;
云端服务器还负责从数据转换服务器接收转换后的可播放媒体数据,并发送给客户端进行播放;
录制服务器负责添加自定义信息构造录制的数据,同时录制数据的状态标志位,然后把数据写到网络磁盘,生成会议数据文件;
数据转换服务器负责定时读取数据的状态标志位,一旦发现有会议开始录制,则从网络磁盘上读取会议数据文件,并对读取的会议数据文件进行音视频编解码转换处理;对编解码之后的数据进行MP4打包处理;把经MP4打包处理好的每一帧数据写到网络磁盘上,生成可供回放的媒体文件,或通过云端服务器发送给客户端进行播放;
所述数据库作为一个会议数据转换的记录节点,一场会议对应一条数据库记录;异常状态标志和会议ID一一对应起来,同时对应有该场会议的未转换、转换中、转换结束的标志;
当会中转换服务出现服务器宕机或者人为停止了服务或者其他导致服务中断的事件时,数据库会一直处于转换中的状态;
当服务恢复正常,重新接入会议***时,会中转换服务通过程序内部定时器检查服务器转换状态,如果发现数据库有转换中的状态,则在数据库异常标志中记录该场会议异常,并且停止对这场会议数据的转换;
所述***还包括定时器;
所述***在数据录入的同时,把源数据也录入到网络磁盘,当服务器出现异常时,在异常恢复后,在数据库中写入一异常状态标志;
定时器用来定时检查数据库状态,发现出现过异常并已经结束的会议,则对所述出现过异常并已经结束的会议录制重新从头转换。
3.根据权利要求2所述的一种云会议分步录制***,其特征在于,所述数据转换服务器包括若干台,若干台数据转换服务器以会议为转换单位进行任务抢占,每台数据转换服务器定时检查数据转换状态,若发现可转换任务,则立即抢占;抢占后并在数据库设置抢占说明,防止其他数据转换服务器再转换这场会议。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110799447.XA CN113259621B (zh) | 2021-07-15 | 2021-07-15 | 一种云会议分步录制方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110799447.XA CN113259621B (zh) | 2021-07-15 | 2021-07-15 | 一种云会议分步录制方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113259621A CN113259621A (zh) | 2021-08-13 |
CN113259621B true CN113259621B (zh) | 2021-10-15 |
Family
ID=77180434
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110799447.XA Active CN113259621B (zh) | 2021-07-15 | 2021-07-15 | 一种云会议分步录制方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113259621B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113691762B (zh) * | 2021-08-16 | 2023-07-07 | 咪咕文化科技有限公司 | 视频会议的数据传输方法、装置及计算机可读存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105306861B (zh) * | 2015-10-15 | 2017-03-01 | 深圳市鹰硕技术有限公司 | 一种网络教学录播方法及*** |
CN108040061B (zh) * | 2017-12-19 | 2021-04-27 | 广州敬信药草园信息科技有限公司 | 一种云会议直播方法 |
US11171795B2 (en) * | 2019-03-29 | 2021-11-09 | Lenovo (Singapore) Pte. Ltd. | Systems and methods to merge data streams from different conferencing platforms |
CN112073810B (zh) * | 2020-11-16 | 2021-02-02 | 全时云商务服务股份有限公司 | 一种多布局的云会议录制方法、***和可读存储介质 |
CN112399134B (zh) * | 2021-01-21 | 2021-04-09 | 全时云商务服务股份有限公司 | 一种云会议录制的自管理发布方法及*** |
-
2021
- 2021-07-15 CN CN202110799447.XA patent/CN113259621B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN113259621A (zh) | 2021-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110430441B (zh) | 一种云手机视频采集方法、***、装置及存储介质 | |
CN112235597B (zh) | 流媒体直播音视频同步保护方法、装置、计算机设备 | |
CN104837052A (zh) | 播放多媒体数据的方法及装置 | |
CN102648584B (zh) | 使用前向纠错检验可用带宽的***、方法和介质 | |
CN109450777B (zh) | 会话信息提取方法、装置、设备和介质 | |
CN112073543B (zh) | 一种云视频录制方法、***和可读存储介质 | |
WO2017050067A1 (zh) | 一种视频通信方法、装置及*** | |
WO2015196590A1 (zh) | 桌面云视频的播放处理方法及装置 | |
CN113259621B (zh) | 一种云会议分步录制方法及*** | |
CN114598931A (zh) | 一种多开云游戏的串流方法、***、装置及介质 | |
CN113141352B (zh) | 多媒体数据的传输方法、装置、计算机设备和存储介质 | |
CN112565656B (zh) | 视频通话方法、装置、***、电子设备及存储介质 | |
WO2021174879A1 (zh) | Ai视频通话质量分析方法、装置、计算机设备及存储介质 | |
CN111064976B (zh) | 一种直播信息的发送方法及服务器 | |
CN109819278B (zh) | 直播视频的优化方法 | |
CN111669650A (zh) | 视频处理方法、装置、电子设备及存储介质 | |
CN116320431A (zh) | 视频压缩编码数据动态无线网络传输*** | |
CN116842205A (zh) | 一种游戏回放方法、装置及存储介质 | |
CN115102701B (zh) | 多芯片数据加密解密处理方法及装置 | |
CN113192520B (zh) | 一种音频信息处理方法、装置、电子设备及存储介质 | |
CN111090818A (zh) | 资源管理方法、资源管理***、服务器及计算机存储介质 | |
US10231004B2 (en) | Network recording service | |
KR101893829B1 (ko) | 데이터 변조를 통한 녹취파일의 암호화 및 복호화 방법 | |
CN112565655A (zh) | 视频数据的鉴黄方法、装置、电子设备及存储介质 | |
CN110392285B (zh) | 媒体流处理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |