一种视频编解码中实现帧间同步的方法及装置与流程

文档序号:13707996阅读:232来源:国知局
技术领域本发明涉及视频编解码技术领域,尤其涉及一种视频编解码中实现帧间同步的方法及装置。

背景技术:
在视频录制与播放的过程中,通常需要对视频进行编解码。由于视频编解码的运算量十分庞大,在常见的多媒体处理芯片中,通常都会集成专门的视频编解码引擎。由于CPU或DSP难以满足高性能或低功耗方面的要求,视频编解码引擎通常使用专用集成电路来实现,但专用集成电路的研发周期长且可扩展性较差,一旦开发完成便很难提高其处理性能。视频序列中相邻帧之间的图像十分类似,通过帧间参考可以起到非常有效的数据压缩效果,所谓帧间参考,是指利用相邻帧的图像来还原当前帧的信息。由于视频序列间具有数据相关性,在前一帧数据未完成解压之前,很难使用前一帧数据作为参考帧对当前帧数据进行解压与压缩。在实现本发明的过程中,发明人发现现有技术中至少存在如下技术问题:采用现有的视频编解码方法,在前一帧数据未完成解压之前,很难使用前一帧数据作为参考帧对当前帧数据进行解压与压缩,系统的处理性能不高。

技术实现要素:
本发明提供的视频编解码中实现帧间同步的方法及装置,能够提升系统的处理性能。一方面,本发明提供一种视频编解码中实现帧间同步的方法,至少两个视频处理单元互连形成菊花链,视频序列中的每一帧图像依次由所述菊花链中相邻的两个视频处理单元处理,所述方法包括:当前视频处理单元接收上一级视频处理单元发送的处理信息;所述处理信息包括标识完成对前一图像帧中宏块的操作完成信息,以及所述宏块的位置信息;所述当前视频处理单元接收到所述操作完成信息后,对所述位置信息所对应的当前图像帧中的宏块进行编解码操作;在完成所述编解码操作后,所述当前视频处理单元向下一级视频处理单元发送处理信息。另一方面,本发明提供一种视频编解码中实现帧间同步的装置,所述装置包括至少两个视频处理单元,所述至少两个视频处理单元互连形成菊花链,视频序列中的每一帧图像依次由所述菊花链中相邻的两个视频处理单元处理,所述视频处理单元包括:接收模块,用于接收上一级视频处理单元发送的处理信息;所述处理信息包括标识完成对前一图像帧中宏块的操作完成信息,以及所述宏块的位置信息;处理模块,用于在所述接收模块接收到所述操作完成信息后,对所述位置信息所对应的当前图像帧中的宏块进行编解码操作;发送模块,用于在所述处理模块完成所述编解码操作后,向下一级视频处理单元发送处理信息。本发明提供的视频编解码中实现帧间同步的方法及装置,至少两个视频处理单元互连形成菊花链,视频序列中的每一帧图像依次由所述菊花链中相邻的两个视频处理单元处理,当前视频处理单元接收上一级视频处理单元发送的包括标识完成对前一图像帧中宏块的操作完成信息以及所述宏块的位置信息的处理信息,并对所述位置信息所对应的当前图像帧中的宏块进行编解码操作,并向下一级视频处理单元发送处理信息,以便下一级视频处理单元进行同样的操作。,从而,多个视频处理单元可以进行同步并发工作,实现多帧同步并发运算,进而能够提高系统的处理性能。附图说明为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。图1为本发明实施例1提供的视频编解码中实现帧间同步的方法的流程图;图2为本发明实施例2中三个视频处理单元VPU0、VPU1和VPU2互连形成菊花链的结构示意图;图3为本发明实施例2中视频序列帧间参考关系示意图;图4为本发明实施例2中相邻帧之间宏块参考关系示意图;图5为本发明实施例3提供的视频编解码中实现帧间同步的装置的结构示意图;图6为图5中视频处理单元的一种结构示意图;图7为图5中视频处理单元的另一种结构示意图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。实施例1本发明实施例提供一种视频编解码中实现帧间同步的方法,至少两个视频处理单元(VideoProcessUnit,VPU)互连形成菊花链,视频序列中的每一帧图像依次由所述菊花链中相邻的两个视频处理单元处理,如图1所示,所述方法包括:S11、当前视频处理单元接收上一级视频处理单元发送的处理信息;所述处理信息包括标识完成对前一图像帧中宏块的操作完成信息,以及所述宏块的位置信息;S12、所述当前视频处理单元接收到所述操作完成信息后,对所述位置信息所对应的当前图像帧中的宏块进行编解码操作;S13、在完成所述编解码操作后,所述当前视频处理单元向下一级视频处理单元发送处理信息。本发明实施例提供的视频编解码中实现帧间同步的方法,至少两个视频处理单元互连形成菊花链,视频序列中的每一帧图像依次由所述菊花链中相邻的两个视频处理单元处理,当前视频处理单元接收上一级视频处理单元发送的包括标识完成对前一图像帧中宏块的操作完成信息以及所述宏块的位置信息的处理信息,并对所述位置信息所对应的当前图像帧中的宏块进行编解码操作,并向下一级视频处理单元发送处理信息,以便下一级视频处理单元进行同样的操作。从而,多个视频处理单元可以进行同步并发工作,实现多帧同步并发运算,进而能够提高系统的处理性能。进一步地,在所述当前视频处理单元接收前一级视频处理单元发送的处理信息之前,还包括:将所述视频序列中的每一图像帧划分为多个互不重叠的宏块。进一步地,在所述当前视频处理单元接收上一级视频处理单元发送的处理信息之前,还包括:判断当前图像帧是否需要前一图像帧作为参考帧;若所述当前图像帧需要前一图像帧作为参考帧,则所述当前视频处理单元接收到所述操作完成信息后,对所述位置信息所对应的当前图像帧中的宏块进行编解码操作;若所述当前图像帧不需要前一图像帧作为参考帧,则所述当前视频处理单元直接对所述当前图像帧中的宏块进行编解码操作。实施例2在本实施例中,以三个视频处理单元互连为例对视频编解码中实现帧间同步的方法进行说明。如图2所示,三个完全相同的视频处理单元VPU0、VPU1和VPU2互连形成菊花链,对图3所示的视频序列中的图像帧进行处理。将第0、3、6、9、…、3n帧交由VPU0处理,将第1、4、7、10、…、3n+1帧交由VPU1处理,将第2、5、8、…、3n+2帧交由VPU2处理。其中,I帧为不参考别的图像的帧,P帧为只参考之前图像的帧,帧间参考关系如图3中箭头所示。如图4所示,图像帧可以划分为多个宏块。以第1帧为例,在对第1帧的处理过程中,由于会用到第0帧作为参考,即图4中第1帧中的宏块(X’,Y’)需要用到第0帧中的宏块(X,Y)的数据,如果第0帧宏块(X,Y)的数据未能处理完成,则不能对第1帧中的宏块(X’,Y’)进行处理。所述三个视频处理单元VPU0、VPU1和VPU2实现视频编解码中帧间同步的过程如下:VPU1在处理第1帧时,会自动根据自己所需要用到的前级视频处理单元VPU0输出的图像帧中已完成处理的宏块的位置信息,判断是否能够对第1帧进行处理;若能够对第1帧进行处理,则VPU1将完成处理的图像帧的位置信息传给VPU2;同理,VPU2在处理第2帧时,会自动根据自己所需要用到的前级视频处理单元VPU1输出的图像帧位置信息,判断是否能够对第2帧进行处理;依此类推,从而可以实现三个视频处理单元同步并发工作。需要说明的是,如果当前帧是I帧,由于不需要用到前级VPU的处理数据,则处理当前帧的VPU不需要使用前级VPU的位置信息,直接对当前帧进行处理即可。实施例3本实施例提供一种视频编解码中实现帧间同步的装置,如图5所示,所述视频编解码中实现帧间同步的装置包括至少两个视频处理单元,所述至少两个视频处理单元互连形成菊花链,视频序列中的每一帧图像依次由所述菊花链中相邻的两个视频处理单元处理,如图6所示,所述视频处理单元包括:接收模块11,用于接收上一级视频处理单元发送的处理信息;所述处理信息包括标识完成对前一图像帧中宏块的操作完成信息,以及所述宏块的位置信息;处理模块12,用于在所述接收模块11接收到所述操作完成信息后,对所述位置信息所对应的当前图像帧中的宏块进行编解码操作;发送模块13,用于在所述处理模块12完成所述编解码操作后,向下一级视频处理单元发送处理信息。本发明实施例提供的视频编解码中实现帧间同步的装置,至少两个视频处理单元互连形成菊花链,视频序列中的每一帧图像依次由所述菊花链中相邻的两个视频处理单元处理,当前视频处理单元接收上一级视频处理单元发送的包括标识完成对前一图像帧中宏块的操作完成信息以及所述宏块的位置信息的处理信息,并对所述位置信息所对应的当前图像帧中的宏块进行编解码操作,并向下一级视频处理单元发送处理信息,以便下一级视频处理单元进行同样的操作。从而,多个视频处理单元可以进行同步并发工作,实现多帧同步并发运算,进而能够提高系统的处理性能。进一步地,如图7所示,所述视频处理单元还包括:划分模块14,用于将所述视频序列中的每一图像帧划分为多个互不重叠的宏块。进一步地,如图7所示,所述视频处理单元还包括:判断模块15,用于在所述接收模块11接收上一级视频处理单元发送的处理信息之前,判断当前图像帧是否需要前一图像帧作为参考帧;若所述当前图像帧需要前一图像帧作为参考帧,则在所述接收模块11接收到所述操作完成信息后,所述处理模块12对所述位置信息所对应的当前图像帧中的宏块进行编解码操作;若所述当前图像帧不需要前一图像帧作为参考帧,则所述处理模块12直接对所述当前图像帧中的宏块进行编解码操作。综上所述有益效果:本发明提供的视频编解码中实现帧间同步的方法及装置,至少两个视频处理单元互连形成菊花链,视频序列中的每一帧图像依次由所述菊花链中相邻的两个视频处理单元处理,当前视频处理单元接收上一级视频处理单元发送的包括标识完成对前一图像帧中宏块的操作完成信息以及所述宏块的位置信息的处理信息,并对所述位置信息所对应的当前图像帧中的宏块进行编解码操作,并向下一级视频处理单元发送处理信息,以便下一级视频处理单元进行同样的操作。,从而,多个视频处理单元可以进行同步并发工作,实现多帧同步并发运算,进而能够提高系统的处理性能。本发明实施例视频编解码中实现帧间同步的方法及装置,可以适用于在视频编解码中实现帧间同步。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-OnlyMemory,ROM)或随机存储记忆体(RandomAccessMemory,RAM)等。以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1