用于音视频同步测试和校正的方法、装置及电子设备与流程

文档序号:23552373发布日期:2021-01-05 21:11阅读:112来源:国知局
用于音视频同步测试和校正的方法、装置及电子设备与流程

本公开涉及信号处理领域,尤其涉及一种用于音视频同步测试和校正的方法、装置及电子设备。



背景技术:

相关技术中,即使是同样的录制软件,在不同机型上使用时,音视频捕获时间差常常不同。传统的对于录制软件的音视频矫正是在开发阶段(例如录制软件开发阶段),针对各款机型,分别进行音视频同步校正。然而,当一个通用的软件适配各种机型时,如果对每款机型都由工程师手动调节出适当的参数来做音视频同步校验,则会耗费大量的开发时间,而且这种校正方式容易引入较多的人为因素而可能导致音视频同步校正效果欠佳。



技术实现要素:

本公开提供一种用于音视频同步测试和校正的方法、装置及电子装置,以至少解决相关技术中的音视频同步校正耗费大量开发时间而且音视频同步校正效果欠佳的问题,也可不解决任何上述问题。本公开的技术方案如下:

根据本公开实施例的第一方面,提供一种用于音视频同步校正的方法,包括按照预定帧率捕获播放的特定视频帧序列和音频帧序列,其中,所述特定视频帧序列和音频帧序列中的各视频帧和各音频帧一一对应,且各视频帧彼此不同,各音频帧彼此不同,其中,所述特定视频帧序列中的每个视频帧与所述音频帧序列中与该视频帧对应的音频帧同时播放,并且各视频帧的播放时刻根据所述预定帧率被设置,使得按照所述预定帧率能够捕获到所述特定视频帧序列中的至少一个视频帧;对捕获的视频帧进行图像分析来确定捕获的视频帧的第一时间戳以及所述音频帧序列中与捕获的视频帧对应的音频帧,并通过对捕获的音频帧进行声音分析来确定与捕获的视频帧对应的音频帧的第二时间戳;根据第一时间戳和第二时间戳进行音视频同步校正。

可选地,各视频帧的播放时刻被设置为除以所述预定帧率的倒数所得的余数包括小于所述倒数的所有整数。

可选地,所述特定视频帧序列中的视频帧是分别具有不同颜色值的彩色图像,其中,对捕获的视频帧进行图像分析包括:对捕获的视频帧的颜色值进行分析。

可选地,根据第一时间戳和第二时间戳进行音视频同步校正包括:计算并保存第一时间戳与第二时间戳的差值或与所述差值有关的统计值,作为用于音视频同步的校验值。

可选地,用于音视频同步校正的方法还包括:响应于用户的录制请求,按照所述预定帧率捕获任意音视频,并根据保存的所述校验值使捕获的音视频同步。

可选地,每个视频帧和每个音频帧的播放时长小于或等于屏幕刷新间隔。

根据本公开实施例的第二方面,提供一种用于音视频同步测试的方法,所述方法包括:获取特定视频帧序列和音频帧序列,其中,所述特定视频帧序列和音频帧序列中的各视频帧和各音频帧一一对应,各视频帧彼此不同,各音频帧彼此不同;播放特定视频帧序列和音频帧序列,其中,所述特定视频帧序列中的每个视频帧与所述音频帧序列中与该视频帧对应的音频帧同时播放,并且各视频帧的播放时刻根据预定帧率被设置,使得按照所述预定帧率所述特定视频帧序列中的至少一个视频帧能够被捕获。

可选地,各视频帧的播放时刻被设置为除以所述预定帧率的倒数所得的余数包括小于所述倒数的所有整数。

可选地,所述特定视频帧序列中的视频帧是分别具有不同颜色值的彩色图像。

可选地,每个视频帧和每个音频帧的播放时长小于或等于屏幕刷新间隔。

可选地,用于音视频同步测试的方法还包括:在播放特定视频帧序列和音频帧序列之前,根据所述预定帧率设置所述特定视频帧序列和所述音频帧序列的播放方式。

根据本公开实施例的第三方面,提供一种用于音视频同步校正的装置,所述装置包括包括:捕获单元,被配置为按照预定帧率捕获播放的特定视频帧序列和音频帧序列,其中,所述特定视频帧序列和音频帧序列中的各视频帧和各音频帧一一对应,且各视频帧彼此不同,各音频帧彼此不同,其中,所述特定视频帧序列中的每个视频帧与所述音频帧序列中与该视频帧对应的音频帧同时播放,并且各视频帧的播放时刻根据所述预定帧率被设置,使得按照所述预定帧率能够捕获到所述特定视频帧序列中的至少一个视频帧;分析单元,被配置为对捕获的视频帧进行图像分析来确定捕获的视频帧的第一时间戳以及所述音频帧序列中与捕获的视频帧对应的音频帧,并通过对捕获的音频帧进行声音分析来确定与捕获的视频帧对应的音频帧的第二时间戳;校正单元,被配置为根据第一时间戳和第二时间戳进行音视频同步校正。

