一种流地址唯一键多租户直播解说流水线管理方法及系统与流程

摘要: 本发明属于多租户云端媒体流处理、人工智能实时直播解说及服务端流水线调度,具体涉及一种流地址唯一键多租户直播解说流水线管理方法及系统。背景技术:1、当前人工智能直...
一种流地址唯一键多租户直播解说流水线管理方法及系统与流程

本发明属于多租户云端媒体流处理、人工智能实时直播解说及服务端流水线调度,具体涉及一种流地址唯一键多租户直播解说流水线管理方法及系统。

背景技术:

1、当前人工智能直播解说云端服务快速普及,行业逐步从单路直播试用模式转向多租户、多路并发规模化运营模式。传统直播解说服务端架构在规模化商用过程中,逐渐暴露出多租户隔离性差、业务不可编排、流水线易误启停、存在僵尸流资源浪费、平台兼容性弱等诸多技术缺陷,无法满足商业化稳定运营需求。

2、现有技术中,主流直播解说服务架构主要分为三类,对应的技术缺陷如下:

3、第一类为单机单路解说架构,服务端采用全局单例变量管理直播流水线,全局统一占用抽帧、混流、音频队列资源,单台服务器仅能承载单路直播解说业务。若需实现多路并发,只能通过多实例多部署的方式实现,服务器资源利用率极低、部署成本高,且各路直播的知识库、解说人设、输出推流链路完全无法隔离,极易出现数据串扰、解说内容错乱的问题,完全无法适配多租户商用场景。

4、第二类为基于会话登录态的多用户架构,依托前端网页登录会话标识区分不同用户,直播流水线与浏览器会话、登录账号强绑定。该架构高度依赖前端交互与登录态,无法实现纯后端接口化编排,不能被上层管理平台自动化调用;同时会话标识与媒体流无天然绑定关系,媒体流推送后无法精准匹配对应租户,无法实现租户知识库、弹幕来源、输出推流目标的精细化隔离,租户业务独立性无法保障。

5、第三类为推流自动触发式架构,媒体网关检测到推流动作即自动启动解说流水线,断流即停止流水线。该架构存在极大的业务不可控性,开播时机、解说人设、输出平台、音色风格均无法自定义配置,只能采用默认参数;同时网络短暂抖动、瞬时断流重连会导致流水线频繁启停,严重影响直播稳定性;更为突出的缺陷是,主播断流、设备关机后,服务端流水线无法自动感知彻底断流,会长期保留空转的抽帧、混流子进程,形成大量僵尸流,持续占用服务器cpu、内存、带宽资源,造成资源浪费、系统卡顿,长期运行易导致服务崩溃。

6、除此之外,现有技术无法实现多维度租户物理隔离,多租户共用全局知识库与配置参数,租户数据安全性低;同时缺乏标准化的多平台推流地址适配机制,对不同第三方直播平台的地址格式兼容性差;开播无前置校验机制,易产生无源幽灵解说流;关播无缓存清理机制,易出现关播后音频残留推送的问题,整体系统稳定性、兼容性、自愈性均存在明显短板。

7、综上,现有直播解说流水线技术存在多租户隔离性差、并发能力弱、业务不可编排、流水线易误启停、僵尸流无法自动回收、平台兼容性差、资源利用率低等技术缺陷,亟需研发一种基于流地址唯一键、多维度物理隔离、可接口化编排、具备自愈能力的多租户直播解说流水线管理方案。

技术实现思路

1、本发明旨在解决现有技术中多租户直播解说隔离性差、并发调度能力弱、业务无法自动化编排、网络抖动易误启停、僵尸流资源无法自动回收、多平台适配性差、缓存残留干扰直播效果的技术问题,提供一种流地址唯一键多租户直播解说流水线管理方法及系统,实现多租户六维物理隔离、推流与开播解耦可控、多平台智能适配、僵尸流自动自愈回收,提升多租户并发直播解说的稳定性、安全性与可运营性。

2、本发明采用如下技术方案:一种流地址唯一键多租户直播解说流水线管理方法,运行于划分为接入面、控制面、媒体与人工智能面三平面的服务端,包括如下步骤:

3、s1、租户code分配与接入面媒体流鉴权步骤:上层管理平台为每个商家或直播频道分配唯一流地址标识code,租户设备推流地址配置为媒体网关基址/live/{code};接入面媒体网关接收租户推入live/{code}路径的原始音视频流,触发推流鉴权回调on_publish,仅校验code合法性与推流凭证,校验通过放行媒体流,校验不通过直接拒绝;on_publish鉴权回调仅执行校验逻辑,不启动人工智能解说流水线。本步骤实现媒体流精准鉴权,同时彻底解耦推流动作与流水线启停,避免推流即开播的不可控问题。

