一种基于多流媒体节点的资源连接系统、方法及装置与流程

文档序号:34918088发布日期:2023-07-28 00:51阅读:33来源:国知局
一种基于多流媒体节点的资源连接系统、方法及装置与流程

本文涉及人工智能领域,尤其是一种基于多流媒体节点的资源连接系统、方法及装置。


背景技术:

1、目前,用户通常基于一对一交互场景与基于智能问答的虚拟数字人交互,获得较好的音视频交互体验。

2、在一对一交互场景下,虚拟数字人交互系统会启动一定数量的房间,房间里是预设好的虚拟数字人。用户终端设备请求接入虚拟数字人时,系统会先给用户分配空闲的房间,用户终端根据房间号请求流媒体服务器,获取对应房间渲染出的数字人音视频流,从而确保用户与虚拟数字人能够进行实时音视频交互。由于用户与数字人的实时交互是经过中间的流媒体服务器来转发音视频流数据完成的,因此保证流媒体服务器的高可用性非常重要。

3、如果流媒体服务器崩溃或者所在节点宕机,将导致用户终端无法连接虚拟数字人。现有技术中通过每个房间向多个流媒体服务进行推流、用户通过网关路由到不同的流媒体服务进行拉流的方式应对节点宕机的情形,但这种方式造成了极大的资源浪费,每个虚拟数字人推流到流媒体服务器会消耗大量的网络带宽资源,而每个用户只会占用一路资源,如果是双节点流媒体服务集群的应用场景,每个房间使用带宽会增加一倍,资源浪费较大。


技术实现思路

1、为解决上述现有技术中推拉流造成带宽资源浪费的问题,本文实施例提供了一种基于多流媒体节点的资源连接系统、方法及装置。

2、本文实施例提供了一种基于多流媒体节点的资源连接方法,

3、根据本文实施例的一个方面,所述匹配对应的流媒体资源空间包括:从多个流媒体资源空间中,选择处于空闲状态的流媒体资源空间作为可用流媒体资源空间。

4、根据本文实施例的一个方面,根据所述服务器连接请求,将所述用户端路由至对应的至少一个流媒体节点包括:获取服务器连接请求中包含的可用流媒体资源空间的编号;利用所述编号对所述流媒体节点总数量取余,得到余数结果;根据所述余数结果及预设路由规则,确定用户端对应的至少一个流媒体节点。

5、根据本文实施例的一个方面,根据至少一个流媒体节点发送的媒体协商信息及用户端支持的数据流编解码信息,建立用户端与对应流媒体节点的通信连接,包括:获取对应的至少一个流媒体节点的媒体协商信息,所述媒体协商信息对应该流媒体节点管理的流媒体资源的音视频编解码格式;选择媒体协商信息与用户端支持的数据流编解码信息一致的流媒体节点,作为所述对应流媒体节点;将所述对应流媒体节点发送至用户端,由所述用户端与所述对应流媒体节点建立通信。

6、根据本文实施例的一个方面,建立用户端与流媒体节点的通信连接包括:监听所述流媒体节点管理的多个udp端口的状态,确定处于可用状态的udp端口;选择所述处于可用状态的udp端口中的其中一个,作为所述媒体协商信息中的udp端口;将udp端口号发送至用户端,由用户端根据所述流媒体节点的udp端口号与所述流媒体节点建立通信连接。

7、根据本文实施例的一个方面,若多个流媒体节点中的部分流媒体节点异常,所述方法包括:控制注册在异常流媒体节点上的流媒体资源停止推流;更新停止推流的流媒体资源空间的状态为等待状态;新增流媒体节点,接管所述停止推流的流媒体资源;根据用户端的服务器连接请求,更新用户端与流媒体节点的路由关系。

8、本文实施例还提供了一种网关服务器,包括:资源连接请求接收单元,用于接收用户端发送的资源连接请求,其中,所述资源连接请求包括用户端支持的数据流编解码信息;流媒体资源连接信息形成单元,用于将所述资源连接请求发送至多个流媒体节点,以使多个流媒体节点根据所述资源连接请求识别用户知识等级并匹配对应的流媒体资源空间,形成流媒体资源连接信息;第一接收单元,用于接收所述流媒体资源连接信息,并发送至客户端;第二接收单元,用于接收所述用户端根据所述流媒体资源连接信息生成的服务器连接请求;路由单元,用于根据所述服务器连接请求,确定用户待连接的至少一个流媒体节点;通信单元,用于根据至少一个流媒体节点发送的媒体协商信息及用户端支持的数据流编解码信息,建立用户与对应流媒体节点的通信连接。

9、本文实施例提供了一种所述方法,包括:接收由网关服务器转发的资源连接请求;根据所述资源连接请求识别用户知识等级并匹配对应的流媒体资源空间,形成流媒体资源连接信息;将所述流媒体资源连接信息,发送至所述网关服务器;接收所述网关服务器返回的由用户端生成的服务器连接请求;将服务器连接请求中用户待连接的至少一个流媒体节点的媒体协商信息,发送至所述网关服务器。

10、根据本文实施例的一个方面,形成流媒体资源连接信息,包括:获取用户特征数据;根据用户特征数据,确定用户类型;根据用户类型与流媒体资源类型的预设映射关系,确定所述用户对应的流媒体资源类型。

11、本文实施例还公开了一种多流媒体节点,包括:资源连接请求接收单元,用于接收由网关服务器转发的资源连接请求;流媒体资源连接信息形成单元,用于根据所述资源连接请求识别用户知识等级并匹配对应的流媒体资源空间,形成流媒体资源连接信息;发送单元,用于将所述流媒体资源连接信息,发送至所述网关服务器;服务器连接请求生成单元,用于接收所述网关服务器返回的由用户端生成的服务器连接请求;流媒体协商信息发送单元,用于将服务器连接请求中用户待连接的至少一个流媒体节点的媒体协商信息,发送至所述网关服务器。

12、本文实施例还提供了一种基于多流媒体节点的资源连接方法,所述方法包括:获取资源连接信息中的可用流媒体资源空间的编号;将所述可用流媒体资源空间的编号加入至http请求头中,形成服务器连接请求。

13、本文实施例还提供了一种用户端,包括:获取单元,获取资源连接信息中的可用流媒体资源空间的编号;加入单元,用于将所述可用流媒体资源空间的编号加入至http请求头中,形成服务器连接请求。

14、本文实施例还提供了一种基于多流媒体节点的资源连接系统,所述系统包括:网关服务器,用于基于用户端发送的资源连接请求识别用户知识等级并匹配对应的流媒体资源空间;根据用户端发送的服务器连接请求,将用户端路由至对应的至少一个流媒体节点;根据至少一个流媒体节点发送的媒体协商信息及用户端支持的数据流编解码信息,建立用户端与流媒体节点的通信连接;多个流媒体节点,用于根据所述资源连接请求识别用户知识等级并匹配对应的流媒体资源空间,形成流媒体资源连接信息;用户端,所述用户端与网关连接,用于向网关发送资源连接请求,并基于所述流媒体资源连接信息生成服务器连接请求。

15、本文实施例提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述一种基于多流媒体节点的资源连接方法。

16、本文实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现所述基于多流媒体节点的资源连接方法。

17、本文实施例还提供了一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行所述基于多流媒体节点的资源连接方法。

18、本方案通过将不同流媒体资源空间注册到不同的流媒体服务器节点,只向对应的流媒体服务节点进行推流,带宽及硬件资源使用率高。在不浪费资源的情况下,能保证流媒体服务在多节点下的高可用性。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1