CN115514684B - 音频卡顿评估的方法及装置 - Google Patents
音频卡顿评估的方法及装置 Download PDFInfo
- Publication number
- CN115514684B CN115514684B CN202110633213.8A CN202110633213A CN115514684B CN 115514684 B CN115514684 B CN 115514684B CN 202110633213 A CN202110633213 A CN 202110633213A CN 115514684 B CN115514684 B CN 115514684B
- Authority
- CN
- China
- Prior art keywords
- file
- target
- accumulated
- audio
- determining
- 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
Links
- 238000011156 evaluation Methods 0.000 title claims description 23
- 239000012634 fragment Substances 0.000 claims abstract description 195
- 238000000034 method Methods 0.000 claims abstract description 41
- 238000003860 storage Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 12
- 230000003139 buffering effect Effects 0.000 claims description 11
- 230000003321 amplification Effects 0.000 claims description 7
- 238000003199 nucleic acid amplification method Methods 0.000 claims description 7
- 230000000903 blocking effect Effects 0.000 abstract description 4
- 230000005540 biological transmission Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 8
- 230000008447 perception Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 230000004044 response Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000013467 fragmentation Methods 0.000 description 2
- 238000006062 fragmentation reaction Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 239000000969 carrier Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000008451 emotion Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000003607 modifier Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000006798 recombination Effects 0.000 description 1
- 238000005215 recombination Methods 0.000 description 1
- 238000013341 scale-up Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Multimedia (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明提供一种音频卡顿评估的方法及装置。其方法包括:基于音频文件的HTTP请求,确定所述音频文件的目标分片文件的分组;基于所述音频文件的HTTP请求以及连续缓存的判断条件,对分组内所述目标分片文件进行划分,确定所述目标分片文件的缓存类型;基于所述目标分片文件的缓存类型,确定所述目标分片文件的累加下载时长和累加可播放时长,对所述目标分片文件进行质差判定。本发明通过对音频文件的HTTP请求信息进行分析,比较分片文件的累加下载时长和累加可播放时长,判定对应的分片文件是质差还是质优的XDR,评估用户音频播放是否卡顿,进行精确判断,然后根据用户移动音频播放卡顿率,用于评估用户使用网络感知好坏。
Description
技术领域
本发明涉及无线通信技术领域,尤其涉及音频卡顿评估的方法及装置。
背景技术
移动通信技术迅速发展,网络速率高速提升,尤其是5G商用,网络下载速率更是能高达1Gbps。在高速带宽和手机硬件提升基础上,移动应用百花齐放,开发了丰富多彩的手机APP应用,丰富了人们的日常生活,其中音视频类的APP受众用户多,跟人们的日常学习、娱乐息息相关。
目前移动音频类APP种类繁多,并且APP里面的内容丰富多样,活跃用户多。比如北京移动,其音乐类业务量日均在120TB,活跃用户340多万,其中音频类软件精彩内容包括有声书,相声段子,音乐,新闻,综艺娱乐、儿童、情感生活、评书、外语、培训讲座、百家讲坛、广播剧、历史人文、电台、商业财经、IT科技、健康养生、校园电台、汽车、旅游、电影、游戏等5453多个分类。移动音频类APP的音频文件使用TCP、HTTP协议进行传输,音频文件以m4a格式进行编码并进行分片传输,音频播放过程中会自动缓存下一个m4a文件。
而这些音频APP使用感知好坏,直接体现到用户对网络质量的满意度,承载在移动通信网络上的音频APP软件引发的各项用户感知指标,是网络优化维护工程师评估用户使用感知体验,及时发现网络问题的重点依据,因此需要一种可以从网络侧准确定位音频APP是否卡顿的算法。
发明内容
针对现有技术存在的问题,本发明提供音频卡顿评估的方法及装置。
第一方面,本发明提供音频卡顿评估的方法,包括:
基于音频文件的HTTP请求,确定所述音频文件的目标分片文件的分组;
基于所述音频文件的HTTP请求以及连续缓存的判断条件,对分组内所述目标分片文件进行划分,确定所述目标分片文件的缓存类型;
基于所述目标分片文件的缓存类型,确定所述目标分片文件的累加下载时长和累加可播放时长,对所述目标分片文件进行质差判定;
其中,所述连续缓存的判断条件包括:同一用户,URI值相同,且连续出现的GET请求。
可选的,所述基于音频文件的HTTP请求,确定所述音频文件的目标分片文件的分组,包括:
获取所述音频文件的HEAD请求,GET请求,下载开始时间点以及URI;
基于所述HEAD请求中的content-length特征字段,确定所述音频文件的大小;
基于所述GET请求中的esds特征字段,确定所述音频文件的码率;
根据所述音频文件的大小和所述音频文件的码率,确定所述音频文件的播放时长;
在一定时间周期内,以下载开始时间点为起点,按照相同的URI,将所述目标分片文件进行分组。
可选的,所述基于所述音频文件的HTTP请求以及连续缓存的判断条件,对分组内所述目标分片文件进行划分,确定所述目标分片文件的缓存类型,包括:
确定所述分组内的HEAD请求后第一次连续缓存;
在所述HEAD请求后第一次连续缓存中,确定第一个GET请求的第一RANGE值,以及第二个GET请求的第二RANGE值;
若所述目标分片文件为HEAD请求后第一次连续缓存之一,且第一RANGE值为所述音频文件的第一个分片的RANGE值,第二RANGE值的最小值与第一RANGE值的最大值连续,则判定所述目标分片文件为当前播放缓存;
若所述目标分片文件为HEAD后第一次连续缓存之一,且第一RANGE值为所述音频文件的第一个分片的RANGE值,第二RANGE值为所述音频文件最后一个分片的RANGE值,则判定所述目标分片文件为提前缓存;
若所述目标分片文件的所属连续缓存不属于HEAD后出现第一次连续缓存,则判定所述目标分片文件为当前播放缓存。
可选的,所述基于所述目标分片文件的缓存类型,确定所述目标分片文件的累加下载时长和累加可播放时长,对所述目标分片文件进行质差判定,还包括:
若所述目标分片文件为提前缓存,判定所述目标分片文件为质优分片文件;
若所述目标分片文件为当前播放缓存,确定所述目标分片文件的累加下载时长和累加可播放时长,对所述目标分片文件进行质差判定。
可选的,所述若所述目标分片文件为当前播放缓存,确定所述目标分片文件的累加下载时长和累加可播放时长,对所述目标分片文件进行质差判定,包括:
若上一个所述目标分片文件为质优分片文件,确定当前所述目标分片文件的下载完成时间和RANGE最大值;
若上一个所述目标分片文件为质差分片文件,更新所述音频文件的播放开始时间为当前所述目标分片文件的下载开始时间,更新所述已完成播放大小为上一个所述目标分片文件的RANGE最大值;
根据当前所述目标分片文件的下载完成时间和所述音频文件的播放开始时间,确定所述累加下载时长;
根据当前所述目标分片文件的RANGE最大值和已完成播放大小,确定所述累加可播放时长;
基于所述累加下载时长和所述累加可播放时长,对当前所述目标分片文件进行质差判定;
其中,所述音频文件的播放开始时间是由属于当前播放缓存的第一个分片文件的开始下载时间确定的。
可选的,所述基于所述累加下载时长和所述累加可播放时长,对当前所述目标分片文件进行质差判定,包括:
若所述累加下载时长大于等于所述累加可播放时长,则当前所述目标分片文件为质差分片文件;
若所述累加下载时长小于所述累加可播放时长,则当前所述目标分片文件为质优分片文件。
可选的,所述方法还包括:
确定属于质差分片文件的所述目标分片文件的个数;
基于属于质差分片文件的所述目标分片文件的个数和总XDR个数,确定所述用户播放卡顿率。
第二方面,本发明还提供音频卡顿评估的设备,包括存储器,收发机,处理器;
存储器,用于存储计算机程序;收发机,用于在所述处理器的控制下收发数据;处理器,用于执行所述存储器中的计算机程序并实现如下步骤:
基于音频文件的HTTP请求,确定所述音频文件的目标分片文件的分组;
基于所述音频文件的HTTP请求以及连续缓存的判断条件,对分组内所述目标分片文件进行划分,确定所述目标分片文件的缓存类型;
基于所述目标分片文件的缓存类型,确定所述目标分片文件的累加下载时长和累加可播放时长,对所述目标分片文件进行质差判定;
其中,所述连续缓存的判断条件包括:同一用户,URI值相同,且连续出现的GET请求。
第三方面,本发明还提供音频卡顿评估装置,该装置包括:
分组模块,用于基于音频文件的HTTP请求,确定所述音频文件的目标分片文件的分组;
缓存类型判断模块,基于所述音频文件的HTTP请求以及连续缓存的判断条件,对分组内所述目标分片文件进行划分,确定所述目标分片文件的缓存类型;
质差判定模块,用于基于所述目标分片文件的缓存类型,确定所述目标分片文件的累加下载时长和累加可播放时长,对所述目标分片文件进行质差判定;
其中,所述连续缓存的判断条件包括:同一用户,URI值相同,且连续出现的GET请求。
第四方面,本发明还提供一种处理器可读存储介质,所述处理器可读存储介质存储有计算机程序,所述计算机程序用于使所述处理器执行如上所述第一方面所述的音频卡顿评估的方法的步骤。
本发明提供的音频卡顿评估的方法,通过对音频文件的HTTP请求信息进行分析,对分片文件进行分组信息和缓存类型的判断,进而确定分片文件的累加下载时长,以及累加可播放时长,判定对应的分片文件是质差还是质优的XDR,评估用户音频播放是否卡顿,进行精确判断,然后根据用户移动音频播放卡顿率,评估用户使用网络感知好坏。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的音频卡顿评估的方法的流程示意图;
图2是本发明提供的音频卡顿评估流程图;
图3是本发明提供的音频卡顿评估的设备的结构示意图;
图4是本发明提供的音频卡顿评估的装置的结构示意图。
具体实施方式
本发明中术语“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
本发明中术语“多个”是指两个或两个以上,其它量词与之类似。
下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,并不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面对本发明的一些基本概念做如下说明:
移动音频概述:
移动音频,是指利用智能手机、平板电脑、车载音响、可穿戴设备等移动终端作为载体,通过在线下载等方式,提供语音收听等服务,内容包括传统电台,音乐电台,相声评书,综艺娱乐,百科知识,小说,影视原音,广播剧,教育培训,新闻资讯等音频内容的业务总称。在移动互联网下,则诞生了更丰富、更强大的音频媒体。
区别于传统广播,移动音频具有无限性、主动性、伴随性等特点。
无限性:比起传统广播只能提供有限的频道数,移动音频由于采用互联网模式,因此在内容上具有无限延展性,拥有更为海量、丰富的信息,这些海量信息可以进行分类、衍生,实用性更强。
主动性:移动音频是一种传播者与受众双向的互动式传播,用户拥有极大的自主权,既可以自己主动选择并点播感兴趣的内容,并决定以何时、何种方式获得信息,还可以随时就自己接收到的一则信息作出评价和反馈。
伴随性:声音有着天然的优势——解放双手和双眼,具有伴随性的特点,而移动音频将这种伴随属性发挥到最大。在移动互联网时代,碎片化时间越来越多,移动音频可以在多种场景中伴随用户,集合碎片时间,随时随地提供信息内容,如上下班途中、开车、做家务、运动健身等场景中,人们用听来获取信息会更加舒适和方便。
移动音频传输协议概述:
当前移动音频类APP软件主要是通过TCP、HTTP协议进行数据包传输。
传输控制协议(TCP):TCP(传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议。当应用层向TCP层发送用于网间传输的、用8位字节表示的数据流,TCP则把数据流分割成适当长度的报文段,最大传输段大小(Maximum Segment Size,MSS)通常受该计算机连接的网络的数据链路层的最大传送单元(Maximum Transmission Unit,MTU)限制。之后TCP把数据包传给IP层,由它来通过网络将包传送给接收端实体的TCP层。TCP旨在适应支持多网络应用的分层协议层次结构。连接到不同但互连的计算机通信网络的主计算机中的成对进程之间依靠TCP提供可靠的通信服务。
超文本传输协议(HTTP):HTTP是一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。一个客户机与服务器建立连接后,发送一个请求给服务器,请求方式的格式为,统一资源标识符、协议版本号,后边是MIME(Multipurpose Internet Mail Extensions,多用途扩展类型)信息包括请求修饰符、客户机信息和可能的内容。服务器接到请求后,给予相应的响应信息,其格式为一个状态行包括信息的协议版本号、一个成功或错误的代码,后边是MIME信息包括服务器信息、实体信息和可能的内容。其实简单说就是任何服务器除了包括HTML文件以外,还有一个HTTP驻留程序,用于响应用户请求。你的浏览器是HTTP客户,向服务器发送请求,当浏览器中输入了一个开始文件或点击了一个超级链接时,浏览器就向服务器发送了HTTP请求,此请求被送往由IP地址指定的URL。驻留程序接收到请求,在进行必要的操作后回送所要求的文件。在这一过程中,在网络上发送和接收的数据已经被分成一个或多个数据包(packet),每个数据包包括:要传送的数据;控制信息,即告诉网络怎样处理数据包。TCP/IP决定了每个数据包的格式。如果事先不告诉你,你可能不会知道信息被分成用于传输和再重新组合起来的许多小块。
移动音频卡顿算法:
因为移动音频在实际播放过程中会存在缓存情况,当有缓存文件时候,不会存在因为资源不足导致无法播放情况。当没有可播放的缓存文件时,需要边下载边播放,下载资源的速率足够支持音频的播放码率时也不会存在卡顿,当不足时,就会出现影响用户使用感知的卡顿情况。本方案主要基于此原理,通过对码流数据进行解码,并依据算法来判定用户码流生成的XDR是否是质差话单,以及根据用户边下载边播放文件资源是否满足播放,判定用户话单是否卡顿。
注:XDR(X Data Recording)是由CDR(Call Data Recording,呼叫数据记录)演变而来的概念。CDR是传统通信网中对通话过程中网络关键信息的记录。XDR是CDR概念的扩展,泛指对移动网络、承载网络中数据流量的关键信息记录,即流量日志,以用户会话为单位,一个会话形成一条XDR记录。
目前现实中暂无评估音频软件是否卡顿的方法。
本发明通过TCP、HTTP相关协议的码流特征,可以准确识别出相关音频APP,并根据数据传输方式特征,利用相应的算法来判断用户播放过程中是否卡顿,判断用户的实际使用感知情况;可应用于实时监控单(多)用户音频APP播放时的指标情况,指导相关网络优化方案实施,保障用户实时获取良好的感知,同时也可以用于单(多)用户音频APP播放情况的统计分析,评估用户或网络等多个维度的视频会议业务感知。
图1是本发明提供的音频卡顿评估的方法的流程示意图。如图1所示,该方法包括如下步骤:
步骤101、基于音频文件的HTTP请求,确定所述音频文件的目标分片文件的分组;
具体的,音频文件通常是通过各式各类的音频APP实现下载播放的功能,而音频文件的传输主要是通过TCP、HTTP协议进行数据包传输。并且每个音频文件根据用户码流生成的多个XDR文件,即分片文件,而且每个分片文件根据URI特征字段,可以确定是否属于同一个音频文件的分片文件。进而根据URI特征字段是否相同,对音频文件的分片文件进行分组,将相同URI的分片作为一个分组。
步骤102、基于所述音频文件的HTTP请求以及连续缓存的判断条件,对分组内所述目标分片文件进行划分,确定所述目标分片文件的缓存类型;
其中,所述连续缓存的判断条件包括:同一用户,URI值相同,且连续出现的GET请求。
具体的,HTTP请求包括多种形式,比如GET请求,HEAD请求等,每个不同的HTTP请求可以获得对应音频文件的不同信息。
连续缓存是指对同一个用户而言,时间上连续并且属于同一个音频文件的多个分片文件构成的。而每个分片文件的获取是通过GET请求,即每个分片对应一个GET请求。
通过不同形式的HTTP请求获得音频文件的不同信息,以及音频文件是否满足连续缓存的判断条件,进而对每个分组内的分片文件进行划分,确定每个分片文件的缓存类型。
步骤103、基于所述目标分片文件的缓存类型,确定所述目标分片文件的累加下载时长和累加可播放时长,对所述目标分片文件进行质差判定;
具体的,每个分片文件的缓存类型主要是指文件在通过音频APP播放的时候,是当前播放音频文件的当前播放缓存,还是提前缓存的另一个或者几个音频文件。
而确定分片文件的累加下载时长,可以通过多种方式,比如一个移动音频文件分成了5个“.m4a”分片下载,通过第2个分片XDR开始时间减去第1个分片开始时间得到第一个分片的下载时长,通过第5个分片XDR开始时间减去第1个分片开始时间就是得到前4个分片的累加下载时长。
另外一种计算累加下载时长的方式:构成音频文件的每个分片文件都有对应的下载开始时间和下载结束时间,最简单的方式通过该分片文件的下载结束时间减去下载开始时间,获得该分片文件的累加下载时长,或者通过该分片文件的下载结束时间减去第一个连续缓存后的第一个分片文件的下载开始时间,即可获得第一个分片文件到该分片之间的累加下载时长。
累加可播放时长,是指音频文件根据已下载的XDR文件的大小除以该音频文件对应的码率得到的,即音频文件本地缓存的大小按照正常的播放速率,可以播放的时间长度。
通过比较累加下载时长和累加可播放时长的大小,可以确定对应的分片文件是质差还是质优的XDR文件。
本发明提供的音频卡顿评估的方法,通过对音频文件的HTTP请求信息进行分析,对分片文件进行分组信息和缓存类型的判断,进而确定分片文件的累加下载时长,以及累加可播放时长,判定对应的分片文件是质差还是质优的XDR,评估用户音频播放是否卡顿,进行精确判断。
可选的,所述基于音频文件的HTTP请求,确定所述音频文件的目标分片文件的分组,包括:
获取所述音频文件的HEAD请求,GET请求,下载开始时间点以及URI;
基于所述HEAD请求中的content-length特征字段,确定所述音频文件的大小;
基于所述GET请求中的esds特征字段,确定所述音频文件的码率;
根据所述音频文件的大小和所述音频文件的码率,确定所述音频文件的播放时长;
在一定时间周期内,以下载开始时间点为起点,按照相同的URI,将所述目标分片文件进行分组。
具体的,在HTTP请求过程中使用先进行HEAD检查对象是否存在,服务器返回200OK,获取由Request-URI所标识的资源的响应消息报头,其中包括Content-Length(响应体的长度)。得到HEAD检测的200OK返回后进行GET向服务器请求.m4a格式的音频文件;
通过HEAD请求中的Content-Length,确定对应的音频文件的大小,单位为Byte。
音频文件的码率获取是基于分片文件的GET请求,即获取每个.m4a文件的GET请求。通常将一个音频文件拆分成多个大小是65536Byte的“.m4a”分片文件下载。
具体的,根据音频文件格式、码流特征,解析“.m4a”文件音频码率:“.m4a”格式文件中的内容是有很多的box组成的,box格式如下:
box length(4B)+box type(4B)+box content(box length-8)。
从“.m4a”文件中找到moov box是重点,因为找到了这个box,需要从box找出来每个采样帧的位置及大小。一般需要从“.m4a”文件中找到如下的结构,重点是知道stsd、stts、stsc、stsz、stco这几个box。
名称 | 内容 |
stsd | 包含channel num、sample bits、sample rate、esds等信息 |
stts | 可以获取该trak下面有多少的samples |
stsc | 可以获取该trak下有哪些trunk,以及每个trunk有多少sample |
stsz | 可以获取每个sample的大小 |
stco | 可以知道每个trunk的位置 |
解析音频码流最重要的是包含在stsd信息中的esds信息。从这里可以得到audiotype、max bitrate、avg bitrate等信息。
通过研究“.m4a”的下载码流,发现在发送HTTP GET请求“.m4a”文件后的第二个下行payload包中可以找到esds信息,找到对应esds标识,读取其后的第21~24位转换为10进制,即可得到当前音频的码率。
对于一个音频文件而言,其码率的唯一的,即对同一个音频文件的每个分片文件的码率是一样的。
本发明提供的音频卡顿评估的方法,通过对音频文件的HTTP请求信息进行分析,对分片文件进行分组信息和缓存类型的判断,进而确定分片文件的累加下载时长,以及累加可播放时长,判定对应的分片文件是质差还是质优的XDR,评估用户音频播放是否卡顿,进行精确判断。
可选的,所述基于所述音频文件的HTTP请求以及连续缓存的判断条件,对分组内所述目标分片文件进行划分,确定所述目标分片文件的缓存类型,包括:
确定所述分组内的HEAD请求后第一次连续缓存;
在所述HEAD请求后第一次连续缓存中,确定第一个GET请求的第一RANGE值,以及第二个GET请求的第二RANGE值;
若所述目标分片文件为HEAD请求后第一次连续缓存之一,且第一RANGE值为所述音频文件的第一个分片的RANGE值,第二RANGE值的最小值与第一RANGE值的最大值连续,则判定所述目标分片文件为当前播放缓存;
若所述目标分片文件为HEAD后第一次连续缓存之一,且第一RANGE值为所述音频文件的第一个分片的RANGE值,第二RANGE值为所述音频文件最后一个分片的RANGE值,则判定所述目标分片文件为提前缓存;
若所述目标分片文件的所属连续缓存不属于HEAD后出现第一次连续缓存,则判定所述目标分片文件为当前播放缓存。
具体的,在HEAD请求之后出现多个GET请求,每个GET请求对应一个分片文件,如果存在多个时间上连续并且属于同一个URI的音频文件的GET请求,则对应的获得的分片文件构成的连续缓存。
如果连续缓存是在HEAD请求后第一次出现,且第一条GET的RANGE值为bytes=0-65535;第二条GET的RANGE值为bytes=65536-131071,则判断当前音频文件的分片均为“当前播放缓存”。
如果连续缓存是在HEAD请求后第一次出现,且第一条GET的RANGE值为bytes=0-65535;第二条GET的RANGE值为bytes=(“Content-Length”-65536)-(“Content-Length”-1),则判定此HEAD后下载的第一次连续分片均为“提前缓存”。
如果不属于HEAD请求后第一次连续缓存的其他分片均判断为“当前播放缓存”。
本发明提供的音频卡顿评估的方法,通过对音频文件的HTTP请求信息进行分析,对分片文件进行分组信息和缓存类型的判断,进而确定分片文件的累加下载时长,以及累加可播放时长,判定对应的分片文件是质差还是质优的XDR,评估用户音频播放是否卡顿,进行精确判断。
可选的,所述基于所述目标分片文件的缓存类型,确定所述目标分片文件的累加下载时长和累加可播放时长,对所述目标分片文件进行质差判定,还包括:
若所述目标分片文件为提前缓存,判定所述目标分片文件为质优分片文件;
若所述目标分片文件为当前播放缓存,确定所述目标分片文件的累加下载时长和累加可播放时长,对所述目标分片文件进行质差判定。
具体的,判断为提前缓存的移动音频文件的分片文件,直接标注为质优XDR。
而判断为当前播放缓存的移动音频文件的分片文件,需要进一步的分析,计算每个分片的累加下载时长和累加可播放时长,通过比较这两者,判断该分片文件是质优还是质差的分片文件。
本发明提供的音频卡顿评估的方法,通过对音频文件的HTTP请求信息进行分析,对分片文件进行分组信息和缓存类型的判断,进而确定分片文件的累加下载时长,以及累加可播放时长,判定对应的分片文件是质差还是质优的XDR,评估用户业务话单是否质差、用户音频播放是否卡顿,进行精确判断。
可选的,所述若所述目标分片文件为当前播放缓存,确定所述目标分片文件的累加下载时长和累加可播放时长,对所述目标分片文件进行质差判定,包括:
若上一个所述目标分片文件为质优分片文件,确定当前所述目标分片文件的下载完成时间和RANGE最大值;
若上一个所述目标分片文件为质差分片文件,更新所述音频文件的播放开始时间为当前所述目标分片文件的下载开始时间,更新所述已完成播放大小为上一个所述目标分片文件的RANGE最大值;
根据当前所述目标分片文件的下载完成时间和所述音频文件的播放开始时间,确定所述累加下载时长;
根据当前所述目标分片文件的RANGE最大值和已完成播放大小,确定所述累加可播放时长;
基于所述累加下载时长和所述累加可播放时长,对当前所述目标分片文件进行质差判定;
其中,所述音频文件的播放开始时间是由属于当前播放缓存的第一个分片文件的开始下载时间确定的。
具体的,将所有属于提前缓存的分片文件判断为质优分片文件之后,剩下的分片文件均属于当前播放缓存,首先根据属于当前播放缓存的第一个分片文件的开始下载时间,确定所述音频文件的播放开始时间。
然后依次对属于当前播放缓存的每个分片文件进行分析,即在对每个分片文件进行判断之前,需要先判定该分片文件的上一个分片文件是质优分片文件,还是质差分片文件。
如果上一个分片文件是质优分片文件,根据当前所述目标分片文件的下载完成时间和所述音频文件的播放开始时间,确定目标分片文件的累加下载时长。
同时,根据当前所述目标分片文件的RANGE最大值和已完成播放大小,确定目标分片文件的累加可播放大小;此时,已完成播放大小初始值为零。接着,将累加可播放大小除以该音频文件的码率,得到目标分片文件的累加可播放时长。
最后,判断累加下载时长和累加可播放时长两者的大小,对当前所述目标分片文件进行质差判定。
如果上一个分片文件是质差分片文件,用目标分片文件的下载开始时间更新所述音频文件的播放开始时间,再根据当前所述目标分片文件的下载完成时间和更新后的所述音频文件的播放开始时间,确定目标分片文件的累加下载时长。
同时,用上一个分片文件的RANGE最大值更新已完成播放大小,再根据当前所述目标分片文件的RANGE最大值和更新后的已完成播放大小,确定目标分片文件的累加可播放大小。接着,将累加可播放大小除以该音频文件的码率,得到目标分片文件的累加可播放时长。
最后,判断累加下载时长和累加可播放时长两者的大小,对当前所述目标分片文件进行质差判定。
本发明提供的音频卡顿评估的方法,通过对音频文件的HTTP请求信息进行分析,对分片文件进行分组信息和缓存类型的判断,进而确定分片文件的累加下载时长,以及累加可播放时长,判定对应的分片文件是质差还是质优的XDR,评估用户音频播放是否卡顿,进行精确判断。
可选的,所述基于所述累加下载时长和所述累加可播放时长,对当前所述目标分片文件进行质差判定,包括:
若所述累加下载时长大于等于所述累加可播放时长,则当前所述目标分片文件为质差分片文件;
若所述累加下载时长小于所述累加可播放时长,则当前所述目标分片文件为质优分片文件。
具体的,通过对分组内每个分片进行“累加下载时长”和“累加可播放时长”进行比较,判断当前的分片是否发生卡顿,当“累加下载时长”≥“累加可播放时长”则发生卡顿,标注为“质差XDR”,“累加下载时长”<“累加可播放时长”为未卡顿,标注为“质优XDR”。
本发明提供的音频卡顿评估的方法,通过对音频文件的HTTP请求信息进行分析,对分片文件进行分组信息和缓存类型的判断,进而确定分片文件的累加下载时长,以及累加可播放时长,判定对应的分片文件是质差还是质优的XDR,评估用户音频播放是否卡顿,进行精确判断。
可选的,所述方法还包括:
确定属于质差分片文件的所述目标分片文件的个数;
基于属于质差分片文件的所述目标分片文件的个数和总XDR个数,确定所述用户播放卡顿率。
具体的,统计在分组内被标注为“质差XDR”的分片文件的个数,以及被标注为“质优XDR”的分片文件的个数,两者求和得到总XDR个数。
然后根据如下公式,计算得到用户播放卡顿率:
用户移动音频播放卡顿比例%=质差XDR的分片文件个数/总XDR数据个数*100;
本发明提供的音频卡顿评估的方法,通过对音频文件的HTTP请求信息进行分析,对分片文件进行分组信息和缓存类型的判断,进而确定分片文件的累加下载时长,以及累加可播放时长,判定对应的分片文件是质差还是质优的XDR,评估用户音频播放是否卡顿,进行精确判断。然后根据用户移动音频播放卡顿率,用于评估用户使用网络感知好坏。同时这些指标可以作为网络优化维护工程师评估用户使用感知体验,及时发现网络问题的重点依据。
图2是本发明提供的音频卡顿评估流程图,如图2所示,判断用户移动音频播放卡顿率,具体步骤如下:
步骤1、通过HOST锁定特定用户的下载的音频文件,按照GET请求中的URI,对用户同一移动音频文件的分片进行分组(比如一个2M音乐音频文件,会拆分成多个65536Byte大的“.m4a”分片下载)。
步骤2、判断为提前缓存的移动音频文件XDR话单,直接标注为质优XDR。
步骤3、对直接播放的移动音频文件分组进行计算,计算累加下载时长和分组内分片XDR可播放时长。
比如一个移动音频文件分成了5个“.m4a”分片下载,通过第2个分片XDR开始时间减去第1个分片开始时间得到第一个分片的下载时长,通过第5个分片XDR开始时间减去第1个分片开始时间就是得到前4个分片的累加下载时长。
根据每个音频分片大小和解码的音频码率,可以计算得到分片的可播放时长。
步骤4、通过对分组内每个分片进行“累加下载时长”和“累加可播放时长”进行比较,判断当前的分片是否发生卡顿,当“累加下载时长”≥“累加可播放时长”则发生卡顿,标注为“质差XDR”,“累加下载时长”<“累加可播放时长”为未卡顿,标注为“质优XDR”。
步骤5、当发生卡顿后,更新“累加下载时长”的开始时间和“已完成播放大小”,以卡顿分片XDR的下一条XDR作为第1个分片,开始重新进行“累加下载时长”和“累加可播放时长”的计算。
步骤6、重复步骤4和5。
在此基础上,统计在分组内被标注为“质差XDR”的分片文件的个数,以及被标注为“质优XDR”的分片文件的个数,两者求和得到总XDR个数。
根据用户移动音频播放卡顿比例%=质差XDR的分片文件个数/总XDR数据个数*100,计算得到用户的音频播放卡顿率。
图3是本发明提供的音频卡顿评估的设备的结构示意图,如图3所示,该音频卡顿评估的设备包括存储器320,收发机310和处理器300;其中,处理器300与存储器320也可以物理上分开布置。
存储器320,用于存储计算机程序;收发机310,用于在处理器300的控制下收发数据。
具体地,收发机310用于在处理器300的控制下接收和发送数据。
其中,在图3中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器300代表的一个或多个处理器和存储器320代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本发明不再对其进行进一步描述。总线接口提供接口。收发机310可以是多个元件,即包括发送机和接收机,提供用于在传输介质上与各种其他装置通信的单元,这些传输介质包括无线信道、有线信道、光缆等传输介质。
处理器300负责管理总线架构和通常的处理,存储器820可以存储处理器300在执行操作时所使用的数据。
处理器300可以是中央处埋器(Central Processing Unit,CPU)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(FieldProgrammable Gate Array,FPGA)或复杂可编程逻辑器件(Complex Programmable LogicDevice,CPLD),处理器也可以采用多核架构。
处理器300通过调用存储器320存储的计算机程序,用于按照获得的可执行指令执行本发明提供的任一所述方法,例如:
基于音频文件的HTTP请求,确定所述音频文件的目标分片文件的分组;
基于所述音频文件的HTTP请求以及连续缓存的判断条件,对分组内所述目标分片文件进行划分,确定所述目标分片文件的缓存类型;
基于所述目标分片文件的缓存类型,确定所述目标分片文件的累加下载时长和累加可播放时长,对所述目标分片文件进行质差判定;
其中,所述连续缓存的判断条件包括:同一用户,URI值相同,且连续出现的GET请求。
可选的,所述基于音频文件的HTTP请求,确定所述音频文件的目标分片文件的分组,包括:
获取所述音频文件的HEAD请求,GET请求,下载开始时间点以及URI;
基于所述HEAD请求中的content-length特征字段,确定所述音频文件的大小;
基于所述GET请求中的esds特征字段,确定所述音频文件的码率;
根据所述音频文件的大小和所述音频文件的码率,确定所述音频文件的播放时长;
在一定时间周期内,以下载开始时间点为起点,按照相同的URI,将所述目标分片文件进行分组。
可选的,所述基于所述音频文件的HTTP请求以及连续缓存的判断条件,对分组内所述目标分片文件进行划分,确定所述目标分片文件的缓存类型,包括:
确定所述分组内的HEAD请求后第一次连续缓存;
在所述HEAD请求后第一次连续缓存中,确定第一个GET请求的第一RANGE值,以及第二个GET请求的第二RANGE值;
若所述目标分片文件为HEAD请求后第一次连续缓存之一,且第一RANGE值为所述音频文件的第一个分片的RANGE值,第二RANGE值的最小值与第一RANGE值的最大值连续,则判定所述目标分片文件为当前播放缓存;
若所述目标分片文件为HEAD后第一次连续缓存之一,且第一RANGE值为所述音频文件的第一个分片的RANGE值,第二RANGE值为所述音频文件最后一个分片的RANGE值,则判定所述目标分片文件为提前缓存;
若所述目标分片文件的所属连续缓存不属于HEAD后出现第一次连续缓存,则判定所述目标分片文件为当前播放缓存。
可选的,所述基于所述目标分片文件的缓存类型,确定所述目标分片文件的累加下载时长和累加可播放时长,对所述目标分片文件进行质差判定,还包括:
若所述目标分片文件为提前缓存,判定所述目标分片文件为质优分片文件;
若所述目标分片文件为当前播放缓存,确定所述目标分片文件的累加下载时长和累加可播放时长,对所述目标分片文件进行质差判定。
可选的,所述若所述目标分片文件为当前播放缓存,确定所述目标分片文件的累加下载时长和累加可播放时长,对所述目标分片文件进行质差判定,包括:
若上一个所述目标分片文件为质优分片文件,确定当前所述目标分片文件的下载完成时间和RANGE最大值;
若上一个所述目标分片文件为质差分片文件,更新所述音频文件的播放开始时间为当前所述目标分片文件的下载开始时间,更新所述已完成播放大小为上一个所述目标分片文件的RANGE最大值;
根据当前所述目标分片文件的下载完成时间和所述音频文件的播放开始时间,确定所述累加下载时长;
根据当前所述目标分片文件的RANGE最大值和已完成播放大小,确定所述累加可播放时长;
基于所述累加下载时长和所述累加可播放时长,对当前所述目标分片文件进行质差判定;
其中,所述音频文件的播放开始时间是由属于当前播放缓存的第一个分片文件的开始下载时间确定的。
可选的,所述基于所述累加下载时长和所述累加可播放时长,对当前所述目标分片文件进行质差判定,包括:
若所述累加下载时长大于等于所述累加可播放时长,则当前所述目标分片文件为质差分片文件;
若所述累加下载时长小于所述累加可播放时长,则当前所述目标分片文件为质优分片文件。
可选的,所述方法还包括:
确定属于质差分片文件的所述目标分片文件的个数;
基于属于质差分片文件的所述目标分片文件的个数和总XDR个数,确定所述用户播放卡顿率。
在此需要说明的是,本发明提供的上述核心客户识别的设备,能够实现上述音频卡顿评估的方法实施例所实现的所有方法步骤,且能够达到相同的技术效果,在此不再对本实施例中与方法实施例相同的部分及有益效果进行具体赘述。
图4是本发明提供的音频卡顿评估的装置的结构示意图。如图4所示,该装置包括:
分组模块401,用于基于音频文件的HTTP请求,确定所述音频文件的目标分片文件的分组;
缓存类型判断模块402,基于所述音频文件的HTTP请求以及连续缓存的判断条件,对分组内所述目标分片文件进行划分,确定所述目标分片文件的缓存类型;
质差判定模块403,用于基于所述目标分片文件的缓存类型,确定所述目标分片文件的累加下载时长和累加可播放时长,对所述目标分片文件进行质差判定;
其中,所述连续缓存的判断条件包括:同一用户,URI值相同,且连续出现的GET请求。
可选的,分组模块401还用于获取所述音频文件的HEAD请求,GET请求,下载开始时间点以及URI;
基于所述HEAD请求中的content-length特征字段,确定所述音频文件的大小;
基于所述GET请求中的esds特征字段,确定所述音频文件的码率;
根据所述音频文件的大小和所述音频文件的码率,确定所述音频文件的播放时长;
在一定时间周期内,以下载开始时间点为起点,按照相同的URI,将所述目标分片文件进行分组。
可选的,缓存类型判断模块402还用于确定所述分组内的HEAD请求后第一次连续缓存;
在所述HEAD请求后第一次连续缓存中,确定第一个GET请求的第一RANGE值,以及第二个GET请求的第二RANGE值;
若所述目标分片文件为HEAD请求后第一次连续缓存之一,且第一RANGE值为所述音频文件的第一个分片的RANGE值,第二RANGE值的最小值与第一RANGE值的最大值连续,则判定所述目标分片文件为当前播放缓存;
若所述目标分片文件为HEAD后第一次连续缓存之一,且第一RANGE值为所述音频文件的第一个分片的RANGE值,第二RANGE值为所述音频文件最后一个分片的RANGE值,则判定所述目标分片文件为提前缓存;
若所述目标分片文件的所属连续缓存不属于HEAD后出现第一次连续缓存,则判定所述目标分片文件为当前播放缓存。
缓存类型判断模块402还用于若所述目标分片文件为提前缓存,判定所述目标分片文件为质优分片文件;
若所述目标分片文件为当前播放缓存,确定所述目标分片文件的累加下载时长和累加可播放时长,对所述目标分片文件进行质差判定。
可选的,质差判定模块403还用于若上一个所述目标分片文件为质优分片文件,确定当前所述目标分片文件的下载完成时间和RANGE最大值;
若上一个所述目标分片文件为质差分片文件,更新所述音频文件的播放开始时间为当前所述目标分片文件的下载开始时间,更新所述已完成播放大小为上一个所述目标分片文件的RANGE最大值;
根据当前所述目标分片文件的下载完成时间和所述音频文件的播放开始时间,确定所述累加下载时长;
根据当前所述目标分片文件的RANGE最大值和已完成播放大小,确定所述累加可播放时长;
基于所述累加下载时长和所述累加可播放时长,对当前所述目标分片文件进行质差判定。
质差判定模块403还用于若所述累加下载时长大于等于所述累加可播放时长,则当前所述目标分片文件为质差分片文件;
若所述累加下载时长小于所述累加可播放时长,则当前所述目标分片文件为质优分片文件。
质差判定模块403还用于确定属于质差分片文件的所述目标分片文件的个数;
基于属于质差分片文件的所述目标分片文件的个数和总XDR个数,确定所述用户播放卡顿率。
需要说明的是,本发明中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
在此需要说明的是,本发明提供的上述装置,能够实现上述方法实施例所实现的所有方法步骤,且能够达到相同的技术效果,在此不再对本实施例中与方法实施例相同的部分及有益效果进行具体赘述。
另一方面,本发明还提供一种处理器可读存储介质,所述处理器可读存储介质存储有计算机程序,所述计算机程序用于使所述处理器执行上述各实施例提供的音频卡顿评估的方法,包括:
基于音频文件的HTTP请求,确定所述音频文件的目标分片文件的分组;
基于所述音频文件的HTTP请求以及连续缓存的判断条件,对分组内所述目标分片文件进行划分,确定所述目标分片文件的缓存类型;
基于所述目标分片文件的缓存类型,确定所述目标分片文件的累加下载时长和累加可播放时长,对所述目标分片文件进行质差判定;
其中,所述连续缓存的判断条件包括:同一用户,URI值相同,且连续出现的GET请求。
可选的,所述基于音频文件的HTTP请求,确定所述音频文件的目标分片文件的分组,包括:
获取所述音频文件的HEAD请求,GET请求,下载开始时间点以及URI;
基于所述HEAD请求中的content-length特征字段,确定所述音频文件的大小;
基于所述GET请求中的esds特征字段,确定所述音频文件的码率;
根据所述音频文件的大小和所述音频文件的码率,确定所述音频文件的播放时长;
在一定时间周期内,以下载开始时间点为起点,按照相同的URI,将所述目标分片文件进行分组。
可选的,所述基于所述音频文件的HTTP请求以及连续缓存的判断条件,对分组内所述目标分片文件进行划分,确定所述目标分片文件的缓存类型,包括:
确定所述分组内的HEAD请求后第一次连续缓存;
在所述HEAD请求后第一次连续缓存中,确定第一个GET请求的第一RANGE值,以及第二个GET请求的第二RANGE值;
若所述目标分片文件为HEAD请求后第一次连续缓存之一,且第一RANGE值为所述音频文件的第一个分片的RANGE值,第二RANGE值的最小值与第一RANGE值的最大值连续,则判定所述目标分片文件为当前播放缓存;
若所述目标分片文件为HEAD后第一次连续缓存之一,且第一RANGE值为所述音频文件的第一个分片的RANGE值,第二RANGE值为所述音频文件最后一个分片的RANGE值,则判定所述目标分片文件为提前缓存;
若所述目标分片文件的所属连续缓存不属于HEAD后出现第一次连续缓存,则判定所述目标分片文件为当前播放缓存。
可选的,所述基于所述目标分片文件的缓存类型,确定所述目标分片文件的累加下载时长和累加可播放时长,对所述目标分片文件进行质差判定,还包括:
若所述目标分片文件为提前缓存,判定所述目标分片文件为质优分片文件;
若所述目标分片文件为当前播放缓存,确定所述目标分片文件的累加下载时长和累加可播放时长,对所述目标分片文件进行质差判定。
可选的,所述若所述目标分片文件为当前播放缓存,确定所述目标分片文件的累加下载时长和累加可播放时长,对所述目标分片文件进行质差判定,包括:
若上一个所述目标分片文件为质优分片文件,确定当前所述目标分片文件的下载完成时间和RANGE最大值;
若上一个所述目标分片文件为质差分片文件,更新所述音频文件的播放开始时间为当前所述目标分片文件的下载开始时间,更新所述已完成播放大小为上一个所述目标分片文件的RANGE最大值;
根据当前所述目标分片文件的下载完成时间和所述音频文件的播放开始时间,确定所述累加下载时长;
根据当前所述目标分片文件的RANGE最大值和已完成播放大小,确定所述累加可播放时长;
基于所述累加下载时长和所述累加可播放时长,对当前所述目标分片文件进行质差判定;
其中,所述音频文件的播放开始时间是由属于当前播放缓存的第一个分片文件的开始下载时间确定的。
可选的,所述基于所述累加下载时长和所述累加可播放时长,对当前所述目标分片文件进行质差判定,包括:
若所述累加下载时长大于等于所述累加可播放时长,则当前所述目标分片文件为质差分片文件;
若所述累加下载时长小于所述累加可播放时长,则当前所述目标分片文件为质优分片文件。
可选的,所述方法还包括:
确定属于质差分片文件的所述目标分片文件的个数;
基于属于质差分片文件的所述目标分片文件的个数和总XDR个数,确定所述用户播放卡顿率。
所述处理器可读存储介质可以是处理器能够存取的任何可用介质或数据存储设备,包括但不限于磁性存储器(例如软盘、硬盘、磁带、磁光盘(MO)等)、光学存储器(例如CD、DVD、BD、HVD等)、以及半导体存储器(例如ROM、EPROM、EEPROM、非易失性存储器(NANDFLASH)、固态硬盘(SSD))等。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机可执行指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机可执行指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些处理器可执行指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的处理器可读存储器中,使得存储在该处理器可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些处理器可执行指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (9)
1.一种音频卡顿评估的方法,其特征在于,包括:
基于音频文件的HTTP请求,确定所述音频文件的目标分片文件的分组;
基于所述音频文件的HTTP请求以及连续缓存的判断条件,对分组内所述目标分片文件进行划分,确定所述目标分片文件的缓存类型;
基于所述目标分片文件的缓存类型,确定所述目标分片文件的累加下载时长和累加可播放时长,对所述目标分片文件进行质差判定;
其中,所述连续缓存的判断条件包括:同一用户,URI值相同,且连续出现的GET请求;
所述基于所述目标分片文件的缓存类型,确定所述目标分片文件的累加下载时长和累加可播放时长,对所述目标分片文件进行质差判定,还包括:
若所述目标分片文件为提前缓存,判定所述目标分片文件为质优分片文件;
若所述目标分片文件为当前播放缓存,确定所述目标分片文件的累加下载时长和累加可播放时长,对所述目标分片文件进行质差判定。
2.根据权利要求1所述的音频卡顿评估的方法,其特征在于,所述基于音频文件的HTTP请求,确定所述音频文件的目标分片文件的分组,包括:
获取所述音频文件的HEAD请求,GET请求,下载开始时间点以及URI;
基于所述HEAD请求中的content-length特征字段,确定所述音频文件的大小;
基于所述GET请求中的esds特征字段,确定所述音频文件的码率;
根据所述音频文件的大小和所述音频文件的码率,确定所述音频文件的播放时长;
在一定时间周期内,以下载开始时间点为起点,按照相同的URI,将所述目标分片文件进行分组。
3.根据权利要求1所述的音频卡顿评估的方法,其特征在于,所述基于所述音频文件的HTTP请求以及连续缓存的判断条件,对分组内所述目标分片文件进行划分,确定所述目标分片文件的缓存类型,包括:
确定所述分组内的HEAD请求后第一次连续缓存;
在所述HEAD请求后第一次连续缓存中,确定第一个GET请求的第一RANGE值,以及第二个GET请求的第二RANGE值;
若所述目标分片文件为HEAD请求后第一次连续缓存之一,且第一RANGE值为所述音频文件的第一个分片的RANGE值,第二RANGE值的最小值与第一RANGE值的最大值连续,则判定所述目标分片文件为当前播放缓存;
若所述目标分片文件为HEAD后第一次连续缓存之一,且第一RANGE值为所述音频文件的第一个分片的RANGE值,第二RANGE值为所述音频文件最后一个分片的RANGE值,则判定所述目标分片文件为提前缓存;
若所述目标分片文件的所属连续缓存不属于HEAD后出现第一次连续缓存,则判定所述目标分片文件为当前播放缓存。
4.根据权利要求1所述的音频卡顿评估的方法,其特征在于,所述若所述目标分片文件为当前播放缓存,确定所述目标分片文件的累加下载时长和累加可播放时长,对所述目标分片文件进行质差判定,包括:
若上一个所述目标分片文件为质优分片文件,确定当前所述目标分片文件的下载完成时间和RANGE最大值;
若上一个所述目标分片文件为质差分片文件,更新所述音频文件的播放开始时间为当前所述目标分片文件的下载开始时间,更新已完成播放大小为上一个所述目标分片文件的RANGE最大值;
根据当前所述目标分片文件的下载完成时间和所述音频文件的播放开始时间,确定所述累加下载时长;
根据当前所述目标分片文件的RANGE最大值和已完成播放大小,确定所述累加可播放时长;
基于所述累加下载时长和所述累加可播放时长,对当前所述目标分片文件进行质差判定;
其中,所述音频文件的播放开始时间是由属于当前播放缓存的第一个分片文件的开始下载时间确定的。
5.根据权利要求4所述的音频卡顿评估的方法,其特征在于,所述基于所述累加下载时长和所述累加可播放时长,对当前所述目标分片文件进行质差判定,包括:
若所述累加下载时长大于等于所述累加可播放时长,则当前所述目标分片文件为质差分片文件;
若所述累加下载时长小于所述累加可播放时长,则当前所述目标分片文件为质优分片文件。
6.根据权利要求5所述的音频卡顿评估的方法,其特征在于,所述方法还包括:
确定属于质差分片文件的所述目标分片文件的个数;
基于属于质差分片文件的所述目标分片文件的个数和总XDR个数,确定所述用户播放卡顿率。
7.一种音频卡顿评估的设备,包括存储器,收发机,处理器;
存储器,用于存储计算机程序;收发机,用于在所述处理器的控制下收发数据;处理器,用于执行所述存储器中的计算机程序并实现如下步骤:
基于音频文件的HTTP请求,确定所述音频文件的目标分片文件的分组;
基于所述音频文件的HTTP请求以及连续缓存的判断条件,对分组内所述目标分片文件进行划分,确定所述目标分片文件的缓存类型;
基于所述目标分片文件的缓存类型,确定所述目标分片文件的累加下载时长和累加可播放时长,对所述目标分片文件进行质差判定;
其中,所述连续缓存的判断条件包括:同一用户,URI值相同,且连续出现的GET请求;
所述基于所述目标分片文件的缓存类型,确定所述目标分片文件的累加下载时长和累加可播放时长,对所述目标分片文件进行质差判定,还包括:
若所述目标分片文件为提前缓存,判定所述目标分片文件为质优分片文件;
若所述目标分片文件为当前播放缓存,确定所述目标分片文件的累加下载时长和累加可播放时长,对所述目标分片文件进行质差判定。
8.一种音频卡顿评估的装置,其特征在于,所述装置包括:
分组模块,用于基于音频文件的HTTP请求,确定所述音频文件的目标分片文件的分组;
缓存类型判断模块,用于基于所述音频文件的HTTP请求以及连续缓存的判断条件,对分组内所述目标分片文件进行划分,确定所述目标分片文件的缓存类型;
质差判定模块,用于基于所述目标分片文件的缓存类型,确定所述目标分片文件的累加下载时长和累加可播放时长,对所述目标分片文件进行质差判定;
其中,所述连续缓存的判断条件包括:同一用户,URI值相同,且连续出现的GET请求;
缓存类型判断模块,还用于:
若所述目标分片文件为提前缓存,判定所述目标分片文件为质优分片文件;
若所述目标分片文件为当前播放缓存,确定所述目标分片文件的累加下载时长和累加可播放时长,对所述目标分片文件进行质差判定。
9.一种处理器可读存储介质,其特征在于,所述处理器可读存储介质存储有计算机程序,所述计算机程序用于使所述处理器执行权利要求1至6任一项所述音频卡顿评估的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110633213.8A CN115514684B (zh) | 2021-06-07 | 2021-06-07 | 音频卡顿评估的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110633213.8A CN115514684B (zh) | 2021-06-07 | 2021-06-07 | 音频卡顿评估的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115514684A CN115514684A (zh) | 2022-12-23 |
CN115514684B true CN115514684B (zh) | 2023-11-10 |
Family
ID=84500057
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110633213.8A Active CN115514684B (zh) | 2021-06-07 | 2021-06-07 | 音频卡顿评估的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115514684B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105847941A (zh) * | 2016-03-17 | 2016-08-10 | 央广视讯传媒股份有限公司 | 一种基于hls协议的音视频流直播方法 |
CN107809647A (zh) * | 2017-10-24 | 2018-03-16 | 深圳市创维软件有限公司 | 视频播放的码率切换方法、装置及存储介质 |
CN108833968A (zh) * | 2018-05-29 | 2018-11-16 | 武汉斗鱼网络科技有限公司 | 一种缓存视频的方法以及相关设备 |
CN109587551A (zh) * | 2017-09-29 | 2019-04-05 | 北京金山云网络技术有限公司 | 一种流媒体直播卡顿的判断方法、装置、设备及存储介质 |
CN109656511A (zh) * | 2018-10-30 | 2019-04-19 | 努比亚技术有限公司 | 一种音频播放方法、终端及计算机可读存储介质 |
CN111327964A (zh) * | 2018-12-17 | 2020-06-23 | 中国移动通信集团北京有限公司 | 一种定位视频播放卡顿的方法及设备 |
CN112822521A (zh) * | 2020-12-30 | 2021-05-18 | 百果园技术(新加坡)有限公司 | 音视频传输的码率控制方法、装置、设备及存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7219194B2 (en) * | 2004-06-23 | 2007-05-15 | Creative Technology Ltd | Method and circuit to implement digital delay lines |
US8489702B2 (en) * | 2007-06-22 | 2013-07-16 | Apple Inc. | Determining playability of media files with minimal downloading |
US9426046B2 (en) * | 2011-12-27 | 2016-08-23 | Tektronix Texas, Llc | Web page download time analysis |
-
2021
- 2021-06-07 CN CN202110633213.8A patent/CN115514684B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105847941A (zh) * | 2016-03-17 | 2016-08-10 | 央广视讯传媒股份有限公司 | 一种基于hls协议的音视频流直播方法 |
CN109587551A (zh) * | 2017-09-29 | 2019-04-05 | 北京金山云网络技术有限公司 | 一种流媒体直播卡顿的判断方法、装置、设备及存储介质 |
CN107809647A (zh) * | 2017-10-24 | 2018-03-16 | 深圳市创维软件有限公司 | 视频播放的码率切换方法、装置及存储介质 |
CN108833968A (zh) * | 2018-05-29 | 2018-11-16 | 武汉斗鱼网络科技有限公司 | 一种缓存视频的方法以及相关设备 |
CN109656511A (zh) * | 2018-10-30 | 2019-04-19 | 努比亚技术有限公司 | 一种音频播放方法、终端及计算机可读存储介质 |
CN111327964A (zh) * | 2018-12-17 | 2020-06-23 | 中国移动通信集团北京有限公司 | 一种定位视频播放卡顿的方法及设备 |
CN112822521A (zh) * | 2020-12-30 | 2021-05-18 | 百果园技术(新加坡)有限公司 | 音视频传输的码率控制方法、装置、设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
"基于码率自适应的流媒体服务器的研究和实现";洪儒莹;《中国优秀硕士学位论文全文数据库(电子期刊)信息科技辑》;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN115514684A (zh) | 2022-12-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11228794B2 (en) | Method, computer device, and storage medium for media code rate self-adaptation | |
WO2017096830A1 (zh) | 用于cdn平台的内容分发方法及调度代理服务器 | |
WO2019128800A1 (zh) | 一种内容服务的实现方法、装置及内容分发网络节点 | |
Mangla et al. | Using session modeling to estimate HTTP-based video QoE metrics from encrypted network traffic | |
CN106686409A (zh) | 一种流媒体码率自适应方法及装置、服务器、终端 | |
CN109391627B (zh) | 一种识别TLS协议加密传输YouTube DASH视频的方法 | |
CN106657143A (zh) | 一种流媒体传输方法、装置、服务器及终端 | |
CN103813185B (zh) | 一种分段节目快速分发的方法、服务器及客户端 | |
CN109982068B (zh) | 合成视频质量评估方法、装置、设备及介质 | |
CN109640113A (zh) | 一种拖拉视频数据的处理方法及代理服务器 | |
CN112752117B (zh) | 一种视频缓存方法、装置、设备及存储介质 | |
CN109089174B (zh) | 一种多媒体数据流的处理方法及装置、计算机存储介质 | |
Wei et al. | Evaluation of throughput prediction for adaptive bitrate control using trace-based emulation | |
CN107113325A (zh) | 用于选择性传输加速器操作的系统和方法 | |
CN111131843A (zh) | 一种网络直播系统和方法 | |
CN115514684B (zh) | 音频卡顿评估的方法及装置 | |
Li et al. | High efficiency live video streaming with frame dropping | |
CN105871802A (zh) | 一种监控流媒体文件传输的方法、装置及系统 | |
CN111327964B (zh) | 一种定位视频播放卡顿的方法及设备 | |
CN109587517B (zh) | 一种多媒体文件的播放方法及装置、服务器及存储介质 | |
CN116962179A (zh) | 网络传输优化方法、装置、计算机可读介质及电子设备 | |
CN112350986B (zh) | 一种音视频网络传输碎片化的整形方法及系统 | |
Dubin et al. | Video quality representation classification of encrypted http adaptive video streaming | |
KR20190048186A (ko) | 적응적 스트리밍 서비스를 위한 다중 경로 기반 분할 전송 시스템 및 스트리밍 방법 | |
CN112153322B (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 |