一种Audio播放时延的确定方法技术

技术编号:14927301 阅读:82 留言:0更新日期:2017-03-30 19:07
本发明专利技术实施例公开了一种Audio播放时延的确定方法,所述方法包括:A、当Audio应用程序启动后,为写入Audio系统的数据单元添加数据头;其中,所述数据头包括所述数据单元的ID和写入所述数据单元时的时间戳;B、分离得到所述数据头;D、根据所述数据头和分离得到所述数据头时的当前时间确定Audio延迟时间。由上,本发明专利技术实施例可精确的确定Audio播放延迟时间,进而反映Audio播放性能。

【技术实现步骤摘要】

本专利技术涉及通信
,特别涉及一种Audio播放时延的确定方法。
技术介绍
对于android系统来说,Audio播放就是不停的将来自文件或网络的Audio数据,经解码和Audio系统处理后输出到Audio驱动,再转换为模拟信号传送到硬件。在开发过程中,经常会遇到Audio播放的性能问题。所谓的性能问题也就是Audio播放时,听到的声音有延迟。因此,知道播放延迟时间,可以迅速的定位和解决性能问题,同时也可作为Audio播放性能的衡量标准。Audio系统很复杂,Audio数据的传输很难跟踪。因此,很难确定Audio播放的延迟时间。
技术实现思路
有鉴于此,本专利技术的主要目的在于提供一种Audio播放时延的确定方法,通过为数据单元添加时间戳数据头,进一步根据获取时间戳时的当前时间和时间戳中标识的时间之间的时间差,从而精确的确定播放的延迟时间,进而反映Audio播放性能。本专利技术提供一种Audio播放时延的确定方法,该方法包括以下步骤:A、当Audio应用程序启动后,为写入Audio系统的数据单元添加数据头;其中,所述数据头包括所述数据单元的ID和写入所述数据单元时的时间戳;B、分离得到所述数据头;D、根据所述数据头和分离得到所述数据头时的当前时间确定Audio延迟时间。由上,通过在数据单元写入时为其添加时间戳数据头,根据该数据头和分离得到该数据头时的当前时间确定Audio延迟时间,可以确定该数据单元传输到该处的延时时间,进而定位影响播放性能的位置。优选地,所述步骤A还包括:在Audio系统中,将所述Audio数据单元中的数据与混音器中其他来源的数据进行混合,得到混音后的Audio数据单元;将所述数据头添加到所述混音后的Audio数据单元中。由上,通过对数据头处理,防止数据头在传输过程中被丢失。优选地,所述步骤B包括:在添加有数据头的所述混音后的数据单元被发送给Audio驱动之前,分离得到所述数据头。由上,在添加有数据头的所述混音后的数据单元被发送给Audio驱动之前,就分离得到数据头,以进一步获取该数据单元在Audio系统中处理和传输所花费的时间。优选地,所述步骤D包括:根据分离得到的数据头的时间戳中标识的时间和分离得到所述数据头时的当前时间之间的时间差确定Audio延迟时间。由上,根据分离得到的数据头的时间戳中标识的时间和分离得到所述数据头时的当前时间之间的时间差可以精确的确定可以确定该数据单元传输该处的延时时间。由上可以看出,本专利技术通过为数据单元添加时间戳数据头,进一步根据获取时间戳时的当前时间和时间戳中标识的时间之间的时间差,从而精确的确定了播放的延迟时间,进而反映了Audio播放性能。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的一种Audio播放时延的确定方法的流程示意图。图2为本专利技术实施例提供的一种Android原始的Audio数据流流向示意图。图3为本专利技术实施例提供的一种修改前后系统中的Audio数据对比示意图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。为克服现有技术中的缺陷,本申请实施例提供一种Audio播放时延的确定方法,通过为数据单元添加时间戳数据头,进一步根据获取时间戳时的当前时间和时间戳中标识的时间之间的时间差,可精确的确定播放的延迟时间。如图1所示,为本专利技术实施例中的提出的一种Audio播放时延的确定方法的流程示意图,所述方法应用于基于android系统的移动终端,所述方法包括以下步骤:S101,添加时间戳的数据头。在本实施例中,在Audio播放应用程序启动后,不断的往Audio系统中写入数据,将写入一次的数据称之为一个Audio数据单元。本实施例采用网络数据传输的思想,为该数据单元添加数据头,该数据头包括:数据单元的ID和写入数据时的时间戳,该时间戳中标记了写入数据时的时间,将该数据头称之为时间戳数据头。该ID用于标记该数据单元,将添加时间戳数据头后的数据单元称之为封装后的Audio数据单元。克服了现有技术中,Audio驱动接收到一个Audio数据单元时,无法知道该数据单元是应用程序在什么时候写入的缺陷。本实施例中,在对一种来源的Audio数据流进行播放延迟的确定时,只对该来源的数据单元添加时间戳数据头。S102,混音时对时间戳数据头的处理。在Mixer(混音器)中进行混音处理,具体为:将封装后的Audio数据单元的Audio数据与混音器中的其他来源的数据进行混合,得到混音后的数据单元,将步骤S101中的时间戳数据头添加到混音后的Audio数据单元中,得到新封装后的Audio数据单元。S103,分离时间戳数据头。在本实施例中,在将添加有时间戳数据头的混音后的Audio数据单元发送给Audio驱动程序之前,将该时间戳数据头从该数据单元中分离出来,得到分离后的时间戳数据头。该时间戳数据头包括数据单元的ID和写入数据时的时间戳。被分离出时间戳数据头后的数据单元继续被传送给Audio驱动程序。S104,确定延迟时间。在本实施例中,在得到分离后的时间戳数据头时,获取currenttime(当前时间)。从该时间戳数据头中获取时间戳中标记的starttime(写入数据时的时间)。用当前时间减去时间戳数据头中的时间,即为该数据单元在系统中所耗费的时间。该时间即为该数据单元在Audio系统中处理和传输所花费的时间。用公式表示为:延迟时间=currenttime–starttime延迟时间大,是播放性能比较差的一种体现,因此通过确定播放延迟时间也可以反映Audio播放性能。同样,也可以在Audio系统中的任何位置提取该时间戳数据头,<本文档来自技高网...
一种Audio播放时延的确定方法

【技术保护点】
一种Audio播放时延的确定方法,其特征在于,包括:A、当Audio应用程序启动后,为写入Audio系统的数据单元添加数据头;其中,所述数据头包括所述数据单元的ID和写入所述数据单元时的时间戳;B、分离得到所述数据头;D、根据所述数据头和分离得到所述数据头时的当前时间确定Audio延迟时间。

【技术特征摘要】
1.一种Audio播放时延的确定方法,其特征在于,包括:
A、当Audio应用程序启动后,为写入Audio系统的数据单元添
加数据头;其中,所述数据头包括所述数据单元的ID和写入所述数
据单元时的时间戳;
B、分离得到所述数据头;
D、根据所述数据头和分离得到所述数据头时的当前时间确定
Audio延迟时间。
2.根据权利要求1所述的方法,其特征在于,所述步骤A还包
括:
在Audio系统中,将所述Audio数据单元中的数据与混音器...

【专利技术属性】
技术研发人员:罗朝江汪亮
申请(专利权)人:中科创达软件股份有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1