音画同步自动校正方法和装置与流程

文档序号:14256200阅读:922来源:国知局

本发明涉及声音图像处理领域,尤其涉及一种音画同步自动校正方法和装置。



背景技术:

随着互联网电视的快速发展和普及,用户观看网络视频的场景也越来越多,与此同时网络视频片源的格式也变得多种多样。由于片源格式的不同,音画同步的效果也会有所不同,比如:播放1080p60hz的网络片源和播放1080p30hz的网络片源,音画同步效果就有会很大的不同。

不同格式网络视频片源造成音画不同步的主要原因是由于片源的帧率(framerate)不同,同时主芯片(soc)对于视频的缓存处理机制不同,更进一步导致音画不同步,例如:针对1080p30hz片源:如果soc视频缓存处理机制为缓存1帧,则图像比声音慢1000/30*1=33.3ms;如果soc视频缓存处理机制为缓存2帧,则图像比声音慢1000/30*2=66.6ms。针对1080p60hz片源:如果soc视频缓存处理机制为缓存1帧,则图像比声音慢1000/60*1=16.6ms;如果soc视频缓存处理机制为缓存2帧,则图像比声音慢1000/60*2=33.3ms。

为了解决上述问题,目前的智能电视通常都为用户提供调节声音延迟的配置界面,用户根据实际情况进行调整,如图1所示。

但此种处理方法存在一定的问题,比如:用户在观看1080p60hz的网络片源时,手动将声音延迟调整为3,达到了音画同步的效果;而但用户又换了个1080p30hz的网络片源,原来的声音延迟调整值就不再适应于当前场景,为了满足观看效果,还可能需要重新调整一下声音延迟,才能达到同样的音画同步效果,因此,对应帧率多样化的网络片源,在进行音画同步的调整时,会造成用户需频繁地进行调整声音延迟的参数,用户体验较差。



技术实现要素:

本申请实施例通过提供一种音画同步自动校正方法和装置,解决了现有技术中对应帧率多样化的网络片源,在进行音画同步的调整时,会造成用户需频繁地进行调整声音延迟的参数,用户体验较差的问题,进而导致对观看者造成困扰,实现了终端能够自动对每种帧率的网络片源进行音画同步参数的设定。

一方面,本申请实施例提供了一种音画同步自动校正方法,应用于电视终端中,所述方法包括:

比较当前网络片源的帧率与前一次检测的网络片源帧率大小是否相同;

若是,则保持ui界面中已调整的音画同步参数值对应的声音延迟时间值不变;

若否,则对所述声音延迟时间值进行调整,使得在保持所述音画同步参数值不变的情况下,使得调整后的声音延迟时间值与所述当前网络片源的帧率相匹配。

另一方面,本申请实施例还提供了一种音画同步自动校正装置,应用于电视终端中,所述装置包括:

比较单元,用于比较当前网络片源的帧率与前一次检测的网络片源帧率大小是否相同;

保持单元,用于若是的情况下,则保持ui界面中已调整的音画同步参数值对应的声音延迟时间值不变;

调整单元,用于若否的情况下,则对所述声音延迟时间值进行调整,使得在保持所述音画同步参数值不变的情况下,使得调整后的声音延迟时间值与所述当前网络片源的帧率相匹配。

由上述实施例可知,本发明与现有技术相比,由于电视终端通过比较当前网络片源的帧率与前一次检测的网络片源帧率可以得知当前网络片源的帧率相比之前是否发生变化,如不变,则依然可以采用前一次检测时对ui界面设置的音画同步参数,此时的声音延迟时间值也没有变化,但是如果帧率变化,则电视终端可以对声音延迟时间值进行数据校正,调整声音延迟时间值,进而刷新声音延迟数据,用户不会发现ui界面设置的音画同步参数发生改变,但是ui界面设置的音画同步参数对应的声音延迟时间值已经发生变化,其与当前网络片源的帧率匹配,使得用户不会发现电视的音画同步参数被修改,但是声音延迟时间会后台调整,用户听到的实际声音延迟时间发生变化,与当前网络片源的帧率匹配,因此,可以避免用户频繁的对音画同步参数值进行调整,提高了用户体验。

