一种嵌入式视频处理器、系统及构建方法

文档序号:9277089阅读:417来源:国知局
一种嵌入式视频处理器、系统及构建方法
【技术领域】
[0001]本发明涉及多媒体处理技术领域,特别涉及一种嵌入式视频处理器、系统及构建方法。
【背景技术】
[0002]当前,在嵌入式开发环境中进行视频项目的开发时,可以采用FFmpeg(FFmpeg,即Fast Forward Mpeg)对原始的视频数据进行编码,以实现对视频数据的压缩。
[0003]现有的FFmpeg在对视频数据进行编码时,需要利用CPU的运算资源来进行编码。然而,由于在嵌入式开发环境中,CPU的运算资源是非常有限的,所以,FFmpeg在进行需消耗大量预算资源的视频数据编码处理时,会占用嵌入式开发环境中大部分的CPU运算资源,从而影响了嵌入式开发环境中其他功能模块的性能。
[0004]综上所述可以看出,在嵌入式开发环境中进行视频数据的编码处理时,如何降低由于视频数据编码处理所造成的CPU运算资源消耗是目前亟待解决的问题。

【发明内容】

[0005]有鉴于此,本发明的目的在于提供一种嵌入式视频处理器、系统及构建方法,实现了在嵌入式开发环境中进行视频数据的编码处理时,降低由于视频数据编码处理所造成的(PU运算资源消耗的目的。其具体方案如下:
[0006]一种嵌入式视频处理器的构建方法,包括:
[0007]利用目标描述方式,对硬件编解码器进行重新定义,得到自定义的视频编解码器;其中,所述目标描述方式为,与FFmpeg对编解码器的描述相一致的描述方式;
[0008]利用编码器注册工具,将所述自定义的视频编解码器注册到所述FFmpeg中,以得到所述嵌入式视频处理器;
[0009]其中,所述将所述自定义的视频编解码器注册到所述FFmpeg中的过程包括,将所述自定义的视频编解码器添加到所述FFmpeg的视频编解码器链中。
[0010]优选的,所述利用目标描述方式,对硬件编解码器进行重新定义,得到自定义的视频编解码器的过程包括:
[0011]利用所述目标描述方式,对VPU硬件编解码器进行重新定义,得到所述自定义的视频编解码器。
[0012]优选的,所述利用编码器注册工具,将所述自定义的视频编解码器注册到所述FFmpeg中的过程包括:
[0013]利用REGISTER_ENCDEC (X, x)函数,将所述自定义的视频编解码器注册到所述FFmpeg 中。
[0014]本发明还公开了一种嵌入式视频处理器,通过利用所述构建方法进行构建,应用于嵌入式视频处理系统,包括:
[0015]用于获取视频采集器采集到的视频数据的FFmpeg ;
[0016]用于获取所述FFmpeg发送的所述视频数据,对所述视频数据进行硬件编码处理,得到相应的视频码流数据,并将所述视频码流数据发送到所述FFmpeg的硬件编解码器。
[0017]优选的,所述视频采集器为基于V4L2框架搭建的视频采集器。
[0018]优选的,所述硬件编解码器为VPU硬件编解码器。
[0019]优选的,所述视频码流数据的视频格式为H.264格式。
[0020]本发明还公开了一种嵌入式视频处理系统,包括所述嵌入式视频处理器,还包括:
[0021]用于生成流媒体请求的客户端;
[0022]用于获取所述FFmpeg发送的所述视频码流数据,并在接收到所述客户端发送的所述流媒体请求后,将所述视频码流数据发送到所述客户端的FFserver。
[0023]优选的,所述客户端为VLC客户端。
[0024]优选的,所述系统还包括:
[0025]用于获取并存储所述FFserver发送的所述视频码流数据的数据缓冲器。
[0026]本发明中,通过对硬件编解码器进行重新定义,得到自定义的视频编解码器,使得该视频编解码器的描述方式与FFmpeg对编解码器的描述方式是相一致的,这为后续的将自定义的视频编解码器添加到FFmpeg的视频编解码器链中打下了关键的基础;然后利用编码器注册工具,将上述自定义的视频编解码器注册到FFmpeg中,也即将自定义的视频编解码器添加到FFmpeg的视频编解码器链中,由此完成了将硬件编解码器有机地集成到FFmpeg的过程。这样,当FFmpeg接收到视频数据时,已经集成到FFmpeg的硬件编解码器就可以获取FFmpeg发送的视频数据,然后对该视频数据进行硬件编码处理,由于硬件编解码器的在进行视频编码时,主要消耗的是硬件编解码器内部的运算资源,由此降低了由于视频数据编码处理所造成的CPU运算资源消耗。
【附图说明】
[0027]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
[0028]图1为本发明实施例公开的一种嵌入式视频处理器的构建方法流程图;
[0029]图2为本发明实施例公开的一种嵌入式视频处理器结构示意图;
[0030]图3为本发明实施例公开的一种嵌入式视频处理系统结构示意图。
【具体实施方式】
[0031]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0032]本发明实施例公开了一种嵌入式视频处理器的构建方法,参见图1所示,该方法包括:
[0033]步骤SlOl:利用目标描述方式,对硬件编解码器进行重新定义,得到自定义的视频编解码器;其中,目标描述方式为,与FFmpeg对编解码器的描述相一致的描述方式。
[0034]具体的,上述利用目标描述方式,对硬件编解码器进行重新定义,得到自定义的视频编解码器的过程可以包括,利用目标描述方式,对VPU硬件编解码器(VPU,即VideoProcessing Unit,视频处理单元)进行重新定义,得到自定义的视频编解码器。
[0035]步骤S102:利用编码器注册工具,将自定义的视频编解码器注册到FFmpeg中,以得到嵌入式视频处理器;其中,将自定义的视频编解码器注册到FFmpeg中的过程包括,将自定义的视频编解码器添加到FFmpeg的视频编解码器链中。
[0036]具体的,上述利用编码器注册工具,将自定义的视频编解码器注册到FFmpeg中的过程可以包括,利用REGISTER_ENCDEC (X,x)函数,将自定义的视频编解码器注册到FFmpeg中,也即是将自定义的视频编解码器添加到FFmpeg的视频编解码器链中,从而完成了将硬件编解码器有机地集成到FFmpeg的过程。
[0037]本发明实施例中,通过对硬件编解码器进行重新定义,得到自定义的视频编解码器,使得该视频编解码器的描述方式与FFmpeg对编解码器的描述方式是相一致的,这为后续的将自定义的视频编解码器添加到FFmpeg的视频编解码器链中打下了关键的基础;然后利用编码器注册工具,将上述自定义的视频编解码器注册到FFmpeg中,也即将自定义的视频编解码器添加到FFmpeg的视频编解码器链中,由此完成了将硬件编解码器有机地集成到FFmpeg的过程。这样,当FFmpeg接收到视频数据时,已经集成到FFmpeg的硬件编解码器就可以获取FFmpeg发送的视频数据,然后对该视频数据进行硬件编码处理,由于硬件编解码器的在进行视频编码时,主要消耗的是硬件编解码器内部的运算资源,由此降低了由于视频数据编码处理所造成的CPU运算资源消耗。
[0038]本发明实施例还公开了一种嵌入式视频处理器,该处理器是通过上一实施例中的构建方法来进行构建的,应用于嵌入式视频处理系统,参见
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1