CN106604034B - 数据帧的解码方法及装置 - Google Patents
数据帧的解码方法及装置 Download PDFInfo
- Publication number
- CN106604034B CN106604034B CN201510680800.7A CN201510680800A CN106604034B CN 106604034 B CN106604034 B CN 106604034B CN 201510680800 A CN201510680800 A CN 201510680800A CN 106604034 B CN106604034 B CN 106604034B
- Authority
- CN
- China
- Prior art keywords
- data frame
- decoding
- frame
- relied
- decoded
- 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
Links
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明公开了一种数据帧的解码方法及装置。其中,该方法包括:获取具有预定解码顺序的待解码数据帧,其中,预定解码顺序指示了待解码数据帧中的数据帧之间的解码顺序和依赖关系;从待解码数据帧中查找出待块并行解码的数据帧,其中,预定解码顺序所指示的待块并行解码的数据帧所依赖的数据帧仅被待块并行解码的数据帧所依赖;对待块并行解码的数据帧中的块数据进行块并行解码。本发明解决了由于采用现有的数据帧的解码方法所导致的解码速率较低的技术问题。
Description
技术领域
本发明涉及计算机领域,具体而言,涉及一种数据帧的解码方法及装置。
背景技术
目前,在对视频数据帧进行解码时,常用的解码方式是:在视频码流中选出依赖性不强的数据帧,以多个处理单元(如CPU中的核)同时处理码流中不同的数据帧,以达到加速解码的目的。其中主要包括以下两种解码方法:
1)帧级并行
帧级并行是指视频码流中,不同的帧通过不同的处理单元(如CPU中的核)来进行解码。帧级并行的特点是:简单、交互少。单帧解码速度不变,但整体吞吐量能按核心数提升。例如,如图1所示,解码全I帧时,所有帧互相都不依赖,因而对帧0-3可采用帧级并行的解码方式,以提高解码效率。又例如,如图2示出了另一种RA编码视频的解码顺序,由于帧2、6互相不依赖,帧1、3、5、7互相不依赖,因而,可以如图3所示对上述数据帧分别进行帧级并行解码。
2)块级并行
块级并行是指视频码流中,一帧中的数据使用不同的处理单元(如CPU中的核)同时进行解码。块级并行的特点是:并行效果不受帧类型影响,以实现提升单帧解码速度的效果。例如,如图4所示,block(0,0)必须在entropy(0,0)之后进行;block(1,0)必须在entropy(1,0),block(0,0),block(0,1)之后进行。
然而,上述解码方法却存在以下问题:
帧级并行无法正常解码有依赖性的帧,尤其有串联依赖性的时候,阻塞情况会非常严重,从而导致帧级并行不能按核心数提升。此外,块级并行需在满足当前块完成熵解码,且左上方、正上方、右上方、左方的块完成重建的两个条件后,再进行解码,而熵解码在非WPP,非多SLICE的情况下,只能顺序处理。所以块级并行最大的加速将受熵解码速度影响。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种数据帧的解码方法及装置,以至少解决由于采用现有的数据帧的解码方法所导致的解码速率较低的技术问题。
根据本发明实施例的一个方面,提供了一种数据帧的解码方法,包括:获取具有预定解码顺序的待解码数据帧,其中,上述预定解码顺序指示了上述待解码数据帧中的数据帧之间的解码顺序和依赖关系;从上述待解码数据帧中查找出待块并行解码的数据帧,其中,上述预定解码顺序所指示的上述待块并行解码的数据帧所依赖的数据帧仅被上述待块并行解码的数据帧所依赖;对上述待块并行解码的数据帧中的块数据进行块并行解码。
根据本发明实施例的另一方面,还提供了一种数据帧的解码装置,包括:获取单元,用于获取具有预定解码顺序的待解码数据帧,其中,上述预定解码顺序指示了上述待解码数据帧中的数据帧之间的解码顺序和依赖关系;查找单元,用于从上述待解码数据帧中查找出待块并行解码的数据帧,其中,上述预定解码顺序所指示的上述待块并行解码的数据帧所依赖的数据帧仅被上述待块并行解码的数据帧所依赖;解码单元,用于对上述待块并行解码的数据帧中的块数据进行块并行解码。
在本发明实施例中,通过从获取到的具有预定解码顺序的待解码数据帧中,查找识别出待块并行解码的数据帧,其中,预定解码顺序指示了待解码数据帧中的数据帧之间的解码顺序和依赖关系,预定解码顺序所指示的待块并行解码的数据帧所依赖的数据帧仅被待块并行解码的数据帧所依赖。从而实现对从具有预定解码顺序的待解码数据帧中准确查找出的待块并行解码的数据帧进行块并行解码,以避免现有技术中对数据帧全部采取块并行解码时解码延迟所导致的解码速率较低的问题,以实现提高数据帧的解码速率的效果,而且还可以克服仅采用帧并行解码方式所造成的解码限制,实现对存在依赖关系的数据帧进行高效高速解码的效果。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据现有技术的一种可选的数据帧的解码方法的示意图;
图2是根据现有技术的另一种可选的数据帧的解码方法的示意图;
图3是根据现有技术的又一种可选的数据帧的解码方法的示意图;
图4是根据现有技术的又一种可选的数据帧的解码方法的示意图;
图5是根据本发明实施例的一种可选的数据帧的解码方法的应用场景示意图;
图6是根据本发明实施例的一种可选的数据帧的解码方法的流程图;
图7是根据本发明实施例的一种可选的数据帧的解码方法的示意图;
图8是根据本发明实施例的另一种可选的数据帧的解码方法的流程图;
图9是根据本发明实施例的一种可选的数据帧的解码装置的示意图;
图10是根据本发明实施例的另一种可选的数据帧的解码装置的示意图;以及
图11是根据本发明实施例的一种可选的解码服务器的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
根据本发明实施例,提供了一种数据帧的解码方法的实施例,上述数据帧的解码方法可以但不限于应用于如图5所示的应用环境中,服务器502将预定解码顺序的待解码数据帧通过网络506发送给解码服务器504,其中,预定解码顺序指示了待解码数据帧中的数据帧之间的解码顺序和依赖关系;解码服务器504从待解码数据帧中查找出待块并行解码的数据帧,其中,预定解码顺序所指示的待块并行解码的数据帧所依赖的数据帧仅被待块并行解码的数据帧所依赖;然后,对待块并行解码的数据帧中的块数据进行块并行解码。可选地,在本实施例中,上述网络可以包括但不限于以下至少之一:广域网、城域网和局域网络。需要说明的是,上述服务器502和解码服务器504可以但不限于同一个服务器,本实施例中对此不做限定。可选地,在本实施例中,上述终端可以包括但不限于以下至少之一:手机、平板电脑、笔记本电脑、PC机。上述只是一种示例,本实施例对此不做任何限定。
根据本发明实施例,提供了一种数据帧的解码方法,如图6所示,该方法包括:
S602,获取具有预定解码顺序的待解码数据帧,其中,预定解码顺序指示了待解码数据帧中的数据帧之间的解码顺序和依赖关系;
S604,从待解码数据帧中查找出待块并行解码的数据帧,其中,预定解码顺序所指示的待块并行解码的数据帧所依赖的数据帧仅被待块并行解码的数据帧所依赖;
S606,对待块并行解码的数据帧中的块数据进行块并行解码。
可选地,在本实施例中,上述数据帧解码方法可以但不限于应用于对多媒体数据帧的解码过程中,例如视频数据帧。在本实施例中,通过从获取到的待解码数据帧中准确查找出待块并行解码的数据帧,实现对待块并行解码的数据帧中的块数据进行块并行解码,从而实现提高数据帧的解码速率,进而解决现有的数据帧的解码方法所导致的解码速率较低的问题。
需要说明的是,在本实施例中,通过从获取到的具有预定解码顺序的待解码数据帧准确查找出待块并行解码的数据帧,以实现对存在依赖关系的部分数据帧进行块并行解码,从而避免由于受到熵解码影响解码速率的问题。具体结合图5来说,假设在解码视频S的数据帧时,解码服务器504可以获取视频S中具有预定解码顺序的待解码数据帧,其中,预定解码顺序指示了待解码数据帧中的数据帧之间的解码顺序和依赖关系,通过从上述待解码数据帧中查找识别出待块并行解码的数据帧,从而实现对查找出的待块并行解码的数据帧进行块并行解码,不仅避免了现有技术中对数据帧全部采取块并行解码时解码延迟所导致的解码速率较低的问题,以实现提高数据帧的解码速率的效果,而且还可以实现对存在依赖关系的数据帧进行高效解码的效果。
可选地,在本实施例中,上述依赖关系可以包括但不限于:待解码数据帧中解码顺序靠后的数据帧的解码开始时间依赖于待解码数据帧中解码顺序靠前的数据帧的解码开始时间。例如,如图3所示,在Core1中处理的帧6、7之间就互相依赖,需要在帧6解码后再解码帧7;而分别在Core4和Core1中处理的帧2、6并不存在依赖关系,即,可以同时开始帧级并行解码。又例如,如图7所示,箭头两端所指示的数据帧之间存在依赖关系,其中,帧8的解码开始时间依赖于帧1,帧4的解码开始时间依赖于帧8。
可选地,在本实施例中,从待解码数据帧中查找出待块并行解码的数据帧包括:根据预定解码顺序获取待解码数据帧中的当前数据帧所依赖的在先数据帧;判断当前数据帧所依赖的在先数据帧是否仅被当前数据帧所依赖;若在先数据帧仅被当前数据帧所依赖,则将当前数据帧作为待块并行解码的数据帧。
需要说明的是,在本实施例中,通过判断当前数据帧所依赖的在先数据帧是否仅被当前数据帧所依赖,从而实现从获取到的具有预定解码顺序的待解码数据帧中,准确查找出需要进行块并行解码的待块并行解码的数据帧。以便于对该部分待块并行解码的数据帧实现块并行解码,从而实现提高数据帧的解码速率的效果。
可选地,在本实施例中,若在先数据帧不是仅被当前数据帧所依赖,则将包括当前数据帧在内的依赖于在先数据帧的多个数据帧进行帧并行解码。
可选地,在本实施例中,若所述在先数据帧仅被所述当前数据帧所依赖,当在先数据帧中的部分数据被解码时,开始对待块并行解码的数据帧中的块数据进行块并行解码。
需要说明的是,在本实施例中,对于判断出不存在依赖关系的帧,例如,全I帧,可以直接执行帧并行解码;而对于判断出数据帧之间具有一定解码顺序和依赖关系的待解码数据帧,需要进一步查找当前数据帧所依赖的在先数据帧是否仅被当前数据帧所依赖,从而准确查找出待块并行解码的数据帧,以实现对查找出的待块并行解码的数据帧进行块并行解码,从而实现将帧并行解码的方式与块并行解码的方式进行合理结合,以达到进一步提升数据帧的解码速率的效果。
通过本申请提供的实施例,通过从获取到的具有预定解码顺序的待解码数据帧中,查找识别出待块并行解码的数据帧,其中,预定解码顺序指示了待解码数据帧中的数据帧之间的解码顺序和依赖关系,预定解码顺序所指示的待块并行解码的数据帧所依赖的数据帧仅被待块并行解码的数据帧所依赖。从而实现对从具有预定解码顺序的待解码数据帧中准确查找出的待块并行解码的数据帧进行块并行解码,以避免现有技术中对数据帧全部采取块并行解码时解码延迟所导致的解码速率较低的问题,以实现提高数据帧的解码速率的效果,而且还可以克服仅采用帧并行解码方式所造成的解码限制,实现对存在依赖关系的数据帧进行高效高速解码的效果。
作为一种可选的方案,如图8所示,步骤S602,从待解码数据帧中查找出待块并行解码的数据帧包括:
S802,根据预定解码顺序获取待解码数据帧中的当前数据帧所依赖的在先数据帧;
S804,判断当前数据帧所依赖的在先数据帧是否仅被当前数据帧所依赖;若在先数据帧仅被当前数据帧所依赖,则将当前数据帧作为待块并行解码的数据帧。
可选地,在本实施例中,上述具有预定解码顺序的待解码数据帧中的当前数据帧和当前数据帧所依赖的在先数据帧可以但不限于为根据预定解码顺序获取到。例如,如图7所示,依次获取帧0、帧1、帧2…帧8。
可选地,在本实施例中,上述待块并行解码的数据帧所依赖的数据帧仅被待块并行解码的数据帧所依赖,可以但不限于为被依赖的数据帧与待块并行解码的数据帧是串联依赖关系,并未被其他数据帧依赖。
具体结合以下示例进行说明,如图7所示,若当前数据帧为帧4,则帧4所依赖的在先数据帧帧8就是仅被帧4所依赖;而当前数据帧为帧2时,帧2所依赖的在先数据帧帧4不仅被帧2所依赖,还被帧6所依赖。也就是说,上述示例中,帧4为待块并行解码的数据帧,而帧2不是待块并行解码的数据帧。进一步,图7所示的数据帧中,待块并行解码的数据帧不仅包括帧4,还包括帧0和帧8,而帧2、帧6均依赖帧4,帧1、帧3均依赖帧2,帧5、帧7均依赖帧6,即帧2、帧6、帧1、帧3、帧5、帧7并不属于待块并行解码的数据帧。
通过本申请提供的实施例,在根据预定解码顺序获取到待解码数据帧中的当前数据帧所依赖的在先数据帧之后,通过判断当前数据帧所依赖的在先数据帧是否仅被当前数据帧所依赖,从而实现准确查找出需要进行块并行解码的待块并行解码的数据帧,进而实现对待块并行解码的数据帧进行块并行解码,以达到提高解码速率的效果。
作为一种可选的方案,在判断当前数据帧所依赖的在先数据帧是否仅被当前数据帧所依赖之后,还包括:
S1,若在先数据帧不是仅被当前数据帧所依赖,则将包括当前数据帧在内的依赖于在先数据帧的多个数据帧进行帧并行解码。
具体结合以下示例进行说明,如图7所示,当前数据帧为帧2时,帧2所依赖的在先数据帧帧4不仅被帧2所依赖,还被帧6所依赖。也就是说,在本示例中将对包括帧2在内的依赖于在先数据帧帧4的多个数据帧(即帧2和帧6)进行帧并行解码;若当前数据帧为帧5时,帧5所依赖的在先数据帧帧6不仅被帧5所依赖,还被帧7所依赖。也就是说,在本示例中将对包括帧5在内的依赖于在先数据帧帧6的多个数据帧(即帧5和帧7)进行帧并行解码。
通过本申请提供的实施例,在判断出在先数据帧不是仅被当前数据帧所依赖时,对包括当前数据帧在内的依赖于在先数据帧的多个数据帧进行帧并行解码,从而实现直接通过帧并行解码方式对数据帧进行解码,以达到进一步提高数据解码速率的效果。
作为一种可选的方案,若在先数据帧仅被当前数据帧所依赖,则对待块并行解码的数据帧中的块数据进行块并行解码包括:
S1,在先数据帧中的部分数据被解码时,开始对待块并行解码的数据帧中的块数据进行块并行解码。
可选地,在本实施例中,当在先数据帧仅被当前数据帧所依赖时,在先数据帧将先解码部分数据,进一步,再对对待块并行解码的数据帧中的块数据开始进行块并行解码,从而实现对待解码数据帧进行串并联结合解码,以提高数据帧的解码效率。
例如,如图7所示的数据帧中,待块并行解码的数据帧不仅包括帧4,还包括帧0和帧8,其中,上述待块并行解码的数据帧的解码顺序为帧0、帧8、帧4,以帧8为例,在在先数据帧帧0中的部分数据被解码时,再开始对待块并行解码的数据帧帧8中的块数据进行块并行解码。
通过本申请提供的实施例,在判断出在先数据帧仅被当前数据帧所依赖时,在在先数据帧中的部分数据被解码时,开始对待块并行解码的数据帧中的块数据进行块并行解码,从而实现对待解码数据串并联结合解码,进而避免对待解码数据帧全部采取块并行解码方式解码所导致的解码速率较低的问题,以实现提高数据帧的解码速率的效果。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
实施例2
本发明实施例还提供了一种用于实施上述数据帧的解码方法的数据帧的解码装置的实施例,该实施例的应用场景与实施例1相同,本实施例在此不再赘述。
根据本发明实施例,还提供了一种用于实施上述数据帧的解码方法的数据帧的解码装置,如图9所示,该装置包括:
1)获取单元902,用于获取具有预定解码顺序的待解码数据帧,其中,预定解码顺序指示了待解码数据帧中的数据帧之间的解码顺序和依赖关系;
2)查找单元904,用于从待解码数据帧中查找出待块并行解码的数据帧,其中,预定解码顺序所指示的待块并行解码的数据帧所依赖的数据帧仅被待块并行解码的数据帧所依赖;
3)解码单元906,用于对待块并行解码的数据帧中的块数据进行块并行解码。
可选地,在本实施例中,上述数据帧解码装置可以但不限于应用于对多媒体数据帧的解码过程中,例如视频数据帧。在本实施例中,通过从获取到的待解码数据帧中准确查找出待块并行解码的数据帧,实现对待块并行解码的数据帧中的块数据进行块并行解码,从而实现提高数据帧的解码速率,进而解决现有的数据帧的解码装置所导致的解码速率较低的问题。
需要说明的是,在本实施例中,通过从获取到的具有预定解码顺序的待解码数据帧准确查找出待块并行解码的数据帧,以实现对存在依赖关系的部分数据帧进行块并行解码,从而避免由于受到熵解码影响解码速率的问题。具体结合图5来说,假设在解码视频S的数据帧时,解码服务器504可以获取视频S中具有预定解码顺序的待解码数据帧,其中,预定解码顺序指示了待解码数据帧中的数据帧之间的解码顺序和依赖关系,通过从上述待解码数据帧中查找识别出待块并行解码的数据帧,从而实现对查找出的待块并行解码的数据帧进行块并行解码,不仅避免了现有技术中对数据帧全部采取块并行解码时解码延迟所导致的解码速率较低的问题,以实现提高数据帧的解码速率的效果,而且还可以实现对存在依赖关系的数据帧进行高效解码的效果。
可选地,在本实施例中,上述依赖关系可以包括但不限于:待解码数据帧中解码顺序靠后的数据帧的解码开始时间依赖于待解码数据帧中解码顺序靠前的数据帧的解码开始时间。例如,如图3所示,在Core1中处理的帧6、7之间就互相依赖,需要在帧6解码后再解码帧7;而分别在Core4和Core1中处理的帧2、6并不存在依赖关系,即,可以同时开始帧级并行解码。又例如,如图7所示,箭头两端所指示的数据帧之间存在依赖关系,其中,帧8的解码开始时间依赖于帧1,帧4的解码开始时间依赖于帧8。
可选地,在本实施例中,从待解码数据帧中查找出待块并行解码的数据帧包括:根据预定解码顺序获取待解码数据帧中的当前数据帧所依赖的在先数据帧;判断当前数据帧所依赖的在先数据帧是否仅被当前数据帧所依赖;若在先数据帧仅被当前数据帧所依赖,则将当前数据帧作为待块并行解码的数据帧。
需要说明的是,在本实施例中,通过判断当前数据帧所依赖的在先数据帧是否仅被当前数据帧所依赖,从而实现从获取到的具有预定解码顺序的待解码数据帧中,准确查找出需要进行块并行解码的待块并行解码的数据帧。以便于对该部分待块并行解码的数据帧实现块并行解码,从而实现提高数据帧的解码速率的效果。
可选地,在本实施例中,若在先数据帧不是仅被当前数据帧所依赖,则将包括当前数据帧在内的依赖于在先数据帧的多个数据帧进行帧并行解码。
可选地,在本实施例中,若所述在先数据帧仅被所述当前数据帧所依赖,当在先数据帧中的部分数据被解码时,开始对待块并行解码的数据帧中的块数据进行块并行解码。
需要说明的是,在本实施例中,对于判断出不存在依赖关系的帧,例如,全I帧,可以直接执行帧并行解码;而对于判断出数据帧之间具有一定解码顺序和依赖关系的待解码数据帧,需要进一步查找当前数据帧所依赖的在先数据帧是否仅被当前数据帧所依赖,从而准确查找出待块并行解码的数据帧,以实现对查找出的待块并行解码的数据帧进行块并行解码,从而实现将帧并行解码的方式与块并行解码的方式进行合理结合,以达到进一步提升数据帧的解码速率的效果。
通过本申请提供的实施例,通过从获取到的具有预定解码顺序的待解码数据帧中,查找识别出待块并行解码的数据帧,其中,预定解码顺序指示了待解码数据帧中的数据帧之间的解码顺序和依赖关系,预定解码顺序所指示的待块并行解码的数据帧所依赖的数据帧仅被待块并行解码的数据帧所依赖。从而实现对从具有预定解码顺序的待解码数据帧中准确查找出的待块并行解码的数据帧进行块并行解码,以避免现有技术中对数据帧全部采取块并行解码时解码延迟所导致的解码速率较低的问题,以实现提高数据帧的解码速率的效果,而且还可以克服仅采用帧并行解码方式所造成的解码限制,实现对存在依赖关系的数据帧进行高效高速解码的效果。
作为一种可选的方案,如图10所示,查找单元904包括:
1)获取模块1002,用于根据预定解码顺序获取待解码数据帧中的当前数据帧所依赖的在先数据帧;
2)判断模块1004,用于判断当前数据帧所依赖的在先数据帧是否仅被当前数据帧所依赖;若在先数据帧仅被当前数据帧所依赖,则将当前数据帧作为待块并行解码的数据帧。
可选地,在本实施例中,上述具有预定解码顺序的待解码数据帧中的当前数据帧和当前数据帧所依赖的在先数据帧可以但不限于为根据预定解码顺序获取到。例如,如图7所示,依次获取帧0、帧1、帧2…帧8。
可选地,在本实施例中,上述待块并行解码的数据帧所依赖的数据帧仅被待块并行解码的数据帧所依赖,可以但不限于为被依赖的数据帧与待块并行解码的数据帧是串联依赖关系,并未被其他数据帧依赖。
具体结合以下示例进行说明,如图7所示,若当前数据帧为帧4,则帧4所依赖的在先数据帧帧8就是仅被帧4所依赖;而当前数据帧为帧2时,帧2所依赖的在先数据帧帧4不仅被帧2所依赖,还被帧6所依赖。也就是说,上述示例中,帧4为待块并行解码的数据帧,而帧2不是待块并行解码的数据帧。进一步,图7所示的数据帧中,待块并行解码的数据帧不仅包括帧4,还包括帧0和帧8,而帧2、帧6均依赖帧4,帧1、帧3均依赖帧2,帧5、帧7均依赖帧6,即帧2、帧6、帧1、帧3、帧5、帧7并不属于待块并行解码的数据帧。
通过本申请提供的实施例,在根据预定解码顺序获取到待解码数据帧中的当前数据帧所依赖的在先数据帧之后,通过判断当前数据帧所依赖的在先数据帧是否仅被当前数据帧所依赖,从而实现准确查找出需要进行块并行解码的待块并行解码的数据帧,进而实现对待块并行解码的数据帧进行块并行解码,以达到提高解码速率的效果。
作为一种可选的方案,还包括:
1)第一解码模块,用于在判断当前数据帧所依赖的在先数据帧是否仅被当前数据帧所依赖之后,在在先数据帧不是仅被当前数据帧所依赖,则将包括当前数据帧在内的依赖于在先数据帧的多个数据帧进行帧并行解码。
具体结合以下示例进行说明,如图7所示,当前数据帧为帧2时,帧2所依赖的在先数据帧帧4不仅被帧2所依赖,还被帧6所依赖。也就是说,在本示例中将对包括帧2在内的依赖于在先数据帧帧4的多个数据帧(即帧2和帧6)进行帧并行解码;若当前数据帧为帧5时,帧5所依赖的在先数据帧帧6不仅被帧5所依赖,还被帧7所依赖。也就是说,在本示例中将对包括帧5在内的依赖于在先数据帧帧6的多个数据帧(即帧5和帧7)进行帧并行解码。
通过本申请提供的实施例,在判断出在先数据帧不是仅被当前数据帧所依赖时,对包括当前数据帧在内的依赖于在先数据帧的多个数据帧进行帧并行解码,从而实现直接通过帧并行解码方式对数据帧进行解码,以达到进一步提高数据解码速率的效果。
作为一种可选的方案,在在先数据帧仅被当前数据帧所依赖时,解码单元包括:
1)第二解码模块,用于在在先数据帧中的部分数据被解码时,开始对待块并行解码的数据帧中的块数据进行块并行解码。
可选地,在本实施例中,当在先数据帧仅被当前数据帧所依赖时,在先数据帧将先解码部分数据,进一步,再对对待块并行解码的数据帧中的块数据开始进行块并行解码,从而实现对待解码数据帧进行串并联结合解码,以提高数据帧的解码效率。
例如,如图7所示的数据帧中,待块并行解码的数据帧不仅包括帧4,还包括帧0和帧8,其中,上述待块并行解码的数据帧的解码顺序为帧0、帧8、帧4。以帧8为例,帧8的在先数据帧为帧0,在在先数据帧帧0中的部分数据被解码时,再开始对待块并行解码的数据帧帧8中的块数据进行块并行解码。
通过本申请提供的实施例,在判断出在先数据帧仅被当前数据帧所依赖时,在在先数据帧中的部分数据被解码时,开始对待块并行解码的数据帧中的块数据进行块并行解码,从而实现对待解码数据串并联结合解码,进而避免对待解码数据帧全部采取块并行解码方式解码所导致的解码速率较低的问题,以实现提高数据帧的解码速率的效果。
实施例3
根据本发明实施例,还提供了一种用于实施上述数据帧的解码方法的解码服务器,如图11所示,该服务器包括:
1)通讯接口1102,被设置为获取具有预定解码顺序的待解码数据帧,其中,预定解码顺序指示了待解码数据帧中的数据帧之间的解码顺序和依赖关系;
2)存储器1104,与通讯接口1102连接,被设置为存储具有预定解码顺序的待解码数据帧;
3)处理器1106,与通讯接口1102和存储器1104连接,被设置为从待解码数据帧中查找出待块并行解码的数据帧,其中,预定解码顺序所指示的待块并行解码的数据帧所依赖的数据帧仅被待块并行解码的数据帧所依赖;对待块并行解码的数据帧中的块数据进行块并行解码。
可选地,本实施例中的具体示例可以参考上述实施例1和实施例2中所描述的示例,本实施例在此不再赘述。
实施例4
本发明的实施例还提供了一种用于实施上述数据帧的解码方法的存储介质。可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:
S1,获取具有预定解码顺序的待解码数据帧,其中,预定解码顺序指示了待解码数据帧中的数据帧之间的解码顺序和依赖关系;
S2,从待解码数据帧中查找出待块并行解码的数据帧,其中,预定解码顺序所指示的待块并行解码的数据帧所依赖的数据帧仅被待块并行解码的数据帧所依赖;
S3,对待块并行解码的数据帧中的块数据进行块并行解码。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
可选地,本实施例中的具体示例可以参考上述实施例1和实施例2中所描述的示例,本实施例在此不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (8)
1.一种数据帧的解码方法,其特征在于,包括:
获取具有预定解码顺序的待解码数据帧,其中,所述预定解码顺序指示了所述待解码数据帧中的数据帧之间的解码顺序和依赖关系;
从所述待解码数据帧中查找出待块并行解码的数据帧,其中,所述预定解码顺序所指示的所述待块并行解码的数据帧所依赖的数据帧仅被所述待块并行解码的数据帧所依赖;
对所述待块并行解码的数据帧中的块数据进行块并行解码;
其中,所述从所述待解码数据帧中查找出待块并行解码的数据帧包括:
根据所述预定解码顺序获取所述待解码数据帧中的当前数据帧所依赖的在先数据帧;
判断所述当前数据帧所依赖的在先数据帧是否仅被所述当前数据帧所依赖;若所述在先数据帧仅被所述当前数据帧所依赖,则将所述当前数据帧作为所述待块并行解码的数据帧;若所述在先数据帧不是仅被所述当前数据帧所依赖,则将包括所述当前数据帧在内的依赖于所述在先数据帧的多个数据帧进行帧并行解码。
2.根据权利要求1所述的方法,其特征在于,若所述在先数据帧仅被所述当前数据帧所依赖,则对所述待块并行解码的数据帧中的块数据进行块并行解码包括:
在所述在先数据帧中的部分数据被解码时,开始对所述待块并行解码的数据帧中的块数据进行块并行解码。
3.根据权利要求1至2中任一项所述的方法,其特征在于,所述依赖关系包括:所述待解码数据帧中解码顺序靠后的数据帧的解码开始时间依赖于所述待解码数据帧中解码顺序靠前的数据帧的解码开始时间。
4.根据权利要求1所述的方法,其特征在于,所述数据帧包括:视频数据帧。
5.一种数据帧的解码装置,其特征在于,包括:
获取单元,用于获取具有预定解码顺序的待解码数据帧,其中,所述预定解码顺序指示了所述待解码数据帧中的数据帧之间的解码顺序和依赖关系;
查找单元,用于从所述待解码数据帧中查找出待块并行解码的数据帧,其中,所述预定解码顺序所指示的所述待块并行解码的数据帧所依赖的数据帧仅被所述待块并行解码的数据帧所依赖;
解码单元,用于对所述待块并行解码的数据帧中的块数据进行块并行解码;
其中,所述查找单元包括:
获取模块,用于根据所述预定解码顺序获取所述待解码数据帧中的当前数据帧所依赖的在先数据帧;
判断模块,用于判断所述当前数据帧所依赖的在先数据帧是否仅被所述当前数据帧所依赖;若所述在先数据帧仅被所述当前数据帧所依赖,则将所述当前数据帧作为所述待块并行解码的数据帧;
第一解码模块,用于在判断所述当前数据帧所依赖的在先数据帧是否仅被所述当前数据帧所依赖之后,在所述在先数据帧不是仅被所述当前数据帧所依赖,则将包括所述当前数据帧在内的依赖于所述在先数据帧的多个数据帧进行帧并行解码。
6.根据权利要求5所述的装置,其特征在于,在所述在先数据帧仅被所述当前数据帧所依赖时,所述解码单元包括:
第二解码模块,用于在所述在先数据帧中的部分数据被解码时,开始对所述待块并行解码的数据帧中的块数据进行块并行解码。
7.根据权利要求5至6中任一项所述的装置,其特征在于,所述依赖关系包括:所述待解码数据帧中解码顺序靠后的数据帧的解码开始时间依赖于所述待解码数据帧中解码顺序靠前的数据帧的解码开始时间。
8.根据权利要求5所述的装置,其特征在于,所述数据帧包括:视频数据帧。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510680800.7A CN106604034B (zh) | 2015-10-19 | 2015-10-19 | 数据帧的解码方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510680800.7A CN106604034B (zh) | 2015-10-19 | 2015-10-19 | 数据帧的解码方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106604034A CN106604034A (zh) | 2017-04-26 |
CN106604034B true CN106604034B (zh) | 2019-11-08 |
Family
ID=58554712
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510680800.7A Active CN106604034B (zh) | 2015-10-19 | 2015-10-19 | 数据帧的解码方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106604034B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101461247A (zh) * | 2006-06-08 | 2009-06-17 | 高通股份有限公司 | 视频块的并行批量解码 |
CN101635856A (zh) * | 2009-08-24 | 2010-01-27 | 杭州华三通信技术有限公司 | 场编码方法及装置 |
CN102647589A (zh) * | 2011-02-18 | 2012-08-22 | Arm有限公司 | 并行视频解码 |
EP2914008A1 (en) * | 2012-12-06 | 2015-09-02 | Sony Corporation | Decoding device, decoding method, and program |
-
2015
- 2015-10-19 CN CN201510680800.7A patent/CN106604034B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101461247A (zh) * | 2006-06-08 | 2009-06-17 | 高通股份有限公司 | 视频块的并行批量解码 |
CN101635856A (zh) * | 2009-08-24 | 2010-01-27 | 杭州华三通信技术有限公司 | 场编码方法及装置 |
CN102647589A (zh) * | 2011-02-18 | 2012-08-22 | Arm有限公司 | 并行视频解码 |
EP2914008A1 (en) * | 2012-12-06 | 2015-09-02 | Sony Corporation | Decoding device, decoding method, and program |
Also Published As
Publication number | Publication date |
---|---|
CN106604034A (zh) | 2017-04-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20170161645A1 (en) | Method and apparatus for labeling training samples | |
CN102279917B (zh) | 多杀毒引擎并行杀毒方法及系统 | |
CN105224396B (zh) | 一种业务数据处理方法和装置 | |
CN108985954B (zh) | 一种建立各标识的关联关系的方法以及相关设备 | |
CN114281521B (zh) | 优化深度学习异构资源通信效率方法、系统、设备及介质 | |
CN107545315A (zh) | 订单处理方法及装置 | |
CN105302815B (zh) | 网页的统一资源定位符url的过滤方法和装置 | |
CN110473528A (zh) | 语音识别方法和装置、存储介质及电子装置 | |
CN106294778A (zh) | 信息推送方法和装置 | |
CN105338659A (zh) | 一种设备连接方法及终端 | |
CN103780343A (zh) | Td-lte系统中sib1译码中的phich资源盲检测装置及方法 | |
CN106571942A (zh) | 配置数据更新方法、客户端和服务器 | |
CN106548189B (zh) | 一种事件识别方法和设备 | |
CN106326258B (zh) | Url匹配方法及装置 | |
CN104298711A (zh) | 一种对待扫描信息进行扫描的方法、装置和计算机设备 | |
CN106604034B (zh) | 数据帧的解码方法及装置 | |
CN105573726B (zh) | 一种规则处理方法及设备 | |
CN105468443A (zh) | 社交应用软件的用户匹配方法和装置 | |
CN106059956A (zh) | 一种用于网络设备会话的时间队列处理方法以及装置 | |
CN109376362A (zh) | 一种纠错文本的确定方法以及相关设备 | |
CN116567609A (zh) | 用户信息关联回填方法、装置、设备及存储介质 | |
CN109450684B (zh) | 一种网络切片系统物理节点容量扩充方法及装置 | |
CN106970834A (zh) | 任务处理的方法及装置 | |
EP3101953A1 (en) | Discovery resource time-frequency jumping method and terminal | |
CN105101207B (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 |