附图说明

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

图1为本申请实施例描述的相关技术中为用户提供的调节音画同步显示效果的示意图;

图2为本申请实施例中所描述的一种音画同步自动校正方法的流程图;

图3为本申请实施例中所描述的一种音画同步自动校正装置的模块示意图;

图4为本申请实施例中所描述的一种音画同步自动校正设备的处理单元和存储单元的结构示意图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。

在相关技术中,在接收图像或视频的码流时,在该码流中,还会包含与音频数据对应的字幕数据,相应的,通过解析字幕数据,可以拿到cc的多个控制字,例如,其中音频文件对应字幕的行号、字符大小、行间隔大小、字符显示窗口大小等等,在显示字幕时,只需要根据字幕的这些控制字的参数将字幕的字符码对应的字符数据显示在字幕区域的对应位置即可。

为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明。

如图2所示,本申请实施例提供了一种音画同步自动校正方法,应用于电视终端中,所述方法包括:

步骤s101,比较当前网络片源的帧率与前一次检测的网络片源帧率大小是否相同;

步骤s102,若是,则保持ui界面中已调整的音画同步参数值对应的声音延迟时间值不变;

步骤s103,若否,则对所述声音延迟时间值进行调整,使得在保持所述音画同步参数值不变的情况下,使得调整后的声音延迟时间值与所述当前网络片源的帧率相匹配。

对于电视类终端来说,由于没有统一的运营商管控,其网络片源的帧率(framerate)是多种多样的,例如24hz的电影片源帧率,30hz、50hz以及60hz的帧率的视频片源也都比较常见,而这种不同的帧率就会造成网络视频片源音画不同步。虽然帧率并非造成音画不同步的唯一原因,例如,由于不同电视的主芯片(soc)对于视频的缓存处理机制不同,也会导致音画不同步,但是基于同一台电视来说,可默认其电视的主芯片的处理性能不变,在本申请的实施方案中仅提供针对帧率问题造成的音画不同步的解决方法。

目前相关技术中,在电视终端中为用户提供了调节声音延迟的ui界面,如图1所示,其上配置的每一个音画同步参数值都对应针对声音延迟的时间值,调整音画同步参数值会获取不同的声音延迟的时间值,使得最终达到音画同步的效果。

本申请的核心思想在于,针对用户已经调整好的音画同步参数值,如果遇到网络片源的帧率发生改变的情况,则不必用户再次调整音画同步参数值,而是修改当前音画同步参数值对应的声音延迟时间值,例如,在网络片源帧率切换前,用户设置的音画同步参数值为3,假设参数3对应的声音延迟时间值为33.3ms,如果之后切换了网络片源的帧率,用户设置的音画同步参数值仍然为3,不发生变化,但是此时的参数3对应的声音延迟时间值被修改和调整,例如,此时参数3对应的声音延迟时间值为66.6ms,因此,在用户并未察觉到音画同步参数值发生改变,但是电视后台已经修改了音画同步参数值对应的声音延迟时间值,使得音画实现同步。

以上一次检测时片源的帧率为60hz为例,本申请的基本思想可以概括如下:

1、实时获取网络视频片源的帧率,以及电视保存的上一次检测时片源的帧率(60hz);

2、实时检测当前网络视频片源的帧率是否和上次片源帧率一致,即帧率是否变换;

3、帧率没有变化则声音延迟时间值的相关设置保持不变;

4、帧率有变化则按照数据校正模块进行数据计算;

5、根据计算得出的数据刷新声音延迟时间值的相关设置,使其起效。

在整个过程中,其并未改变用户可视的ui界面中,被用户配置好的音画同步参数值。

进一步的,在比较当前网络片源的帧率与前一次检测的网络片源帧率大小是否相同之前还包括:

每隔预设时间周期读取一次当前网络片源的帧率以及前一时间周期检测的网络片源帧率。

