CN107710754B - 音视频数据同步方法和装置 - Google Patents

音视频数据同步方法和装置 Download PDF

Info

Publication number
CN107710754B
CN107710754B CN201680025417.0A CN201680025417A CN107710754B CN 107710754 B CN107710754 B CN 107710754B CN 201680025417 A CN201680025417 A CN 201680025417A CN 107710754 B CN107710754 B CN 107710754B
Authority
CN
China
Prior art keywords
audio
size
data
time
video
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
Application number
CN201680025417.0A
Other languages
English (en)
Other versions
CN107710754A (zh
Inventor
谭利文
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN107710754A publication Critical patent/CN107710754A/zh
Application granted granted Critical
Publication of CN107710754B publication Critical patent/CN107710754B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/24Systems for the transmission of television signals using pulse code modulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

提供一种音视频数据同步方法和装置。该方法,由于在确定视频数据的实际播放时间时考虑到音频算法缓冲驻留的数据,从而使得音视频数据同步更为准确,提升音视频数据播放质量。

Description

音视频数据同步方法和装置
技术领域
本发明实施例涉及多媒体技术,尤其涉及一种音视频数据同步方法和装置。
背景技术
影音同步(AV Sync)是将具有时间相关性的声音(音频数据)和图像(视频数据)在对应的时间点上同步播放,以达到传递完整信息的目的,具体实现过程中视频数据和音频数据通过数据中所携带的时间戳进行同步播放,音视频同步的精确程度,对于用户的观赏体验是有很大影响的。
目前大部分的音视频(AV)同步机制的实现方式为,接收到解码后的视频(Video)数据时,该视频数据的实际播放时间,以音频(Audio)数据时间为基准,再辅以系统时间补偿的方式来确定的,然而,随着多媒体技术的不断发展,通常会使用音频算法对音频数据进行处理,以实现不同的功能,在这种情况下,仍然使用上述音视频同步机制确定视频数据的实际播放时间,会使得AV同步的精确度较低。
发明内容
本发明实施例提供一种音视频数据同步方法和装置,以提升音视频数据同步播放的精确度。
第一方面,本发明实施例提供一种音视频数据同步方法,包括:
音视频数据同步装置接收解码后的视频数据;
音视频数据同步装置获取所述视频数据的时间戳、当前已接收到的音频数据的时间信息、音频算法缓冲数据量的大小以及音频硬件缓冲区中的缓存音频数据的大小;
音视频数据同步装置根据所述音频数据的时间信息、所述视频数据的时间戳、所述缓存音频数据的大小以及所述音频算法缓冲数据量的大小,确定所述视频数据的实际播放时间,所述视频数据的实际播放时间用于视频输出设备根据所述实际播放时间播放所述视频数据。
在本实现方式中,音视频数据同步装置在接收解码后的视频数据后,根据当前已接收到的音频数据的时间信息、音频算法缓冲数据量的大小以及音频硬件缓冲区中的缓存音频数据的大小确定该视频数据的实际播放时间,使得视频输出设备可以根据该实际播放时间播放该视频数据,本发明的音视频数据同步方法可以有效提升音视频同步的准确性,进而提升播放质量。
结合第一方面,在第一方面的第一种可能的实现方式中,所述获取音频算法缓冲数据量的大小,包括:
获取所述音频算法的输入音频数据的大小和输出音频数据的大小;
根据所述输入音频数据的大小和所述输出音频数据的大小确定所述音频算法缓冲数据量的大小。
在本实现方式中,在确定视频数据的实际播放时间过程中,考虑音频算法的输入音频数据的大小和输出音频数据的大小,从而使得确定的音频算法缓冲数据量的大小更为准确,进而可以进一步提升音视频同步的准确性。
结合第一方面、第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述音频算法为音频变速算法,所述方法还包括:
获取所述音频变速算法使用的变速控制速率;
所述获取音频算法缓冲数据量的大小,包括:
获取所述音频算法的输入音频数据的大小和输出音频数据的大小;
根据所述变速控制速率和所述输出音频数据的大小确定变速控制后输出音频数据的大小;
根据所述输入音频数据的大小和所述变速控制后输出音频数据的大小确定所述音频算法缓冲数据量的大小。
在本实现方式中,在确定视频数据的实际播放时间过程中,考虑音频算法的输入音频数据的大小、输出音频数据的大小以及音频变速算法使用的变速控制速率,从而使得确定的音频算法缓冲数据量的大小更为准确,进而可以进一步提升音视频同步的准确性。
结合第一方面、第一方面的第一种至第二种任一种可能的实现方式,在第一方面的第三种可能的实现方式中,所述方法还包括:
获取音视频同步的系统时间,所述音视频同步的系统时间为接收到所述视频数据时对应的系统时间;
获取在所述音视频同步的系统时间时的当前缓冲区更新时间;
根据所述音视频同步的系统时间、所述当前缓冲区更新时间以及所述变速控制速率确定矫正时间;
根据所述实际播放时间和所述矫正时间确定修正后的实际播放时间。
在本实现方式中,在确定视频数据的实际播放时间过程中,进一步利用矫正时间修正视频数据的实际播放时间,并且该矫正时间的确定还结合变速控制速率,从而可以进一步提升音视频同步的准确性。
结合第一方面、第一方面的第一种至第三种任一种可能的实现方式,在第一方面的第四种可能的实现方式中,所述缓存音频数据的大小为当前缓冲区更新时间对应的音频硬件缓冲区中的缓存音频数据的大小;
所述音频算法的输入音频数据的大小和输出音频数据的大小为当前缓冲区更新时间对应的音频算法的输入音频数据的大小和输出音频数据的大小。
在本实现方式中,在确定视频数据的实际播放时间过程中,获取缓存音频数据的大小、音频算法的输入音频数据的大小和输出音频数据的大小的时刻均为当前缓冲区更新时间,该当前缓冲区更新时间为音视频同步的系统时间对应的缓存区更新时间,即在计算视频数据的实际播放时间时,主动刷新获取缓存音频数据的大小和音频算法缓冲数据量的大小,从而可以进一步提升音视频同步的准确性。
结合第一方面、第一方面的第一种至第四种任一种可能的实现方式,在第一方面的第五种可能的实现方式中,所述根据所述音频数据的时间信息、所述视频数据的时间戳、所述缓存音频数据的大小以及所述音频算法缓冲数据量的大小,确定所述视频数据的实际播放时间,包括:
根据V′x=Sn+(Vx-(Ax-(Size2+Size1)/SampleRate/FrameCount*1000+SJ))/PlaybackRate计算出所述视频数据的实际播放时间V′x,其中,Sn为音视频同步的系统时间,Vx为所述视频数据的时间戳,Ax为当前已接收到的音频数据的时间信息,Size1为所述音频算法缓冲数据量的大小,Size2为所述音频硬件缓冲区中的缓存音频数据的大小,SampleRate为音频数据的采样率,FrameCount为一个采样占用的字节数,SJ为所述矫正时间。
结合第一方面、第一方面的第一种至第五种任一种可能的实现方式,在第一方面的第六种可能的实现方式中,所述根据所述音视频同步的系统时间、所述当前缓冲区更新时间以及所述变速控制速率确定矫正时间,包括:
根据公式SJ=(Sn-Si)*PlaybackRate计算出矫正时间SJ,其中,Si为所述当前缓冲区更新时间。
结合第一方面、第一方面的第一种至第六种任一种可能的实现方式,在第一方面的第七种可能的实现方式中,根据公式Size1=InSize1+OutSize1*PlaybackRate计算出所述音频算法缓冲数据量的大小Size1,InSize1为输入音频数据的大小,OutSize1为输出音频数据的大小。
第二方面,本发明实施例提供一种音视频数据同步装置,包括:
接收模块,用于接收解码后的视频数据;
获取模块,用于获取所述视频数据的时间戳、当前已接收到的音频数据的时间信息、音频算法缓冲数据量的大小以及音频硬件缓冲区中的缓存音频数据的大小;
处理模块,用于根据所述音频数据的时间信息、所述视频数据的时间戳、所述缓存音频数据的大小以及所述音频算法缓冲数据量的大小,确定所述视频数据的实际播放时间,所述视频数据的实际播放时间用于视频输出设备根据所述实际播放时间播放所述视频数据。
结合第二方面,在第二方面的第一种可能的实现方式中,所述获取模块用于获取音频算法缓冲数据量的大小,包括:
获取所述音频算法的输入音频数据的大小和输出音频数据的大小;
根据所述输入音频数据的大小和所述输出音频数据的大小确定所述音频算法缓冲数据量的大小。
结合第二方面、第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述音频算法为音频变速算法,所述获取模块还用于获取所述音频变速算法使用的变速控制速率;
所述获取模块用于获取音频算法缓冲数据量的大小,包括:
获取所述音频算法的输入音频数据的大小和输出音频数据的大小;
根据所述变速控制速率和所述输出音频数据的大小确定变速控制后输出音频数据的大小;
根据所述输入音频数据的大小和所述变速控制后输出音频数据的大小确定所述音频算法缓冲数据量的大小。
结合第二方面、第二方面的第一种至第二种任一种可能的实现方式,在第二方面的第三种可能的实现方式中,所述获取模块还用于:获取音视频同步的系统时间,所述音视频同步的系统时间为接收到所述视频数据时对应的系统时间;
获取在所述音视频同步的系统时间时的当前缓冲区更新时间;
所述处理模块还用于:根据所述音视频同步的系统时间、所述当前缓冲区更新时间以及所述变速控制速率确定矫正时间;可选的,所述处理模块还可以仅根据所述音视频同步的系统时间和所述当前缓冲区更新时间确定矫正时间。
根据所述实际播放时间和所述矫正时间确定修正后的实际播放时间。
结合第二方面、第而方面的第一种至第三种任一种可能的实现方式,在第而方面的第四种可能的实现方式中,所述缓存音频数据的大小为所述当前缓冲区更新时间对应的音频硬件缓冲区中的缓存音频数据的大小;
所述音频算法的输入音频数据的大小和输出音频数据的大小为所述当前缓冲区更新时间对应的音频算法的输入音频数据的大小和输出音频数据的大小。
结合第二方面、第二方面的第一种至第四种任一种可能的实现方式,在第二方面的第五种可能的实现方式中,所述处理模块用于根据所述音频数据的时间信息、所述视频数据的时间戳、所述缓存音频数据的大小以及所述音频算法缓冲数据量的大小,确定所述视频数据的实际播放时间,包括:
根据V′x=Sn+(Vx-(Ax-(Size2+Size1)/SampleRate/FrameCount*1000+SJ))/PlaybackRate计算出所述视频数据的实际播放时间V′x,其中,Sn为音视频同步的系统时间,Vx为所述视频数据的时间戳,Ax为当前已接收到的音频数据的时间信息,Size1为所述音频算法缓冲数据量的大小,Size2为所述音频硬件缓冲区中的缓存音频数据的大小,SampleRate为音频数据的采样率,FrameCount为一个采样占用的字节数,SJ为所述矫正时间。
结合第二方面、第二方面的第一种至第五种任一种可能的实现方式,在第二方面的第六种可能的实现方式中,所述处理模块用于根据所述音视频同步的系统时间、所述当前缓冲区更新时间以及所述变速控制速率确定矫正时间,包括:
根据公式SJ=(Sn-Si)*PlaybackRate计算出矫正时间SJ,其中,Si为所述当前缓冲区更新时间。
结合第二方面、第二方面的第一种至第六种任一种可能的实现方式,在第二方面的第七种可能的实现方式中,所述获取模块用于根据所述输入音频数据的大小和所述输出音频数据的大小确定所述音频算法缓冲数据量的大小,包括:
根据公式Size1=InSize1+OutSize1*PlaybackRate计算出所述音频算法缓冲数据量的大小Size1,InSize1为输入音频数据的大小,OutSize1为输出音频数据的大小。
第三方面,本发明实施例提供一种播放设备,所述播放设备包括存储器、总线系统和至少一个处理器,所述存储器和至少一个处理器所述通过所述总线系统相连;
所述存储器中存储一个或多个程序,所述一个或多个程序包括指令,所述指令当被所述播放设备执行时使所述播放设备执行如第一方面、第一方面的第一种至第七种任意一种可能的实现方式的方法。
本发明实施例音视频数据同步方法和装置,通过根据当前已接收到的音频数据的时间信息、视频数据的时间戳、音频硬件缓冲区中的缓存音频数据的大小以及音频算法缓冲数据量的大小,确定所述视频数据的实际播放时间,视频输出设备根据该实际播放时间播放该视频数据,从而实现音视频数据同步,其中,由于在确定视频数据的时间播放时间时考虑到音频算法缓冲驻留的数据,从而使得音视频数据同步更为准确,提升音视频数据播放质量。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明音视频数据同步方法应用场景示意图;
图2为本发明音视频数据同步方法实施例一的流程图;
图3为本发明当前缓冲区更新时间示意图;
图4为本发明音视频数据同步示意图;
图5为本发明音视频数据同步装置实施例一的结构示意图;
图6是本发明电子装置的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了清楚的理解本发明的音视频数据同步方法,以本发明音视频数据同步方法的一种示例性应用场景作解释说明,具体如下面图1所示,本发明音视频同步方法也可以应用于其他可实施的应用场景中。
图1为本发明音视频数据同步方法应用场景示意图,如图1所示,本发明音视频同步方法具有可以应用于音视频处理器中,该音视频处理器具体用于驱动外接显示器20以显示画面,以及驱动外接扬声器30以输出声音,该音视频处理器10具体可以设置有音视频分流模块101、视频解码模块102、音频解码模块103以及音视频同步模块104,其中,音视频同步模块104可以实现本发明的音视频数据同步方法,音视频同步模块104具体可以设置视频数据缓冲单元1041、音视频同步计算单元1042、音频算法缓冲单元1043以及音频数据缓冲单元1044。利用图1所示的音视频处理器进行音视频播放的具体过程如下:首先,该音视频处理器10接收音视频数据(影音数据),将该音视频数据输入至音视频分流模块101,音视频分流模块101对该音视频数据进行分离生成音频数据和视频数据,并将音频数据传输给音频解码模块103,由音频解码模块103对音频数据进行解码,将视频数据传输给视频解码模块102,由视频解码模块102对视频数据进行解码,为了实现音视频数据同步,解码后的音频数据和解码后的视频数据需要传输给音视频同步模块104进行同步处理后,再将同步处理后的音频数据发送给扬声器30进行播放,将同步处理后的视频数据发送给显示器20进行播放。音视频同步模块104实现音频数据和视频数据同步播放的方法为,音频数据在发送给扬声器30之前需要经过音频算法缓冲单元1043和音频数据缓冲单元1044,视频数据在发送给显示器20之前需要经过视频数据缓冲单元1041,在视频数据缓冲单元1041接收到视频解码模块102解码后的视频数据后,音视频同步计算单元1042会获取该视频数据的时间戳,并获取音频算法缓冲单元1043中的缓冲数据量的大小、音频数据缓冲单元1044中缓存音频数据的大小、以及当前已接收到的音频数据的时间戳,该音视频同步计算单元1042根据获取的上述信息进行计算确定该视频数据的实际播放时间,该视频数据的实际播放时间可以随解码后的视频数据一同发送给显示器20,使得显示器20根据该实际播放时间进行播放该视频数据,以实现与音频数据的同步播放。具体的,该显示器20可以根据该实际播放时间进行如下播放处理:立即呈现该视频数据、稍后呈现该视频数据、以及直接丢弃。本发明的音视频处理器可以有效提升音视频同步的准确性,进而提升播放质量。
音视频同步模块104实现音视频同步方法的具体实施方式,可以参见下述方法实施例的解释说明。
需要说明的是,图1所示实施例中的音视频同步模块104具体可以是应用处理器,作为另一种可实现的方式,其中视频数据缓冲单元、音频数据缓冲单元以及音频算法缓冲单元均可以存在于应用处理器外接的内存中,应用处理器也可以实现本发明实施例的音视频数据同步方法。
图2为本发明音视频数据同步方法实施例一的流程图,如图2所示,本实施例的方法可以包括:
步骤101、接收解码后的视频数据。
具体的,如上述图1所述可知音频数据和视频数据是分别进行解码以及播放,本发明音视频数据同步方法在实现音频数据和视频数据同步播放过程中,对音频数据的播放时间不进行处理,即音视频同步模块104接收到音频数据后,仅根据接收到的音频数据的时间戳更新当前已接收到的音频数据的时间信息,其中,当前已接收到的音频数据的时间信息为根据接收到的音频数据的时间戳不断更新的时间,举例而言,解码后的视频数据的时间戳为V(x-1),而在接收到该解码后的视频数据时音视频同步模块104已经接收到多个音频数据,并获取各个音频数据的时间戳分别为A1、A2、…….、A(x-1),那么当前已接收到的音频数据的时间信息即为A(x-1),而如果接收到的解码后的视频数据的时间戳为Vx,而在接收到该解码后的视频数据时音视频同步模块104已经接收到多个音频数据的时间戳分别为A1、A2、…….、A(x-1)以及Ax,那么当前已接收到的音频数据的时间信息更新为Ax,即当前已接收到的音频数据的时间信息随着接收到的音频数据的时间戳而不断更新。之后,便将音频数据依照接收顺序发送给扬声器30依次进行播放,而对于视频数据,每接收到解码后的视频数据,便需要执行步骤102至103以计算该视频数据的实际播放时间,视频输出设备(显示器20)根据该视频数据的实际播放时间播放该视频数据,以实现音频数据和视频数据的同步播放。
步骤102、获取所述视频数据的时间戳、当前已接收到的音频数据的时间信息、音频算法缓冲数据量的大小以及音频硬件缓冲区中的缓存音频数据的大小。
具体的,音视频同步模块14不断接收音频数据和视频数据,在接收到音频数据时,便获取该音频数据的时间戳,将该音频数据的时间戳作为当前已接收到的音频数据的时间信息,随着接收到的音频数据的时间戳的不同,该当前已接收到的音频数据的时间信息也在不断更新。还需要获取音频算法缓冲数据量的大小和缓存音频数据的大小,其单位可以是字节等计量单位。其中,音频算法可以是任意一种音频处理算法,例如音频变速算法、音频重采样算法等。
步骤103、根据所述音频数据的时间信息、所述视频数据的时间戳、所述缓存音频数据的大小以及所述音频算法缓冲数据量的大小,确定所述视频数据的实际播放时间。
具体的,根据缓存音频数据的大小和音频算法缓冲数据量的大小,并结合相关参数,如,音频数据的采样率、一个采样占用的字节数,便可以估算出扬声器30未播放的音频数据所需播放时间,进而结合当前接收到的音频数据的时间信息和视频数据的时间戳便可以确定出视频数据的实际播放时间,显示器20根据该实际播放时间进行该视频数据的播放,实现音视频同步(影音同步),提升播放质量。
可选的,所述获取音频算法缓冲数据量的大小(Size1),具体可以为:获取所述音频算法的输入音频数据的大小(InSize1)和输出音频数据的大小(OutSize1);根据所述输入音频数据的大小和所述输出音频数据的大小确定所述音频算法缓冲数据量的大小。
可选的,当所述音频算法为音频变速算法时,还可以进一步获取所述音频变速算法使用的变速控制速率(PlaybackRate)。
相应的,所述根据所述输入音频数据的大小和所述输出音频数据的大小确定所述音频算法缓冲数据量的大小,具体为:根据所述变速控制速率和所述输出音频数据的大小确定变速控制后输出音频数据的大小;根据所述输入音频数据的大小和所述变速控制后输出音频数据的大小确定所述音频算法缓冲数据量的大小(Size1)。
可选的,所述方法还可以:获取音视频同步的系统时间(Sn),所述音视频同步的系统时间为接收到所述视频数据时对应的系统时间;获取在所述音视频同步的系统时间时的当前缓冲区更新时间(Si);根据所述音视频同步的系统时间、所述当前缓冲区更新时间以及所述变速控制速率确定矫正时间(SJ);根据所述实际播放时间和所述矫正时间确定修正后的实际播放时间。
即通过系统矫正时间调整实际播放时间,从而进一步提升音视频数据同步的准确率。
可选的,所述缓存音频数据的大小为所述当前缓冲区更新时间对应的音频硬件缓冲区中的缓存音频数据的大小;所述音频算法的输入音频数据的大小和输出音频数据的大小为所述当前缓冲区更新时间对应的音频算法的输入音频数据的大小和输出音频数据的大小。
图3为当前缓冲区更新时间示意图,其中缓存区具体可以包括音频算法缓冲区(音频算法缓冲单元1043)和音频硬件缓冲区(音频数据缓冲单元1044),具体的,音频算法缓冲区中的音频算法缓冲数据量的大小以及音频硬件缓冲区中的缓存音频数据的大小的获取,是以一定周期进行获取更新,本发明获取的音频算法缓冲数据量的大小和音频硬件缓冲区中的缓存音频数据的大小的获取时刻为,接收到该视频数据时对应的系统时间时的当前缓冲区更新时间。以图3做示意性举例说明,如图3所示,音视频同步模块以一定周期获取音频算法缓冲数据量和音频硬件缓存区中缓存音频数据的大小,其中每一段代表一个周期,该周期可以根据需求进行灵活设置,音频数据(Ax)相较于视频数据(Vx)先到达音视频同步模块14,本发明实施例在视频数据(Vx)到达时,获取音频算法缓冲数据量和音频硬件缓冲区中缓存音频数据的大小,即为Si时刻获取的数据大小,相较于现有技术中在音频数据(Ax)到达时获取缓存音频数据的大小(即Sk时刻更新的),本发明实施例可获取更为准确的缓存数据大小,从而使得音视频数据同步更为准确。
为了更为清楚的说明本发明实施例的音视频数据同步方法,下面接收时间轴做进一步举例说明,图4为音视频数据同步示意图,如图4所示,第一个时间轴为音频数据接收顺序时间轴,第二个时间轴为系统时间轴,第三个时间轴为视频数据接收顺序时间轴,其中,A0、A1……Ax均代表音频数据的时间戳,V0、V1……Vx均代表视频数据的时间戳,S0、S1……Sn均代表系统时间点,这里以接收到Vx时进行音视频数据同步的具体实施方式做举例说明,在接收到其他视频数据帧可以采用相同的方法。
如图4所示,接收到视频数据Vx时对应的系统时间为Sn,那么Sn即作为音视频同步的系统时间,在系统时间为Sn时,当前接收到的音频数据的时间信息为Ax,进而获取音频算法缓冲数据量的大小(Size1)以及音频硬件缓冲区中的缓存音频数据的大小(Size2),进而根据公式(1)计算视频数据Vx的实际播放时间V′x
V′x=Sn+(Vx-(Ax-(Size2+Size1)/SampleRate/FrameCount*1000+SJ))/PlaybackRate (1)
其中,SampleRate为音频数据的采样率,FrameCount为一个采样占用的字节数,SJ为所述矫正时间。
具体的,根据(Ax-(Size2+Size1)/SampleRate/FrameCount*1000+SJ)可以计算出当前实际播放的音频数据的时间。
其中,可以这样理解:根据(Size2+Size1)/SampleRate/FrameCount*1000可以计算出播放完当前音频算法缓冲区中的音频算法缓冲数据以及音频硬件缓冲区中的缓存音频数据所需的时间,利用当前接收到的音频数据的时间信息为Ax减去该时间,并辅以矫正时间SJ,便可以计算出当前实际播放的音频数据的时间。
用接收到的视频数据的时间戳Vx减去上述当前实际播放的音频数据的时间,可以计算出视频数据与当前实际播放的音频数据的时间差,最后,在系统时间Sn基础上加上该时间差便可以计算出视频数据Vx的实际播放时间V′x
具体的,SJ的确定可以采用公式(2)进行计算。
SJ=(Sn-Si)*PlaybackRa te (2)
其中,Si为当前缓冲区更新时间。
具体的,Size1的确定可以采用公式(3)进行计算。
Size1=InSize1+OutSize1*PlaybackRate (3)
本实施例,通过根据当前已接收到的音频数据的时间信息、视频数据的时间戳、音频硬件缓冲区中的缓存音频数据的大小以及音频算法缓冲数据量的大小,确定所述视频数据的实际播放时间,视频输出设备根据该实际播放时间播放该视频数据,从而实现音视频数据同步,其中,由于在确定视频数据的时间播放时间时考虑到音频算法缓冲驻留的数据,从而使得音视频数据同步更为准确,提升音视频数据播放质量。
图5为本发明音视频数据同步装置实施例一的结构示意图,如图5所示,本实施例的装置可以包括:接收模块11、获取模块12和处理模块13,其中,接收模块11用于接收解码后的视频数据,获取模块12用于获取所述视频数据的时间戳、当前已接收到的音频数据的时间信息、音频算法缓冲数据量的大小以及音频硬件缓冲区中的缓存音频数据的大小,处理模块13用于根据所述音频数据的时间信息、所述视频数据的时间戳、所述缓存音频数据的大小以及所述音频算法缓冲数据量的大小,确定所述视频数据的实际播放时间,所述视频数据的实际播放时间用于视频输出设备根据所述实际播放时间播放所述视频数据。
可选的,所述获取模块12用于获取音频算法缓冲数据量的大小,包括:获取所述音频算法的输入音频数据的大小和输出音频数据的大小;根据所述输入音频数据的大小和所述输出音频数据的大小确定所述音频算法缓冲数据量的大小。
可选的,所述音频算法为音频变速算法,所述获取模块还用于获取所述音频变速算法使用的变速控制速率;所述获取模块用于根据所述输入音频数据的大小和所述输出音频数据的大小确定所述音频算法缓冲数据量的大小,包括:根据所述变速控制速率和所述输出音频数据的大小确定变速控制后输出音频数据的大小;根据所述输入音频数据的大小和所述变速控制后输出音频数据的大小确定所述音频算法缓冲数据量的大小。
可选的,所述获取模块还用于:获取音视频同步的系统时间,所述音视频同步的系统时间为接收到所述视频数据时对应的系统时间;获取系统时间为所述音视频同步的系统时间时的当前缓冲区更新时间;所述处理模块还用于:根据所述音视频同步的系统时间、所述当前缓冲区更新时间以及所述变速控制速率确定矫正时间;根据所述实际播放时间和所述矫正时间确定修正后的实际播放时间。
可选的,所述缓存音频数据的大小为所述当前缓冲区更新时间对应的音频硬件缓冲区中的缓存音频数据的大小;所述音频算法的输入音频数据的大小和输出音频数据的大小为所述当前缓冲区更新时间对应的音频算法的输入音频数据的大小和输出音频数据的大小。
可选的,所述处理模块用于根据所述音频数据的时间信息、所述视频数据的时间戳、所述缓存音频数据的大小以及所述音频算法缓冲数据量的大小,确定所述视频数据的实际播放时间,包括:根据公式V′x=Sn+(Vx-(Ax-(Size2+Size1)/SampleRate/FrameCount*1000+SJ))/PlaybackRate计算出所述视频数据的实际播放时间V′x,其中,Sn为音视频同步的系统时间,Vx为所述视频数据的时间戳,Ax为当前已接收到的音频数据的时间信息,Size1为所述音频算法缓冲数据量的大小,Size2为所述音频硬件缓冲区中的缓存音频数据的大小,SampleRate为音频数据的采样率,FrameCount为一个采样占用的字节数,SJ为所述矫正时间。
可选的,所述处理模块用于根据所述音视频同步的系统时间、所述当前缓冲区更新时间以及所述变速控制速率确定矫正时间,包括:根据公式SJ=(Sn-Si)*PlaybackRate计算出矫正时间SJ,其中,Si为所述当前缓冲区更新时间,Si≤Sn。
可选的,所述获取模块用于根据所述输入音频数据的大小和所述输出音频数据的大小确定所述音频算法缓冲数据量的大小,包括:根据公式Size1=InSize1+OutSize1*PlaybackRate计算出所述音频算法缓冲数据量的大小Size1,InSize1为输入音频数据的大小,OutSize1为输出音频数据的大小。
本实施例的装置,可以用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图6是本发明电子装置的结构示意图。例如,电子装置600可以是移动电话,计算机,数字广播终端,平板设备,健身设备,个人数字助理等。
参照图6,电子装置600可以包括以下一个或多个组件:处理组件602,存储器604,电力组件606,输入/输出(input/output,简称:I/O)接口608,以及通信组件610。
处理组件602通常控制电子装置600的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件602可以包括一个或多个音视频处理器630来执行指令,以完成上述的方法的全部或部分步骤,当然处理组件602还可以包括其他功能的处理器,例如调制解调处理器620。此外,处理组件602可以包括一个或多个模块,便于处理组件602和其他组件之间的交互。
存储器604被配置为存储各种类型的数据以支持在电子装置600的操作。这些数据的示例包括用于在电子装置600上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,音视频等。存储器604可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-OnlyMemory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。
电力组件606为电子装置600的各种组件提供电力。电力组件606可以包括电源管理系统,一个或多个电源,及其他与为装置600生成、管理和分配电力相关联的组件。
I/O接口608为处理组件602和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
通信组件610被配置为便于电子装置600和其他设备之间有线或无线方式的通信。电子装置600可以接入基于通信标准的无线网络,如无线保真(Wireless-Fidelity,简称WiFi),2G或3G,或它们的组合。在一个示例性实施例中,通信组件610经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件610还包括近场通信(Near Field Communication,简称NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(Radio Frequency Identification,简称RFID)技术,红外数据协会(Infrared DataAssociation,简称IrDA)技术,超宽带(Ultra Wideband,简称UWB)技术,蓝牙(Bluetooth,简称BT)技术和其他技术来实现。
在示例性实施例中,电子装置600可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DdigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器604,上述指令可由电子装置600的音视频处理器630执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RandomAccess Memory,简称RAM)、只读光盘(Compact Disc Read-Only Memory,简称CD-ROM)、磁带、软盘和光数据存储设备等。
图2所示的实施例中的步骤101~步骤103可以由上述音视频处理器630实现。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述该作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (18)

1.一种音视频数据同步方法,其特征在于,包括:
接收解码后的视频数据;
获取所述视频数据的时间戳、当前已接收到的音频数据的时间信息、音频算法缓冲数据量的大小以及音频硬件缓冲区中的缓存音频数据的大小;
根据所述音频数据的时间信息、所述视频数据的时间戳、所述缓存音频数据的大小以及所述音频算法缓冲数据量的大小,确定所述视频数据的实际播放时间,所述视频数据的实际播放时间用于视频输出设备根据所述实际播放时间播放所述视频数据;
所述音频算法缓冲数据量的大小和所述缓存音频数据的大小的获取时刻为,接收到所述视频数据时对应的系统时间时的当前缓冲区更新时间。
2.根据权利要求1所述的方法,其特征在于,所述获取音频算法缓冲数据量的大小,包括:
获取所述音频算法的输入音频数据的大小和输出音频数据的大小;
根据所述输入音频数据的大小和所述输出音频数据的大小确定所述音频算法缓冲数据量的大小。
3.根据权利要求2所述的方法,其特征在于,所述音频算法为音频变速算法,所述方法还包括:
获取所述音频变速算法使用的变速控制速率;
所述根据所述输入音频数据的大小和所述输出音频数据的大小确定所述音频算法缓冲数据量的大小,包括:
根据所述变速控制速率和所述输出音频数据的大小确定变速控制后输出音频数据的大小;
根据所述输入音频数据的大小和所述变速控制后输出音频数据的大小确定所述音频算法缓冲数据量的大小。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
获取音视频同步的系统时间,所述音视频同步的系统时间为接收到所述视频数据时对应的系统时间;
获取在所述音视频同步的系统时间时的当前缓冲区更新时间;
根据所述音视频同步的系统时间、所述当前缓冲区更新时间以及所述变速控制速率确定矫正时间;
根据所述实际播放时间和所述矫正时间确定修正后的实际播放时间。
5.根据权利要求4所述的方法,其特征在于,所述缓存音频数据的大小为所述当前缓冲区更新时间对应的音频硬件缓冲区中的缓存音频数据的大小;
所述音频算法的输入音频数据的大小和输出音频数据的大小为所述当前缓冲区更新时间对应的音频算法的输入音频数据的大小和输出音频数据的大小。
6.根据权利要求4至5任一项所述的方法,其特征在于,所述根据所述音频数据的时间信息、所述视频数据的时间戳、所述缓存音频数据的大小以及所述音频算法缓冲数据量的大小,确定所述视频数据的实际播放时间,包括:
根据Vx′=Sn+(Vx-(Ax-(Size2+Size1)/SampleRate/FrameCount*1000+SJ))/PlaybackRate计算出所述视频数据的实际播放时间Vx′,其中,Sn为音视频同步的系统时间,Vx为所述视频数据的时间戳,Ax为当前已接收到的音频数据的时间信息,Size1为所述音频算法缓冲数据量的大小,Size2为所述音频硬件缓冲区中的缓存音频数据的大小,SampleRate为音频数据的采样率,FrameCount为一个采样占用的字节数,SJ为所述矫正时间。
7.根据权利要求6所述的方法,其特征在于,所述根据所述音视频同步的系统时间、所述当前缓冲区更新时间以及所述变速控制速率确定矫正时间,包括:
根据公式SJ=(Sn-Si)*PlaybackRate计算出矫正时间SJ,其中,Si为所述当前缓冲区更新时间。
8.根据权利要求6所述的方法,其特征在于,所述根据所述输入音频数据的大小和所述输出音频数据的大小确定所述音频算法缓冲数据量的大小,包括:
根据公式Size1=InSize1+OutSize1*PlaybackRate计算出所述音频算法缓冲数据量的大小Size1,InSize1为输入音频数据的大小,OutSize1为输出音频数据的大小。
9.一种音视频数据同步装置,其特征在于,包括:
接收模块,用于接收解码后的视频数据;
获取模块,用于获取所述视频数据的时间戳、当前已接收到的音频数据的时间信息、音频算法缓冲数据量的大小以及音频硬件缓冲区中的缓存音频数据的大小;
处理模块,用于根据所述音频数据的时间信息、所述视频数据的时间戳、所述缓存音频数据的大小以及所述音频算法缓冲数据量的大小,确定所述视频数据的实际播放时间,所述视频数据的实际播放时间用于视频输出设备根据所述实际播放时间播放所述视频数据;
所述音频算法缓冲数据量的大小和所述缓存音频数据的大小的获取时刻为,接收到所述视频数据时对应的系统时间时的当前缓冲区更新时间。
10.根据权利要求9所述的装置,其特征在于,所述获取模块用于获取音频算法缓冲数据量的大小,包括:
获取所述音频算法的输入音频数据的大小和输出音频数据的大小;
根据所述输入音频数据的大小和所述输出音频数据的大小确定所述音频算法缓冲数据量的大小。
11.根据权利要求10所述的装置,其特征在于,所述音频算法为音频变速算法,所述获取模块还用于获取所述音频变速算法使用的变速控制速率;
所述获取模块用于根据所述输入音频数据的大小和所述输出音频数据的大小确定所述音频算法缓冲数据量的大小,包括:
根据所述变速控制速率和所述输出音频数据的大小确定变速控制后输出音频数据的大小;
根据所述输入音频数据的大小和所述变速控制后输出音频数据的大小确定所述音频算法缓冲数据量的大小。
12.根据权利要求11所述的装置,其特征在于,所述获取模块还用于:获取音视频同步的系统时间,所述音视频同步的系统时间为接收到所述视频数据时对应的系统时间;
获取在所述音视频同步的系统时间时的当前缓冲区更新时间;
所述处理模块还用于:根据所述音视频同步的系统时间、所述当前缓冲区更新时间以及所述变速控制速率确定矫正时间;
根据所述实际播放时间和所述矫正时间确定修正后的实际播放时间。
13.根据权利要求12所述的装置,其特征在于,所述缓存音频数据的大小为所述当前缓冲区更新时间对应的音频硬件缓冲区中的缓存音频数据的大小;
所述音频算法的输入音频数据的大小和输出音频数据的大小为所述当前缓冲区更新时间对应的音频算法的输入音频数据的大小和输出音频数据的大小。
14.根据权利要求12至13任一项所述的装置,其特征在于,所述处理模块用于根据所述音频数据的时间信息、所述视频数据的时间戳、所述缓存音频数据的大小以及所述音频算法缓冲数据量的大小,确定所述视频数据的实际播放时间,包括:
根据Vx′=Sn+(Vx-(Ax-(Size2+Size1)/SampleRate/FrameCount*1000+SJ))/PlaybackRate计算出所述视频数据的实际播放时间Vx′,其中,Sn为音视频同步的系统时间,Vx为所述视频数据的时间戳,Ax为当前已接收到的音频数据的时间信息,Size1为所述音频算法缓冲数据量的大小,Size2为所述音频硬件缓冲区中的缓存音频数据的大小,SampleRate为音频数据的采样率,FrameCount为一个采样占用的字节数,SJ为所述矫正时间。
15.根据权利要求14所述的装置,其特征在于,所述处理模块用于根据所述音视频同步的系统时间、所述当前缓冲区更新时间以及所述变速控制速率确定矫正时间,包括:
根据公式SJ=(Sn-Si)*PlaybackRate计算出矫正时间SJ,其中,Si为所述当前缓冲区更新时间。
16.根据权利要求14所述的装置,其特征在于,所述获取模块用于根据所述输入音频数据的大小和所述输出音频数据的大小确定所述音频算法缓冲数据量的大小,包括:
根据公式Size1=InSize1+OutSize1*PlaybackRate计算出所述音频算法缓冲数据量的大小Size1,InSize1为输入音频数据的大小,OutSize1为输出音频数据的大小。
17.一种音视频处理器,其特征在于,所述音视频处理器包括至少一个应用处理器,所述应用处理器用于执行如权利要求1至8任一项所述的方法。
18.一种电子装置,其特征在于,所述电子装置包括存储器、总线系统和至少一个音视频处理器,所述存储器和至少一个音视频处理器通过所述总线系统相连;
所述存储器中存储一个或多个程序,所述一个或多个程序包括指令,所述指令当被所述音视频处理器使所述音视频处理器执行如权利要求1至8任一项所述的方法。
CN201680025417.0A 2016-05-06 2016-05-06 音视频数据同步方法和装置 Active CN107710754B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2016/081278 WO2017190346A1 (zh) 2016-05-06 2016-05-06 音视频数据同步方法和装置

Publications (2)

Publication Number Publication Date
CN107710754A CN107710754A (zh) 2018-02-16
CN107710754B true CN107710754B (zh) 2020-02-21

Family

ID=60202714

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680025417.0A Active CN107710754B (zh) 2016-05-06 2016-05-06 音视频数据同步方法和装置

Country Status (2)

Country Link
CN (1) CN107710754B (zh)
WO (1) WO2017190346A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109963184B (zh) * 2017-12-14 2022-04-29 阿里巴巴集团控股有限公司 一种音视频网络播放的方法、装置以及电子设备
CN109144463B (zh) * 2018-08-14 2020-08-25 Oppo广东移动通信有限公司 传输控制方法、装置以及电子设备
CN114827696B (zh) * 2021-01-29 2023-06-27 华为技术有限公司 一种跨设备的音视频数据同步播放的方法和电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101340589A (zh) * 2007-07-03 2009-01-07 明基电通股份有限公司 影音分流且同步的数据传输方法及影音系统
CN101964903A (zh) * 2010-10-11 2011-02-02 陕西赛瑞德科技发展有限责任公司 一种无线环境中的音视频流媒体同步播放方法
CN102271280A (zh) * 2011-07-20 2011-12-07 宝利微电子系统控股公司 一种数字音视频变速播放的方法和装置
CN103475927A (zh) * 2012-06-08 2013-12-25 腾讯科技(深圳)有限公司 在线视频实时变速播放方法及系统
CN105376628A (zh) * 2014-08-27 2016-03-02 深圳Tcl新技术有限公司 音视频信号同步方法和装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9060183B2 (en) * 2012-10-25 2015-06-16 Cambridge Silicon Radio Limited Reduced latency media distribution system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101340589A (zh) * 2007-07-03 2009-01-07 明基电通股份有限公司 影音分流且同步的数据传输方法及影音系统
CN101964903A (zh) * 2010-10-11 2011-02-02 陕西赛瑞德科技发展有限责任公司 一种无线环境中的音视频流媒体同步播放方法
CN102271280A (zh) * 2011-07-20 2011-12-07 宝利微电子系统控股公司 一种数字音视频变速播放的方法和装置
CN103475927A (zh) * 2012-06-08 2013-12-25 腾讯科技(深圳)有限公司 在线视频实时变速播放方法及系统
CN105376628A (zh) * 2014-08-27 2016-03-02 深圳Tcl新技术有限公司 音视频信号同步方法和装置

Also Published As

Publication number Publication date
CN107710754A (zh) 2018-02-16
WO2017190346A1 (zh) 2017-11-09

Similar Documents

Publication Publication Date Title
EP4262221A1 (en) Video generation method and apparatus, electronic device, and storage medium
CN111343476A (zh) 视频共享方法、装置、电子设备及存储介质
EP3720018B1 (en) Audio data transmission method and apparatus
CN106792024B (zh) 多媒体信息的分享方法及装置
CN112492357A (zh) 一种处理多视频流的方法、装置、介质和电子设备
CN107710754B (zh) 音视频数据同步方法和装置
CN111064987A (zh) 信息展示方法、装置及电子设备
EP4093040A1 (en) Video playback method and apparatus
CN114025180A (zh) 一种游戏操作同步系统、方法、装置、设备及存储介质
WO2023143217A1 (zh) 特效道具的展示方法、装置、设备及存储介质
CN113111220A (zh) 视频处理方法、装置、设备、服务器及存储介质
CN112165645A (zh) 播放设备的控制方法、播放设备及计算机存储介质
CN108322673B (zh) 视频生成方法和视频生成装置
CN114679665A (zh) 蓝牙耳机音视频同步方法和装置、电子设备、存储介质
CN111835739A (zh) 视频播放方法、装置及计算机可读存储介质
CN113891168B (zh) 字幕处理方法、装置、电子设备和存储介质
CN113365139A (zh) 一种基于iOS系统的视频录制方法、装置以及存储介质
CN112910592B (zh) 时钟同步方法及装置、终端及存储介质
CN114125358A (zh) 云会议字幕显示方法、系统、装置、电子设备和存储介质
CN114095671A (zh) 云会议直播系统、方法、装置、设备及介质
US11908490B2 (en) Video recording method and device, electronic device and storage medium
CN113992926A (zh) 界面显示方法、装置、电子设备和存储介质
CN110071959B (zh) 定时同步第三方国标资源的方法及装置
US11689690B2 (en) Method and device for audio and video synchronization
CN113473215B (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