一种网络音视频可播放性高效自动判别方法与流程

文档序号:15568862发布日期:2018-09-29 03:59阅读:226来源:国知局

本发明涉及网络音视频领域,尤其涉及一种网络音视频可播放性高效自动判别方法。



背景技术:

近些年随着计算机和移动互联网的发展、运营商数据流量资费下调,音视频成了社交网络中的新宠。各类短视频app、视频app和影视类网站在市场上大量出现,使得音视频这类媒体信息出现了爆炸式的增长。在音视频这一领域,已经出现了适用于各种模式下的视频格式以及提高音视频服务质量的相关技术。然而,关于自动判别音视频是否可播放技术却很少。音视频信息的剧增,使得音视频的管理变得更加繁重,具体原因如下:在网络中,有些音视频由于其内容不健康,不允许播放;有些音视频可能因为服务商自身原因或者音视频错误的原因,导致音视频无法播放。不允许播放的视频可以播放,而允许播放的视频无法播放,这会必定会影响各大视频网站的运营,造成用户的流失,如何保障音视频服务的质量也逐渐称为他们关注的重心。然而,人工发现音视频是否可播放,存在耗时耗力问题,如何高效的判别网络中音视频是否可播放,成为了亟待解决的问题。

网络中的音视频url主要分为两类,一类是资源型音视频,该类音视频可以直接下载,也可以直接播放;另一类是非资源型音视频,该类音视频无法直接下载,需要点击网页播放按钮进行播放。音视频url由于其资源类型的不同,在判别其播放是否达到设置的阈值时也有一定的差别。资源型音视频因为其可以直接下载和播放的特性,我们可以直接获取该类音视频播放时长或播放进度信息;而非资源型音视频一般嵌入在网页中,我们可以采用模拟用户行为的方法判别该类音视频能否正常播放。

在音视频播放中,由于现有技术的提升,很多视频网站对音视频url采用对音视频进行分片传输并播放的方法,因此,仅通过判别音视频前几秒的播放信息无法直接用于判别整个音视频可否播放,我们需要通过一定的播放时长或播放进度来确定某个音视频是否可否播放。然而,如果播放阈值设得过大,音视频的判别周期也会变长,耗费大量时间与资源。因此,本发明提出了一种网络音视频可播放性高效自动判别方法。



技术实现要素:

本发明的目的在于克服现有的技术不足,提出一种网络音视频可播放性高效自动判别方法,能够解决人工判别音视频是否可播放的耗时耗力问题和音视频判别周期较长,耗费时间的问题。

一种网络音视频可播放性高效自动判别方法,具体的,包括以下步骤:

s1.音视频播放参数设置:音视频播放参数包括音视频url信息、播放阈值和音视频唯一标识符和检测标识符;音视频url信息为待检查音视频的url;播放阈值为用户判别音视频是否播放成功的阈值,通常为播放时长和播放进度;音视频唯一标识符为数据库中用于标识该音视频的唯一标识;检测标识符用于获取音视频判别任务的状态信息,且含有三种状态,分别为:(1)待检测状态,记为0;(2)检测中状态,记为1;(3)已完成状态,记为2;音视频播放参数可由用户手动添加,也可从文件中批量导入;音视频唯一标识符由数据库生成,检测标识符由判别过程中的每一阶段的程序设置,在本步骤中检测标识符设置为0;

s2.音视频播放任务分发:读取未进行播放判别的音视频任务信息,获取各个任务执行机器的资源使用情况,根据资源配额进行任务的下发,并将对应音视频的检测标识符设置为1;读取检测标识符为0的音视频任务信息;

s3.音视频链接识别:通过对音视频url的http状态码判断音视频url的可访问性,若不可访问,则存储相关信息,退出判别;若可访问,则获取网页信息并解析,然后根据识别规则判断出音视频url是资源型音视频还是非资源型音视频,最后将判别信息,根据音视频url的唯一标识符存储在数据库中;音视频的播放过程其实就是音视频的下载过程和音视频的解码处理过程;对于音视频url中包含可以直接下载的音视频链接的网页,称为资源型音视频url;对于音视频url为根据视频网站协议播放的音视频链接(无法直接下载)的网页,称为非资源型音视频url;

s4.音视频播放判别:音视频播放判别有两种情况:资源型音视频播放处理和非资源型音视频播放处理;资源型音视频播放处理包括音视频下载、音视频数据帧分析;非资源型音视频播放处理包括基于js-chrome插件播放、模拟点击处理和音视频播放监听;

s5.音视频播放信息存储:通过音视频url信息的唯一标识符,设置该音视频url的检测标识为2,并提交给数据库,完成更新。

进一步地,所述步骤s1包括以下子步骤:

s11.添加待判别的音视频url信息;

s12.设置判别音视频是否成功播放的参数包括播放时长或者播放进度;

s13.设置判别音视频的检测状态码为0;

s14.将该音视频判别任务存入数据库中,并由数据库生成唯一标识符;