在实际中,除了每隔预设时间周期的方式之外,也可以每当切换片源时对帧率进行一次检测,看是否发生改变,因为在同一个片源中,突然切换帧率的可能性较小,实际检测片源帧率的时间可以由用户进行预设,或者开发人员在软件设计阶段进行规划,具体方式在此不进行限定。

进一步的,所述对所述声音延迟时间值进行调整的步骤,具体包括:

若所述当前网络片源的帧率大于所述前一次检测的网络片源帧率,则按照所述前一次检测的网络片源帧率与当前网络片源的帧率的差值,以及主芯片的缓存帧数,减少声音延迟的基准值;

若所述当前网络片源的帧率小于所述前一次检测的网络片源帧率,则按照当前网络片源的帧率与所述前一次检测的网络片源帧率的差值,以及主芯片的缓存帧数,增加声音延迟的基准值;

其中,所述声音延迟的基准值为前一次检测的网络片源帧率在未调整所述音画同步参数值时对应的声音延迟的时间值。

下面以具体的数据计算的方式,提供对以上步骤的相关说明。

1)获取当前网络片源的帧率r值

2)上一次检测时获取到网络片源帧率为60hz,(以60hz为标准参考)

主芯片缓存帧数f:f为已知的固定值(f值依赖主芯片的处理主芯片不同f值可能也不同)

声音延迟时间可调节范围:0----m(ms),m为已知固定值(m值依赖主芯片的处理主芯片不同m值可能也不同)

用户调整范围:0-n,n为固定值,根据ui交互设计而定,例如目前设定n=10,即如图1所示的,音画同步参数值的调整范围是0~10。

声音延迟的基准值s(ms):s为60hz片源时在未调整所述音画同步参数值时时声音延迟的时间

用户调节步长d:d=(m-s)/n,其中s对应用户设置音画同步参数值0;m对应用户设置音画同步参数值n

3)从数据库中获取60hz的相关数据;

包括:f值、m值、n值、s值、d值

4)获取用户在ui中调整的数据;

假定用户在ui中调整的值为x(0≤x≤n)

5)将获取的当前帧率与60hz进行比较

6)当前帧率r值小于60hz,则增加声音延迟的基准值;

新基准值s0=s+(1000/r-1000/60)*f

步长d值保持不变。

7)当前帧率r值大于60hz,则减少声音延迟的基准值;

新基准值s0=s-(1000/60-1000/r)*f

步长d值保持不变。

8)当前帧率r值等于60hz,则声音延迟的基准值不变

基准值s0=s、步长d、用户n都保持不变

进一步的,若所述当前网络片源的帧率大于所述前一次检测的网络片源帧率,则减少声音延迟的基准值,之后还包括:

计算减小声音延迟的基准值之后的声音延迟时间值;

相应的,若所述当前网络片源的帧率小于所述前一次检测的网络片源帧率,则增加所述声音延迟的基准值,之后还包括:

计算增大声音延迟的基准值之后的声音延迟时间值。

进一步的,所述声音延迟时间值通过如下步骤进行计算,包括:

根据当前ui界面中音画同步参数值,与预设的用户调节步长,以及所述声音延迟的基准值,计算与所述当前网络片源的帧率相匹配的所述声音延迟时间值。

示例的,与前面调整声音延迟时间值的步骤相对应,还包括:

9)结合调整过的声音延迟的基准值和用户在ui界面中调整的音画同步参数值匹配出对应的数据,即根据校正后的基准值s0和用户ui调整值进行计算。

10)通过上面步骤,得出实际的声音延迟数值

实际的声音延迟时间值为s0+d*x。

