用于图像数据编码的方法、编码器和电子设备与流程

文档序号:14881164发布日期:2018-07-07 09:46阅读:167来源:国知局

本发明涉及数据处理领域,具体地,涉及一种用于图像数据编码的方法、编码器和电子设备。



背景技术:

在车机手机互联过程中,当手机连接到车机时,需要将手机的屏幕画面投射到车机,或者在车机屏幕上播放手机上的视频流。但是往往会发现在执行投屏或播放视频流时车机需要延迟一段时间才能显示手机屏幕画面。造成延迟的原因之一是在手机中对实时视频流进行编码(例如h.264编码)的过程中,编码器在接收到第一帧图像数据时,编码器先产生初始化序列,然后发送初始化序列信息,之后对第一帧图像数据进行编码以产生图像编码信息,之后发送图像编码信息。由于编码器产生初始化序列的时间不固定,这种编码机制会导致一定的编码延迟,不太适合实时流传输。



技术实现要素:

本发明实施方式的目的是提供一种用于编码器对图像数据编码的方法、编码器和电子设备,能够降低编码延迟。

为了实现上述目的,本发明实施方式提供一种用于编码器对图像数据进行编码的方法,所述方法包括:接收连续的背景帧,直到所述编码器接收到第一帧图像数据;基于接收的连续的背景帧生成并保存初始序列信息;在接收到所述第一帧图像数据之后对所述第一帧图像数据进行编码;在对所述第一图像数据编码结束之后输出所述初始序列信息;以及输出编码后的第一帧图像数据。

可选地,所述方法还包括:在接收到的所述连续的背景帧的数量超过预设数量时生成所述初始序列信息。

可选地,所述连续的背景帧是黑色的yuv帧。

可选地,所述连续的背景帧的帧间隔是10ms。

本发明实施方式还提供一种编码器,所述编码器被配置成接收连续的背景帧,直到接收到第一帧图像数据;基于接收的连续的背景帧生成并保存初始序列信息;在接收到所述第一帧图像数据之后对所述第一帧图像数据进行编码;在对所述第一图像数据编码结束之后输出所述初始序列信息;以及输出编码后的第一帧图像数据。

可选地,所述编码器还被配置成:在接收到的所述连续的背景帧的数量超过预设数量时生成所述初始序列信息。

可选地,所述连续的背景帧是黑色的yuv帧。

可选地,连续的背景帧的帧间隔是10ms。

可选地,所述编码器是h.264编码器。

本发明实施方式还提供一种电子设备,所述电子设备包括帧生成器,被配置成生成连续的背景帧;以及上述的编码器。

通过上述技术方案,在接收真正的图像帧之前向编码器输入连续的背景帧以激励编码器先生成初始序列并保存,当真实图像数据来临时可以省去编码器原有生成初始序列的时间和不确定的延迟时间。

本发明实施方式的其它特征和优点将在随后的具体实施方式部分予以详细说明。

附图说明

附图是用来提供对本发明实施方式的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明实施方式,但并不构成对本发明实施方式的限制。在附图中:

图1是根据本发明实施方式提供的用于对图像数据进行编码的方法的流程图;以及

图2是根据本发明实施方式提供的编码器的结构框图;以及

图3是根据本发明实施方式提供的电子设备的结构框图。

附图标记说明

21背景帧接收模块22初始序列信息生成模块

23编码模块24输出模块

31帧生成器32编码器

具体实施方式

以下结合附图对本发明实施方式的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明实施方式,并不用于限制本发明实施方式。

图1是根据本发明实施方式提供的用于编码器对图像数据进行编码的方法的流程图。如图1所示,在本发明的实施方式中,提供了一种用于编码器对图像数据进行编码的方法,该方法可以包括:

初始化编码器,包括设置编码格式、码率、帧间隔、图像高宽等。编码器可以例如是h.264编码器,但不限于此。

编码器接收连续的背景帧,直到编码器接收到第一帧图像数据。

连续的背景帧可以由例如帧生成器生成。帧生成器可以通过软件、硬件、固件或其任意的结合实现。在本发明实施方式中,背景帧可以是黑色的yuv帧。但是本领域技术人员可以理解,背景帧的设定可以不限于此,例如背景帧可以是黑色以外的其他颜色的背景帧,例如蓝色、红色等。另外,连续的背景帧的帧间隔可以例如是10ms。

编码器基于接收的连续的背景帧生成初始序列信息。编码器可以保存生成的初始序列信息。在本发明实施方式中,编码器可以在接收到预定数量(例如1至10个)的背景帧后开始生成并保存初始序列信息(例如在存储器中)。同时,编码器也会产生背景帧的编码信息,但是可以忽略或丢弃该数据。

编码器在接收连续的背景帧的时候等待第一帧图像数据的到来。当编码器接收到第一帧图像数据之后对第一帧图像数据进行编码。