4、s2、控制面显式开播编排与前置校验步骤:上层管理平台通过无状态rest控制面调用开播接口post /api/live/{code}/start,开播请求携带第三方平台推流地址pushurl、推流码streamkey、平台标识、语言、音色、性别、开场白参数;执行开播前置校验,调用媒体网关查询live/{code}是否存在活跃推流,无活跃推流则拒绝开播以规避无源流的幽灵输出;校验通过后,以code为索引从人设表加载该租户专属人设配置,开播请求未下发的音色、性别、开场白参数由人设配置兜底。通过前置源流校验杜绝无源幽灵流,同时支持参数自定义与默认配置兜底,适配多样化租户解说需求。

5、s3、基于code六维物理隔离创建独立人工智能解说流水线步骤:以code作为流地址唯一隔离键,为当前code创建独立流水线对象pipeline,同步创建专属抽帧子进程、混流推流子进程、应用层优先级音频队列,依次执行如下六维物理隔离子步骤:

6、s31、进程隔离:单个code独占独立pipeline、抽帧子进程、混流推流子进程与独立工作线程,各租户流水线进程相互独立,进程资源完全隔离,不会出现进程抢占、资源串扰问题。

7、s32、拉流来源隔离:拉流输入地址固定拼接为媒体网关基址/live/{code},各code拉流链路相互独立、互不干涉,彻底杜绝不同租户媒体流混杂错乱的问题。

8、s33、知识库隔离:向量数据库内为每个code创建独立向量集合kb,采用物理隔离方式而非全局库内过滤,支持对单个code对应的知识库单独执行建库、删库、重建操作,租户知识库数据完全独立,安全性与独立性极高。

9、s34、人设配置隔离:人设表以code为主键存储租户专属解说风格、称呼、口头禅、禁用词、音色参数,每个租户拥有独立的解说人设体系,解说风格差异化、定制化。

10、s35、弹幕来源隔离:每一路code绑定专属直播间采集地址,弹幕数据按照code路由至对应流水线,不同直播间弹幕数据互不串流,保障解说互动精准匹配对应租户直播场景。

11、s36、输出目标鉴权隔离:开播时下发的第三方pushurl、streamkey与code一一绑定,各租户输出推流链路独立鉴权,不同租户推流目标、鉴权凭证完全隔离,避免跨平台、跨租户推流错乱。

12、s4、输出地址智能拼接、开播初始化与弹幕解耦下发步骤:对pushurl与streamkey执行拼接适配逻辑,若pushurl不以“/”结尾且streamkey不以“/”、“?”开头,则自动在两者间补充分隔符“/”,生成适配第三方平台规范的完整输出推流地址,兼容不同直播平台的地址格式标准;基于code专属人设合成开场白语音,送入混流推流子进程并占用播放时间轴,将当前code写入在播登记表;弹幕直播间地址下发与开播流程解耦,流水线启动完成后,上层管理平台另行下发直播间分享文案,系统自动从分享文案中提取直播间链接,并按照code启停对应弹幕采集任务,适配直播间后生成链接的业务场景。

13、s5、code精准关播与缓存清理步骤:上层管理平台调用控制面stop关播接口后,立即终止当前code对应的抽帧子进程;合成关播语音,清空混流推流子进程内全部积压历史解说音频缓存,仅保留关播语音缓存;等待关播语音完整播放并预留少量时间余量后,强制销毁混流推流子进程,将该code移出在播登记表,同步停止该code对应的弹幕采集任务,彻底杜绝关播后缓存音频残留推送的问题。

14、s6、看门狗线程周期性巡检并自动消除僵尸流步骤:启动独立看门狗线程,按照15秒固定周期循环巡检所有在播code,每次巡检查询媒体网关对应code的推流活跃标志publish.active;若查询结果为存在活跃推流,或网关查询异常失败,清零该code的源流消失计时;若连续检测到code无活跃推流,则持续累计源流消失时长;当连续消失时长超过180秒抖动容忍阈值时,自动完整执行步骤s5的关播流程,回收抽帧、混流全部子进程资源,清理僵尸流。通过双重容错机制,避免网络抖动、监控故障导致的流水线误启停。

15、进一步的,所述控制面为无状态、无登录、无会话接口层,依靠请求头x-api-key平台级密钥完成全局鉴权;开播、关播、直播状态查询、人设编辑、知识库上传向量化、音色配置、弹幕地址设置全部操作均携带code并校验code归属权限,控制面整体支持水平扩容,可适配大规模并发业务场景。

16、进一步的,媒体推流动作与流水线开播触发完全解耦,仅上层管理平台通过控制面接口主动发起开播、关播控制;媒体网关on_publish回调仅用于鉴权,不会自动启动、停止人工智能解说流水线,实现业务完全可控可编排。

