一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种视频直播质量的链路监控系统及方法与流程

2021-12-04 13:12:00 来源:中国专利 TAG:


1.本技术实施例涉及视频直播技术领域,尤其涉及一种视频直播质量的链路监控系统及方法。


背景技术:

2.目前,视频直播平台为了优化用户的观看体验,会设置相应的监控系统进行视频直播质量的监控,以避免网络直播异常影响用户的使用体验。在进行视频直播质量监控时,需要统计各个节点(如推流客户端、推流后台,拉流后台和拉流客户端等)的运行状态监控数据,以根据各节点的运行状态监控数据定位直播异常。其中,在进行监控数据上报时,通过主播端定期广播统计包,各个节点收到统计包后,将自身的监控数据追加到统计包中,然后这些监控数据会随着统计包传递到下一个节点,最终由观众客户端完成上报。
3.但是,现有视频直播平台在统计上报数据时,统计包在各个节点的传递容易导致丢包的情况,且监控数据的统计链路较长,导致整个数据上报流程冗长耗时,影响直播质量监控效果和异常处理效率。


技术实现要素:

4.本技术实施例提供一种视频直播质量的链路监控系统及方法,能够解决视频直播质量监控流程冗长耗时的技术问题,保障视频直播质量监控的实时性和稳定性,优化异常处理效率。
5.在第一方面,本技术实施例提供了一种视频直播质量的链路监控系统,包括:
6.推流客户端,用于在通过媒体流链路传输流媒体数据至各个拉流客户端的过程中,广播第一序列标识至所述媒体流链路以及所述拉流客户端,基于所述第一序列标识生成运行监控数据并周期性上传至系统后台;
7.所述媒体流链路,用于基于所述第一序列标识生成运行监控数据并周期性上传至所述系统后台;
8.所述拉流客户端,用于基于所述第一序列标识,所述拉流客户端的第二序列标识生成运行监控数据并周期性上传至所述系统后台;
9.所述系统后台,用于接收各个运行监控数据,基于所述第一序列标识将各个运行监控数据串联为链路监控数据,并根据所述链路监控数据进行所述推流客户端当场视频直播的直播质量分析。
10.在第二方面,本技术实施例提供了一种视频直播质量的链路监控方法,包括:
11.推流客户端在通过媒体流链路传输流媒体数据至各个拉流客户端的过程中,广播第一序列标识至所述媒体流链路以及所述拉流客户端,基于所述第一序列标识生成运行监控数据并周期性上传至系统后台;
12.所述媒体流链路基于所述第一序列标识生成运行监控数据并周期性上传至所述系统后台;
13.所述拉流客户端基于所述第一序列标识,所述拉流客户端的第二序列标识生成运行监控数据并周期性上传至所述系统后台;
14.所述系统后台接收各个运行监控数据,基于所述第一序列标识将各个运行监控数据串联为链路监控数据,并根据所述链路监控数据进行所述推流客户端当场视频直播的直播质量分析。
15.在第三方面,本技术实施例提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如第二方面所述的视频直播质量的链路监控方法。
16.本技术实施例通过推流客户端广播第一序列标识至媒体流链路以及拉流客户端,基于第一序列标识生成运行监控数据并周期性上传至系统后台;媒体流链路基于第一序列标识生成运行监控数据并周期性上传至系统后台;拉流客户端基于第一序列标识,拉流客户端的第二序列标识生成运行监控数据并周期性上传至系统后台;系统后台接收各个运行监控数据,基于第一序列标识将各个运行监控数据串联为链路监控数据,并根据链路监控数据进行推流客户端当场视频直播的直播质量分析。采用上述技术手段,方便各个节点及时上传运行监控数据,简化监控数据的上报流程,节省监控数据的上报耗时,保障视频直播质量监控的实时性和稳定性。系统后台基于标识序列可以将视频直播过程中各个节点的运行监控数据串联,基于链路监控可以及时、直观地定位视频直播的异常,优化异常处理效率。
附图说明
17.图1是本技术实施例提供的一种视频直播质量的链路监控系统的结构示意图;
18.图2是本技术实施例提供的一种视频直播质量的链路监控方法的流程图;
19.图3是本技术实施例中流媒体数据的传输示意图;
20.图4是本技术实施例中运行监控数据的传输示意图;
21.图5是本技术实施例中推流客户端的运行状态信息示意图;
22.图6是本技术实施例中拉流客户端的运行状态信息示意图。
具体实施方式
23.为了使本技术的目的、技术方案和优点更加清楚,下面结合附图对本技术具体实施例作进一步的详细描述。可以理解的是,此处所描述的具体实施例仅仅用于解释本技术,而非对本技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本技术相关的部分而非全部内容。在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
24.本技术提供的一种视频直播质量的链路监控系统及方法,旨在通过推流客户端广播序列标识的方式,使得视频直播质量监控链路中的各个节点能够通过序列标识传输运行监控数据。以此系统后台可以根据序列标识将各个运行监控数据串联为链路监控数据,基
于链路监控的方式进行视频直播质量分析。以此来简化监控数据的上报流程,节省监控数据的上报耗时,保障视频直播质量监控的实时性和稳定性,并优化异常处理效率。对于传统的视频直播质量监控场景,在进行视频直播质量监控时,视频直播质量监控链路中的各个节点分开上报运行监控数据,运行监控数据缺少关联性,系统后台单独处理各个运行监控数据,无法形成链路监控。各个节点之间的运行监控数据上报存在一定的时间差,上报时间误差进一步影响视频直播质量监控链路的异常确定。另外一种方式是通过主播端定期广播统计包,各个节点收到统计包后,将自身的监控数据追加到统计包中,然后这些监控数据会随着统计包传递到下一个节点,最终由观众客户端完成上报。由于统计包在各个节点的传递容易导致丢包的情况,且监控数据的统计链路较长,导致整个数据上报流程冗长耗时,影响直播质量监控效果和异常处理效率。基于此,提供本技术实施例的一种视频直播质量的链路监控系统及方法,以解决视频直播质量监控流程冗长耗时的技术问题。
25.实施例:
26.图1给出了本技术实施例提供的一种视频直播质量的链路监控系统的结构示意图,参照图1,该视频直播质量的链路监控系统具体包括:
27.推流客户端,用于在通过媒体流链路传输流媒体数据至各个拉流客户端的过程中,广播第一序列标识至媒体流链路以及拉流客户端,基于第一序列标识生成运行监控数据并周期性上传至系统后台;
28.媒体流链路,用于基于第一序列标识生成运行监控数据并周期性上传至系统后台;
29.拉流客户端,用于基于第一序列标识,拉流客户端的第二序列标识生成运行监控数据并周期性上传至系统后台;
30.系统后台,用于接收各个运行监控数据,基于第一序列标识将各个运行监控数据串联为链路监控数据,并根据链路监控数据进行推流客户端当场视频直播的直播质量分析。
31.本技术实施例通过在视频直播场景中,利用推流客户端广播序列标识至媒体流链路和拉流客户端,定义这一序列标识为第一序列标识。通过广播第一序列标识,后续视频直播监控链路中的各个节点在进行运行监控数据上报时,将第一序列标识添加至运行状态监控数据中,作为运行状态监控数据的标识信息。后续系统后台在接收到频直播监控链路中的各个节点上报的运行监控数据时,即可根据运行监控数据中的第一序列标识将各个运行监控数据串联起来,形成链路监控数据,以链路监控数据进行当前视频直播的直播质量监控和分析。由于运行监控数据通过视频直播监控链路中的各个节点分别周期性上报至系统后台,可以避免运行监控数据以链路传递的形式上报至系统后台,以此可以节省运行监控数据的上报耗时。并且,运行监控数据在系统后台又可以串联成链路监控数据进行处理,方便系统后台全局地、统一地进行视频直播质量分析,确定直播链路异常。
32.可以理解的是,如图1所示,在视频直播场景中,推流客户端会通过媒体流链路传输流媒体数据至各个拉流客户端,以此来实现视频直播画面的传输。流媒体数据在传输过程中,从推流客户端采集视频直播画面开始,需要经过推流客户端、媒体流链路和拉流客户端等各个节点的处理,最终通过拉流客户端将视频直播画面渲染,实现视频直播画面的播放。为了进行视频直播质量监控,就需要确定当前视频直播中,流媒体数据所经过的各个节
点处理流媒体数据的状态。以各个节点相应处理状态的运行监控数据作为基础数据,来评价当前视频直播质量。同时通过直播质量分析,也可以确定各个节点是否出现异常情况。以此,通过系统后台获取推流客户端、媒体流链路和拉流客户端的运行监控数据,利用运行监控数据包含的第一标识序列将各个运行监控数据串联起来,进行当前视频直播质量分析。
33.进一步的,图2给出了本技术实施例提供的一种视频直播质量的链路监控方法的流程图,本实施例中提供的视频直播质量的链路监控方法可以由上述视频直播质量的链路监控系统执行,该视频直播质量的链路监控系统可以通过软件和/或硬件的方式实现,该视频直播质量的链路监控系统可以是多个物理实体构成。
34.下述以视频直播质量的链路监控系统为执行视频直播质量的链路监控方法的主体为例,进行描述。参照图2,该视频直播质量的链路监控方法具体包括:
35.s110、推流客户端在通过媒体流链路传输流媒体数据至各个拉流客户端的过程中,广播第一序列标识至媒体流链路以及拉流客户端,基于第一序列标识生成运行监控数据并周期性上传至系统后台;
36.s120、媒体流链路基于第一序列标识生成运行监控数据并周期性上传至系统后台;
37.s130、拉流客户端基于第一序列标识,拉流客户端的第二序列标识生成运行监控数据并周期性上传至系统后台;
38.s140、系统后台接收各个运行监控数据,基于第一序列标识将各个运行监控数据串联为链路监控数据,并根据链路监控数据进行推流客户端当场视频直播的直播质量分析。
39.具体的,视频直播质量的链路监控系统在进行视频直播质量监控时,通过视频直播质量监控链路的各个节点各自上报运行监控数据,以提升运行监控数据上报的实时性和稳定性。其中,视频直播质量监控链路的节点具体包括了推流客户端、拉流客户端以及两者之间媒体流链路的各个节点,每个节点各自上报自身的运行监控数据,运行监控数据汇总至系统后台。需要说明的是,各个运行监控数据除了包含第一序列标识外,还需要包含自身节点的标识信息,以便于系统后台对串联在一起的不同运行监控数据进行区分。同样的,由于一场视频直播可能有多个拉流客户端观看,则为了区分不同的拉流客户端,拉流客户端在上传运行监控数据时,需要在运行监控数据中添加自身的第二序列标识,该序列标识用于唯一标识一个拉流客户端,不同的拉流客户端采用不同的第二序列标识,以此系统后台在串联运行监控数据时,即可对不同的拉流客户端进行区分。
40.本技术实施例中,第一序列标识用于唯一标识推流客户端的当场视频直播。推流客户端在发起一场视频直播时,就会产生该第一序列标识,第一序列标识通过添加至当场视频直播的各个节点的运行监控数据中。则该第一序列标识可以唯一标识当场视频直播完整的监控链路数据,利用该第一序列标识即可将一场视频直播中,来自不同节点的运行监控数据串联起来,进而实现整个视频直播的链路监控。需要说明的是,由于第一序列标识唯一标识推流客户端的当场视频直播,则在推流客户端结束一场直播后,当场视频直播的直播质量链路监控流程结束。当推流客户端重新开播时,会刷新这一第一序列标识,以进行另一场视频直播的直播质量链路监控流程。而对于拉流客户端而言,根据其当前观看的直播,获取对应推流客户端的第一序列标识进行运行监控数据上报。
41.可选的,第一序列标识根据当场视频直播的开播时间戳、当前时间戳、运行监控数据上传周期以及系统后台时间戳确定。其中,第一序列标识的生成规则为:traceid=statid<<64|index。其中,statid用于唯一表示一次开播,根据开播时间戳得到;index=(系统后台时间戳 (当前时间戳

开播时间戳))/统计间隔。当前时间戳和开播时间戳使用系统时基确定,这样可以保证各个时间戳是单调递增的,即使重新开机在一天内也不怕第一序列标识出现回滚的情况,保障了第一序列标识的唯一性。
42.对应每一场视频直播,推流客户端都会利用当前视频直播的流媒体数据传输链路,将第一序列标识广播给媒体流链路中的各个节点以及拉流客户端,以用于后续的运行监控数据上报。可选的,在广播第一序列标识至媒体流链路以及拉流客户端之后,推流客户端还用于根据设定的同步周期重新广播第一序列标识至媒体流链路以及拉流客户端。推流客户端通过设定同步周期(如每隔1秒)广播第一序列标识,以保证视频直播质量监控链路中各个节点都能够获取到该第一序列标识,使用该序列标识上报运行监控数据。避免某一个节点出现序列标识不同步的情况,影响数据上报。例如,用户在观看视频直播过程中执行了直播间切换操作,此时切换直播间后,该直播间对应的推流客户端需要及时同步第一序列标识至当前用户端(即拉流客户端),以用于当前用户端进行当场视频直播的运行监控数据上报。避免当前用户端错误使用其他直播间的推流客户端发送的第一序列标识,导致直播质量监控链路出现数据错乱的情况。上述,通过周期性更新第一序列标识,可以确保当前视频直播的各个节点均收到这一第一序列标识,确保运行监控数据的准确上报。避免因为丢包、拉流客户端切换直播间等原因导致运行监控数据上报错误的情况。
43.另一方面,本技术实施例中,媒体流链路包括多个依序连接的服务器节点,各个服务器节点用于在依序传输流媒体数据的过程中,基于第一序列标识,以及自身处理流媒体数据的运行状态,生成运行监控数据,并分别周期性上传运行监控数据至系统后台。其中,参照图3,媒体流链路对应视频直播过程中的视频推流一端,包括了连接推流客户端的第一视频服务器,连接视频服务器的第一视频代理服务器和视频转码服务器。对应视频拉流一端,包括了连接拉流客户端的第二视频服务器和第二视频代理服务器。如图3所示,在进行视频直播过程中,推流客户端通过该媒体流链路,将采集到的视频直播画面传输至拉流客户端,最终在拉流客户端进行渲染显示。并且在传输流媒体数据时,推流客户端还利用这一链路传输第一序列标识,将第一序列标识广播至各个服务器节点和拉流客户端后,各个节点即可根据该第一序列标识进行运行监控数据上报。
44.具体的,本技术实施例中,运行监控数据分别根据推流客户端、媒体流链路或拉流客户端监控自身处理流媒体数据的运行状态确定。可以理解的是,在视频直播场景中,如图4所示,推流客户端通过媒体流链路的各个服务器节点传输给拉流客户端时,对于视频直播监控链路中的各个节点,会根据其处理流媒体数据时的各个运行状态,确定自身的运行监控数据,进而将在先收到的第一序列标识添加至自身的运行监控数据,周期性上报运行监控数据。其中,第一视频代理服务器、视频转码服务器将自身运行监控数据汇总至第一视频服务器,第一视频服务器将各个节点的运行监控数据通过tcp协议上报至系统后台。同样的,第二视频代理服务器将自身运行监控数据汇总至第二视频服务器,第二视频服务器将各个节点的运行监控数据通过tcp协议上报至系统后台。对应推流客户端和拉流客户端,则通过http协议上报运行监控数据至系统后台,以此完成当场视频直播各节点的运行监控数
据上报。上述,各个节点采用独立上报的方式分别上传运行监控数据至系统后台,可以确保运行监控数据及时上传,避免数据流转延误上报时机,保障视频直播质量监控的实时性。
45.可选的,本技术实施例的运行监控数据包括推流客户端、服务器节点或拉流客户端的各个子模块处理流媒体数据的运行状态信息。各个节点在根据流媒体数据的处理状态上传运行监控数据时,分不同的子模块收集运行状态信息,基于运行状态信息生成运行监控数据。
46.示例性的,如图5所示,对应推流客户端,其运行监控数据则包含了流媒体数据采集模块、编码模块、发送窗口模块、连接管理模块、app状态模块等多个子模块的运行状态信息,各个子模块用于执行不同的功能。则在进行运行监控数据生成时,分别获取上述子模块的运行状态信息,以采集模块为例,则需要记录其采集帧率、采集能力等信息。同理,如图6所示,对应拉流客户端,其运行监控数据则包含了连接管理模块、组织模块、抖动缓冲模块、解码模块、渲染模块和app状态模块等多个子模块的运行状态信息,各个子模块用于执行不同的功能。则在进行运行监控数据生成时,分别获取上述子模块的运行状态信息,以解码模块为例,则需要记录其解码能力和首帧渲染时间等信息。此外,对应各个服务器节点,需要对上行数据丢包、下行数据丢包等情况进行监控,因此其运行监控数据需要数据发送模块和数据接收模块的运行状态信息。对应不同子模块完成运行状态信息采集后,即可结合第一序列标识生成运行监控数据进行上报。
47.可选的,由于网络发生拥塞丢包时,直播链路会发生卡顿,为了诊断卡顿的详细原因和各节点的具体表现是否符合预期,则各个节点在上报运行监控数据时,其运行监控数据基于数据缓存机制和重传确认机制上传至所述系统后台。通过结合数据缓存机制和重传确认机制,可以确保数据上报的可靠性,使得直播质量监控更为准确。
48.可选的,在一个实施例中,将各个子模块的运行状态信息按设定顺序串联生成运行监控数据;对应的,按照不同的拉流客户端,将各个运行监控数据按媒体流数据传输顺序串联成链路监控数据。以此可以使链路监控数据更为有序、直观地展示各个节点的运行状态统计情况。
49.最终,系统后台将运行监控传输按照第一序列标识串联成链路监控数据后,即可根据链路监控数据进行推流客户端当场视频直播的直播质量分析。其中,通过输出显示链路监控数据,并根据链路监控数据中,运行监控数据包含的各个子模块的运行状态信息诊断链路异常,输出异常诊断结果。具体的,通过借助开源可视化库对链路监控数据进行可视化和诊断,便于直观确定异常位置,及时处理异常,优化视频直播质量。
50.在一个实施例中,推流客户端在推送流媒体数据过程中,也可能作为拉流客户端,从另一个推流客户端处拉取流媒体数据,则此时该推流客户端同样需要接收另一个推流客户端广播的第一序列标识,基于这一第一序列标识进行拉流过程中的运行监控数据上报。推流客户端需要实时判断当前使用场景是否发生变化。当场景发生变化时,立即上报该场景切换的用户操作和结果等切换信息,通过重新判断场景以切换统计正确有效的运行监控数据。同样的,对于拉流客户端,其在观看视频直播时,可以同时进入不同的直播间,或者在不同的直播间切换。那么根据其当前进入的直播间,需要获取对应直播间拉流客户端的第一序列标识,以进行对应视频直播的直播质量运行监控数据上报。
51.上述,通过推流客户端广播第一序列标识至媒体流链路以及拉流客户端,基于第
一序列标识生成运行监控数据并周期性上传至系统后台;媒体流链路基于第一序列标识生成运行监控数据并周期性上传至系统后台;拉流客户端基于第一序列标识,拉流客户端的第二序列标识生成运行监控数据并周期性上传至系统后台;系统后台接收各个运行监控数据,基于第一序列标识将各个运行监控数据串联为链路监控数据,并根据链路监控数据进行推流客户端当场视频直播的直播质量分析。采用上述技术手段,方便各个节点及时上传运行监控数据,简化监控数据的上报流程,节省监控数据的上报耗时,保障视频直播质量监控的实时性和稳定性。系统后台基于标识序列可以将视频直播过程中各个节点的运行监控数据串联,基于链路监控可以及时、直观地定位视频直播的异常,优化异常处理效率。
52.在上述实施例的基础上,本技术还提供了一种视频直播质量的链路监控装置,本实施例提供的视频直播质量的链路监控装置具体包括:广播模块、第一上传模块、第二上传模块、第三上传模块和分析模块。
53.其中,广播模块用于在推流客户端通过媒体流链路传输流媒体数据至各个拉流客户端的过程中,通过推流客户端广播第一序列标识至媒体流链路以及拉流客户端;
54.第一上传模块用于通过媒体流链路基于第一序列标识生成运行监控数据并周期性上传至系统后台;
55.第二上传模块用于通过媒体流链路基于第一序列标识生成运行监控数据并周期性上传至系统后台;
56.第三上传模块用于通过拉流客户端基于第一序列标识,拉流客户端的第二序列标识生成运行监控数据并周期性上传至系统后台;
57.分析模块用于通过系统后台接收各个运行监控数据,基于第一序列标识将各个运行监控数据串联为链路监控数据,并根据链路监控数据进行推流客户端当场视频直播的直播质量分析。
58.上述,通过推流客户端广播第一序列标识至媒体流链路以及拉流客户端,基于第一序列标识生成运行监控数据并周期性上传至系统后台;媒体流链路基于第一序列标识生成运行监控数据并周期性上传至系统后台;拉流客户端基于第一序列标识,拉流客户端的第二序列标识生成运行监控数据并周期性上传至系统后台;系统后台接收各个运行监控数据,基于第一序列标识将各个运行监控数据串联为链路监控数据,并根据链路监控数据进行推流客户端当场视频直播的直播质量分析。采用上述技术手段,方便各个节点及时上传运行监控数据,简化监控数据的上报流程,节省监控数据的上报耗时,保障视频直播质量监控的实时性和稳定性。系统后台基于标识序列可以将视频直播过程中各个节点的运行监控数据串联,基于链路监控可以及时、直观地定位视频直播的异常,优化异常处理效率。
59.本技术实施例提供的视频直播质量的链路监控装置可以用于执行上述实施例提供的视频直播质量的链路监控方法,具备相应的功能和有益效果。
60.在上述实施例的基础上,本技术实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种视频直播质量的链路监控方法,存储介质可以是任何的各种类型的存储器设备或存储设备。当然,本技术实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的视频直播质量的链路监控方法,还可以执行本技术任意实施例所提供的视频直播质量的链路监控方法中的相关操作。
61.上述仅为本技术的较佳实施例及所运用的技术原理。本技术不限于这里所述的特定实施例,对本领域技术人员来说能够进行的各种明显变化、重新调整及替代均不会脱离本技术的保护范围。因此,虽然通过以上实施例对本技术进行了较为详细的说明,但是本技术不仅仅限于以上实施例,在不脱离本技术构思的情况下,还可以包括更多其他等效实施例,而本技术的范围由权利要求的范围决定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献