可选地,各视频帧的播放时刻被设置为除以所述预定帧率的倒数所得的余数包括小于所述倒数的所有整数。

可选地,所述特定视频帧序列中的视频帧是分别具有不同颜色值的彩色图像,其中,对捕获的视频帧进行图像分析包括:对捕获的视频帧的颜色值进行分析。

可选地,校正单元被配置为计算并保存第一时间戳与第二时间戳的差值或与所述差值有关的统计值,作为用于音视频同步的校验值。

可选地,捕获单元还被配置为响应于用户的录制请求而按照所述预定帧率捕获任意音视频,并且校正单元还被配置为根据保存的所述校验值使捕获的音视频同步。

根据本公开实施例的第四方面,提供一种用于音视频同步测试的装置,所述装置包括:获取单元,被配置为获取特定视频帧序列和音频帧序列,其中,所述特定视频帧序列和音频帧序列中的各视频帧和各音频帧一一对应,各视频帧彼此不同,各音频帧彼此不同;播放单元,被配置为播放特定视频帧序列和音频帧序列,其中,所述特定视频帧序列中的每个视频帧与所述音频帧序列中与该视频帧对应的音频帧同时播放,并且各视频帧的播放时刻根据预定帧率被设置,使得按照所述预定帧率所述特定视频帧序列中的至少一个视频帧能够被捕获。

可选地,各视频帧的播放时刻被设置为除以所述预定帧率的倒数所得的余数包括小于所述倒数的所有整数。

可选地,所述特定视频帧序列中的视频帧是分别具有不同颜色值的彩色图像。

可选地,每个视频帧和每个音频帧的播放时长小于或等于屏幕刷新间隔。

可选地,所述装置还包括:设置单元,被配置为在播放特定视频帧序列和音频帧序列之前,根据所述预定帧率设置特定视频帧序列和音频帧序列的播放方式。

根据本公开实施例的第五方面,提供了一种电子设备,所述电子设备包括:至少一个处理器;至少一个存储计算机可执行指令的存储器,其中,所述计算机可执行指令在被所述至少一个处理器运行时,促使所述至少一个处理器执行如上所述的用于音视频同步测试的方法或用于音视频同步校正的方法。

根据本公开实施例的第六方面,提供了一种用于音视频同步校正的系统,所述系统包括:音视频同步测试装置,被配置为:获取特定视频帧序列和音频帧序列,其中,所述特定视频帧序列和音频帧序列中的各视频帧和各音频帧一一对应,各视频帧彼此不同,各音频帧彼此不同;播放特定视频帧序列和音频帧序列,其中,所述特定视频帧序列中的每个视频帧与所述音频帧序列中与该视频帧对应的音频帧同时播放,并且各视频帧的播放时刻根据预定帧率被设置,使得按照所述预定帧率所述特定视频帧序列中的至少一个视频帧能够被捕获;以及音视频同步校正装置,被配置为按照所述预定帧率捕获播放的所述特定视频帧序列和所述音频帧序列,对捕获的视频帧进行图像分析来确定捕获的视频帧的第一时间戳以及所述音频帧序列中与捕获的视频帧对应的音频帧,通过对捕获的音频帧进行声音分析来确定与捕获的视频帧对应的音频帧的第二时间戳,并且根据第一时间戳和第二时间戳进行音视频同步校正。

根据本公开实施例的第七方面,提供了一种存储指令的计算机可读存储介质,其特征在于,当所述指令被至少一个处理器运行时,促使所述至少一个处理器执行如上所述的用于音视频同步测试的方法或用于音视频同步校正的方法。

根据本公开实施例的第八方面,提供了一种计算机程序产品,所述计算机程序产品中的指令被电子设备中的至少一个处理器运行以执行如上所述的用于音视频同步测试的方法或用于音视频同步校正的方法。

本公开的实施例提供的技术方案至少带来以下有益效果:由于特定视频帧序列和音频帧序列的播放考虑捕获视频时的帧率而被设置,使得在进行音视频同步校正时能够捕获到特定视频帧序列中的至少一个视频帧并据此通过图像分析和声音分析来进行音视频同步校正,因此,用户无需自己花费时间调整自己的视频捕获方式来确保能够捕获到适宜的视频帧进行音视频同步校正,而且任何用户(例如,任何机型的用户)都可方便地通过捕获所述特定视频帧序列和音频帧序列来自动进行音视频同步校正,而无需工程师在开发阶段通过参数调整来进行音视频同步校正,故节省了大量的人力和时间成本。此外,由于无需人为调参,使得音视频同步校正不受人为因素影响而能够达到较好的音视频同步效果。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的示例实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。

