CN112565016B - 异常时延的定位方法、系统、装置、电子设备及存储介质 - Google Patents

异常时延的定位方法、系统、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN112565016B
CN112565016B CN202011408511.9A CN202011408511A CN112565016B CN 112565016 B CN112565016 B CN 112565016B CN 202011408511 A CN202011408511 A CN 202011408511A CN 112565016 B CN112565016 B CN 112565016B
Authority
CN
China
Prior art keywords
time delay
duration
stage
length
cloud
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.)
Active
Application number
CN202011408511.9A
Other languages
English (en)
Other versions
CN112565016A (zh
Inventor
周志伟
印体亮
陈德全
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing QIYI Century Science and Technology Co Ltd
Original Assignee
Beijing QIYI Century Science and Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing QIYI Century Science and Technology Co Ltd filed Critical Beijing QIYI Century Science and Technology Co Ltd
Priority to CN202011408511.9A priority Critical patent/CN112565016B/zh
Publication of CN112565016A publication Critical patent/CN112565016A/zh
Application granted granted Critical
Publication of CN112565016B publication Critical patent/CN112565016B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/33Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using wide area network [WAN] connections
    • A63F13/335Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using wide area network [WAN] connections using Internet
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64723Monitoring of network processes or resources, e.g. monitoring of network load
    • H04N21/64738Monitoring network characteristics, e.g. bandwidth, congestion level

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computer Security & Cryptography (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

本发明实施例提供了一种异常时延的定位方法、系统、装置、电子设备及存储介质,所述方法包括:获取云资源的图像帧在多个同步阶段的时延长度;针对每一同步阶段,根据云资源的图像帧在该同步阶段的时延长度,确定落在预设的各时延区间内的帧数量以及落在所述各时延区间内图像帧的时延总时长;针对每一时延区间,根据该时延区间对应的帧数量和时延总时长,确定该时延区间是否满足异常时延区间的判断条件,若是,则确定该时延区间为异常时延区间。解决了相关技术中只能计算云资源在全链路的时延数据的技术问题,实现了云资源在全链路每个同步阶段的时延计算和监控,提高了异常时延区间的定位精度和监控精度。

Description

异常时延的定位方法、系统、装置、电子设备及存储介质
技术领域
本发明涉及云计算技术领域,尤其涉及一种异常时延的定位方法、系统、装置、电子设备及存储介质。
背景技术
相关技术中,云游戏等云资源的延时和卡顿是非常关键的指标,是影响用户体验的关键因素,如何快速地发现并定位延时原因是至关重要的。
相关技术中,只能计算和监控云资源的全链路时延,在计算全链路时延时,通过打点监控来实现时延监控,还有一种监控卡顿的方法,是通过判断音频帧的缺失来判断卡顿。而申请人发现,上述方法并不适用于时延很低的云资源,用户感觉到视频延时很大或卡顿,但并不能从全链路时延和缺失的音频帧找到延时卡顿的原因,无法在全链路中定位异常,也不能针对同步链路进行针对性的改善。
针对相关技术中存在的上述问题,目前尚未发现有效的解决方案。
发明内容
本发明实施例的目的在于提供一种异常时延的定位方法、系统、装置、电子设备及存储介质,以解决相关技术中只能计算云资源在全链路的时延数据的技术问题。具体技术方案如下:
在本发明实施例的第一方面,提供了一种异常时延的定位方法,包括:获取云资源的图像帧在多个同步阶段的时延长度;针对每一同步阶段,根据云资源的图像帧在该同步阶段的时延长度,确定落在预设的各时延区间内的帧数量以及落在所述各时延区间内图像帧的时延总时长;针对每一时延区间,根据该时延区间对应的帧数量和时延总时长,确定该时延区间是否满足异常时延区间的判断条件,若是,则确定该时延区间为异常时延区间。
可选的,当所述多个同步阶段包括:编码阶段、传输阶段、解码阶段、渲染阶段时,所述多个同步阶段对应的时延长度为:编码时长,解码时长,渲染时长,渲染时长,获取云资源的图像帧在多个同步阶段的时延长度包括:接收从云端传输的编码数据,获取所述编码数据中的编码时长,其中,所述编码数据包括编码帧和编码时长;在所述编码数据接收完成后,获取所述编码数据从所述云端传输至客户端的传输时长;将所述编码帧传递至所述客户端的解码模块,在所述编码帧被所述解码模块解算成解码帧后,获取所述解码模块的解码时长;将所述解码帧传递至所述客户端的渲染模块,在所述解码帧被所述渲染模块渲染完成后,获取所述渲染模块的渲染时长。
可选的,当所述多个同步阶段包括:编码阶段、传输阶段、解码阶段、渲染阶段时,获取云资源的图像帧在多个同步阶段的时延长度包括:接收从云端传输的编码数据,其中,所述编码数据包括编码帧和编码时长;在所述编码数据接收完成后,在所述编码数据中记录所述编码时长和从所述云端传输至客户端的传输时长;将所述编码帧传递至所述客户端的解码模块,在所述编码帧被所述解码模块解算成解码帧后,在所述解码帧中记录所述编码时长、所述传输时长、以及解码时长;将所述解码帧传递至所述客户端的渲染模块,在所述解码帧被所述渲染模块渲染完成后,获取所述编码时长、所述传输时长、解码时长、以及渲染时长,并将获取的编码时长确定为编码阶段的时延长度,将获取的传输时长确定为传输阶段的时延长度,将获取的解码时长确定为解码阶段的时延长度,将获取的渲染时长确定为渲染阶段的时延长度。
可选的,当所述多个同步阶段包括:推流阶段、传输阶段、播放阶段,获取云资源的图像帧在多个同步阶段的时延长度包括:接收从推流端传输的云数据,其中,所述云数据包括图像帧和推流时长;在所述云数据接收完成后,在所述云数据中记录所述推流时长和从所述推流端传输至播放端的传输时长;将所述云数据传递至所述播放端的播放模块,在所述云数据播放完成后,获取所述推流时长、所述传输时长、以及播放时长,并将获取的推流时长确定为推流阶段的时延长度,将获取的传输时长确定为传输阶段的时延长度,将获取的播放时长确定为播放阶段的时延长度。
可选的,在确定该时延区间为异常时延区间之后,所述方法还包括:基于所述异常时延区间生成提示信息,其中,所述提示信息用于指示导致所述云资源延时卡顿的同步阶段。
在本发明实施例的第二方面,提供了一种异常时延的定位系统,该系统包括:多个第一子系统,以及第二子系统;其中,第一子系统,用于执行上述实施例所描述的方法,并向所述第二子系统发送时延数据,其中,时延数据中包括所述落在各时延区间内的帧数量以及时延总时长;第二子系统,用于接收所述多个第一子系统的时延数据,筛选出对应同一云资源的时延数据,并对该云资源的时延分布状态进行监控。
可选的,所述第二子系统在执行所述对该云资源的时延分布状态进行监控的步骤时,具体用于:确定所述云资源在每个时延区间的时延时长占比和时延时长均值,并基于各个时延区间的时延时长占比和时延时长均值,对所述云资源整体的时延分布状态进行监控。
可选的,所述第二子系统在执行所述对该云资源的时延分布状态进行监控的步骤时,具体用于:将筛选出的时延数据按所述第一子系统的属性进行分类;基于同一属性类别的时延数据,确定所述云资源在每个时延区间的时延时长占比和时延时长均值。
在本发明实施例的第三方面,还提供了一种异常时延的定位装置,包括:获取模块,用于获取云资源的图像帧在多个同步阶段的时延长度;计算模块,用于针对每一同步阶段,根据云资源的图像帧在该同步阶段的时延长度,确定落在预设的各时延区间内的帧数量以及落在所述各时延区间内图像帧的时延总时长;定位模块,用于针对每一时延区间,根据该时延区间对应的帧数量和时延总时长,确定该时延区间是否满足异常时延区间的判断条件,若是,则确定该时延区间为异常时延区间。
可选的,当所述多个同步阶段包括:编码阶段、传输阶段、解码阶段、渲染阶段时,所述多个同步阶段对应的时延长度为:编码时长,解码时长,渲染时长,渲染时长,所述获取模块包括:第一获取单元,用于接收从云端传输的编码数据,获取所述编码数据中的编码时长,其中,所述编码数据包括编码帧和编码时长;第二获取单元,用于在所述编码数据接收完成后,获取所述编码数据从所述云端传输至客户端的传输时长;第四获取单元,用于将所述编码帧传递至所述客户端的解码模块,在所述编码帧被所述解码模块解算成解码帧后,获取所述解码模块的解码时长;第五获取单元,用于将所述解码帧传递至所述客户端的渲染模块,在所述解码帧被所述渲染模块渲染完成后,获取所述渲染模块的渲染时长。
可选的,当所述多个同步阶段包括:编码阶段、传输阶段、解码阶段、渲染阶段时,所述获取模块包括:第一接收单元,用于接收从云端传输的编码数据,其中,所述编码数据包括编码帧和编码时长;第一记录单元,用于在所述编码数据接收完成后,在所述编码数据中记录所述编码时长和从所述云端传输至客户端的传输时长;第二记录单元,用于将所述编码帧传递至所述客户端的解码模块,在所述编码帧被所述解码模块解算成解码帧后,在所述解码帧中记录所述编码时长、所述传输时长、以及解码时长;第六获取单元,用于将所述解码帧传递至所述客户端的渲染模块,在所述解码帧被所述渲染模块渲染完成后,获取所述编码时长、所述传输时长、解码时长、以及渲染时长,并将获取的编码时长确定为编码阶段的时延长度,将获取的传输时长确定为传输阶段的时延长度,将获取的解码时长确定为解码阶段的时延长度,将获取的渲染时长确定为渲染阶段的时延长度。
可选的,当所述多个同步阶段包括:推流阶段、传输阶段、播放阶段,所述获取模块包括:第二接收单元,用于接收从推流端传输的云数据,其中,所述云数据包括图像帧和推流时长;第三记录单元,用于在所述云数据接收完成后,在所述云数据中记录所述推流时长和从所述推流端传输至播放端的传输时长;第七获取单元,用于将所述云数据传递至所述播放端的播放模块,在所述云数据播放完成后,获取所述推流时长、所述传输时长、以及播放时长,并将获取的推流时长确定为推流阶段的时延长度,将获取的传输时长确定为传输阶段的时延长度,将获取的播放时长确定为播放阶段的时延长度。
可选的,所述装置还包括:生成模块,用于在所述定位模块确定该时延区间为异常时延区间之后,基于所述异常时延区间生成提示信息,其中,所述提示信息用于指示导致所述云资源延时卡顿的同步阶段。
在本发明实施例的第四方面,还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述任一所述的异常时延的定位方法。
在本发明实施例的第五方面,还提供了一种存储介质,所述存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述任一所述的异常时延的定位方法。
在本发明实施例的第六方面,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的异常时延的定位方法。
本发明实施例提供的技术方案,获取云资源的图像帧在多个同步阶段的时延长度,然后针对每一同步阶段,根据云资源的图像帧在该同步阶段的时延长度,确定落在预设的各时延区间内的帧数量以及落在各时延区间内图像帧的时延总时长,最后针对每一时延区间,根据该时延区间对应的帧数量和时延总时长,确定该时延区间是否满足异常时延区间的判断条件,若是,则确定该时延区间为异常时延区间,通过获取图像帧在多个同步阶段的时延长度,并分别计算云资源在多个同步阶段中各时延区间内的帧数量和时延总时长,在全链路中对图像帧的时延长度进行时延区间划分,解决了相关技术中只能计算云资源在全链路的时延数据的技术问题,实现了云资源在全链路每个同步阶段的时延计算和监控,提高了异常时延区间的定位精度和监控精度。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例的一种异常时延的定位方法的流程图;
图2是本发明实施例的云端与客户端同步的示意图;
图3是本发明实施例的一种异常时延的定位系统的示意图;
图4为本发明实施例中示出的一种异常时延的定位装置的结构示意图;
图5为本发明实施例中示出的一种电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个类似的实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
在本实施例中提供了一种异常时延的定位方法,图1是根据本发明实施例的一种异常时延的定位方法的流程图,如图1所示,该流程包括如下步骤:
步骤S102,获取云资源的图像帧在多个同步阶段的时延长度;
在本实施例的云资源可以但不限于为云游戏,直播视频等在云端(云服务器、网络服务器)与客户端(可以是手机、电视、电脑等终端)同步且对时延要求高的多媒体资源,云资源包括若干个图像帧,按照时序逐帧同步到客户端,每个图像帧依次经过多个同步阶段,从云端同步到用户的客户端上进行显示播放。
步骤S104,针对每一同步阶段,根据云资源的图像帧在该同步阶段的时延长度,确定落在预设的各时延区间内的帧数量以及落在各时延区间内图像帧的时延总时长;
本实施例的时延区间对应图像帧的同步状态(如优秀,良好,很差等),每个时延区间对应一个特定的时间长度区段,在预先设定时延区间时,可以基于不同的条件和策略来划分时延区间,例如,按照用户观看感知的经验值来划分,按照固定时间长度进行均分,如将0到理论最大时延长度的总时长均分为多个时延区间,在划分完成后,还可以进行调整,例如,基于后期收集到的用户观看的反馈,对预设的时延区间进行调整,从而能更好的对延时卡顿问题进行更好的分析,满足用户的时延需求。
在一些示例中,可以预先根据经验值,用户反馈信息(如0-30ms,用户反馈流畅;30-50ms用户反馈可以接受;50-100ms,用户反馈勉强接受,>100ms,用户反馈无法接受),图像帧的正常处理时长等设定时延区间,针对每一个同步阶段,设定对应的多个时延区间。
步骤S106,针对每一时延区间,根据该时延区间对应的帧数量和时延总时长,确定该时延区间是否满足异常时延区间的判断条件,若是,则确定该时延区间为异常时延区间。若否,则确定该时延区间为正常时延区间。
本实施例的判断条件包括帧数量和时延总时长两个条件,在帧数量和时延总时长同时满足预设条件时,确定该时延区间满足异常时延区间的判断条件。
可选的,可以通过阈值比较时延区间内的总时长和帧数量,如,时延区间内的总时长是否大于第一阈值,帧数量是否大于第二阈值,若时延区间内的总时长大于第一阈值,且帧数量大于第二阈值,则确定满足判断条件;此外,也可以根据时延区间内的总时长和帧数量的比值(卡顿比)与第三阈值进行比较,若大于第三阈值,则确定满足判断条件。
在一些示例中,在根据该时延区间对应的帧数量和时延总时长,确定该时延区间是否满足异常时延区间的判断条件之前,也可以在所有的时延区间中选择最小时延长度大于预设时长的特定时延区间,如在0-30ms,30-50ms,50-100ms,100-150ms,>150ms,五个时延区间中,选择最小时延长度大于100m的特定时延区间,即针对100-150ms,>150ms的两个时延区间,根据该时延区间对应的帧数量和时延总时长,确定该时延区间是否满足异常时延区间的判断条件,若有,则确定对应的同步阶段为异常同步阶段。可以应用在时延区间较多,或者是云资源的图像帧较多的场景中,通过选中特定的时延区间,可以减少帧数量和时延总时长的统计时间,通过预先选择出用户最想关注的时延区间(如时延长度较大的几个时延区间)或者最有可能导致云资源同步卡顿的时延区间,可以提高异常时延的定位速度。
通过上述步骤,获取云资源的图像帧在多个同步阶段的时延长度,然后针对每一同步阶段,根据云资源的图像帧在该同步阶段的时延长度,确定落在预设的各时延区间内的帧数量以及落在各时延区间内图像帧的时延总时长,最后针对每一时延区间,根据该时延区间对应的帧数量和时延总时长,确定该时延区间是否满足异常时延区间的判断条件,若是,则确定该时延区间为异常时延区间,通过获取图像帧在多个同步阶段的时延长度,并分别计算云资源在多个同步阶段中各时延区间内的帧数量和时延总时长,在全链路中对图像帧的时延长度进行时延区间划分,解决了相关技术中只能计算云资源在全链路的时延数据的技术问题,实现了云资源在全链路每个同步阶段的时延计算和监控,提高了异常时延区间的定位精度和监控精度。
本实施例的执行主体可以是云游戏、云直播等云客户端,例如,手机、电脑、平板、电视等终端。本实施例的方案可以应用在云游戏,云直播等在多个网络节点传输且时延要求高的应用场景中,在该类特殊场景下,采用本实施例的方案,可以定位出异常时延区间,进而确定包括异常时延区间的同步阶段,可以在同步链路中定位出导致云资源卡顿或者同步异常的异常网络节点,如网关,发送端,接收端等,进而对异常网络节点进行针对性提醒和改进,提高云资源的同步时效性。
实施例一
图2是本发明实施例的云端与客户端同步的示意图,包括四个同步阶段,分别是:编码阶段、传输阶段、解码阶段、渲染阶段,编码阶段在云端上,传输阶段在云端与客户端之间,解码阶段和渲染阶段均在客户端上,时延长度包括全链路中的:编码阶段的编码时长、传输阶段的传输时长、解码阶段的解码时长、渲染阶段的渲染时长。
在本实施例中,时延长度可以在每个同步阶段完成后实时获取,也可以在多个同步阶段同步完成后再获取。在云资源包括多个图像帧时,每个图像帧通过标识信息(如图像ID、时间戳等)进行标识。
在本实施例的一个实施方式中,获取云资源的图像帧在多个同步阶段的时延长度包括:
S11,接收从云端传输的编码数据,获取编码数据中的编码时长,其中,编码数据包括编码帧和编码时长;
编码阶段的编码时长携带在编码数据中,可以通过解析编码数据,提取编码帧、以及对应的编码时长,编码时长是编码帧在云端的编码耗时时长,如编码时长T1为35ms。
S12,在编码数据接收完成后,获取编码数据从云端传输至客户端的传输时长;
传输阶段的传输时长可以通过计算编码数据(在云端)的其实传输时间和(在客户端)的终止接收时间之差来得到,即编码数据在云端和客户端之间传输的耗时时长,如传输时长T2为12ms。
S13,将编码帧传递至客户端的解码模块,在编码帧被解码模块解算成解码帧后,获取解码模块的解码时长;
与编码对应,解码模块在客户端本地执行,可以通过计算解码模块的起始解算时间和终止解算时间之差得到,解码时长是编码帧在客户端的解码耗时时长,如解码时长T3为40ms。
S14,将解码帧传递至客户端的渲染模块,在解码帧被渲染模块渲染完成后,获取渲染模块的渲染时长。
为了将解码帧渲染在客户端的可视化界面,需要调用客户端的GPU等组件进行图像渲染,可以通过计算渲染模块的起始渲染时间和终止渲染时间之差得到,渲染模块的耗时时长为渲染时长,如渲染时长T4为10ms.由此可知,总同步时长=T1+T2+T3+T4=97ms。
实施例二
在本实施例中,获取云资源的图像帧从编码阶段到渲染阶段的多个时延长度包括:
S21,接收从云端传输的编码数据,其中,编码数据包括编码帧和编码时长;
S22,在编码数据接收完成后,在编码数据中记录编码时长和从云端传输至客户端的传输时长;
S23,将编码帧传递至客户端的解码模块,在编码帧被解码模块解算成解码帧后,在解码帧中记录编码时长、传输时长、以及解码时长;
S24,将解码帧传递至客户端的渲染模块,在解码帧被渲染模块渲染完成后,获取编码时长、传输时长、解码时长、以及渲染时长,并将获取的编码时长确定为编码阶段的时延长度,将获取的传输时长确定为传输阶段的时延长度,将获取的解码时长确定为解码阶段的时延长度,将获取的渲染时长确定为渲染阶段的时延长度。
本实施例二与实施例一的区别在于,在同步完成之后再获取同步过程中各个阶段的时延长度,在前面同步阶段的时延长度作为数据包携带在下一个同步阶段待处理的数据中,如将编码阶段和传输阶段的编码时长和传输时长携带在解码阶段待处理的编码数据中,通过图像帧的标识信息唯一标识与图像帧对应的数据,可以提高时延长度的获取效率。
在本实施例的另一个应用场景中,网络构架包括推流端,网络,播放端,多个同步阶段包括推流阶段,传输阶段,播放阶段。当多个同步阶段包括:推流阶段、传输阶段、播放阶段,获取云资源的图像帧在多个同步阶段的时延长度包括:接收从推流端传输的云数据,其中,云数据包括图像帧和推流时长;在云数据接收完成后,在云数据中记录推流时长和从推流端传输至播放端的传输时长;将云数据传递至播放端的播放模块,在云数据播放完成后,获取推流时长、传输时长、以及播放时长,并将获取的推流时长确定为推流阶段的时延长度,将获取的传输时长确定为传输阶段的时延长度,将获取的播放时长确定为播放阶段的时延长度。
在本实施例中,针对每一同步阶段,根据云资源的图像帧在该同步阶段的时延长度包括:针对云资源的所有图像帧,分别确定该时延长度所落在的时延区间,统计每个时延区间的帧数量,以及落在各时延区间内图像帧的时延总时长。
在一个实例中,对编码时长T1,传输时长T2,解码时长T3,渲染时长T4,预先进行时延区间划分,可以分成N(比如5个)个区间,比如网络耗时的传输时长可以分成0-30ms,30-50ms,50-100ms,100-150ms,>150ms,共5个时延区别,编码,解码,渲染等可以都具有自己独立的区间,由于图像帧在多个同步阶段的理论处理时长可能不同,导致异常时延的帧数量和时延总时长也可能不同,通过对各个同步阶段进行自适应划分,针对每一个同步阶段的每一个时延区间,都判定是否满足异常时延区间的判断条件(判断条件可以不同),可以进一步精确定位异常时延所在的同步阶段。编码阶段的时延区间分为0-5ms,5-10ms,10-30ms,30-50ms,>50ms,解码阶段的时延区间分为0-20ms,20-50ms,50-80ms,80-100ms,>100ms,渲染阶段的时延区间分为0-10ms,10-20ms,20-40ms,40-80ms,>80ms,在计算时,先确定时延长度所在的时延区间,如T2=12ms,在第一个区间(0-30ms),然后计算各个区间的视频帧数和,以及各个区间中图像帧的时延总长度。时延区间划分的规则:编码,网络传输,解码,渲染各个数值不同,可以按照各个耗时的等级:优秀,良好,一般,较差,很差。比如:0-30ms是优秀的网络传输时延,30-50ms耗时良好,50-100ms一般,100-150ms较差,>150ms很差。同时对比解码也是这个规则,但是数值区间不一样([0-10],[10,30],[30-100],[100-150],[>150])。T1,T2,T3,T4分别对应编码,网络,解码,渲染。各自有5个区间。通过计算,可以得到以下时延数据:
T1:编码时长落在各个区间个数:EN1,EN2,EN3,EN4,EN5,编码时延在各个区间的时延总和:ET1,ET2,ET3,ET4,ET5;
T2:传输时长落在各个区间个数:NN1,NN2,NN3,NN4,NN5,网络时延在各个区间的时延总和:NT1,NT2,NT3,NT4,NT5;
T3:解码时长落在各个区间个数:DN1,DN2,DN3,DN4,DN5,解码时延在各个区间的时延总和:DT1,DT2,DT3,DT4,DT5;
T4:渲染时长落在各个区间个数:RN1,RN2,RN3,RN4,RN5,渲染时延在各个区间的时延总和:RT1,RT2,RT3,RT4,RT5。
在本实施例的一个应用场景中,基于时延数据在客户端提示用户当前云资源的同步状态,可以选择出时延最大的同步阶段,进而定位导致云资源延时卡顿的具体原因,用户可以针对性处理和改善,在确定该时延区间为异常时延区间之后,还包括:基于异常时延区间生成提示信息,其中,提示信息用于指示导致云资源延时卡顿的同步阶段。
可选的,本实施例的提示信息可以通过客户端消息,应用内消息,窗口消息等形态触发,通过弹窗、短信等方式通知。在一个示例中,提示信息包括:发生异常的时间点、卡顿时长、云资源标识、存在异常时延区间的同步阶段;可以通过不同的通知方式、消息形态来实现差异化提示,以对应云资源不同的卡顿原因。
在一个示例中,云资源的多个图像帧在传输阶段落在较差和很差对应时延区间的帧数量最多,帧数量大于预定数量,时延总时长,满足判断条件,则可以生成提示信息,当前云资源的网络环境较差,请更换网络环境,如切换至5G,切换至WIFI等。
图3是本发明实施例的一种异常时延的定位系统的示意图,如图3所示,该系统包括:多个第一子系统30,以及第二子系统32;其中,
第一子系统30,用于执行上述实施例所描述的方法,并向第二子系统发送时延数据,其中,时延数据中包括落在各时延区间内的帧数量以及时延总时长;
第二子系统32,用于接收多个第一子系统的时延数据,筛选出对应同一云资源的时延数据,并对该云资源的时延分布状态进行监控。
在本实施例的一个应用场景中,第一子系统为客户端,第二子系统为服务器;在本实施例的另一个应用场景中,第一子系统为数据抓取系统,第二组系统为监控系统。第一子系统和第二子系统可以分别对应两个电子设备,也可以对应一个电子设备中的两个功能模块,如服务器中的数据抓取模块和数据分析模块。
针对来自多个第一子系统的多组时延长度,对该云资源的时延分布状态进行监控。本实施例在筛选同一云资源的时延数据时,可以通过云资源的云资源标识进行筛选和分类,如提起携带在时延数据中的云资源标识,基于该云资源标识进行筛选。
在本实施例的一个实施方式中,第二子系统在执行对该云资源的时延分布状态进行监控的步骤时,具体用于:确定云资源在每个时延区间的时延时长占比和时延时长均值,并基于各个时延区间的时延时长占比和时延时长均值,对云资源整体的时延分布状态进行监控。
在一个示例中,投递周期为1分钟,基于投递周期通知各个阶段的耗时情况,包括4个客户端,在第一时延区间的帧数量分别是10帧、4帧、12帧、5帧,时延总时长分别为120ms、50ms、150ms、60ms,第一时延区间的时延时长均值=
(120ms+50ms+150ms+60ms)/(10帧+4帧+12帧+5帧)=12.25。
在本实施例的一个实施方式中,第二子系统在执行对该云资源的时延分布状态进行监控的步骤时,具体用于:将筛选出的时延数据按第一子系统的属性进行分类;基于同一属性类别的时延数据,确定云资源在每个时延区间的时延时长占比和时延时长均值。
可选的,本实施例的属性可以是第一子系统所属的地理区域,终端类型(操作系统、播放软件等),网络类型、账号类型(如VIP账号、普通账号等)。
在一个应用场景中,按照地理区域对时延数据进行分类,然后计算云资源在每个地理区域内每个时延区间的时延时长占比和时延时长均值,定位出时延时长占比或时延时长均值最大的地理区域,该地理区域内的云服务器机房、区域网络可能存在问题;在另一些应用场景中,按照客户端类型对时延数据进行分类,然后计算云资源在每类客户端的每个时延区间的时延时长占比和时延时长均值,定位出时延时长占比或时延时长均值最大的客户端类型,该客户端可能存在编码渲染异常,进而监控不同手机型号、操作系统的云资源同步能力。
在此通过一个具体的实施场景对本实施例的方案进行完整解释和说明:
对视频帧的进行监控,监控每帧的从编码、传输、解码、渲染阶段的时延,然后把时延按照各个时延区间进行划分,统计各个区间的时延总和以及帧数量。时延区间划分的原理在于:云游戏的时延很低,如果不按照区间而统一取平均值,那么网络异常播放一次会把整体的均值拉高,不能准确反馈云游戏的整体时延情况。通过划分区间,可以更准确细化的知道时延情况,也能知道网络小波动时延小升高的情况,更能知道网络大波动时延较高的情况。最终可以得到整个云游戏播放过程中的时延情况和流畅性情况。通过客户端与云手机(云端)的同步时间用来计算各个阶段的时延长度,流程包括:
云手机记录编码一个视频帧的编码耗时时间T1;
此视频帧的编码耗时时间T1和视频帧一起传递到播放端;
播放端收完此视频帧记录网络耗时T2,同时把T1,T2和此视频帧传递给解码模块;
解码模块收到此视频帧记录解码时间T3,同时把T1,T2,T3和解码后的数据传递给渲染模块;
渲染模块收到此视频帧后记录渲染时间T4;
对时延区间按耗时等级进行划分,分成N(比如5个)个区间,比如网络耗时可以分成0-30ms,30-50ms,50-100ms,100-150ms,>150ms,编码,解码,渲染等可以都具有自己独立的区间。然后同时记录各个区间的视频帧数和,和具体的时延累加和。时延区间划分的规则:编码,网络传输,解码,渲染各个数值不同,但基本按照各个耗时的等级:优秀,良好,一般,较差,很差。比如:0-30ms是优秀的网络传输时延,30-50ms耗时良好,50-100ms一般,100-150ms较差,>150ms很差。同时对比解码也是这个规则,但是数值区间不一样([0-10],[10,30],[30-100],[100-150],[>150])。T1,T2,T3,T4分别对应编码,网络,解码,渲染。各自有5个区间:
T1:编码时延落在各个区间个数:EN1,EN2,EN3,EN4,EN5,编码时延在各个区间总和:ET1,ET2,ET3,ET4,ET5;
T2:网络时延落在各个区间个数:NN1,NN2,NN3,NN4,NN5,网络时延在各个区间总和:NT1,NT2,NT3,NT4,NT5;
T3:解码时延落在各个区间个数:DN1,DN2,DN3,DN4,DN5,解码时延在各个区间总和:DT1,DT2,DT3,DT4,DT5;
T4:渲染时延落在各个区间个数:RN1,RN2,RN3,RN4,RN5,渲染时延在各个区间总和:RT1,RT2,RT3,RT4,RT5。
比如:网络时延T2分为NN(1-5),表示各5种时延区间的帧个数和,NT(1-5)表示各5种时延区间的帧时延累计和,依此类推,编码时延:EN(1-5),ET(1-5),解码时延:DN(1-5),DT(1-5),渲染时延:RN(1-5),RT(1-5)。最终一个投递周期内比如1分钟内,各个阶段的耗时情况都可以收集完整。比如网络耗时::NN1,0-30ms:个数1200,NT1时延累计和24000,NN2(30-50ms):个数500,NT2:时延累计和20000,NN3(50-100ms):个数98个,NT3:时延累计和6860,NN4(100-150ms):个数2个,NT4:时延累计和240,NN5(>150ms):个数0,NT5:时延累计和0;
客户端把上一监控个周期上午数据投递到服务器后,把各个区间内容都清空,再次开始收集计数投递,以此类推;
服务器端对客户端投递的数据进行分析计算,计算总时延=编码+传输+解码+渲染.所有的投递数据计算平均值或者按照区域,节目来区分。总时延在区间1的比例和平均值计算方法:
总时延在区间1的平均值=sum(ET1+NT1+DT1+RT1)/((EN1+NN1+DN1+RN1));
总时延在区间1的占比=sum(EN1+NN1+DN1+RN1)/((EN1+NN1+DN1+RN1)+(EN2+NN2+DN2+RN2)+(EN3+NN3+DN3+RN3)+(EN4+NN4+DN4+RN4));
通过本实施例的方案,可以计算各个区间的比例和均值。,可以算出云游戏等云资源的整体的时延区间的均值水平和比例。比如:总时延<50ms占比70%,时延均值为30ms,总时延50-110ms占比22%,均值为73ms。同时根据视频的最优时延(平均最小时延)+一个时延阈值比如50ms,当视频帧的时延大于这个值时可能会产生卡顿算出云游戏的卡顿比。
通过对云资源整个播放过程中所有的视频帧进行监控和计算时延,同时对所有的视频帧的时延进行时延区间划分,最终得到一个云游戏的时延和流畅性的统计报表。可以对云资源进行更准确的监控和分析,以提升用户体验。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
在本实施例中还提供了一种异常时延的定位装置,用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
与上述方法实施例相对应,本发明实施例还提供了一种异常时延的定位装置,图4为本发明实施例中示出的一种异常时延的定位装置的结构示意图,如图4所示,该装置可以包括:获取模块40、计算模块42,定位模块44,其中,
获取模块40,用于获取云资源的图像帧在多个同步阶段的时延长度;
计算模块42,用于针对每一同步阶段,根据云资源的图像帧在该同步阶段的时延长度,确定落在预设的各时延区间内的帧数量以及落在所述各时延区间内图像帧的时延总时长;
定位模块44,用于针对每一时延区间,根据该时延区间对应的帧数量和时延总时长,确定该时延区间是否满足异常时延区间的判断条件,若是,则确定该时延区间为异常时延区间。
在本发明实施例的具体实施方式中,当所述多个同步阶段包括:编码阶段、传输阶段、解码阶段、渲染阶段时,所述多个同步阶段对应的时延长度为:编码时长,解码时长,渲染时长,渲染时长,所述获取模块包括:第一获取单元,用于接收从云端传输的编码数据,获取所述编码数据中的编码时长,其中,所述编码数据包括编码帧和编码时长;第二获取单元,用于在所述编码数据接收完成后,获取所述编码数据从所述云端传输至客户端的传输时长;第四获取单元,用于将所述编码帧传递至所述客户端的解码模块,在所述编码帧被所述解码模块解算成解码帧后,获取所述解码模块的解码时长;第五获取单元,用于将所述解码帧传递至所述客户端的渲染模块,在所述解码帧被所述渲染模块渲染完成后,获取所述渲染模块的渲染时长。
在本发明实施例的具体实施方式中,当所述多个同步阶段包括:编码阶段、传输阶段、解码阶段、渲染阶段时,所述获取模块包括:第一接收单元,用于接收从云端传输的编码数据,其中,所述编码数据包括编码帧和编码时长;第一记录单元,用于在所述编码数据接收完成后,在所述编码数据中记录所述编码时长和从所述云端传输至客户端的传输时长;第二记录单元,用于将所述编码帧传递至所述客户端的解码模块,在所述编码帧被所述解码模块解算成解码帧后,在所述解码帧中记录所述编码时长、所述传输时长、以及解码时长;第六获取单元,用于将所述解码帧传递至所述客户端的渲染模块,在所述解码帧被所述渲染模块渲染完成后,获取所述编码时长、所述传输时长、解码时长、以及渲染时长,并将获取的编码时长确定为编码阶段的时延长度,将获取的传输时长确定为传输阶段的时延长度,将获取的解码时长确定为解码阶段的时延长度,将获取的渲染时长确定为渲染阶段的时延长度。
在本发明实施例的具体实施方式中,当所述多个同步阶段包括:推流阶段、传输阶段、播放阶段,所述获取模块包括:第二接收单元,用于接收从推流端传输的云数据,其中,所述云数据包括图像帧和推流时长;第三记录单元,用于在所述云数据接收完成后,在所述云数据中记录所述推流时长和从所述推流端传输至播放端的传输时长;第七获取单元,用于将所述云数据传递至所述播放端的播放模块,在所述云数据播放完成后,获取所述推流时长、所述传输时长、以及播放时长,并将获取的推流时长确定为推流阶段的时延长度,将获取的传输时长确定为传输阶段的时延长度,将获取的播放时长确定为播放阶段的时延长度。
在本发明实施例的具体实施方式中,所述装置还包括:生成模块,用于在所述定位模块确定该时延区间为异常时延区间之后,基于所述异常时延区间生成提示信息,其中,所述提示信息用于指示导致所述云资源延时卡顿的同步阶段。
本发明实施例还提供了一种电子设备,如图5所示,包括处理器51、通信接口52、存储器53和通信总线54,其中,处理器51,通信接口52,存储器53通过通信总线54完成相互间的通信,存储器53,用于存放计算机程序;处理器51,用于执行存储器53上所存放的程序时,实现如下步骤:
获取云资源的图像帧在多个同步阶段的时延长度,其中,所述多个同步阶段包括:编码阶段、传输阶段、解码阶段、渲染阶段;根据所述多个时延长度分别计算所述云资源在所述多个同步阶段中各个阶段的时延数据,其中,所述时延数据用于表征所述云资源在多个时延区间的帧数量和总时长。
可选的,获取云资源的图像帧在多个同步阶段的时延长度包括:获取云资源的图像帧在多个同步阶段的时延长度;针对每一同步阶段,根据云资源的图像帧在该同步阶段的时延长度,确定落在预设的各时延区间内的帧数量以及落在所述各时延区间内图像帧的时延总时长;针对每一时延区间,根据该时延区间对应的帧数量和时延总时长,确定该时延区间是否满足异常时延区间的判断条件,若是,则确定该时延区间为异常时延区间。
可选的,当所述多个同步阶段包括:编码阶段、传输阶段、解码阶段、渲染阶段时,所述多个同步阶段对应的时延长度为:编码时长,解码时长,渲染时长,渲染时长,获取云资源的图像帧在多个同步阶段的时延长度包括:接收从云端传输的编码数据,获取所述编码数据中的编码时长,其中,所述编码数据包括编码帧和编码时长;在所述编码数据接收完成后,获取所述编码数据从所述云端传输至客户端的传输时长;将所述编码帧传递至所述客户端的解码模块,在所述编码帧被所述解码模块解算成解码帧后,获取所述解码模块的解码时长;将所述解码帧传递至所述客户端的渲染模块,在所述解码帧被所述渲染模块渲染完成后,获取所述渲染模块的渲染时长。
可选的,当所述多个同步阶段包括:编码阶段、传输阶段、解码阶段、渲染阶段时,获取云资源的图像帧在多个同步阶段的时延长度包括:接收从云端传输的编码数据,其中,所述编码数据包括编码帧和编码时长;在所述编码数据接收完成后,在所述编码数据中记录所述编码时长和从所述云端传输至客户端的传输时长;将所述编码帧传递至所述客户端的解码模块,在所述编码帧被所述解码模块解算成解码帧后,在所述解码帧中记录所述编码时长、所述传输时长、以及解码时长;将所述解码帧传递至所述客户端的渲染模块,在所述解码帧被所述渲染模块渲染完成后,获取所述编码时长、所述传输时长、解码时长、以及渲染时长,并将获取的编码时长确定为编码阶段的时延长度,将获取的传输时长确定为传输阶段的时延长度,将获取的解码时长确定为解码阶段的时延长度,将获取的渲染时长确定为渲染阶段的时延长度。
可选的,当所述多个同步阶段包括:推流阶段、传输阶段、播放阶段,获取云资源的图像帧在多个同步阶段的时延长度包括:接收从推流端传输的云数据,其中,所述云数据包括图像帧和推流时长;在所述云数据接收完成后,在所述云数据中记录所述推流时长和从所述推流端传输至播放端的传输时长;将所述云数据传递至所述播放端的播放模块,在所述云数据播放完成后,获取所述推流时长、所述传输时长、以及播放时长,并将获取的推流时长确定为推流阶段的时延长度,将获取的传输时长确定为传输阶段的时延长度,将获取的播放时长确定为播放阶段的时延长度。
可选的,在确定该时延区间为异常时延区间之后,所述方法还包括:基于所述异常时延区间生成提示信息,其中,所述提示信息用于指示导致所述云资源延时卡顿的同步阶段。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种存储介质,该存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的异常时延的定位方法。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的异常时延的定位方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在存储介质中,或者从一个存储介质向另一个存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (11)

1.一种异常时延的定位方法,其特征在于,包括:
获取云资源的图像帧在多个同步阶段的时延长度;
针对每一同步阶段,根据云资源的图像帧在该同步阶段的时延长度,确定落在预设的各时延区间内的帧数量以及落在所述各时延区间内图像帧的时延总时长;
针对每一时延区间,根据该时延区间对应的帧数量和时延总时长,确定该时延区间是否满足异常时延区间的判断条件,若是,则确定该时延区间为异常时延区间。
2.根据权利要求1所述的方法,其特征在于,当所述多个同步阶段包括:编码阶段、传输阶段、解码阶段、渲染阶段时,所述多个同步阶段对应的时延长度为:编码时长,传输时长,解码时长,渲染时长,则获取云资源的图像帧在多个同步阶段的时延长度包括:
接收从云端传输的编码数据,获取所述编码数据中的编码时长,其中,所述编码数据包括编码帧和编码时长;
在所述编码数据接收完成后,获取所述编码数据从所述云端传输至客户端的传输时长;
将所述编码帧传递至所述客户端的解码模块,在所述编码帧被所述解码模块解算成解码帧后,获取所述解码模块的解码时长;
将所述解码帧传递至所述客户端的渲染模块,在所述解码帧被所述渲染模块渲染完成后,获取所述渲染模块的渲染时长。
3.根据权利要求1所述的方法,其特征在于,当所述多个同步阶段包括:编码阶段、传输阶段、解码阶段、渲染阶段时,获取云资源的图像帧在多个同步阶段的时延长度包括:
接收从云端传输的编码数据,其中,所述编码数据包括编码帧和编码时长;
在所述编码数据接收完成后,在所述编码数据中记录所述编码时长和从所述云端传输至客户端的传输时长;
将所述编码帧传递至所述客户端的解码模块,在所述编码帧被所述解码模块解算成解码帧后,在所述解码帧中记录所述编码时长、所述传输时长、以及解码时长;
将所述解码帧传递至所述客户端的渲染模块,在所述解码帧被所述渲染模块渲染完成后,获取所述编码时长、所述传输时长、解码时长、以及渲染时长,并将获取的编码时长确定为编码阶段的时延长度,将获取的传输时长确定为传输阶段的时延长度,将获取的解码时长确定为解码阶段的时延长度,将获取的渲染时长确定为渲染阶段的时延长度。
4.根据权利要求1所述的方法,其特征在于,当所述多个同步阶段包括:推流阶段、传输阶段、播放阶段,获取云资源的图像帧在多个同步阶段的时延长度包括:
接收从推流端传输的云数据,其中,所述云数据包括图像帧和推流时长;
在所述云数据接收完成后,在所述云数据中记录所述推流时长和从所述推流端传输至播放端的传输时长;
将所述云数据传递至所述播放端的播放模块,在所述云数据播放完成后,获取所述推流时长、所述传输时长、以及播放时长,并将获取的推流时长确定为推流阶段的时延长度,将获取的传输时长确定为传输阶段的时延长度,将获取的播放时长确定为播放阶段的时延长度。
5.根据权利要求1所述的方法,其特征在于,在确定该时延区间为异常时延区间之后,所述方法还包括:
基于所述异常时延区间生成提示信息,其中,所述提示信息用于指示导致所述云资源延时卡顿的同步阶段。
6.一种异常时延的定位系统,其特征在于,该系统包括:多个第一子系统,以及第二子系统;其中,
第一子系统,用于执行权利要求1-5任一所述方法,并向所述第二子系统发送时延数据,其中,时延数据中包括所述落在各时延区间内的帧数量以及时延总时长;
第二子系统,用于接收所述多个第一子系统的时延数据,筛选出对应同一云资源的时延数据,并对该云资源的时延分布状态进行监控。
7.根据权利要求6所述的系统,其特征在于,所述第二子系统在执行所述对该云资源的时延分布状态进行监控的步骤时,具体用于:
确定所述云资源在每个时延区间的时延时长占比和时延时长均值,并基于各个时延区间的时延时长占比和时延时长均值,对所述云资源整体的时延分布状态进行监控。
8.根据权利要求6所述的系统,其特征在于,所述第二子系统在执行所述对该云资源的时延分布状态进行监控的步骤时,具体用于:
将筛选出的时延数据按所述第一子系统的属性进行分类;
基于同一属性类别的时延数据,确定所述云资源在每个时延区间的时延时长占比和时延时长均值。
9.一种异常时延的定位装置,其特征在于,包括:
获取模块,用于获取云资源的图像帧在多个同步阶段的时延长度;
计算模块,用于针对每一同步阶段,根据云资源的图像帧在该同步阶段的时延长度,确定落在预设的各时延区间内的帧数量以及落在所述各时延区间内图像帧的时延总时长;
定位模块,用于针对每一时延区间,根据该时延区间对应的帧数量和时延总时长,确定该时延区间是否满足异常时延区间的判断条件,若是,则确定该时延区间为异常时延区间。
10.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-5任一所述的方法步骤。
11.一种存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-5中任一所述的方法。
CN202011408511.9A 2020-12-04 2020-12-04 异常时延的定位方法、系统、装置、电子设备及存储介质 Active CN112565016B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011408511.9A CN112565016B (zh) 2020-12-04 2020-12-04 异常时延的定位方法、系统、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011408511.9A CN112565016B (zh) 2020-12-04 2020-12-04 异常时延的定位方法、系统、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN112565016A CN112565016A (zh) 2021-03-26
CN112565016B true CN112565016B (zh) 2022-09-30

Family

ID=75048519

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011408511.9A Active CN112565016B (zh) 2020-12-04 2020-12-04 异常时延的定位方法、系统、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN112565016B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113521729B (zh) * 2021-07-02 2023-10-20 咪咕互动娱乐有限公司 云游戏延迟检测方法、服务器、客户端、系统及介质
CN113489789B (zh) * 2021-07-06 2024-06-25 广州虎牙科技有限公司 云游戏耗时数据的统计方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101087400A (zh) * 2007-06-26 2007-12-12 中兴通讯股份有限公司 视频帧延时检测方法及系统
CN106713855A (zh) * 2016-12-13 2017-05-24 深圳英飞拓科技股份有限公司 一种视频播放方法及装置
CN108495164A (zh) * 2018-04-09 2018-09-04 珠海全志科技股份有限公司 音视频同步处理方法及装置、计算机装置及存储介质
CN108616776A (zh) * 2018-05-03 2018-10-02 广州酷狗计算机科技有限公司 直播分析数据获取方法及装置
CN111918055A (zh) * 2020-06-30 2020-11-10 上海艾策通讯科技股份有限公司 视频质量异常定位方法、装置、存储介质及电子设备

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011102317A1 (ja) * 2010-02-18 2011-08-25 株式会社日立製作所 モニタリングシステム、装置および方法
US20170244894A1 (en) * 2016-02-22 2017-08-24 Seastar Labs, Inc. Method and Apparatus for Managing Latency of Remote Video Production
CN107690077B (zh) * 2017-09-05 2021-02-26 北京京东尚科信息技术有限公司 监测视频直播卡顿的方法和装置
CN108900833A (zh) * 2018-07-17 2018-11-27 威创集团股份有限公司 一种拼接墙屏幕同步性检测方法、装置、系统及设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101087400A (zh) * 2007-06-26 2007-12-12 中兴通讯股份有限公司 视频帧延时检测方法及系统
CN106713855A (zh) * 2016-12-13 2017-05-24 深圳英飞拓科技股份有限公司 一种视频播放方法及装置
CN108495164A (zh) * 2018-04-09 2018-09-04 珠海全志科技股份有限公司 音视频同步处理方法及装置、计算机装置及存储介质
CN108616776A (zh) * 2018-05-03 2018-10-02 广州酷狗计算机科技有限公司 直播分析数据获取方法及装置
CN111918055A (zh) * 2020-06-30 2020-11-10 上海艾策通讯科技股份有限公司 视频质量异常定位方法、装置、存储介质及电子设备

Also Published As

Publication number Publication date
CN112565016A (zh) 2021-03-26

Similar Documents

Publication Publication Date Title
CN107105309B (zh) 直播调度方法及装置
CN107147919B (zh) 直播快速启播方法及系统
CN102098574B (zh) 视频流测量方法和系统
CN106878769B (zh) 直播视频质量监测方法和装置
US7965650B2 (en) Method and system for quality monitoring of media over internet protocol (MOIP)
CN112565016B (zh) 异常时延的定位方法、系统、装置、电子设备及存储介质
CN103067778B (zh) 数据监测系统和数据监测方法
EP2775673B1 (en) Content reproduction information estimating device, method and program
CN109714622A (zh) 一种视频数据处理方法、装置及电子设备
CN114189705A (zh) 直播卡顿处理方法及系统
CN102136962B (zh) 质量问题定界方法及相关设备与系统
CN112738538B (zh) 直播间挂机行为检测方法、装置、电子设备和计算机可读存储介质
CN112019873A (zh) 视频码率调整方法、装置和电子设备
CN113747186A (zh) 一种数据处理方法、装置、终端及存储介质
CN112135119A (zh) 实时音视频通信中网络状况的自动监测与告警方法及系统
US20150089050A1 (en) Mobile network system
CN104994412B (zh) 一种信息推送方法及装置
CN112752111B (zh) 直播流处理方法及装置、计算机可读存储介质、电子设备
Szilágyi et al. Network side lightweight and scalable YouTube QoE estimation
CN111741319B (zh) 直播数据处理方法、装置及电子设备
CN108322787A (zh) 视频流分发方法、装置及电子设备
CN111479161A (zh) 一种直播的质量数据上报方法和装置
CN116723081A (zh) 一种丢包优化方法和装置
CN113676739B (zh) 一种视频播放方法、装置、设备及存储介质
CN110545447B (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