其中s11和s12,可由用户手动添加,也可从文件中批量导入。

进一步地,所述步骤s2包括以下子步骤:

s21.获取各任务执行机器的系统资源消耗详情;

s22.定时地从数据库中获取待检测的音视频播放任务;

s23.依据各任务执行机器的系统资源消耗情况,向指定任务机器发送任务,并记录在数据库中。

进一步地,所述步骤s3包括以下子步骤:

s31.任务执行机向音视频url发送http请求,获取其http的状态码信息,判别音视频url的可访问性,若不可访问,则存储相关信息并退出判别;若可访问则进入步骤s32;

s32.对音视频url的中包含的音视频链接进行分析,若该网页包含可直接下载的单个音视频链接或多个分片的音视频链接则为资源型音视频url,若不包含,则为非资源型音视频url;

s33.将音视频url的资源类型判别信息,根据其唯一标识符,存储在数据库中。

进一步地,所述步骤s4中按照音视频url是否属于资源型音视频url分别进行处理,包括以下两种情况:

(1)如果音视频url被识别为资源型音视频的url,根据音视频的播放类型对其进行分类,分别进行处理:

对于需要缓冲完成后才能播放的音视频来说,对其执行下载操作,并在下载完成后对音视频数据包进行解码处理得到音视频的播放总时长,记为tc;图片总量,记为pc;每秒的图片显示数量,记为pcs;分别计算播放时长和播放进度,播放时长记为pt,计算方式为pt=pc/pcs;播放进度记为ps,计算方式为ps=pt/tc;然后将计算得到的播放时长或播放进度与预先设定的阈值进行比对,若计算得到的对应数值大于等于该阈值,则播放成功,反之失败;

对于基于分片索引的音视频链接,我们在获取首个分片数据包后,对音视频数据包进行解码处理以得到音视频的播放总时长tc、每秒的图片显示数量pcs;对于每个音视频数据包i,都需要获取其图片数量,记为(pci);我们分别计算音视频的播放时长和播放进度,播放时长pt=(pc1+pc2+…+pci+…+pcn)/pcs,播放进度ps=pt/tc;然后将计算得到的播放时长或播放进度与预先设定的阈值进行比对,若计算得到的对应数值大于等于该阈值,则播放成功,反之失败;在若在获取并分析完第i个音视频分片后,播放时长或播放进度就能达到播放成功的判别阈值,则提前结束播放判断,对于后面的分片数据包则不需下载与解码处理。

(2)如果音视频url未被识别为资源型url,则其为非资源型音视频url,由于音视频播放网站的防盗链以及音视频解析规则的经常更改,播放处理程序无法直接获取整个音视频的数据包或分片数据包;因此,采用模拟用户行为方法,使用嵌入在浏览器中的播放插件加载该类音视频url,并将该音视频的判别阈值转化为播放插件中时间栏的对应位置;首先启动音视频播放监听组件,然后通过模拟鼠标的点击过程,使音视频跳转至指定位置,等待音视频完成在指定播放时长或播放进度上的加载完成缓冲,若该音视频播放监听组件能够监听到该音视频能够正常播放,且播放时长大于等于时间栏的对应位置,则播放成功,反之则为播放失败;

进一步地,所述步骤s5对接收音视频播放判别组件的音视频url播放信息,并根据音视频url的唯一性标识,设置该音视频url的检测标识符为2,并提交给数据库,完成更新,判别结束。

本发明的有益效果是:为海量音视频的可播放判别问题,提供了一种有效的、正确的判别技术,该技术解决了资源型音视频url和非资源型音视频url的可播放判别问题,克服了人工音视频是否可播放的耗时耗力问题,通过模拟点击的方式使得音视频完成跳转播放,解决了音视频自动播放中等待时间较长,导致判断周期变长的问题。

附图说明

图1为本发明的流程图;

图2为本发明的音视频链接识别处理流程图;

图3为本发明的音视频播放判别处理流程图。

具体实施方式

下面结合附图进一步详细描述本发明的播放处理方法,但本发明的保护范围不局限于以下所述。

一种网络音视频可播放性高效自动判别方法,如图1所示,包括以下步骤:

s1.音视频播放参数设置:音视频播放参数包括音视频url信息、播放阈值和音视频唯一标识符和检测标识符;音视频url信息为待检查音视频的url;播放阈值为用户判别音视频是否播放成功的阈值,通常为播放时长和播放进度;音视频唯一标识符为数据库中用于标识该音视频的唯一标识;检测标识符用于获取音视频判别任务的状态信息,且含有三种状态,分别为:(1)待检测状态,记为0;(2)检测中状态,记为1;(3)已完成状态,记为2;音视频播放参数可由用户手动添加,也可从文件中批量导入;音视频唯一标识符由数据库生成,检测标识符由判别过程中的每一阶段的程序设置,在本步骤中检测标识符设置为0;