图1是本公开的示例性实施例可以应用于其中的示例性系统架构图;

图2是根据本公开示例性实施例示出的一种用于音视频同步测试的方法的流程图;

图3是根据本公开示例性实施例示出的一种用于音视频同步校正的方法的流程图;

图4是根据本公开示例性实施例示出的一种用于音视频同步测试的装置的框图;

图5是根据本公开示例性实施例示出的一种用于音视频同步校正的装置的框图;

图6是根据本公开示例性实施例示出的一种用于音视频同步校正的系统的框图;

图7是根据本公开示例性实施例示出的一种电子设备的框图。

具体实施方式

为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。

需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。

在此需要说明的是,在本公开中出现的“若干项之中的至少一项”均表示包含“该若干项中的任意一项”、“该若干项中的任意多项的组合”、“该若干项的全体”这三类并列的情况。例如“包括a和b之中的至少一个”即包括如下三种并列的情况:(1)包括a;(2)包括b;(3)包括a和b。又例如“执行步骤一和步骤二之中的至少一个”,即表示如下三种并列的情况:(1)执行步骤一;(2)执行步骤二;(3)执行步骤一和步骤二。

如本公开背景技术中所提及的,传统的对于录制软件的音视频矫正是在开发阶段(例如录制软件开发阶段),针对各款机型,分别进行音视频同步校正。例如,在进行音视频同步校正时,可播放视频帧和音频帧,然后由工程师手动调节出音频帧和视频帧捕获的时间差,然后根据这个调整的时间差来矫正录制软件。具体地,当一个视频帧a在时间点a时发出,音频帧b也在时间点a时发出,但是录制软件在录制视频帧a和音频帧b时,并不会在同一个时间点录制,比如录制软件在时间b录制视频帧a,在时间c录制音频帧b,而b与c不相等,即有个时间差。当|b-c|>d,当d大于某个人感受明显的时长时,人就会觉得录制的视频中音视频不同步。工程师就是要调节出一个参数s,使得|b-c-s|<t,这个t值是一个人类无明显感受的时长,即音视频录制的时间差很小,小到人类没有不同步的感受。但是,当一个通用的软件适配各种机型时,如果对每款机型都由工程师手动调节出适当的参数来做音视频同步校验,势必会耗费大量的开发时间,而且这种校正方式容易引入较多的人为因素而可能导致音视频同步校正效果欠佳。针对此,本公开提出了能够自动进行音视频同步校正的方法和装置,不仅节省了人力和时间成本,而且可以获得较好的音视频同步效果。

图1示出了本公开的示例性实施例可以应用于其中的示例性系统架构100。

如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息(例如音视频数据上传请求、音视频数据获取请求)等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如视频录制类应用、音频播放类应用、即时通信工具、邮箱客户端、社交平台软件等。终端设备101、102、103可以是硬件,也可以是软件。当终端设备101、102、103为硬件时,可以是具有显示屏并且能够进行音视频播放和录制的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。当终端设备101、102、103为软件时,可以安装在上述所列举的电子设备中,其可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块。在此不做具体限定。

终端设备101、102、103可以安装有图像采集装置(例如摄像头),以采集视频数据。实践中,组成视频的最小视觉单位是帧(frame)。每一帧是一幅静态的图像。将时间上连续的帧序列合成到一起便形成动态视频。此外,终端设备101、102、103也可以安装有用于将电信号转换为声音的组件(例如扬声器)以播放声音,并且还可以安装有用于将模拟音频信号转换为数字音频信号的装置(例如,麦克风)以采集声音。

终端设备101、102、103可以利用安装于其上的图像采集装置进行视频数据的采集,并可以利用安装于其上的支持音频播放的音频处理组件播放音频数据。并且,终端设备101、102、103可以对所采集到的音视频数据进行时间戳计算等处理,并可将处理结果进行存储。

服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103上所安装的视频录制类应用提供支持的后台服务器。后台服务器可以对所接收到的音视频数据上传请求等数据进行解析、存储等处理,并且还可以接收终端设备101、102、103所发送的音视频数据获取请求,并将该音视频数据获取请求所指示的音视频数据反馈至终端设备101、102、103。

需要说明的是,服务器可以是硬件,也可以是软件。当服务器为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块。在此不做具体限定。