具体来说,帧生成器生成连续的背景帧后将连续的背景帧依次输入到队列,编码器从该队列接收连续的背景帧。当第一帧图像数据到来的时候(例如从其他的处理模块(例如格式转换模块)输出的),也被输入到该队列,编码器从该队列取得该第一帧图像数据,并对其进行编码。

编码器在对第一图像数据编码结束之后先输出保存的初始序列信息;以及

编码器之后再输出编码后的第一帧图像数据。

之后,编码器不再输出任何初始序列信息,编码器可以对后续帧图像数据进行编码。

图2是根据本发明实施方式提供的编码器的结构框图。如图2所示,在本发明另一实施方式中,提供了一种编码器,包括:

背景帧接收模块21,用于接收连续的背景帧直到接收到第一帧图像数据;

初始序列信息生成模块22,用于基于接收的连续的背景帧生成初始序列信息;

编码模块23,用于在接收到第一帧图像数据之后对第一帧图像数据进行编码;

输出模块24,用于在对第一图像数据编码结束之后输出初始序列信息以及再输出编码后的第一帧图像数据。

其中,初始序列信息生成模块22还用于在接收到的连续的背景帧的数量超过预设数量时生成初始序列信息。

连续的背景帧可以是黑色的yuv帧。另外,连续的背景帧的帧间隔可以例如是10ms。

编码模块23还用于在生成初始序列信息之后,将初始序列信息保存在存储模块(未示出)中。同时,编码模块23也会产生背景帧的编码信息,但是可以忽略或丢弃该数据。

编码器可以例如是h.264编码器,但也可以是其他形式的编码器。

本发明另一实施方式提供了一种编码器,可以被配置成:

接收连续的背景帧,直到接收到第一帧图像数据;

基于接收的连续的背景帧生成初始序列信息;

在接收到第一帧图像数据之后对第一帧图像数据进行编码;

在对第一图像数据编码结束之后输出初始序列信息;以及

输出编码后的第一帧图像数据。

连续的背景帧可以由例如帧生成器生成。帧生成器可以通过软件、硬件、固件或其任意的结合实现。在本发明实施方式中,背景帧可以是黑色的yuv帧。但是本领域技术人员可以理解,背景帧的设定可以不限于此,例如背景帧可以是黑色以外的其他颜色的背景帧,例如蓝色、红色等。

编码器可以保存生成的初始序列信息。在本发明实施方式中,编码器可以在接收到预定数量(例如1至10个)的背景帧后开始生成初始序列信息。同时,编码器也会产生背景帧的编码信息,但是可以忽略或丢弃该数据。

编码器在接收连续的背景帧的时候等待第一帧图像数据的到来。当编码器接收到第一帧图像数据之后对第一帧图像数据进行编码。

具体来说,帧生成器生成连续的背景帧后将连续的背景帧依次输入到队列,编码器从该队列接收连续的背景帧。当第一帧图像数据到来的时候(例如从其他的处理模块(例如格式转换模块)输出的),也被输入到该队列,编码器从该队列取得该第一帧图像数据,并对其进行编码。

可选地,编码器还可以被配置成:在生成初始序列信息之后,保存初始序列信息(例如到存储器)。

编码器还可以进行初始化,其可以包括设置编码格式、码率、帧间隔、图像高宽等。

在编码器输出编码后的第一帧图像数据之后,编码器不再输出任何初始序列信息,编码器可以对后续帧图像数据进行编码。

编码器是可以h.264编码器,也可以是其他形式的编码器。

图3是根据本发明实施方式提供的电子设备的结构框图。如图3所示,在本发明另一实施方式中,提供了一种电子设备,可以包括帧生成器31,被配置成生成连续的背景帧;以及编码器32。编码器32可以例如是上述实施方式中描述的编码器。编码器可以例如是h.264编码器。

本领域技术人员可以理解,本申请实施方式中提及的编码器、帧生成器等可以通过软件、硬件、固件或其任意组合来实现。

本发明实施方式提供的方案,可以在接收真正的图像帧之前向编码器输入连续的背景帧以激励编码器先生成初始序列并保存,当真实图像数据来临时可以省去编码器原有生成初始序列的时间和不确定的延迟时间。尤其是在车机手机互联过程中能够避免在第一帧数据到来后,还需等待一帧才能真正得到编码数据的延迟,能够提高硬件编码的实时性,提升车机手机互联体验。

以上结合附图详细描述了本发明的可选实施方式,但是,本发明实施方式并不限于上述实施方式中的具体细节,在本发明实施方式的技术构思范围内,可以对本发明实施方式的技术方案进行多种简单变型,这些简单变型均属于本发明实施方式的保护范围。

另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本发明实施方式对各种可能的组合方式不再另行说明。

本领域技术人员可以理解实现上述实施方式方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施方式所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

此外,本发明实施方式的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明实施方式的思想,其同样应当视为本发明实施方式所公开的内容。

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