因此,结合以上说明步骤的描述,可以知道实际的声音延迟值可随着片源帧率的变化而发生变化。本发明与现有技术相比,由于电视终端通过比较当前网络片源的帧率与前一次检测的网络片源帧率可以得知当前网络片源的帧率相比之前是否发生变化,如不变,则依然可以采用前一次检测时对ui界面设置的音画同步参数,此时的声音延迟时间值也没有变化,但是如果帧率变化,则电视终端可以对声音延迟时间值进行数据校正,调整声音延迟时间值,进而刷新声音延迟数据,用户不会发现ui界面设置的音画同步参数发生改变,但是ui界面设置的音画同步参数对应的声音延迟时间值已经发生变化,其与当前网络片源的帧率匹配,使得用户不会发现电视的音画同步参数被修改,但是声音延迟时间会后台调整,用户听到的实际声音延迟时间发生变化,与当前网络片源的帧率匹配,因此,可以避免用户频繁的对音画同步参数值进行调整,提高了用户体验。

基于前面描述的发明构思,本申请实施例还提供了一种音画同步自动校正装置,应用于电视终端中,如图3所示,所述装置包括:

比较单元301,用于比较当前网络片源的帧率与前一次检测的网络片源帧率大小是否相同;

保持单元302,用于若是的情况下,则保持ui界面中已调整的音画同步参数值对应的声音延迟时间值不变;

调整单元303,用于若否的情况下,则对所述声音延迟时间值进行调整,使得在保持所述音画同步参数值不变的情况下,使得调整后的声音延迟时间值与所述当前网络片源的帧率相匹配。

进一步的,所述装置还包括:

周期性读取单元,用于每隔预设时间周期读取一次当前网络片源的帧率以及前一时间周期检测的网络片源帧率。

进一步的,所述调整单元,具体用于:

若所述当前网络片源的帧率大于所述前一次检测的网络片源帧率,则按照所述前一次检测的网络片源帧率与当前网络片源的帧率的差值,以及主芯片的缓存帧数,减少声音延迟的基准值;

若所述当前网络片源的帧率小于所述前一次检测的网络片源帧率,则按照当前网络片源的帧率与所述前一次检测的网络片源帧率的差值,以及主芯片的缓存帧数,增加声音延迟的基准值;

其中,所述声音延迟的基准值为前一次检测的网络片源帧率在未调整所述音画同步参数值时对应的声音延迟的时间值。

进一步的,所述装置还包括:

计算单元,用于计算减小声音延迟的基准值之后的声音延迟时间值,或者计算增大声音延迟的基准值之后的声音延迟时间值。

进一步的,所述计算单元,具体用于:

根据当前ui界面中音画同步参数值,与预设的用户调节步长,以及所述声音延迟的基准值,计算与所述当前网络片源的帧率相匹配的所述声音延迟时间值。

本发明与现有技术相比,由于电视终端通过比较当前网络片源的帧率与前一次检测的网络片源帧率可以得知当前网络片源的帧率相比之前是否发生变化,如不变,则依然可以采用前一次检测时对ui界面设置的音画同步参数,此时的声音延迟时间值也没有变化,但是如果帧率变化,则电视终端可以对声音延迟时间值进行数据校正,调整声音延迟时间值,进而刷新声音延迟数据,用户不会发现ui界面设置的音画同步参数发生改变,但是ui界面设置的音画同步参数对应的声音延迟时间值已经发生变化,其与当前网络片源的帧率匹配,使得用户不会发现电视的音画同步参数被修改,但是声音延迟时间会后台调整,用户听到的实际声音延迟时间发生变化,与当前网络片源的帧率匹配,因此,可以避免用户频繁的对音画同步参数值进行调整,提高了用户体验。

本发明实施例提供了一种计算机可存储介质,其上存储有计算机程序,该程序被处理器执行时实现图2的方法中的步骤或图3的方法的步骤。

如图4所示,本发明实施例还提供了一种音画同步自动校正设备包括:

至少一个处理单元400、以及至少一个存储单元401,其中,所述存储单元401存储有程序代码,当所述程序代码被所述处理单元执行时,使得所述处理单元执行下列过程:

比较当前网络片源的帧率与前一次检测的网络片源帧率大小是否相同;

若是,则保持ui界面中已调整的音画同步参数值对应的声音延迟时间值不变;

若否,则对所述声音延迟时间值进行调整,使得在保持所述音画同步参数值不变的情况下,使得调整后的声音延迟时间值与所述当前网络片源的帧率相匹配。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发

明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

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