需要说明的是,本申请实施例所提供的用于音视频同步测试和校正的方法一般由终端设备101、102、103执行,相应地,用于音视频同步测试和校正的装置一般设置于终端设备101、102、103中。

应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器,本公开对此并无限制。

图2是根据示例性实施例示出的一种用于音视频同步测试的方法的流程图;

在步骤s201,获取特定视频帧序列和音频帧序列。这里,所述特定视频帧序列和音频帧序列中的各视频帧和各音频帧可一一对应,各视频帧彼此不同,并且各音频帧彼此不同。作为示例,可从外部装置或服务器获取特定视频帧序列和音频帧序列,或者也可从执行图2所示的方法的主体的存储单元获取特定视频帧序列和音频帧序列,本公开对这里的获取方式并无限制。

在步骤s202,播放特定视频帧序列和音频帧序列。例如,可响应于用户的播放请求,播放特定视频帧序列和音频帧序列。具体地,所述特定视频帧序列中的每个视频帧与所述音频帧序列中与该视频帧对应的音频帧可以同时播放,并且各视频帧的播放时刻可以根据预定帧率被设置,使得按照所述预定帧率所述特定视频帧序列中的至少一个视频帧能够被捕获。

这里,所述预定帧率可以是录制软件录制视频时所使用的帧率。例如,所述预定帧率是25帧/秒,但不限于此。可选地,可响应于用户输入,设置所述预定帧率并根据预定帧率设置特定视频帧序列和音频帧序列的播放方式。例如,可提供允许用户输入所述预定帧率的接口(例如,图形用户界面),或者可从其他装置(例如,用户安装录制软件的装置)接收关于所述预定帧率的信息,但不限于此,本公开对获得所述预定帧率的方式没有限制。

根据本公开示例性实施例,所述特定视频帧序列中的各视频帧可被设置为彼此不同,所述音频帧序列中的各音频帧彼此不同,并且所述特定视频帧序列中的每个视频帧与所述音频帧序列中与该视频帧对应的音频帧同时播放。作为示例,为便于后续音视频同步校正时进行图像分析并减小分析时的运算量,各视频帧可以是分别具有不同颜色值的彩色图像,即,每个视频帧均是具有一定颜色值的纯色彩色图像(在下文中,被称为“颜色图像”),例如,诸如赤橙黄绿青蓝紫…的颜色图像。然而,各视频帧不限于是颜色图像,而是可以是任何彼此不同的图像。作为示例,各音频帧可以是分别对应于特定音符的声音,例如,dao、ruai、mi、fa、sao、la、xi等等,但不限于此。如上所述,特定视频帧序列中的每个视频帧在所述音频帧序列中均具有与其对应的音频帧,并且对应的视频帧和音频帧同时播放。例如,赤色的颜色图像可以发出dao的音频帧对应并且同时播放。此外,可根据所述预定帧率设置各视频帧的播放时刻,使得按照所述预定帧率能够捕获到所述特定视频帧序列中的至少一个视频帧。在本公开中,由于特定视频帧序列的播放方式考虑了后续录制软件录制视频时的帧率,使得按照所述预定帧率捕获播放的该视频帧序列时确保能够捕获到至少一个视频帧,进而便于利用捕获的视频帧进行音视频同步校正,因此,用户无需自己花费时间调整自己的视频捕获方式来确保能够捕获到适宜的视频帧进行音视频同步校正,而且任何用户(例如,任何机型的用户)都可方便地利用录制软件捕获所述特定视频帧序列和音频帧序列来对自己的录制软件自动进行音视频同步校正,而无需工程师在开发阶段针对每种机型对录制软件进行音视频同步校正。

根据示例性实施例,各视频帧的播放时刻可以被设置为除以所述预定帧率的倒数所得的余数包括小于所述倒数的所有整数。下面,为方便描述,以所述预定帧率是25帧/秒(也即每40ms捕获一帧,即,帧率的倒数是40ms/帧)为例对根据所述预定帧率设置各视频帧的播放时刻进行说明。在所述预设帧率是25帧/秒的情况下,可以将特定视频帧序列设置为包括40个不同的颜色图像(可选地,也可选择多于40个颜色图像),并在第0毫秒时刻播放第一张颜色图像,第0+40+1毫秒时刻播放第二张颜色图像,第0+40*2+2毫秒时刻播放第三张颜色图像,第0+40*3+3毫秒时刻播放第四张颜色图像……,第0+40*39+39毫秒时刻播放第四十张颜色图像。可选地,在不同颜色图像的播放间隔时间里,可以显示纯黑色图像,或者也可显示能够区别于播放的颜色图像的其他图像,或者也可不显示任何图像。以上播放方式设置的目的是确保各个颜色出现的时刻除以40的余数分别为0、1、2、3…38、39,即,包括小于40的所有整数,而这可以使得当按照25帧/秒的帧率捕获上述特定视频帧序列时,能够捕获到至少一个视频帧。例如,如果在0ms时刻开始捕获,则至少可以捕获到在0m时刻播放的第一张颜色图像,而如果在1ms时刻开始捕获,则至少可以捕获到在第0+40+1毫秒时刻播放的第二张颜色图像,以此类推。此外,特定视频帧序列和音频帧序列可以循环播放,因此,可捕获到多个颜色图像。如上所述,由于视频帧之间和音频帧之间彼此有一定的间隔(在以上示例中,间隔为41ms),所以不会因为屏幕刷新或音频帧过长而导致无法精确播放。