s2.音视频播放任务分发:读取未进行播放判别的音视频任务信息,获取各个任务执行机器的资源使用情况,根据资源配额进行任务的下发,并将对应音视频的检测标识符设置为1;读取检测标识符为0的音视频任务信息;

s3.音视频链接识别:通过对音视频url的http状态码判断音视频url的可访问性,若不可访问,则存储相关信息,退出判别;若可访问,则获取网页信息并解析,然后根据识别规则判断出音视频url是资源型音视频还是非资源型音视频,最后将判别信息,根据音视频url的唯一标识符存储在数据库中;音视频的播放过程其实就是音视频的下载过程和音视频的解码处理过程;对于音视频url中包含可以直接下载的音视频链接的网页,称为资源型音视频url;对于音视频url为根据视频网站协议播放的音视频链接(无法直接下载)的网页,称为非资源型音视频url;

s4.音视频播放判别:音视频播放判别有两种情况:资源型音视频播放处理和非资源型音视频播放处理;资源型音视频播放处理包括音视频下载、音视频数据帧分析;非资源型音视频播放处理包括基于js-chrome插件播放、模拟点击处理和音视频播放监听;

s5.音视频播放信息存储:通过音视频url信息的唯一标识符,设置该音视频url的检测标识为2,并提交给数据库,完成更新。

进一步地,所述步骤s1包括以下子步骤:

s11.添加待判别的音视频url信息;

s12.设置判别音视频是否成功播放的参数包括播放时长或者播放进度;

s13.设置判别音视频的检测状态码为0;

s14.将该音视频判别任务存入数据库中,并由数据库生成唯一标识符;

其中s11和s12,可由用户手动添加,也可从文件中批量导入。

进一步地,所述步骤s2包括以下子步骤:

s21.获取各任务执行机器的系统资源消耗详情;

s22.定时地从数据库中获取待检测的音视频播放任务;

s23.依据各任务执行机器的系统资源消耗情况,向指定任务机器发送任务,并记录在数据库中。

进一步地,所述步骤s3包括以下子步骤:

s31.任务执行机向音视频url发送http请求,获取其http的状态码信息,判别音视频url的可访问性,若不可访问,则存储相关信息并退出判别;若可访问则进入步骤s32;

s32.对音视频url的中包含的音视频链接进行分析,若该网页包含可直接下载的单个音视频链接或多个分片的音视频链接则为资源型音视频url,若不包含,则为非资源型音视频url;

s33.将音视频url的资源类型判别信息,根据其唯一标识符,存储在数据库中。

进一步地,所述步骤s4中按照音视频url是否属于资源型音视频url分别进行处理,包括以下两种情况:

(1)如果音视频url被识别为资源型音视频的url,根据音视频的播放类型对其进行分类,分别进行处理:

对于需要缓冲完成后才能播放的音视频来说,对其执行下载操作,并在下载完成后对音视频数据包进行解码处理得到音视频的播放总时长,记为tc;图片总量,记为pc;每秒的图片显示数量,记为pcs;分别计算播放时长和播放进度,播放时长记为pt,计算方式为pt=pc/pcs;播放进度记为ps,计算方式为ps=pt/tc;然后将计算得到的播放时长或播放进度与预先设定的阈值进行比对,若计算得到的对应数值大于等于该阈值,则播放成功,反之失败;

对于基于分片索引的音视频链接,我们在获取首个分片数据包后,对音视频数据包进行解码处理以得到音视频的播放总时长tc、每秒的图片显示数量pcs;对于每个音视频数据包i,都需要获取其图片数量,记为(pci);我们分别计算音视频的播放时长和播放进度,播放时长pt=(pc1+pc2+…+pci+…+pcn)/pcs,播放进度ps=pt/tc;然后将计算得到的播放时长或播放进度与预先设定的阈值进行比对,若计算得到的对应数值大于等于该阈值,则播放成功,反之失败;在若在获取并分析完第i个音视频分片后,播放时长或播放进度就能达到播放成功的判别阈值,则提前结束播放判断,对于后面的分片数据包则不需下载与解码处理。

(2)如果音视频url未被识别为资源型url,则其为非资源型音视频url,由于音视频播放网站的防盗链以及音视频解析规则的经常更改,播放处理程序无法直接获取整个音视频的数据包或分片数据包;因此,采用模拟用户行为方法,使用嵌入在浏览器中的播放插件加载该类音视频url,并将该音视频的判别阈值转化为播放插件中时间栏的对应位置;首先启动音视频播放监听组件,然后通过模拟鼠标的点击过程,使音视频跳转至指定位置,等待音视频完成在指定播放时长或播放进度上的加载完成缓冲,若该音视频播放监听组件能够监听到该音视频能够正常播放,且播放时长大于等于时间栏的对应位置,则播放成功,反之则为播放失败。

进一步地,所述步骤s5对接收音视频播放判别组件的音视频url播放信息,并根据音视频url的唯一性标识,设置该音视频url的检测标识符为2,并提交给数据库,完成更新,判别结束。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1