17、进一步的,步骤s33中向量库kb为独立物理索引集合,不同code对应的知识库数据相互隔离、检索互不干扰,删除单一code知识库不会影响其余租户知识库,保障租户数据安全独立。

18、进一步的,步骤s6看门狗逻辑设置双重容错机制:网关查询失败统一判定源流正常在线,不累计消失时长,防止监控组件故障误关停正常直播;180秒阈值兼容网络短暂断流重连,避免网络抖动造成流水线误销毁。

19、本发明还提供一种流地址唯一键多租户直播解说流水线管理系统,用于执行流地址唯一键多租户直播解说流水线管理方法,整体划分为接入面模块、控制面模块、媒体与人工智能面模块,流地址标识code作为流地址唯一键,为贯穿三模块全链路的唯一租户隔离键。

20、所述接入面模块为媒体网关单元,用于接收各租户向live/{code}路径推送的原始音视频流,配置on_publish推流鉴权回调逻辑,仅校验code合法性与推流凭证,鉴权逻辑不触发人工智能解说流水线启停。

21、所述控制面模块为无状态rest接口单元,无登录、无会话机制,通过请求头x-api-key完成平台级全局鉴权,对外暴露绑定code的开播、关播、直播状态查询、人设配置、知识库上传/向量化、音色配置、弹幕直播间地址配置接口,供上层管理平台调用编排。

22、所述媒体与人工智能面模块为有状态流水线管理单元,包含流水线管理器、若干独立流水线实例、看门狗线程单元、向量存储单元、关系存储单元;所述流水线管理器配置为以code为流地址唯一键索引创建、销毁独立pipeline流水线对象;单条流水线内置专属抽帧子进程、混流推流子进程、应用层优先级音频队列,单条流水线仅绑定对应code专属拉流地址、第三方输出推流地址、弹幕采集任务;所述向量存储单元针对每一个code分配独立物理向量集合kb,实现多租户知识库物理隔离;所述看门狗线程单元每15秒周期性遍历全部在播code,查询媒体网关publish.active推流活跃标识,当code连续无推流时长超过180秒阈值时,自动触发关播流程回收流水线全部子进程资源,消除长期占用资源的僵尸流。

23、进一步的,所述控制面模块为无状态服务集群,支持水平扩容;所述媒体与人工智能面模块为有状态节点服务,单个code对应的流水线固定定驻于单一节点,系统内置code-节点登记表,支撑多节点分布式扩容部署。

24、进一步的,所述控制面模块的开播接口内置输出地址智能拼接组件;所述拼接组件执行逻辑为:当传入pushurl末尾无分隔符“/”、且streamkey首字符不为“/”和“?”时,自动在两者间补充“/”拼接完整推流地址,兼容两类第三方直播平台地址格式规范。

25、进一步的,每条流水线内置关播缓冲清理组件;收到code对应关播指令时,组件清空混流推流子进程内全部历史解说音频缓存,仅保留实时生成的关播语音;待关播语音完整播放并增加预设余量时长后,强制销毁混流推流子进程,杜绝关播后缓存音频持续向外推送。

26、进一步的,系统还配置弹幕解析分发子单元,所述弹幕解析分发子单元与code一一绑定;支持在流水线创建完成后延迟接收上层下发的直播间分享文本,自动从分享文本中提取直播间访问链接,根据code启停对应直播间弹幕采集任务,弹幕数据仅路由至对应code流水线用于人工智能解说互动。

27、采用上述方案本发明取得的有益效果如下:

28、1、本发明以流地址code为唯一隔离键,实现进程、拉流来源、知识库、人设配置、弹幕来源、输出鉴权六维度物理隔离,多租户流水线完全独立运行,无数据串扰、无资源抢占,单服务器可承载多路租户并发直播解说,大幅提升服务器资源利用率,降低规模化运营成本。

29、2、通过无状态控制面接口实现开播、关播、参数配置全流程主动可控,无需前端登录会话,可无缝对接上层管理平台,适配自动化、批量式直播运营场景。

30、3、内置推流地址智能拼接逻辑,可自动适配不同第三方直播平台的地址格式,无需人工修改配置,降低多平台部署适配成本。

31、4、通过15秒周期看门狗巡检、180秒网络抖动容忍阈值、监控故障放行机制,兼顾网络波动适配性与僵尸流清理效果,自动回收闲置资源,避免资源长期占用,保障系统长期稳定运行。

32、5、开播前置源流校验杜绝无源幽灵解说,关播强制清空缓存避免音频残留,从源头解决直播异常输出问题,大幅提升直播解说画质、音质稳定性。

33、6、控制面无状态可水平扩容,媒体面按code钉节点分布式部署,支持多节点集群扩容,可适配海量租户、高并发直播解说业务场景。