根据示例性实施例,每个视频帧和每个音频帧的播放时长可尽量设置得较小。作为示例,每个视频帧和每个音频帧的播放时长可小于或等于屏幕刷新间隔。这是为了保证用户即使不在与上述余数所对应的整数时刻捕获视频帧,也能够捕获到上述特定视频帧序列中的至少一个视频帧。

根据上述用于音视频同步测试的方法,可以方便不同机型的用户利用播放的特定视频帧序列和音频帧序列直接进行音视频同步测试,并可在此基础上进行音视频同步校正,避免了工程师在开发阶段对不同机型上的录制软件进行音视频同步测试和校正。

可选地,图2所示的方法还可包括以下步骤(未示出):根据预定帧率设置特定视频帧序列和音频帧序列的播放方式。然而,需要说明的是,上述设置特定视频帧序列和音频帧序列的播放方式的操作也可在其他装置中执行,而用于音视频同步测试的方法可在由其他装置设置好播放方式之后,播放特定视频帧序列和音频帧序列,而无需一定包含上述设置操作。可选地,图2所示的方法还可包括其他操作,例如,存储视频帧序列和音频帧序列或者对视频帧序列和音频帧序列进行处理等操作,本公开对此不做限制。图3是根据本公开示例性实施例示出的一种用于音视频同步校正的方法的流程图。

在步骤s301,按照预定帧率捕获播放的特定视频帧序列和音频帧序列。这里,如以上关于图2的描述中所提及的,所述特定视频帧序列和音频帧序列中的各视频帧和各音频帧一一对应,且各视频帧彼此不同,各音频帧彼此不同。另外,所述特定视频帧序列中的每个视频帧与所述音频帧序列中与该视频帧对应的音频帧同时播放,并且各视频帧的播放时刻根据所述预定帧率被设置,使得按照所述预定帧率能够捕获到所述特定视频帧序列中的至少一个视频帧。作为示例,各视频帧的播放时刻被设置为除以所述预定帧率的倒数所得的余数包括小于所述倒数的所有整数。此外,每个视频帧和每个音频帧的播放时长小于或等于屏幕刷新间隔。以上已经在图2的描述中对特定视频帧序列和音频帧序列的播放方式进行了介绍,这里不再赘述。

在步骤s302,对捕获的视频帧进行图像分析来确定捕获的视频帧的第一时间戳以及所述音频帧序列中与捕获的视频帧对应的音频帧,并通过对捕获的音频帧进行声音分析来确定与捕获的视频帧对应的音频帧的第二时间戳。在捕获到视频帧和音频帧时,可以记录视频帧和音频帧的采集时间。视频帧和音频帧的采集时间可以是捕获到视频帧和音频帧时的系统时间戳(timestamp),也简称为时间戳。通常,时间戳是一个字符序列,能够唯一地标识某一刻的时间。

如上所述,由于各视频帧的播放时刻根据所述预定帧率被设置,使得按照所述预定帧率能够捕获到所述特定视频帧序列中的至少一个视频帧,因此,在步骤301按照预定帧率捕获播放的特定视频帧序列和音频帧序列一定会捕获到所述特定视频帧序列中的至少一个视频帧,此外,由于音频帧是连续捕获的,因此也必然会捕获到与所述至少一个视频帧对应的音频帧。根据示例性实施例,所述特定视频帧序列中的视频帧可以是分别具有不同颜色值的彩色图像,在这种情况下,对捕获的视频帧进行图像分析包括:对捕获的视频帧的颜色值进行分析,从而确定捕获的视频帧是特定视频帧序列中的哪个视频帧,进而可确定捕获的视频帧的第一时间戳以及所述音频帧序列中与捕获的视频帧对应的音频帧。可选地,在所述特定视频帧序列中的视频帧可以不是简单的颜色图像,而是更复杂的彼此不同的彩色图像,例如,每个彩色图像中可包括不同的对象。在这种情况下,对捕获的视频帧进行图像分析可以包括:对捕获的视频帧进行对象识别或图像特征匹配。需要说明的是,本公开对图像分析的方式并无限制,可根据视频帧的不同而采用不同的图像分析方式,只要能够确定捕获的视频帧是特定视频帧序列中的哪一个即可。

