基于gstreamer的流媒体AI推理的延迟控制方法[发明专利]

(19)中华人民共和国国家知识产权局
(12)发明专利申请
(10)申请公布号 (43)申请公布日 (21)申请号 202111297959.2
(22)申请日 2021.11.04
(71)申请人 北京激浊扬清文化科技有限公司
地址 101300 北京市顺义区龙湾屯镇府前
街13号东楼347
(72)发明人 汤巍敏 杜剑锋 
(74)专利代理机构 苏州中合知识产权代理事务
所(普通合伙) 32266
代理人 阮梅
(51)Int.Cl.
G06T  1/20(2006.01)
G06F  9/48(2006.01)
(54)发明名称基于gstreamer的流媒体AI推理的延迟控制方法(57)摘要本发明公开基于gstreamer的流媒体AI推理的延迟控制方法,包括如下步骤:实时监测infer 推理插件的接口处的推理数据帧信息;获取等待推理的数据帧的数量,判断等待推理的数据帧的数量是否大于最大预设值,若是,则丢弃当前数据帧,
返回;若否,则进入下一步;获取最后一次加入等待推理的数据帧的时间戳与当前数据帧的时间戳的时间差,判断时间差是否小于最小预设值,若是,则丢弃当前数据帧,返回;若否,则进入下一步;使当前数据帧加入infer推理插件的等待队列。本发明通过外部监测推理插件内部的帧数量,有效控制推理插件的内部数据帧缓存数量,来保证输出延迟在控制范围内,不至于一直累计放大,
避免程序崩溃。权利要求书1页  说明书3页  附图2页CN 114140311 A 2022.03.04
C N  114140311
A
1.基于gstreamer的流媒体AI推理的延迟控制方法,其特征在于,包括如下步骤:
步骤S1,实时监测infer推理插件的接口处的推理数据帧信息;
步骤S2,根据推理数据帧信息获取等待推理的数据帧的数量,判断等待推理的数据帧的数量是否大于最大预设值,若是,则丢弃当前数据帧,返回;若否,则进入步骤S3;
步骤S3,获取最后一次加入等待推理的数据帧的时间戳与当前数据帧的时间戳的时间差,判断时间差是否小于最小预设值,若是,则丢弃当前数据帧,返回;若否,则进入步骤S4;
步骤S4,使当前数据帧加入infer推理插件的等待队列。
2.根据权利要求1所述的基于gstreamer的流媒体AI推理的延迟控制方法,其特征在于,所述推理数据帧信息包括推理完成的数据帧累计数量、准备加入推理缓存的数据帧累计数量以及加入推理缓存的数据帧的时间戳。
3.根据权利要求1所述的基于gstreamer的流媒体AI推理的延迟控制方法,其特征在于,所述等待推理的数据帧的数量等于准备加入推理缓存的数据帧累计数量减去推理完成的数据帧累计数量。
4.根据权利要求1所述的基于gstreamer的流媒体AI推理的延迟控制方法,其特征在于,所述infer推理插件的接口包括输入端口和输出端口。
5.根据权利要求1所述的基于gstreamer的流媒体AI推理的延迟控制方法,其特征在于,所述步骤S1,具体包括如下步骤,在infer推理插件的接口处调用prob探针函数,用于实时监测infer推理插件的接口处的推理数据帧信息。
权 利 要 求 书1/1页CN 114140311 A
基于gstreamer的流媒体AI推理的延迟控制方法
技术领域
[0001]本发明涉及通信技术领域,尤其涉及基于gstreamer的流媒体AI推理的延迟控制方法。
背景技术
[0002]基于gstreamer的多媒体架构方案是目前时下应用(包括媒体播放器,流媒体处理器等)比较多的架构方案,大致架构如图2所示,其中,source插件:就是数据来源,可能是文件,流媒体,或其他应用生成;queue插件:在gstreamer中起到缓存和分线程的作用;infer 插件:机器视觉的推理插件;sink插件:数据输出,可能是直播、文件或者显示等。[0003]常见设计,如图3所示,在这个pipeline架构设计中,每个插件都是直接调穿,不会独立线程执行,用queue插件来分线程和缓存,也利用queue插件的leaky属性来丢帧,来保持媒体的实时性。
[0004]在这个架构模型中,保持实时性的先决条件是所有插件(除了queue插件)都直接调穿,这样才能让所有的数据帧都在queue插件中累计,queue插件来计算有多少缓存,然后启动丢帧来保证实时性。
[0005]Gstreamer的设计年代较早,初衷是为流媒体服务的,但是当应用到机器视觉等领域的时候,这个延迟控制方法就失去了原有的能力,因为机器视觉的CV filter插件需要用SOC的神经网络硬件或GPU硬件来推理,经常会启动独立线程来处理推理逻辑,所以会把上游的数据帧缓存在推理插件内部,造成推理插件上游的queue插件内部无法缓存累计,也就不能触发丢帧逻辑了。导致的现象是,如果推理算力跟不上媒体流的速度,就会有越来越多的数据帧在推理插件内部累计,输出延迟越来越大。
[0006]有一种可行的解决方法是直接联系SOC方案商修改推理插件内部逻辑,如果积压数据帧数量超过了我们预定义的数量,就阻塞接口函数。那每次更新都需要进行同步,存在较大代码风险,且很多SOC方案商的推理插件并不开源也就没法实现自己修改了。
发明内容
[0007]为了解决上述技术问题,本发明提出基于gstreamer的流媒体AI推理的延迟控制方法。
[0008]为了达到上述目的,本发明的技术方案如下:
[0009]基于gstreamer的流媒体AI推理的延迟控制方法,包括如下步骤:
[0010]步骤S1,实时监测infer推理插件的接口处的推理数据帧信息;
[0011]步骤S2,根据推理数据帧信息获取等待推理的数据帧的数量,判断等待推理的数据帧的数量是否大于最大预设值,若是,则丢弃当前数据帧,返回;若否,则进入步骤S3;获取等待推理的数据帧的数量并判断等待推理的数据帧的数量是否大于最大预设值[0012]步骤S3,获取最后一次加入等待推理的数据帧的时间戳与当前数据帧的时间戳的时间差,判断时间差是否小于最小预设值,若是,则丢弃当前数据帧,返回;若否,则进入步
骤S4;
[0013]步骤S4,使当前数据帧加入infer推理插件的等待队列。
[0014]优选地,所述推理数据帧信息包括推理完成的数据帧累计数量、准备加入推理缓存的数据帧累计数量以及加入推理缓存的数据帧的时间戳。
[0015]优选地,所述等待推理的数据帧的数量等于准备加入推理缓存的数据帧累计数量减去推理完成的数据帧累计数量。
[0016]优选地,所述infer推理插件的接口包括输入端口和输出端口。
[0017]优选地,所述步骤S1,具体包括如下步骤,在infer推理插件的接口处调用prob探针函数,用于实时监测infer推理插件的接口处的推理数据帧信息。
[0018]基于上述技术方案,本发明的有益效果是:
[0019]1)本发明通过外部监测推理插件内部的帧数量,可以不依赖插件内部不能有缓存和分线程的先决条件,有效控制机器视觉的CV filter插件用SOC的神经网络硬件或GPU硬件来推理,启动独立线程来处理推理逻辑时推理插件的内部数据帧缓存数量,来保证输出延迟在控制范围内,不至于一直累计放大,避免程序崩溃;
[0020]2)本发明无需修改推理插件内部逻辑,通过外部监测推理插件内部的帧数量,不会有技术耦合,避免直接通过SOC方案商维护推理插件,无需更新同步。
附图说明
[0021]下面结合附图对本发明的具体实施方式作进一步详细的说明。
[0022]图1是一个实施例中基于gstreamer的流媒体AI推理的延迟控制方法流程图;[0023]图2是基于gstreamer的AI推理架构图;
[0024]图3是现有gstreamer的多媒体架构设计图;
[0025]图4是一个实施例中改进后的基于gstreamer的AI推理架构图。
具体实施方式
[0026]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
[0027]如图1所示,本实施例提供一种基于gstreamer的流媒体AI推理的延迟控制方法,包括如下步骤:
[0028]步骤S1,在infer推理插件的输入端口sink pad和输出端口src pad上分别增加一个prob探针函数来
动态追踪infer推理插件内部的数据帧数量,如图4所示,输出端口处prob探针函数(prob src)记录推理完成的数据帧累计数量;输入端口处prob探针函数(prob sink)记录准备加入推理缓存的数据帧累计数量以及加入推理缓存的数据帧的时间戳(PTS);
[0029]步骤S2,根据推理数据帧信息获取等待推理的数据帧的数量,所述等待推理的数据帧的数量等于准备加入推理缓存的数据帧累计数量减去推理完成的数据帧累计数量,判断等待推理的数据帧的数量是否大于最大预设值,若是,则丢弃当前数据帧,返回;若否,则进入步骤S3;
[0030]步骤S3,获取最后一次加入等待推理的数据帧的时间戳与当前数据帧的时间戳的
时间差,判断时间差是否小于最小预设值,若是,则丢弃当前数据帧,返回;若否,则进入步骤S4;
[0031]步骤S4,使当前数据帧加入infer推理插件的等待队列。
[0032]以上所述仅为本发明所公开的基于gstreamer的流媒体AI推理的延迟控制方法的优选实施方式,并非用于限定本说明书实施例的保护范围。凡在本说明书实施例的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本说明书实施例的保护范围之内。

本文发布于:2024-09-20 15:26:50,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/777837.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:推理   数据   插件   数量
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议