CN114760490A - 视频流处理方法及装置 - Google Patents
视频流处理方法及装置 Download PDFInfo
- Publication number
- CN114760490A CN114760490A CN202210396979.3A CN202210396979A CN114760490A CN 114760490 A CN114760490 A CN 114760490A CN 202210396979 A CN202210396979 A CN 202210396979A CN 114760490 A CN114760490 A CN 114760490A
- Authority
- CN
- China
- Prior art keywords
- video stream
- target
- content distribution
- distribution network
- edge processing
- 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.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 29
- 238000012545 processing Methods 0.000 claims abstract description 479
- 238000000034 method Methods 0.000 claims description 92
- 230000008569 process Effects 0.000 claims description 60
- 238000012795 verification Methods 0.000 claims description 23
- 230000002159 abnormal effect Effects 0.000 claims description 11
- 230000004044 response Effects 0.000 claims description 10
- 230000005540 biological transmission Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 238000004422 calculation algorithm Methods 0.000 description 6
- 230000003993 interaction Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000012163 sequencing technique Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 235000019633 pungent taste Nutrition 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/2187—Live feed
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/258—Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
- H04N21/25866—Management of end-user data
- H04N21/25891—Management of end-user data being end-user preferences
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/27—Server based end-user applications
- H04N21/274—Storing end-user multimedia data in response to end-user request, e.g. network recorder
- H04N21/2743—Video hosting of uploaded data from client
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/433—Content storage operation, e.g. storage operation in response to a pause request, caching operations
- H04N21/4334—Recording operations
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Graphics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请提供视频流处理方法及装置,其中所述视频流处理方法包括:确定所述边缘处理节点接收的目标视频流对应的热度信息,以及所述边缘处理节点的存储资源信息;根据所述热度信息和所述存储资源信息,确定所述边缘处理节点满足视频流处理条件的情况下,向所述边缘处理节点发送视频流处理请求;响应于所述视频流处理请求,对所述目标视频流进行处理,获得目标视频帧集合并存储,实现了基于视频流的热度实时处理视频流,使视频流满足处理条件的情况下,在边缘处理节点进行处理,节省推流时所消耗的宽带成本与处理成本。
Description
技术领域
本申请涉及数据传输技术领域,特别涉及一种视频流处理方法。本申请同时涉及一种视频流处理装置,一种计算设备,以及一种计算机可读存储介质。
背景技术
随着互联网技术的发展,各类直播服务越来越多,出于文明网络环境的创建,以及满足用户的直播回放观看需求,需要对直播的视频流进行截图或录制,用作存底;现有技术中,用户观看直播的过程,需要主播将直播的视频流推流到边缘处理节点,之后边缘处理节点将视频流转推到内容分发网络,有直播观看需求的用户从内容分发网络进行拉流,在这个过程中,对直播视频流进行截图或录制的操作由内容分发网络承担;然而,并不是所有的主播推流的视频流都有用户观看,这种情况下,内容分发网络仅仅只是执行对视频流进行截图或录制的工作,浪费了边缘处理节点转推宽带的同时,也浪费了内容分发网络的接收宽带,并且内容分发网络对视频流进行截图或录制的价格也会比较高,成本难以控制。
发明内容
有鉴于此,本申请实施例提供了一种视频流处理方法。本申请同时涉及一种视频流处理装置,一种计算设备,以及一种计算机可读存储介质,以解决现有技术中存在的直播的视频流通过内容分发网络进行存储或录制所导致的,边缘处理节点转推宽带浪费,内容分发网络的接收宽带浪费,以及成本花销高的问题。
根据本申请实施例的第一方面,提供了一种视频流处理方法,包括:
确定所述边缘处理节点接收的目标视频流对应的热度信息,以及所述边缘处理节点的存储资源信息;
根据所述热度信息和所述存储资源信息,确定所述边缘处理节点满足视频流处理条件的情况下,向所述边缘处理节点发送视频流处理请求;
响应于所述视频流处理请求,对所述目标视频流进行处理,获得目标视频帧集合并存储。
可选地,确定所述边缘处理节点接收的目标视频流对应的热度信息包括:
查询所述目标视频流的目标访问记录;
根据所述目标访问记录确定所述目标视频流的热度信息。
可选地,根据所述热度信息和所述存储资源信息,确定所述边缘处理节点满足视频流处理条件的情况下,向所述边缘处理节点发送视频流处理请求包括:
确定所述视频流处理条件中的热度阈值与存储空间阈值;
根据所述存储资源信息确定所述边缘处理节点的空闲存储容量;
在所述热度信息小于所述热度阈值,且所述空闲存储容量大于所述存储空间阈值的情况下,向所述边缘处理节点发送视频流处理请求。
可选地,所述视频流处理系统还包括至少一个内容分发网络,所述方法还包括:
在所述热度信息大于等于所述热度阈值,或所述空闲存储容量小于等于所述存储空间阈值的情况下,确定所述目标视频流关联的处理信息,并发送至所述边缘处理节点;
所述边缘处理节点将所述处理信息与所述目标视频流发送至至少一个内容分发网络中的目标内容分发网络;
所述目标内容分发网络对所述目标视频流进行处理,获得第一视频帧集合并存储。
可选地,所述确定所述视频流处理条件中的热度阈值包括:
查询所述边缘处理节点中各个子边缘处理节点接收到的视频流的访问记录,以及确定所述目标视频流关联的子边缘处理节点的节点承载信息;
根据各个子边缘处理节点的访问记录,确定各个视频流对应的热度信息;
将各个视频流对应的热度信息进行排序,得到热度信息序列;
根据所述节点承载信息,在所述热度信息序列中确定所述热度阈值。
可选地,所述响应于所述视频流处理请求,对所述目标视频流进行处理获得目标视频帧集合并存储包括:
响应于所述视频流处理请求,按照第一视频帧采集策略对所述目标视频流进行视频帧采集;
在采集成功的情况下,所述边缘处理节点根据采集结果生成目标视频帧集合,并将所述目标视频帧集合存储至节点视频帧存储空间。
可选地,所述视频流处理系统还包括至少一个内容分发网络;相应的,所述按照预设的图像采集策略对所述目标视频流进行视频帧采集之后还包括:
在采集失败的情况下,确定所述目标视频流关联的处理异常信息,并发送至所述边缘处理节点;
所述边缘处理节点将所述处理异常信息与所述目标视频流发送至至少一个内容分发网络中的验证内容分发网络;
所述验证内容分发网络对所述目标视频流进行处理,获得第二视频帧集合并存储。
可选地,所述边缘处理节点将所述目标视频流发送至至少一个内容分发网络中的目标内容分发网络包括:
在至少一个内容分发网络确定所述目标内容分发网络;
建立与所述目标内容分发网络间的目标转推通道;
根据所述目标转推通道将所述目标视频流发送至所述目标内容分发网络。
可选地,所述在至少一个内容分发网络确定所述目标内容分发网络包括:
查询各个内容分发网络对应的网络承载信息;
根据各个内容分发网络对应的网络承载信息,计算各个内容分发网络对应的占比信息;
根据各个内容分发网络对应的占比信息,在至少一个内容分发网络中确定所述目标内容分发网络。
可选地,所述目标内容分发网络对所述目标视频流进行处理,获得所述第一视频帧集合并存储包括:
所述目标内容分发网络根据第二视频帧采集策略对所述目标视频流进行视频帧采集;
在采集成功的情况下,根据采集结果生成第一视频帧集合,并将所述第一视频帧集合存储到网络视频帧存储空间。
可选地,所述目标内容分发网络根据预设的视频帧采集策略对所述目标视频流进行视频帧采集之后还包括:
在处理失败的情况下,确定候选内容分发网络;
断开所述目标转推通道,并建立与所述候选内容分发网络之间的候选转推通道;
根据所述候选转推通道将所述目标视频流传输至所述候选内容分发网络;
所述候选内容分发网络对所述目标视频流进行处理,获得第三视频帧集合并存储。
根据本申请实施例的第二方面,提供了一种视频流处理装置,包括:
确定模块,被配置为确定所述边缘处理节点接收的目标视频流对应的热度信息,以及所述边缘处理节点的存储资源信息;
发送模块,被配置为根据所述热度信息和所述存储资源信息,确定所述边缘处理节点满足视频流处理条件的情况下,向所述边缘处理节点发送视频流处理请求;
响应模块,被配置为响应于所述视频流处理请求,对所述目标视频流进行处理,获得目标视频帧集合并存储。
根据本申请实施例的第三方面,提供了一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,所述处理器执行所述指令时实现所述视频流处理方法的步骤。
根据本申请实施例的第四方面,提供了一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现所述视频流处理方法的步骤。
本申请提供的视频流处理方法,应用于视频流处理系统,并且视频流处理系统包括边缘处理节点和调度模块;边缘处理节点接收到目标视频流之后,调度模块确定目标视频流的热度信息,以及边缘处理节点的存储资源信息;之后调度模块根据热度信息与存储资源信息去判断边缘处理节点是否满足视频流处理条件,满足视频流处理条件的情况下,向边缘处理节点发送视频流处理请求,边缘处理节点接收到视频流处理请求之后,对目标视频流进行处理,得到目标视频帧集合,最后将得到的目标视频帧集合进行存储。实现了基于视频流的热度实时处理视频流,使视频流满足处理条件的情况下,在边缘处理节点进行处理,节省推流时所消耗的宽带成本与处理成本。
附图说明
图1是本申请一实施例提供的一种视频流处理方法的流程图;
图2是本申请一实施例体统的一种视频流处理系统架构图;
图3是本申请一实施例提供的一种应用于视频会议的视频流处理方法的处理流程图;
图4是本申请一实施例提供的一种视频流处理装置的结构示意图;
图5是本申请一实施例提供的一种计算设备的结构框图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施的限制。
在本申请一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请一个或多个实施例。在本申请一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本申请一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
首先,对本申请一个或多个实施例涉及的名词术语进行解释。
视频流:音视频数据的传输,它能够被作为一个稳定的和连续的流通过网络传输给观众观看。
CDN:内容分发网络,通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,CDN系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上。
边缘计算节点:提供接受主播推流的服务节点。
在本申请中,提供了一种视频流处理方法,本申请同时涉及一种视频流处理装置,一种计算设备,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。
实际应用中,出于建设文明网络环境的目的,或者是为了满足观众对直播回放的观看需求,需要对直播的视频流进行截图或录制,相关检查方可以对截图或录制得到的视频帧集合进行审查,观众可以基于截图或录制得到的视频帧集合观看直播回放;但是现有技术中往往使用内容分发网络,对直播的视频流进行截图或录制,但是由于很多的视频流并没有观众去观看,也就是说这些视频流不会被观众进行拉流,这种情况下,内容分发网络就只是执行了视频流的截图或录制工作,另外,使用内容分发网络进行截图或录制工作的价格是比较高的。
在本申请中,基于视频流的热度信息对视频流进行判断,在满足判断条件的情况下,不再将视频流转推至内容分发网络进行截图或录制处理,而是将视频流在边缘处理节点进行截图或录制,这种情况下,就省去了从边缘处理节点转推视频流至内容分发网络所产生的宽带占用,并且通过边缘处理节点对视频流进行截图或录制工作的花销较小,既节省推流时所消耗的宽带成本,又节省了视频流的处理成本,而且通过将部分截图或录制业务下沉到边缘网络节点,实现了减少网络传输和多级转发带来的宽度和时延损耗。
图1示出了根据本申请一实施例提供的一种视频流处理方法的流程图,具体包括以下步骤:
步骤S102:确定所述边缘处理节点接收的目标视频流对应的热度信息,以及所述边缘处理节点的存储资源信息。
其中,所述视频流处理方法应用于视频流处理系统,视频流处理系统包括边缘处理节点和调度模块;边缘处理节点可以理解为,在靠近用户的网络边缘侧构建的业务平台,提供存储、计算、网络等资源,其中包括查看转推状态的接口,用于确定转推CDN,边缘处理节点录制以及转推是否成功等信息;此外还包括增加转推接口,用于新增网络通道至某CDN;断开转推接口,用于断开与某CDN之间的连接;内存接口,用于查询边缘处理节点的存储空间;调度模块可以理解为,用于监测边缘处理节点状态,并指示边缘处理节点执行目标视频流的相关处理的模块,需要说明的是,调度模块除了可以获取边缘处理节点的相关信息,还可以获取其他与调度模块建立链接的节点和网络的相关信息,如主播节点与内容分发网络等,并且调度模块可以是虚拟的软件模块,也可以是实体模块,其具体的形式由实际使用场景决定,本实施例不进行限定;目标视频流可以理解为,当前正在被处理的视频流,由主播节点推流至边缘处理节点;热度信息可以理解为,包含目标视频流被拉流观看的次数的信息,即访问目标视频流相关主播节点的人数;存储资源信息可以理解为,边缘处理节点的用于存储数据信息的存储空间的相关信息,包括但不限于边缘处理节点的总存储空间,已用存储空间,剩余存储空间等。
基于此,边缘处理节点接收到主播节点发送的目标视频流之后,调度模块确定目标视频流关联的主播节点被访问人数,并且确认边缘处理节点的存储空间的相关信息;需要说明的是,由于观众想要观看目标视频流,就需要从内容分发网络进行拉流,这就导致了所有想观看目标视频流的观众,都会与内容分发网络产生信息交互,从而使内容分发网络可以统计出想要观看目标视频流的观众的人数,此外,由于主播节点也需要实时的得知自身直播被观看的人数信息,因此主播节点会从内容分发网络,获得观看目标视频流的人数信息,而主播节点与内容分发网络之间的信息交互过程需要通过边缘处理节点,即内容分发网络将信息传输至边缘处理节点,边缘处理节点再将信息传输至主播节点,这样的信息传递过程,就使得边缘处理节点与主播节点都存在目标视频流的热度信息,调度模块可以从主播节点、边缘处理节点或内容分发网络中获得热度信息,具体的获取途径由实际使用场景决定,本实施例不进行限定。如图2所示的本申请一实施例体统的一种视频流处理系统架构图中的4提供历史人数,为确定目标视频流对应的热度信息的过程,人数服务即为,提供边缘处理节点、内容分发网络或是主播节点中存储的,用户针对目标视频流的拉流次数查询服务的模块。
进一步的,热度信息可以理解为目标视频流被拉流观看的次数的信息,那么确定热度信息的过程也就是确定目标视频流被拉流观看的次数的过程,在本实施例中,具体实现方式如下:
查询所述目标视频流的目标访问记录;根据所述目标访问记录确定所述目标视频流的热度信息。
其中,目标访问记录可以理解为,目标视频流对应的主播节点被访问的记录,即目标视频流被拉流观看的记录。
基于此,调度模块查询目标视频流被拉流观看的记录,通过这个记录确定目标视频流的热度信息,需要说明的是,通过上述对目标视频流的被拉流观看的过程的描述可知,观看目标视频流的人数信息可以从主播节点、边缘处理节点或是内容分发网络进行获取,也就是说目标访问记录的获取途径可以是从主播节点、边缘处理节点或是内容分发网络,具体的获取途径选择基于实际使用场景决定,本实施例不进行限定。
举例说明,主播A进行直播活动,之后主播A的直播设备,将直播视频流推流到边缘处理节点,调度模块在边缘处理节点中进行查询,查询到目标视频的目标访问记录B,之后基于这个目标访问记录B确定有0人对目标视频流进行了拉流观看,根据这个信息,确定目标视频的热度信息中记录着观看人数为0。
综上,通过使用调度模块查询目标访问记录,可以快捷的得知目标视频流被拉流观看的人数,进而得到热度信息。
步骤S104:根据所述热度信息和所述存储资源信息,确定所述边缘处理节点满足视频流处理条件的情况下,向所述边缘处理节点发送视频流处理请求。
具体的,在获得了目标视频流的热度信息,以及边缘处理节点的存储资源信息之后,需要根据得到的热度信息与存储资源信息,确定目标视频流是否需要被边缘处理节点处理。
其中,视频流处理条件可以理解为,用于判断目标视频流是否需要被边缘处理节点处理的“指标”;视频流处理请求可以理解为,用于指示边缘处理节点对目标视频流进行处理的请求信息。
基于此,调度模块判断热度信息和存储资源信息,是否满足视频流处理条件,在满足的情况下,说明边缘处理节点需要对目标视频流进行处理,并向边缘处理节点发送视频流处理请求,指示边缘处理节点对目标视频流进行处理。
进一步的,基于热度信息与存储资源信息判断目标视频流满足视频流处理条件的情况,在本实施例中,具体实现方式如下:
确定所述视频流处理条件中的热度阈值与存储空间阈值;根据所述存储资源信息确定所述边缘处理节点的空闲存储容量;在所述热度信息小于所述热度阈值,且所述空闲存储容量大于所述存储空间阈值的情况下,向所述边缘处理节点发送视频流处理请求。
其中,热度阈值可以理解为,规定的目标视频流被拉流观看的人数阈值;存储空间阈值可以理解为,用于存储被处理的目标视频流所需要的最小存储空间;空闲存储容量可以理解为,边缘处理节点当前未被占用的存储空间。
基于此,调度模块确定目标视频流被拉流观看的人数阈值,以及用于存储被处理的目标视频流所需要的最小存储空间,之后将目标视频的热度信息与这个人数阈值进行比较,将边缘处理节点当前未被占用的存储空间,与用于存储被处理的目标视频流所需要的最小存储空间进行对比;在前者比较的结果是小于,后者的比较结果是大于的情况下,确定目标视频流满足视频流处理条件,此时调度模块向边缘处理节点发送视频流处理请求。
沿用上例,调度模块确定视频流处理条件中的热度阈值为10,存储空间阈值为1TB,之后调度模块确定边缘处理节点的空闲存储容量为120TB,于是可以确定主播A的直播视频流的拉流人数是0,小于热度阈值10,边缘处理节点的空闲存储容量为120TB,大于存储空间阈值1TB,这种情况下,确定边缘处理节点满足视频流处理条件,调度模块向边缘处理节点发送视频流处理请求。
综上,通过将目标视频流的热度信息与热度阈值进行比较,确定了低于热度阈值的目标视频流为冷流,即没有多少观看量或访问量的主播的直播视频流,这种视频流可以在边缘处理节点进行处理,而无需转推至内容分发网络中进行处理,通过将处理任务下沉至边缘处理节点,不使用花费较高的内容分发网络对目标视频流进行处理,实现了节省开销的目的,需要说明的是,在目标视频流没有任何一个人进行观看的情况下,目标视频流由于不需要内容分发网络对目标视频流进行处理,进一步的目标视频流也就不需要转推至内容分发网络中,可以节省了传输资源的开销,此外除了注意目标视频流的热度信息对于转推的影响外,还需要对边缘处理节点的存储空间进行查询,在边缘存储节点中无法存储处理完的目标视频流时,不能将目标视频流在边缘处理节点进行处理。
进一步的,除了边缘处理节点满足视频流处理条件的情况,还存在边缘处理节点不满足视频流处理条件的情况,在本实施例中,具体实现方式如下:
在所述热度信息大于等于所述热度阈值,或所述空闲存储容量小于等于所述存储空间阈值的情况下,确定所述目标视频流关联的处理信息,并发送至所述边缘处理节点;所述边缘处理节点将所述处理信息与所述目标视频流发送至至少一个内容分发网络中的目标内容分发网络;所述目标内容分发网络对所述目标视频流进行处理,获得第一视频帧集合并存储。
其中,处理信息可以理解为,包含了热度信息与热度阈值之间的比较结果,空闲存储容量与存储空间阈值之间的比较结果,目标内容分发网络的ID、地址,边缘处理节点是否处理了目标视频流等内容的信息;需要说明的是,记录目标内容分发网络的ID、地址是为了指示边缘处理节点,可以将目标视频流发送到指定的内容分发网络,记录边缘处理节点是否处理了目标视频流,是由于当目标视频流被用户拉流观看的情况下,也需要将目标视频流转推至内容分发网络,所以边缘处理节点是否处理了目标视频流的信息,是为了保证目标内容分发网络接收到目标视频流后,确定需要将目标视频流发送至拉流目标视频流的用户节点,还是对目标视频流进行处理。目标内容分发网络可以理解为,边缘处理系统将目标视频流发送到的内容分发网络;第一视频帧集合可以理解为,目标内容分发网络对目标视频流进行处理,得到的视频帧集合,需要说明的是,目标视频帧集合与第一视频帧集合之间可以是相同的,也可以是不同的,取决于边缘处理节点与目标内容分发网络,各自采取的目标视频流处理策略。
基于此,热度信息大于等于热度阈值,或者空闲存储容量小于等于存储空间阈值的情况下,调度模块确定目标视频流需要发送的目标内容分发网络相关信息,热度信息大于热度阈值或空闲存储容量小于存储空间阈值的信息,边缘处理节点没有处理目标视频流的信息,并发送至边缘处理节点,之后边缘处理节点将处理信息和目标视频流,发送到目标内容分发网络;由目标内容分发网络对目标视频流进行处理,并将处理得到的第一视频帧集合进行存储。
沿用上例,若调度模块确定视频流处理条件中的热度阈值为10,存储空间阈值为1TB,之后调度模块确定边缘处理节点的空闲存储容量为0.5TB,于是可以确定主播A的直播视频流的拉流人数是0,小于热度阈值10,边缘处理节点的空闲存储容量为120TB,大于存储空间阈值1TB,这种情况下,确定边缘处理节点不满足视频流处理条件,确定目标内容分发网络C1,之后基于目标内容分发网络C1,将包含边缘处理节点不满足视频处理条件的信息,与目标视频流发送至C1;C1对目标视频流进行处理,得到第一视频帧集合并存储在目标C1对应的存储空间中。
综上,在边缘处理节点不满足视频流处理条件的情况下,通过将目标视频流发送至目标内容分发网络中,并由目标内容分发网络进行处理,保证目标视频流的处理不会中断。
进一步的,不同时间情况下,拉流观看目标视频流的人数是不同的,若热度阈值是一个固定的值,那么基于这个固定的值与目标视频流的热度信息进行比较,得到的结果是不准确的,为了解决这个问题,在本实施例中,具体实现方式如下:
查询所述边缘处理节点中各个子边缘处理节点接收到的视频流的访问记录,以及确定所述目标视频流关联的子边缘处理节点的节点承载信息;根据各个子边缘处理节点的访问记录,确定各个视频流对应的热度信息;将各个视频流对应的热度信息进行排序,得到热度信息序列;所述调度模块根据所述节点承载信息,在所述热度信息序列中确定所述热度阈值。
其中,子边缘处理节点是边缘处理节点中的一部分,同样的,子边缘处理节点也可以提供存储、计算、网络等资源;节点承载信息可以理解为,记录着对应的子边缘处理节点在同一时间内所能接收到的最大的视频流数量的信息。
基于此,调度模块确定边缘处理节点中的各个子边缘处理节点,即边缘处理节点在同一时间内接收到的所有视频流,之后查询各个子边缘处理节点接收到的视频流访问记录,并且确定目标视频流对应的子边缘处理节点,在一个时间点上所能接收的最大视频流数量;然后根据各个子边缘处理节点接收到的访问记录,确定对应的热度信息,并将得到的各个子边缘处理节点对应的热度信息进行排序,得到热度信息序列,按照热度信息从低到高开始,选择次序上与节点承载信息记录的数字一致的那个热度信息,将选出的热度信息作为热度阈值。
沿用上例,调度模块确定边缘处理节点中存在的420个子边缘处理节点,之后查询这420个子边缘处理节点接收到的视频流访问记录,经过查询,这420个子边缘处理节点共接收了10000个视频流,确定这10000个视频流各自对应的访问记录,并根据访问记录确定这10000个视频流对应的热度信息,将得到的10000个热度信息按照从小到大的顺序进行排序,得到热度信息序列;确定目标视频流所在边缘处理节点在同一时间点上所能接收到的最多的视频流的数量是5000,在热度信息序列中从小到大,找到第5000个热度信息,这个热度信息中记载着对应的视频流共有10人正在观看,此时确定热度阈值为10。
综上,通过以上方法,可以保证热度阈值是动态的,并且将目标视频流所在的子边缘节点的节点承载信息作为依据选择热度阈值的依据,保证需要在目标视频流所在的子边缘处理节点处理的视频流,其数量不会超过自边缘处理节点所能接收的视频流最大数量。
进一步的,确定了需要将目标视频流发送至目标内容分发网络后,还需要明确进行发送所采用的方法,在本实施例中,具体实现方式如下:
在至少一个内容分发网络确定所述目标内容分发网络;建立与所述目标内容分发网络间的目标转推通道;根据所述目标转推通道将所述目标视频流发送至所述目标内容分发网络。
其中,目标转推通道可以理解为,用于在边缘处理节点与目标内容分发网络之间传输信息的通道。
基于此,边缘处理节点在所有的内容分发网络中,确定需要将目标视频流传输至其中的目标内容分发网络,然后边缘处理阶段建立,自身与目标内容分发网络进行信息交互的目标转推网络,之后根据这个目标转推网络,将目标视频流自边缘处理节点传输至目标内容传输网络。
沿用上例,边缘处理节点在所有的内容分发网络中确定一个,作为目标内容分发网络C1,之后建立边缘处理节点与C1之间的目标转推网络,通过目标转推网络将目标视频流从边缘处理节点传输至C1。
综上,通过上述方法,建立了边缘处理节点与目标内容分发网络之间的网络通道,使目标视频流可以传输至目标内容分发网络。
进一步的,在向内容分发网络传输视频流的过程中,如果视频流全部集中在少数的几个内容分发网络中,那这几个内容分发网络的所面对的传输、处理、存储压力都是比较大的,为了避免这种情况,在本实施例中,具体实现方式如下:
查询各个内容分发网络对应的网络承载信息;根据各个内容分发网络对应的网络承载信息,计算各个内容分发网络对应的占比信息;根据各个内容分发网络对应的占比信息,在至少一个内容分发网络中确定所述目标内容分发网络。
其中,网络承载信息可以理解为,记录着内容分发网络在同一时间内,所能接收到的最大的视频流数量的信息;占比信息可以理解为,存储着内容分发网络对应的网络承载信息,占所有内容分发网络的网络承载信息之和的比例,如有两个内容分发网络,各自的网络承载信息分别为100000和50000,那么此时这两个内容分发网络对应的占比信息为2/3和1/3。
基于此,边缘处理节点查询各个内容分发网络,各自在同一时间内所能接收的最大视频流数量,即网络承载信息,之后基于各个内容分发网络对应的网络承载信息,计算各自的占比信息,之后基于各个的占比信息,在全部的内容分发网络中确定目标内容分发网络,需要说明的是,在此处根据各个占比信息,在全部的内容分发网络中确定目标内容分发网络的方法,可以基于各自的占比信息确定各自的被选取概率,之后基于这个被选取概率创建随机选取算法,对目标内容分发网络进行随机选取,其中创建的随机选取的算法不只一种,具体采用哪种随机算法由实际使用场景确定,本实施例不进行限定。
沿用上例,边缘处理节点查询全部的5个内容分发网络,得到这5个内容分发网络对应的网络承载信息全都为100000,之后基于这个网络承载信息,确定这5个内容分发网络对应的占比信息都为1/5,之后采用随机算法在这5个内容分发网络中选择出一个作为目标内容分发网络。
综上,通过各个内容分发网络所对应的承载信息确定各自对应的占比信息,然后再通过随机算法选择出目标内容分发网络,这种方法在连续的将视频流传输至内容分发网络过程中,将会把视频流较为平均的分发给内容分发网络,避免出现视频流集中在较少的内容分发网络中,导致内容分发网络的处理压力大。
步骤S106:响应于所述视频流处理请求,对所述目标视频流进行处理,获得目标视频帧集合并存储。
具体的,在边缘处理节点接收到视频流处理请求之后,会将目标视频流进行处理,并将处理得到的相关结果存储。
其中,目标视频帧集合可以理解为,对目标视频流进行处理得到的集合,其中存储着截自目标视频流的视频帧。
基于此,边缘处理节点接收到视频流处理请求之后,响应于视频流处理请求,对目标视频流进行处理,得到有关于目标视频流的目标视频帧集合,并将得到的目标视频帧集合存储。通过这种方式对目标视频流进行处理,将对目标视频流进行处理的任务下沉至边缘处理节点,免去了将目标视频流传输至内容分发网络而占用的传输资源,以及减轻了目标视频流由内容分发网络处理的花销。
进一步的,边缘处理节点对目标视频流的处理过程,实际是对目标视频流进行采集的过程,而这个过程,在本实施例中,具体实现方式如下:
响应于所述视频流处理请求,按照第一视频帧采集策略对所述目标视频流进行视频帧采集;在采集成功的情况下,所述边缘处理节点根据采集结果生成目标视频帧集合,并将所述目标视频帧集合存储至节点视频帧存储空间。
其中,第一视频帧采集策略可以理解为,在边缘处理节点满足视频流处理条件的情况下,由边缘处理节点对目标视频流进行处理所使用的处理策略;节点视频帧存储空间可以理解为,边缘处理节点用于存储数据的存储空间。
基于此,在边缘处理节点满足视频流处理条件的情况下,边缘处理节点响应于视频流处理请求,按照第一视频帧采集策略对目标视频流进行视频帧的采集,采集成功的情况下,边缘处理节点根据采集结果生成目标视频帧集合,之后将生成的目标视频帧集合存储至边缘处理节点自身用于存储数据的存储空间中。
沿用上例,边缘处理节点接收到视频流处理请求后,根据视频流处理请求,按照每10ms抓取一次截图的方式,采集主播A的直播视频流,根据采集的结果生成一个D1集合,D1集合中存储着边缘处理节点抓取到的直播视频流中的视频帧,将D1存储在边缘处理节点的视频帧数据库中。
综上,通过这种方式可以将目标视频流中的视频帧进行抓取,实现了对目标视频流的存底,便于相关检查方对目标视频流进行检查,以及便于观众对于目标视频流回放过程的观看。
进一步的,对目标视频流采集的过程中,除了采集成功的情况,还存在采集失败的情况,需要保证采集失败的情况下,还拥有备用的方案实现对目标视频流进行采集,在本实施例中,具体实现方式如下:
在采集失败的情况下,确定所述目标视频流关联的处理异常信息,并发送至所述边缘处理节点;所述边缘处理节点将所述处理异常信息与所述目标视频流发送至至少一个内容分发网络中的验证内容分发网络;所述验证内容分发网络对所述目标视频流进行处理,获得第二视频帧集合并存储。
其中,处理异常信息可以理解为,包含边缘处理节点采集失败,验证内容分发网络的ID、地址,边缘处理节点是否处理了目标视频流等内容的信息,需要说明的是,与处理信息中的包含的内容类似,验证内容分发网络的ID、地址的内容,用于指示边缘处理节点将目标视频流传输至验证内容分发网络;边缘处理节点失败的相关内容,与边缘处理节点是否处理了目标视频流的内容,是为了验证内容分发网络在接收到目标视频流时,可以区分是出现边缘处理节点采集失败的情况,还是出现有观众拉流目标视频流的情况;验证内容分发网络可以理解为,在边缘采集节点采集异常的情况下,边缘处理节点将目标视频流传输的内容分发网络,需要说明的是验证内容分发网络与目标内容分发网络之间,可以是同一个内容分发网络,也可以不是同一个内容分发网络,具体关系由实际使用场景决定,本实施例不进行限定。
基于此,在边缘处理节点采集失败的情况下,调度模块确定目标视频流关联的处理异常信息,并将处理异常信息发送至边缘处理节点,边缘处理节点将处理异常信息与目标视频流传输至验证内容分发网络,验证内容分发网络对目标视频流进行处理,获得第二视频帧集合并存储。
沿用上例,若边缘处理节点采集直播视频流中的视频帧采集失败的情况下,调度模块确定处理异常信息,之后将这个处理异常信息发送给边缘处理节点,然后边缘处理节点可以采取与选择C1类似的随机选择方式选择C2,这个C2就是验证内容分发网络,之后可以采用边缘处理节点与C1之间建立目标转推通道类似的方法,建立边缘处理节点与C2之间的传输通道,用于将边缘处理节点中的目标视频流传输至C2中,之后C2对直播视频流进行处理,根据处理结果得到相应的视频帧集合并存储。
综上,通过这种方式,解决了目标视频流被边缘处理节点采集过程中的采集错误问题,保证了目标视频流的可以被处理。
进一步的,目标内容分发网络对目标视频流的处理过程,在本实施例中,具体实现方式如下:
所述目标内容分发网络根据第二视频帧采集策略对所述目标视频流进行视频帧采集;在采集成功的情况下,根据采集结果生成第一视频帧集合,并将所述第一视频帧集合存储到网络视频帧存储空间。
其中,第二视频帧采集策略可以理解为,在边缘处理节点不满足视频流处理条件的情况下,由目标内容分发网络对目标视频流进行的处理策略;第一视频帧集合可以理解为,在边缘处理节点不满足视频流处理条件的情况下,由目标内容分发网络使用第二视频帧采集策略对所述目标视频流进行视频帧采集,得到的视频帧集合,需要说明的是,第二视频帧采集策略可以与第一视频帧采集策略相同也可以不同,具体情况由实际应用场景决定,本实施例不做限定;网络视频帧存储空间可以理解为,目标内容分发网络用于存储数据的存储空间。
基于此,目标内容分发网络根据第二视频帧采集策略对目标视频流进行采集,采集成功的情况下,根据采集的目标视频流的视频帧生成第一视频帧集合,并将第一视频帧集合存储在目标内容分发网络的存储空间内。需要说明的是,在边缘处理节点采集目标视频流失败的情况下,基于验证内容分发网络采集目标视频流的过程,与目标内容分发网络对目标视频流进行处理类似,验证内容分发网络也会采用专属的视频帧采集策略,对目标视频流进行视频帧采集,在这里,验证内容分发网络专属的视频帧采集策略,可以与第二视频帧采集策略相同也可以不同,具体情况有实际使用场景决定,本实施例不进行限定,之后也会基于采集得到的视频帧生成视频帧集合,并存储在验证内容分发网络的数据存储空间内。
沿用上例,边缘处理节点不满足视频处理条件的情况下,C1接收直播视频流,之后按照每10ms抓取一次截图的方式,采集主播A的直播视频流,根据采集的结果生成一个D2集合,D2集合中存储着C1抓取到的直播视频流中的视频帧,将D2存储在C1的视频帧数据库中。此外,在边缘处理节点采集直播视频流失败后,C2接收直播视频流,之后按照每20ms抓取一次截图的方式,采集主播A的直播视频流,根据采集的结果生成一个D3集合,D3集合中存储着C2抓取到的直播视频流中的视频帧,将D3存储在C2的视频帧数据库中。
综上,通过上述方法,保证边缘处理节点不满足视频处理条件,或是边缘处理节点采集目标视频流失败的情况下,依旧可以实现对目标视频流进行采集。
进一步的,目标内容分发网络处理目标视频流的情况下,还可能出现由于目标内容分发网络自身的问题出现的处理失败的情况,出现这种情况时,在本实施例中,具体实现方式如下:
在处理失败的情况下,确定候选内容分发网络;断开所述目标转推通道,并建立与所述候选内容分发网络之间的候选转推通道;根据所述候选转推通道将所述目标视频流传输至所述候选内容分发网络;所述候选内容分发网络对所述目标视频流进行处理,获得第三视频帧集合并存储。
其中,候选内容分发网络可以理解为,与目标内容分发网络不同的内容分发网络;候选转推通道可以理解为,用于在边缘处理节点与候选内容分发网络之间传输信息的通道。
基于此,在目标内容分发网络处理目标视频流失败的情况下,边缘处理节点确定候选内容分发网络,需要说明的是,确定候选内容分发网络的方式,与确定目标内容分发网络的方式类似,即通过确定各个内容分发网络的承载信息,进一步的确定占比信息,之后基于占比信息使用随机算法随机出候选内容分发网络。之后边缘节点断开目标转推通道,建立与候选内容分发网络之间的候选转推通道,根据候选转推通道,边缘处理节点将目标视频流传输至候选内容分发网络,由候选内容分发网络对所述目标视频流进行处理,需要说明的是,此处的处理方式,与上述的目标内容分发网络对目标视频流进行处理的方式类似,基于候选内容分发网络专属的视频帧采集策略对目标视频流进行采集,得到第三视频帧集合,并将第三视频帧集合存储在候选内容分发网络的存储空间中。此外,在验证内容分发网络处理目标视频流失败的情况下,也可以使用类似的方式,不同点在于,在此场景下,需要边缘节点断开验证转推通道,之后建立与候选内容分发网络之间的候选转推通道。
沿用上例,在C1处理直播视频流失败的情况下,边缘处理节点断开与C1之间的通道,建立与候选内容分发网络C3之间的通道,根据边缘处理节点与C3之间的通道,将直播视频流传输至C3,C3对直播视频流进行处理,得到视频帧集合D4,并将D4存储在C3的视频帧数据库中。在C2处理直播视频流失败的情况下,边缘处理节点断开与C2之间的通道,建立与候选内容分发网络C3之间的通道,根据边缘处理节点与C3之间的通道,将直播视频流传输至C3,C3对直播视频流进行处理,得到视频帧集合D5,并将D5存储在C3的视频帧数据库中。
综上,通过上述方法,保证目标内容分发网络处理目标视频错误,或是验证内容分发网络处理目标视频错误的情况下,依旧可以实现对目标视频流进行采集。在图2示出的本申请一实施例体统的一种视频流处理系统架构图中,“5转推失败通知”与“3调度”分别为调度模块确定处理信息与处理异常信息的情况,以及基于处理信息与处理异常信息知识边缘处理节点对目标视频流进行处理;4为确定热度信息的过程;6为监测目标视频流被处理成功与否的情况,并反馈给调度模块的过程。
本申请提供的视频流处理方法,应用于视频流处理系统,并且视频流处理系统包括边缘处理节点和调度模块;边缘处理节点接收到目标视频流之后,调度模块确定目标视频流的热度信息,以及边缘处理节点的存储资源信息;之后调度模块根据热度信息与存储资源信息去判断边缘处理节点是否满足视频流处理条件,满足视频流处理条件的情况下,向边缘处理节点发送视频流处理请求,边缘处理节点接收到视频流处理请求之后,对目标视频流进行处理,得到目标视频帧集合,最后将得到的目标视频帧集合进行存储。实现了基于视频流的热度实时处理视频流,使视频流满足处理条件的情况下,在边缘处理节点进行处理,节省推流时所消耗的宽带成本与处理成本。
下述结合附图3,以本申请提供的视频流处理方法在视频会议的应用为例,对所述视频流处理方法进行进一步说明。其中,图3示出了本申请一实施例提供的一种应用于视频会议的视频流处理方法的处理流程图,具体包括以下步骤:
步骤S302:所述调度模块查询所述目标视频流的目标访问记录。
具体的,在视频通话的场景下,当前正在发言的用户X所靠近的边缘节点为边缘处理节点,查询其他参会人员的人数为9。
步骤S304:所述调度模块根据所述目标访问记录确定所述目标视频流的热度信息。
具体的,确定X的热度信息为9。
步骤S306:所述调度模块根据所述热度信息和所述存储资源信息,判断所述边缘处理节点是否满足视频流处理条件;
若是,执行步骤S308;
若否,执行步骤S322。
具体的,确定处理X的视频流所需要的最小空间为10G,X所参与的视频会议对应的子边缘处理节点的空闲存储空间为100G,大于处理X的视频流所需要的最小空间为10G;之后确定此时共有30个开展的视频会议,所有的正在开展的视频会议的人员为300人,确定X所参与的视频会议对应的子边缘处理节点所能承载的最大参会人数是10,确定这30个视频会议中除去发言人员其他参会人员的人数,并按照参会人数从低到高排序,确定第10个会议的人数为P,判断P与10的大小关系。
步骤S308:向所述边缘处理节点发送视频流处理请求。
具体的,当10小于P,向边缘处理节点发送视频流处理请求。
步骤S310:所述边缘处理节点响应于所述视频流处理请求,按照第一视频帧采集策略对所述目标视频流进行视频帧采集。
具体的,边缘处理节点对X的视频流以1次/ms的速率进行采集。
步骤S312:判断采集是否成功。
若是,执行步骤S314;
若否,执行步骤S316。
步骤S314:所述边缘处理节点根据采集结果生成目标视频帧集合,并将所述目标视频帧集合存储至节点视频帧存储空间。
具体的,采集成功的情况下,将得到的目标视频帧集合存储在边缘处理节点的存储空间中。
步骤S316:所述调度模块确定所述目标视频流关联的处理异常信息,并发送至所述边缘处理节点。
具体的,采集失败的情况下,调度模块确定关于此次采集失败的处理异常信息A,发送到边缘处理节点。
步骤S318:所述边缘处理节点将所述处理异常信息与所述目标视频流发送至至少一个内容分发网络中的验证内容分发网络。
具体的,将A与X的视频流发送至验证内容分发网络。
步骤S320:所述验证内容分发网络对所述目标视频流进行处理,获得第二视频帧集合并存储。
具体的,验证内容分发网络对X的视频流以1次/ms的速率进行采集,并将采集的第二视频帧集合存储在验证内容分发网络的存储空间中。
步骤S322:所述边缘处理节点将所述处理信息与所述目标视频流发送至至少一个内容分发网络中的目标内容分发网络。
具体的,10大于P的情况下,边缘处理节点将处理信息与X的视频流发送至目标内容分发网络。
步骤S324:所述目标内容分发网络根据第二视频帧采集策略对所述目标视频流进行视频帧采集。
具体的,目标内容分发网络以1次/ms的速率对X的视频流进行采集。
步骤S326:判断采集是否成功;
若是,执行步骤S328;
若否,执行步骤S330。
步骤S328:所述目标内容分发网络根据采集结果生成第一视频帧集合,并将所述第一视频帧集合存储到网络视频帧存储空间。
具体的,采集成功的情况下,将得到的第一视频帧集合存储到目标内容分发网络的存储空间中。
步骤S330:所述边缘处理节点确定候选内容分发网络。
具体的,采集失败的情况下,确定候选内容分发网络。
步骤S332:所述边缘处理节点断开所述目标转推通道,并建立与所述候选内容分发网络之间的候选转推通道。
具体的,断开与目标内容分发网络之间的连接,建立与候选内容分发网络之间的连接。
步骤S334:所述边缘处理节点根据所述候选转推通道将所述目标视频流传输至所述候选内容分发网络。
具体的,将X的视频流传输至候选内容分发网络。
步骤S336:所述候选内容分发网络对所述目标视频流进行处理,获得第三视频帧集合并存储。
具体的,候选内容分发网络对X的视频流以1次/ms的速率进行采集,将得到的第三视频帧集合存储至候选内容分发网络的存储空间。
本申请提供的视频流处理方法,应用于视频流处理系统,并且视频流处理系统包括边缘处理节点和调度模块;边缘处理节点接收到目标视频流之后,调度模块确定目标视频流的热度信息,以及边缘处理节点的存储资源信息;之后调度模块根据热度信息与存储资源信息去判断边缘处理节点是否满足视频流处理条件,满足视频流处理条件的情况下,向边缘处理节点发送视频流处理请求,边缘处理节点接收到视频流处理请求之后,对目标视频流进行处理,得到目标视频帧集合,最后将得到的目标视频帧集合进行存储。实现了基于视频流的热度实时处理视频流,使视频流满足处理条件的情况下,在边缘处理节点进行处理,节省推流时所消耗的宽带成本与处理成本。
与上述方法实施例相对应,本申请还提供了视频流处理装置实施例,图4示出了本申请一实施例提供的一种视频流处理装置的结构示意图。如图4所示,该装置包括:
确定模块402,被配置为确定所述边缘处理节点接收的目标视频流对应的热度信息,以及所述边缘处理节点的存储资源信息;
发送模块404,被配置为根据所述热度信息和所述存储资源信息,确定所述边缘处理节点满足视频流处理条件的情况下,向所述边缘处理节点发送视频流处理请求;
响应模块406,被配置为响应于所述视频流处理请求,对所述目标视频流进行处理,获得目标视频帧集合并存储。
一个可选的实施例中,所述确定模块402还被配置为:
查询所述目标视频流的目标访问记录;根据所述目标访问记录确定所述目标视频流的热度信息。
一个可选的实施例中,所述发送模块404还被配置为:
确定所述视频流处理条件中的热度阈值与存储空间阈值;根据所述存储资源信息确定所述边缘处理节点的空闲存储容量;在所述热度信息小于所述热度阈值,且所述空闲存储容量大于所述存储空间阈值的情况下,向所述边缘处理节点发送视频流处理请求。
一个可选的实施例中,所述视频流处理装置还包括:
目标网络发送模块,被配置为在所述热度信息大于等于所述热度阈值,或所述空闲存储容量小于等于所述存储空间阈值的情况下,确定所述目标视频流关联的处理信息,并发送至所述边缘处理节点;所述边缘处理节点将所述处理信息与所述目标视频流发送至至少一个内容分发网络中的目标内容分发网络;所述目标内容分发网络对所述目标视频流进行处理,获得第一视频帧集合并存储。
一个可选的实施例中,所述发送模块404还被配置为:
查询所述边缘处理节点中各个子边缘处理节点接收到的视频流的访问记录,以及确定所述目标视频流关联的子边缘处理节点的节点承载信息;根据各个子边缘处理节点的访问记录,确定各个视频流对应的热度信息;将各个视频流对应的热度信息进行排序,得到热度信息序列;根据所述节点承载信息,在所述热度信息序列中确定所述热度阈值。
一个可选的实施例中,所述响应模块406还被配置为:
响应于所述视频流处理请求,按照第一视频帧采集策略对所述目标视频流进行视频帧采集;在采集成功的情况下,所述边缘处理节点根据采集结果生成目标视频帧集合,并将所述目标视频帧集合存储至节点视频帧存储空间。
一个可选的实施例中,所述视频流处理装置还包括:
验证网络发送模块,被配置为在采集失败的情况下,确定所述目标视频流关联的处理异常信息,并发送至所述边缘处理节点;所述边缘处理节点将所述处理异常信息与所述目标视频流发送至至少一个内容分发网络中的验证内容分发网络;所述验证内容分发网络对所述目标视频流进行处理,获得第二视频帧集合并存储。
一个可选的实施例中,所述目标网络发送模块还被配置为:
在至少一个内容分发网络确定所述目标内容分发网络;建立与所述目标内容分发网络间的目标转推通道;根据所述目标转推通道将所述目标视频流发送至所述目标内容分发网络。
一个可选的实施例中,所述目标网络发送模块还被配置为:
查询各个内容分发网络对应的网络承载信息;根据各个内容分发网络对应的网络承载信息,计算各个内容分发网络对应的占比信息;根据各个内容分发网络对应的占比信息,在至少一个内容分发网络中确定所述目标内容分发网络。
一个可选的实施例中,所述目标网络发送模块还被配置为:
所述目标内容分发网络根据第二视频帧采集策略对所述目标视频流进行视频帧采集;在采集成功的情况下,根据采集结果生成第一视频帧集合,并将所述第一视频帧集合存储到网络视频帧存储空间。
一个可选的实施例中,所述视频流处理装置还包括:
候选网络发送模块,被配置为在处理失败的情况下,确定候选内容分发网络;断开所述目标转推通道,并建立与所述候选内容分发网络之间的候选转推通道;根据所述候选转推通道将所述目标视频流传输至所述候选内容分发网络;所述候选内容分发网络对所述目标视频流进行处理,获得第三视频帧集合并存储。
本申请提供的视频流处理装置,实现了基于视频流的热度实时处理视频流,使视频流满足处理条件的情况下,在边缘处理节点进行处理,节省推流时所消耗的宽带成本与处理成本。
上述为本实施例的一种视频流处理装置的示意性方案。需要说明的是,该视频流处理装置的技术方案与上述的视频流处理方法的技术方案属于同一构思,视频流处理装置的技术方案未详细描述的细节内容,均可以参见上述视频流处理方法的技术方案的描述。
图5示出了根据本申请一实施例提供的一种计算设备500的结构框图。该计算设备500的部件包括但不限于存储器510和处理器520。处理器520与存储器510通过总线530相连接,数据库550用于保存数据。
计算设备500还包括接入设备540,接入设备540使得计算设备500能够经由一个或多个网络560通信。这些网络的示例包括公用交换电话网(PSTN)、局域网(LAN)、广域网(WAN)、个域网(PAN)或诸如因特网的通信网络的组合。接入设备540可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC))中的一个或多个,诸如IEEE802.11无线局域网(WLAN)无线接口、全球微波互联接入(Wi-MAX)接口、以太网接口、通用串行总线(USB)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC)接口,等等。
在本申请的一个实施例中,计算设备500的上述部件以及图5中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图5所示的计算设备结构框图仅仅是出于示例的目的,而不是对本申请范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
计算设备500可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或PC的静止计算设备。计算设备500还可以是移动式或静止式的服务器。
其中,处理器520执行所述指令时实现所述的视频流处理方法的步骤。
上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的视频流处理方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述视频流处理方法的技术方案的描述。
本申请一实施例还提供一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现如前所述视频流处理方法的步骤。
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的视频流处理方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述视频流处理方法的技术方案的描述。
上述对本申请特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上公开的本申请优选实施例只是用于帮助阐述本申请。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本申请的内容,可作很多的修改和变化。本申请选取并具体描述这些实施例,是为了更好地解释本申请的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本申请。本申请仅受权利要求书及其全部范围和等效物的限制。
Claims (14)
1.一种视频流处理方法,其特征在于,应用于视频流处理系统,所述视频流处理系统包括边缘处理节点和调度模块,所述方法包括:
确定所述边缘处理节点接收的目标视频流对应的热度信息,以及所述边缘处理节点的存储资源信息;
根据所述热度信息和所述存储资源信息,确定所述边缘处理节点满足视频流处理条件的情况下,向所述边缘处理节点发送视频流处理请求;
响应于所述视频流处理请求,对所述目标视频流进行处理,获得目标视频帧集合并存储。
2.根据权利要求1所述的方法,其特征在于,确定所述边缘处理节点接收的目标视频流对应的热度信息,包括:
查询所述目标视频流的目标访问记录;
根据所述目标访问记录确定所述目标视频流的热度信息。
3.根据权利要求1所述的方法,其特征在于,根据所述热度信息和所述存储资源信息,确定所述边缘处理节点满足视频流处理条件的情况下,向所述边缘处理节点发送视频流处理请求,包括:
确定所述视频流处理条件中的热度阈值与存储空间阈值;
根据所述存储资源信息确定所述边缘处理节点的空闲存储容量;
在所述热度信息小于所述热度阈值,且所述空闲存储容量大于所述存储空间阈值的情况下,向所述边缘处理节点发送视频流处理请求。
4.根据权利要求3所述的方法,其特征在于,所述视频流处理系统还包括至少一个内容分发网络,所述方法还包括:
在所述热度信息大于等于所述热度阈值,或所述空闲存储容量小于等于所述存储空间阈值的情况下,确定所述目标视频流关联的处理信息,并发送至所述边缘处理节点;
所述边缘处理节点将所述处理信息与所述目标视频流发送至至少一个内容分发网络中的目标内容分发网络;
所述目标内容分发网络对所述目标视频流进行处理,获得第一视频帧集合并存储。
5.根据权利要求3所述的方法,其特征在于,所述确定所述视频流处理条件中的热度阈值,包括:
查询所述边缘处理节点中各个子边缘处理节点接收到的视频流的访问记录,以及确定所述目标视频流关联的子边缘处理节点的节点承载信息;
根据各个子边缘处理节点的访问记录,确定各个视频流对应的热度信息;
将各个视频流对应的热度信息进行排序,得到热度信息序列;
根据所述节点承载信息,在所述热度信息序列中确定所述热度阈值。
6.根据权利要求1所述的方法,其特征在于,所述响应于所述视频流处理请求,对所述目标视频流进行处理获得目标视频帧集合并存储,包括:
响应于所述视频流处理请求,按照第一视频帧采集策略对所述目标视频流进行视频帧采集;
在采集成功的情况下,所述边缘处理节点根据采集结果生成目标视频帧集合,并将所述目标视频帧集合存储至节点视频帧存储空间。
7.根据权利要求6所述的方法,其特征在于,所述视频流处理系统还包括至少一个内容分发网络;相应的,所述按照预设的图像采集策略对所述目标视频流进行视频帧采集之后,还包括:
在采集失败的情况下,确定所述目标视频流关联的处理异常信息,并发送至所述边缘处理节点;
所述边缘处理节点将所述处理异常信息与所述目标视频流发送至至少一个内容分发网络中的验证内容分发网络;
所述验证内容分发网络对所述目标视频流进行处理,获得第二视频帧集合并存储。
8.根据权利要求4所述的方法,其特征在于,所述边缘处理节点将所述目标视频流发送至至少一个内容分发网络中的目标内容分发网络,包括:
在至少一个内容分发网络确定所述目标内容分发网络;
建立与所述目标内容分发网络间的目标转推通道;
根据所述目标转推通道将所述目标视频流发送至所述目标内容分发网络。
9.根据权利要求8所述的方法,其特征在于,所述在至少一个内容分发网络确定所述目标内容分发网络,包括:
查询各个内容分发网络对应的网络承载信息;
根据各个内容分发网络对应的网络承载信息,计算各个内容分发网络对应的占比信息;
根据各个内容分发网络对应的占比信息,在至少一个内容分发网络中确定所述目标内容分发网络。
10.根据权利要求8所述的方法,其特征在于,所述目标内容分发网络对所述目标视频流进行处理,获得所述第一视频帧集合并存储,包括:
所述目标内容分发网络根据第二视频帧采集策略对所述目标视频流进行视频帧采集;
在采集成功的情况下,根据采集结果生成第一视频帧集合,并将所述第一视频帧集合存储到网络视频帧存储空间。
11.根据权利要求10所述的方法,其特征在于,所述目标内容分发网络根据预设的视频帧采集策略对所述目标视频流进行视频帧采集之后,还包括:
在处理失败的情况下,确定候选内容分发网络;
断开所述目标转推通道,并建立与所述候选内容分发网络之间的候选转推通道;
根据所述候选转推通道将所述目标视频流传输至所述候选内容分发网络;
所述候选内容分发网络对所述目标视频流进行处理,获得第三视频帧集合并存储。
12.一种视频流处理装置,其特征在于,应用于视频流处理系统,所述视频流处理系统包括边缘处理节点和调度模块:
确定模块,被配置为确定所述边缘处理节点接收的目标视频流对应的热度信息,以及所述边缘处理节点的存储资源信息;
发送模块,被配置为根据所述热度信息和所述存储资源信息,确定所述边缘处理节点满足视频流处理条件的情况下,向所述边缘处理节点发送视频流处理请求;
响应模块,被配置为响应于所述视频流处理请求,对所述目标视频流进行处理,获得目标视频帧集合并存储。
13.一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,其特征在于,所述处理器执行所述指令时实现权利要求1-11任意一项所述方法的步骤。
14.一种计算机可读存储介质,其存储有计算机指令,其特征在于,该指令被处理器执行时实现权利要求1-11任意一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210396979.3A CN114760490B (zh) | 2022-04-15 | 2022-04-15 | 视频流处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210396979.3A CN114760490B (zh) | 2022-04-15 | 2022-04-15 | 视频流处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114760490A true CN114760490A (zh) | 2022-07-15 |
CN114760490B CN114760490B (zh) | 2024-03-19 |
Family
ID=82330744
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210396979.3A Active CN114760490B (zh) | 2022-04-15 | 2022-04-15 | 视频流处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114760490B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115278282A (zh) * | 2022-07-20 | 2022-11-01 | 上海哔哩哔哩科技有限公司 | 直播审核文件的生成方法、系统、调度节点及计算设备 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010025614A1 (zh) * | 2008-09-05 | 2010-03-11 | 中兴通讯股份有限公司 | 一种分片存储实现媒体分发、定位的方法及其流媒体系统 |
CN101710965A (zh) * | 2009-11-24 | 2010-05-19 | 中兴通讯股份有限公司 | 一种网络电视的全网存储、调度方法及系统 |
CN104469540A (zh) * | 2014-11-27 | 2015-03-25 | 北京美琦华悦通讯科技有限公司 | 实现iptv单播业务端到端质量保障的系统 |
CN104967861A (zh) * | 2015-05-27 | 2015-10-07 | 上海美琦浦悦通讯科技有限公司 | Cdn网络中的视频缓存系统及方法 |
CN109936751A (zh) * | 2017-12-15 | 2019-06-25 | 中兴通讯股份有限公司 | 视频录制方法、装置、设备、计算机可读存储介质和系统 |
CN110838932A (zh) * | 2018-08-17 | 2020-02-25 | 阿里巴巴集团控股有限公司 | 网络限流方法、装置以及电子设备 |
CN111372095A (zh) * | 2018-12-25 | 2020-07-03 | 深圳市茁壮网络股份有限公司 | 一种计算热度的方法及装置 |
CN111385129A (zh) * | 2018-12-29 | 2020-07-07 | 广州市百果园信息技术有限公司 | 全球化内容审核方法、装置、计算机设备及存储介质 |
CN112364216A (zh) * | 2020-11-23 | 2021-02-12 | 上海竞信网络科技有限公司 | 一种边缘节点内容审核过滤系统及方法 |
CN112752111A (zh) * | 2020-12-24 | 2021-05-04 | 广州博冠信息科技有限公司 | 直播流处理方法及装置、计算机可读存储介质、电子设备 |
CN112929676A (zh) * | 2019-12-06 | 2021-06-08 | 北京金山云网络技术有限公司 | 一种直播数据流获取方法、装置、节点及系统 |
CN114255432A (zh) * | 2021-12-24 | 2022-03-29 | 中电信数智科技有限公司 | 视频流处理方法、装置、电子设备、存储介质及系统 |
CN114257828A (zh) * | 2021-12-20 | 2022-03-29 | 上海哔哩哔哩科技有限公司 | 直播审核内容处理方法及系统 |
-
2022
- 2022-04-15 CN CN202210396979.3A patent/CN114760490B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010025614A1 (zh) * | 2008-09-05 | 2010-03-11 | 中兴通讯股份有限公司 | 一种分片存储实现媒体分发、定位的方法及其流媒体系统 |
CN101710965A (zh) * | 2009-11-24 | 2010-05-19 | 中兴通讯股份有限公司 | 一种网络电视的全网存储、调度方法及系统 |
CN104469540A (zh) * | 2014-11-27 | 2015-03-25 | 北京美琦华悦通讯科技有限公司 | 实现iptv单播业务端到端质量保障的系统 |
CN104967861A (zh) * | 2015-05-27 | 2015-10-07 | 上海美琦浦悦通讯科技有限公司 | Cdn网络中的视频缓存系统及方法 |
CN109936751A (zh) * | 2017-12-15 | 2019-06-25 | 中兴通讯股份有限公司 | 视频录制方法、装置、设备、计算机可读存储介质和系统 |
CN110838932A (zh) * | 2018-08-17 | 2020-02-25 | 阿里巴巴集团控股有限公司 | 网络限流方法、装置以及电子设备 |
CN111372095A (zh) * | 2018-12-25 | 2020-07-03 | 深圳市茁壮网络股份有限公司 | 一种计算热度的方法及装置 |
CN111385129A (zh) * | 2018-12-29 | 2020-07-07 | 广州市百果园信息技术有限公司 | 全球化内容审核方法、装置、计算机设备及存储介质 |
CN112929676A (zh) * | 2019-12-06 | 2021-06-08 | 北京金山云网络技术有限公司 | 一种直播数据流获取方法、装置、节点及系统 |
CN112364216A (zh) * | 2020-11-23 | 2021-02-12 | 上海竞信网络科技有限公司 | 一种边缘节点内容审核过滤系统及方法 |
CN112752111A (zh) * | 2020-12-24 | 2021-05-04 | 广州博冠信息科技有限公司 | 直播流处理方法及装置、计算机可读存储介质、电子设备 |
CN114257828A (zh) * | 2021-12-20 | 2022-03-29 | 上海哔哩哔哩科技有限公司 | 直播审核内容处理方法及系统 |
CN114255432A (zh) * | 2021-12-24 | 2022-03-29 | 中电信数智科技有限公司 | 视频流处理方法、装置、电子设备、存储介质及系统 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115278282A (zh) * | 2022-07-20 | 2022-11-01 | 上海哔哩哔哩科技有限公司 | 直播审核文件的生成方法、系统、调度节点及计算设备 |
CN115278282B (zh) * | 2022-07-20 | 2024-03-15 | 上海哔哩哔哩科技有限公司 | 直播审核文件的生成方法、系统、调度节点及计算设备 |
Also Published As
Publication number | Publication date |
---|---|
CN114760490B (zh) | 2024-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10678393B2 (en) | Capturing multimedia data based on user action | |
US9019897B2 (en) | Wireless multimedia brokerage service for real time content provisioning | |
US9509953B2 (en) | Media detection and packet distribution in a multipoint conference | |
US10277865B2 (en) | Data transmission method and system, and related devices | |
US7996540B2 (en) | Method and system for replacing media stream in a communication process of a terminal | |
CN104253814A (zh) | 一种流媒体处理方法、服务器及浏览器 | |
EP3468179B1 (en) | Moving image splitting device and monitoring method | |
CN101640784A (zh) | 一种在视频会议系统中控制多画面复合的控制装置及方法 | |
CN113923470B (zh) | 直播流处理方法及装置 | |
CN113811013B (zh) | 集群容量动态调节方法、设备、存储介质和通信系统 | |
CN113992883B (zh) | 视频会议处理方法、处理设备、会议系统以及存储介质 | |
CN114071168A (zh) | 混流直播流调度方法及装置 | |
CN114064275A (zh) | 数据处理方法及装置 | |
CN114760490B (zh) | 视频流处理方法及装置 | |
CN110601891B (zh) | 一种报警处理的方法以及相关装置 | |
US20150109403A1 (en) | Selective recording of high quality media in a videoconference | |
CN110784731B (zh) | 一种数据流转码方法、装置、设备及介质 | |
US9485458B2 (en) | Data processing method and device | |
CN111314738A (zh) | 数据传输方法和装置 | |
EP3002943A1 (en) | Method for call processing and gateway | |
CN114945097A (zh) | 视频流处理方法及装置 | |
CN114679598A (zh) | 直播推送方法及装置 | |
CN112019791A (zh) | 基于教育考试的多方音视频通话方法及系统 | |
CN113676777B (zh) | 数据处理方法及装置 | |
CN114554230B (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 |