在确定了与捕获的视频帧对应的音频帧之后,可通过对捕获的音频帧进行声音分析来确定与捕获的视频帧对应的音频帧的第二时间戳。这里,为描述方便,仍然以图2所提及的特定播放方式为例,在这种情况下,假设通过颜色分析确定了捕获的视频帧是与黄色对应的颜色图像,则由于每个视频帧在音频帧序列中均存在与其对应的音频帧并且对应的视频帧和音频帧同时播放,因此,可以确定与该颜色图像对应的音频帧。假设该音频帧是对应于mi的声音,则对捕获的音频帧进行声音分析可以是例如对捕获的音频帧进行频谱分析,找到该音频帧录制的时间,进而确定与mi这一音频帧对应的时间戳。同样需要说明的是,本公开对声音分析的方式也并无限制,可根据音频帧的不同而采用不同的声音分析方式。

在步骤s303,根据第一时间戳和第二时间戳进行音视频同步校正。具体地,在步骤s303,可计算并保存第一时间戳与第二时间戳的差值或与所述差值有关的统计值,作为用于音视频同步的校验值。例如,在捕获到特定视频帧序列中的仅一个视频帧的情况下,可计算并保存第一时间戳与第二时间戳的差值,作为用于音视频同步的校验值。例如,假设捕获的视频帧是与黄色对应的颜色图像并且其时间戳是video_timestamp,与该视频帧对应的音频帧为对应于mi的声音并且其时间戳是audio_timestamp,则所述校验值可以是sync_time=(video_timestamp-audio_timestamp),并且该校验值可被保存在本地。作为另一示例,在捕获到特定视频帧序列中的多个视频帧的情况下,可以计算与多个视频帧中的每个视频帧的第一时间戳和与每个视频帧对应的音频帧的第二时间戳之间的差有关的统计值(例如,平均值、加权平均值、中值等),作为用于音视频同步的校验值,从而可获得更好的校验结果。该校验值就是录制视频帧和对应音频帧的录制时间差,并且该校验值可被保存在本地,并在后续用户录制时被使用。可选地,本公开的用于音视频同步校正的方法还可包括以下步骤(未示出):响应于用户的录制请求,按照所述预定帧率捕获任意音视频,并根据保存的所述校验值使捕获的音视频同步。例如,在录制时,可以获取先前保存的用于音视频同步校正的校验值,并将捕获的视频帧的时间戳减去该校验值,这样就可以得到一个能够使音视频同步的时间戳,如此便可获得较好的音视频同步的录制结果。

通过以上描述的用于音视频同步校正的方法,用户可以自行进行音视频同步校正,而无需工程师在开发阶段针对每种机型对录制软件进行音视频同步校正,并且由于减少了工程师人为调整参数的过程,因此,可获得更加客观准确的校正结果。

图4是根据本公开示例性实施例示出的一种用于音视频同步测试的装置(以下,为描述方便,将其简称为“音视频同步测试装置”)的框图。

参照图4,音视频同步测试装置400可包括获取单元401和播放单元402。获取单元401可获取特定视频帧序列和音频帧序列。这里,所述特定视频帧序列和音频帧序列中的各视频帧和各音频帧一一对应,各视频帧彼此不同,各音频帧彼此不同。播放单元402可播放特定视频帧序列和音频帧序列。具体地,所述特定视频帧序列中的每个视频帧与所述音频帧序列中与该视频帧对应的音频帧可同时播放,并且各视频帧的播放时刻根据预定帧率被设置,使得按照所述预定帧率所述特定视频帧序列中的至少一个视频帧能够被捕获。捕获到的至少一个视频帧可用于进行音视频同步测试和音视频同步校正。可选地,音视频同步测试装置400还可包括设置单元(未示出)。设置单元可根据预定帧率设置特定视频帧序列和音频帧序列的播放方式。关于预定帧率、以及特定视频帧序列和音频帧序列的播放方式的设置等内容,以上已经在关于图2的描述中进行过介绍,这里不再赘述。

需要说明的是,由设置单元执行的操作可在由其他装置执行,也就是说,可由其他装置设置好视频帧序列和音频帧序列的特定播放方式后,由音视频同步测试装置400中的播放单元在获取特定视频帧序列和音频帧序列之后播放特定视频帧序列和音频帧序列。可选地,音视频同步测试装置400还可包括其他单元,例如,存储单元、数据数量单元等。

此外,由于图2所示的音视频同步测试方法可由图4所示的音视频同步测试装置400来执行,因此,关于图4中的单元所执行的操作中涉及的任何相关细节均可参见关于图2的相应描述,这里都不再赘述。

图5是根据本公开示例性实施例示出的一种用于音视频同步校正的装置(以下,为描述方便,将其简称为“音视频同步校正装置”)的框图。

参照图5,音视频同步校正装置500可包括捕获单元501、分析单元502和校正单元503。具体而言,捕获单元501可按照预定帧率捕获播放的特定视频帧序列和音频帧序列。根据示例性实施例,所述特定视频帧序列和音频帧序列中的各视频帧和各音频帧一一对应,且各视频帧彼此不同,各音频帧彼此不同。此外,所述特定视频帧序列中的每个视频帧与所述音频帧序列中与该视频帧对应的音频帧同时播放,并且各视频帧的播放时刻根据所述预定帧率被设置,使得按照所述预定帧率能够捕获到所述特定视频帧序列中的至少一个视频帧。分析单元502可对捕获的视频帧进行图像分析来确定捕获的视频帧的第一时间戳以及所述音频帧序列中与捕获的视频帧对应的音频帧,并通过对捕获的音频帧进行声音分析来确定与捕获的视频帧对应的音频帧的第二时间戳。校正单元503可根据第一时间戳和第二时间戳进行音视频同步校正。

由于图3所示的音视频同步校正方法可由图5所示的音视频同步校正装置500来执行,并且捕获单元501、分析单元502和校正单元503可分别执行与图3中的步骤301、步骤302和步骤303对应的操作,因此,关于图5中的单元所执行的操作中涉及的任何相关细节均可参见关于图3的相应描述,这里都不再赘述。

此外,需要说明的是,尽管以上在描述音视频同步测试装置400和音视频同步校正装置500时将其划分为用于分别执行相应处理的单元,然而,本领域技术人员清楚的是,上述各单元执行的处理也可以在音视频同步测试装置400和音视频同步校正装置500不进行任何具体单元划分或者各单元之间并无明确划界的情况下执行。

图6是根据本公开示例性实施例示出的一种用于音视频同步校正的系统(以下,为描述方便将其称为“音视频同步校正系统”)的框图。

参照图6,音视频同步校正系统600可包括音视频同步测试装置601和音视频同步校正装置602。具体地,音视频同步测试装置601可首先获取特定视频帧序列和音频帧序列。这里,所述特定视频帧序列和音频帧序列中的各视频帧和各音频帧一一对应,各视频帧彼此不同,各音频帧彼此不同。随后,音视频同步测试装置601可播放特定视频帧序列和音频帧序列,其中,所述特定视频帧序列中的每个视频帧与所述音频帧序列中与该视频帧对应的音频帧同时播放,并且各视频帧的播放时刻根据预定帧率被设置,使得按照所述预定帧率所述特定视频帧序列中的至少一个视频帧能够被捕获。音视频同步校正装置602可按照所述预定帧率捕获播放的所述特定视频帧序列和所述音频帧序列,对捕获的视频帧进行图像分析来确定捕获的视频帧的第一时间戳以及所述音频帧序列中与捕获的视频帧对应的音频帧,通过对捕获的音频帧进行声音分析来确定与捕获的视频帧对应的音频帧的第二时间戳,并且根据第一时间戳和第二时间戳进行音视频同步校正。

此外,音视频同步测试装置601和音视频同步校正装置602既可以以硬件方式实现,也可完全通过计算机程序或指令以软件方式实现。例如,音视频同步测试装置601可被实现为能够播放音视频的音视频同步测试软件,音视频同步校正装置602可被实现以是具有音视频录制功能和音视频同步校正功能的录制软件。下面,结合图6的系统,简要描述一个应用本公开的音视频同步校正系统600的示例场景。例如,当用户发现自己终端上安装的录制软件存在音视频不同步的问题时,用户期望能够对录制软件进行音视频同步校正,此时,用户可下载音视频同步测试软件。如上所述,音视频同步测试软件可以按照特定方式播放特定视频帧序列和音频帧序列,而用户只需要用录制软件捕获播放的所述特定视频帧序列和音频帧序列,便可自动进行音视频同步校正。例如,如参照图3和图4所描述的,录制软件可计算用于音视频同步校正的校验值,并可以将其保存在本地。之后,当用户再进行音视频录制时,录制软件可从本地获取该校验值,并利用该校验值使录制的音视频保持同步。

此外,作为示例,音视频同步测试软件可默认播放根据一般的录制软件录制视频时所使用的帧率设置的特定视频帧序列和音频帧序列。可选地,音视频同步测试软件也可提供用户界面以允许用户输入其录制软件录制视频的帧率,然后再播放根据用户输入的帧率设置的特定视频帧序列和音频帧序列。另外,可选地,录制软件可提供用户界面来接收用户的音视频同步校正请求,此外,还可提供用户界面以允许用户下载音视频同步测试软件。

以上仅是音视频同步校正系统600的示例性应用场景,在具体应用时,可存在各种变形,本申请对此不做限制。

图7是根据本公开实施例的一种电子设备700的框图,该电子设备可包括至少一个存储器701和至少一个处理器702,所述至少一个存储器中存储有计算机可执行指令集合,当计算机可执行指令集合被至少一个处理器执行时,执行根据本公开实施例的用于音视频同步测试的方法或用于音视频同步校正的方法。

作为示例,电子设备可以是pc计算机、平板装置、个人数字助理、智能手机、或其他能够执行上述指令集合的装置。这里,电子设备并非必须是单个的电子设备,还可以是任何能够单独或联合执行上述指令(或指令集)的装置或电路的集合体。电子设备还可以是集成控制系统或系统管理器的一部分,或者可被配置为与本地或远程(例如,经由无线传输)以接口互联的便携式电子设备。

在电子设备中,处理器可包括中央处理器(cpu)、图形处理器(gpu)、可编程逻辑装置、专用处理器系统、微控制器或微处理器。作为示例而非限制,处理器还可包括模拟处理器、数字处理器、微处理器、多核处理器、处理器阵列、网络处理器等。

处理器可运行存储在存储器中的指令或代码,其中,存储器还可以存储数据。指令和数据还可经由网络接口装置而通过网络被发送和接收,其中,网络接口装置可采用任何已知的传输协议。

存储器可与处理器集成为一体,例如,将ram或闪存布置在集成电路微处理器等之内。此外,存储器可包括独立的装置,诸如,外部盘驱动、存储阵列或任何数据库系统可使用的其他存储装置。存储器和处理器可在操作上进行耦合,或者可例如通过i/o端口、网络连接等互相通信,使得处理器能够读取存储在存储器中的文件。

此外,电子设备还可包括视频显示器(诸如,液晶显示器)和用户交互接口(诸如,键盘、鼠标、触摸输入装置等)。电子设备的所有组件可经由总线和/或网络而彼此连接。

根据本公开的实施例,还可提供一种存储指令的计算机可读存储介质,其中,当指令被至少一个处理器运行时,促使至少一个处理器执行根据本公开示例性实施例的用于音视频同步测试的方法或用于音视频同步校正的方法。这里的计算机可读存储介质的示例包括:只读存储器(rom)、随机存取可编程只读存储器(prom)、电可擦除可编程只读存储器(eeprom)、随机存取存储器(ram)、动态随机存取存储器(dram)、静态随机存取存储器(sram)、闪存、非易失性存储器、cd-rom、cd-r、cd+r、cd-rw、cd+rw、dvd-rom、dvd-r、dvd+r、dvd-rw、dvd+rw、dvd-ram、bd-rom、bd-r、bd-rlth、bd-re、蓝光或光盘存储器、硬盘驱动器(hdd)、固态硬盘(ssd)、卡式存储器(诸如,多媒体卡、安全数字(sd)卡或极速数字(xd)卡)、磁带、软盘、磁光数据存储装置、光学数据存储装置、硬盘、固态盘以及任何其他装置,所述任何其他装置被配置为以非暂时性方式存储计算机程序以及任何相关联的数据、数据文件和数据结构并将所述计算机程序以及任何相关联的数据、数据文件和数据结构提供给处理器或计算机使得处理器或计算机能执行所述计算机程序。上述计算机可读存储介质中的计算机程序可在诸如客户端、主机、代理装置、服务器等计算机设备中部署的环境中运行,此外,在一个示例中,计算机程序以及任何相关联的数据、数据文件和数据结构分布在联网的计算机系统上,使得计算机程序以及任何相关联的数据、数据文件和数据结构通过一个或多个处理器或计算机以分布式方式存储、访问和执行。

根据本公开的实施例中,还可提供一种计算机程序产品,该计算机程序产品中的指令可被电子设备中的至少一个处理器执行以实现根据本公开示例性实施例的用于音视频同步测试的方法或用于音视频同步校正的方法。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。

应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

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