一种基于arm处理器的视频录播方法和装置与流程

文档序号:11292573阅读:358来源:国知局
一种基于arm处理器的视频录播方法和装置与流程

本发明涉及芯片电路领域,特别涉及一种基于arm处理器的视频录播方法和装置。



背景技术:

随着科技的发展和社会的进步,用户对观看视频的质量提出了更高的要求。目前,实现高清视频流数据的录播或导播主要通过以下两种意见架构来完成:一直是采用x86处理器与图像处理板卡相结合的架构,这种架构价格昂贵、功耗巨大;另一种是采用arm处理器与dsp处理器相结合的架构,这种架构设计较为复杂,且功能单一,无法满足适应市场需求。



技术实现要素:

为此,需要提供一种基于arm处理器的视频录播的技术方案,用以解决现有的实现高清视频流数据的录播或导播的硬件架构存在的成本高、功耗大、设计复杂、功能单一等问题。

为实现上述目的,发明人提供了一种基于arm处理器的视频录播装置,所述装置包括码流输入单元、vpu解码单元、图像合成单元、vpu编码单元和码流输出单元;所述码流输入单元和vpu解码单元连接,所述vpu解码单元和图像合成单元连接,所述图像合成单元和vpu编码单元连接,所述vpu编码单元和码流输出单元连接;

所述码流输入单元用于获取码流数据,所述码流数据包括单路码流数据或多路码流数据;

所述vpu解码单元用于将码流输入单元获取的码流数据解码为第一yuv数据;

所述图像合成单元用于根据预设配置信息将解码后的第一yuv数据重新合成为单路或多路的yuv数据,得到第二yuv数据;

所述vpu编码单元用于对第二yuv数据进行编码;

所述码流输出单元用于输出单路或多路编码后的码流数据。

进一步地,所述装置还包括存储单元,所述存储单元与码流输出单元连接,所述码流输出单元还用于将编码后的码流数据保存至所述存储单元。

进一步地,所述装置包括gpu处理单元,所述“vpu编码单元和码流输出单元连接”包括:所述vpu编码单元与gpu处理单元连接,所述gpu处理单元与和码流输出单元连接;

所述gpu处理单元用于接收vpu编码单元编码后的码流数据,并对编码后的码流数据进行第一处理,所述码流输出单元用于输出执行第一处理后的码流数据。

发明人还提供了一种基于arm处理器的视频录播方法,所述方法应用于基于arm处理器的视频录播装置,所述装置包括码流输入单元、vpu解码单元、图像合成单元、vpu编码单元和码流输出单元;所述码流输入单元和vpu解码单元连接,所述vpu解码单元和图像合成单元连接,所述图像合成单元和vpu编码单元连接,所述vpu编码单元和码流输出单元连接;所述方法包括以下步骤:

码流输入单元获取码流数据,所述码流数据包括单路码流数据或多路码流数据;

vpu解码单元将码流输入单元获取的码流数据解码为第一yuv数据;

图像合成单元根据预设配置信息将解码后的第一yuv数据重新合成为单路或多路的yuv数据,得到第二yuv数据;

vpu编码单元对第二yuv数据进行编码;

码流输出单元输出单路或多路编码后的码流数据。

进一步地,所述装置还包括存储单元,所述存储单元与码流输出单元连接,所述方法包括:

码流输出单元将编码后的码流数据保存至所述存储单元。

进一步地,所述装置包括gpu处理单元,所述“vpu编码单元和码流输出单元连接”包括:所述vpu编码单元与gpu处理单元连接,所述gpu处理单元与和码流输出单元连接;所述方法包括:

gpu处理单元接收vpu编码单元编码后的码流数据,并对编码后的码流数据进行第一处理,码流输出单元输出执行第一处理后的码流数据。

本发明提供了一种基于arm处理器的视频录播的方法和装置,所述方法包括以下步骤:码流输入单元获取码流数据,所述码流数据包括单路码流数据或多路码流数据;vpu解码单元将码流输入单元获取的码流数据解码为第一yuv数据;图像合成单元根据预设配置信息将解码后的第一yuv数据重新合成为单路或多路的yuv数据,得到第二yuv数据;vpu编码单元对第二yuv数据进行编码;码流输出单元输出单路或多路编码后的码流数据。本发明具有以下优点:将视频码流数据的接收、解码、合成、编码分别由不同的硬件进行处理,可以有效实现整个视频流数据的流水线处理,具有性能好、成本低、功耗小等特点。

附图说明

图1为本发明一实施方式涉及的基于arm处理器的视频录播的装置的示意图;

图2为本发明一实施方式涉及的基于arm处理器的视频录播的方法的示流程图;

附图标记说明:

101、码流输入单元;

102、vpu解码单元;

103、图像合成单元;

104、vpu编码单元;

105、gpu处理单元;

106、码流输出单元;

107、存储单元。

具体实施方式

为详细说明技术方案的技术内容、构造特征、所实现目的及效果,以下结合具体实施例并配合附图详予说明。

请参阅图1,为本发明一实施方式涉及的基于arm处理器的视频录播的装置的示意图。所述装置包括码流输入单元101、vpu解码单元102、图像合成单元103、vpu编码单元104和码流输出单元106;所述码流输入单元101和vpu解码单元102连接,所述vpu解码单元102和图像合成单元103,所述图像合成单元103和vpu编码单元104连接,所述vpu编码单元104和码流输出单元106连接;

所述码流输入单元101用于获取码流数据,所述码流数据包括单路码流数据或多路码流数据。在本实施方式中,所述码流数据为视频码流数据,包括多帧图像数据。

所述vpu解码单元102用于将码流输入单元获取的码流数据解码为第一yuv数据。码流数据在进行合成处理前,需要进行解码进行,具体是将视频码流数据解码为一帧一帧的图像数据。

所述图像合成单元103用于根据预设配置信息将解码后的第一yuv数据重新合成为单路或多路的yuv数据,得到第二yuv数据。在某些应用场景中,需要将多路码流数据合成为一路码流数据或者多路码流数据进行输出,例如对于各个监控摄像头传输的码流数据需要整合到同一个显示屏上进行显示,这就需要对码流数据进行重新合成。预设配置信息记录了第一码流数据与第二码流数据之间输出路数的对应关系,即接收某一路数(单路或两路以上)的第一yuv数据时,需要将其合成为对应路数的(单路或两路以上)第二yuv数据。

顾名思义,第一yuv数据和第二yuv数据为yuv格式的数据,yuv是被欧洲电视系统所采用的一种颜色编码方法(属于pal),是pal和secam模拟彩色电视制式采用的颜色空间。在现代彩色电视系统中,通常采用三管彩色摄影机或彩色ccd摄影机进行取像,然后把取得的彩色图像信号经分色、分别放大校正后得到rgb,再经过矩阵变换电路得到亮度信号y和两个色差信号b-y(即u)、r-y(即v),最后发送端将亮度和色差三个信号分别进行编码,用同一信道发送出去。这种色彩的表示方法就是所谓的yuv色彩空间表示。采用yuv色彩空间的重要性是它的亮度信号y和色度信号u、v是分离的。

所述vpu编码单元104用于对第二yuv数据进行编码。码流数据重新合成为yuv数据后,就需要对其进行重新编码。在本实施方式中,所述装置包括gpu处理单元105,所述“vpu编码单元和码流输出单元连接”包括:所述vpu编码单元104与gpu处理单元105连接,所述gpu处理单元105与和码流输出单元连接;所述gpu处理单元用于接收vpu编码单元编码后的码流数据,并对编码后的码流数据进行第一处理,所述码流输出单元用于输出执行第一处理后的码流数据。在某些实施例中,所述第一处理包括在输出码流中间插入广告或者字幕数据流。

所述码流输出单元106用于输出单路或多路编码后的码流数据。在本实施方式中,所述装置还包括存储单元,所述存储单元与码流输出单元连接,所述码流输出单元还用于将编码后的码流数据保存至所述存储单元。所述存储单元为具有数据存储功能的电子元件,将编码后的码流数据保存至存储单元中,当下次需要调用时就可以从所述存储单元提取编码后的码流数据,并通过码流输出单元传输至显示单元进行播放,进而实现视频数据的录播功能。

在某些实施例中,输入和输出的码流数据为高清码流数据,所述高清码流数据包括720p或1080p码流数据。配置信息可以依据实际带宽进行设置,例如高清码流数据为h264协议的1080p码流数据,所获取码流数据为4路码流数据,所述码流输出单元输出的码流数据为2路第二yuv数据,表示所述装置可以同步处理4路1080p码流数据;再比如高清码流数据为h264协议的720p码流数据,所获取码流数据为8路码流数据,所述码流输出单元输出的码流数据为2路第二yuv数据,表示所述装置可以同步处理8路720p码流数据。

请参阅图2,为本发明一实施方式涉及的基于arm处理器的视频录播的方法的示流程图。所述方法应用于基于arm处理器的视频录播装置,所述装置包括码流输入单元、vpu解码单元、图像合成单元、vpu编码单元和码流输出单元;所述码流输入单元和vpu解码单元连接,所述vpu解码单元和图像合成单元连接,所述图像合成单元和vpu编码单元连接,所述vpu编码单元和码流输出单元连接;所述方法包括以下步骤:

首先进入步骤s201码流输入单元获取码流数据。所述码流数据包括单路码流数据或多路码流数据。在本实施方式中,所述码流数据为视频码流数据,包括多帧图像数据。

而后进入步骤s202vpu解码单元将码流输入单元获取的码流数据解码为第一yuv数据。码流数据在进行合成处理前,需要进行解码进行,具体是将视频码流数据解码为一帧一帧的图像数据。

而后进入步骤s203图像合成单元根据预设配置信息将解码后的第一yuv数据重新合成为单路或多路的yuv数据,得到第二yuv数据。

而后进入步骤s204vpu编码单元对第二yuv数据进行编码。

而后进入步骤s205码流输出单元输出单路或多路编码后的码流数据。

在某些实施例中,所述装置还包括存储单元,所述存储单元与码流输出单元连接,所述方法包括:码流输出单元将编码后的码流数据保存至所述存储单元。所述存储单元为具有数据存储功能的电子元件,将编码后的码流数据保存至存储单元中,当下次需要调用时就可以从所述存储单元提取编码后的码流数据,并通过码流输出单元传输至显示单元进行播放,进而实现视频数据的录播功能。

在本实施方式中,所述装置包括gpu处理单元,所述“vpu编码单元和码流输出单元连接”包括:所述vpu编码单元与gpu处理单元连接,所述gpu处理单元与和码流输出单元连接;所述方法包括:gpu处理单元接收vpu编码单元编码后的码流数据,并对编码后的码流数据进行第一处理,码流输出单元输出执行第一处理后的码流数据。所述第一处理包括在输出码流中间插入广告或者字幕数据流。

本发明提供了一种基于arm处理器的视频录播的方法和装置,所述方法包括以下步骤:码流输入单元获取码流数据,所述码流数据包括单路码流数据或多路码流数据;vpu解码单元将码流输入单元获取的码流数据解码为第一yuv数据;图像合成单元根据预设配置信息将解码后的第一yuv数据重新合成为单路或多路的yuv数据,得到第二yuv数据;vpu编码单元对第二yuv数据进行编码;码流输出单元输出单路或多路编码后的码流数据。本发明具有以下优点:将视频码流数据的接收、解码、合成、编码分别由不同的硬件进行处理,可以有效实现整个视频流数据的流水线处理,具有性能好、成本低、功耗小等特点。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括……”或“包含……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的要素。此外,在本文中,“大于”、“小于”、“超过”等理解为不包括本数;“以上”、“以下”、“以内”等理解为包括本数。

本领域内的技术人员应明白,上述各实施例可提供为方法、装置、或计算机程序产品。这些实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。上述各实施例涉及的方法中的全部或部分步骤可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机设备可读取的存储介质中,用于执行上述各实施例方法所述的全部或部分步骤。所述计算机设备,包括但不限于:个人计算机、服务器、通用计算机、专用计算机、网络设备、嵌入式设备、可编程设备、智能移动终端、智能家居设备、穿戴式智能设备、车载智能设备等;所述的存储介质,包括但不限于:ram、rom、磁碟、磁带、光盘、闪存、u盘、移动硬盘、存储卡、记忆棒、网络服务器存储、网络云存储等。

上述各实施例是参照根据实施例所述的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到计算机设备的处理器以产生一个机器,使得通过计算机设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机设备以特定方式工作的计算机设备可读存储器中,使得存储在该计算机设备可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机设备上,使得在计算机设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已经对上述各实施例进行了描述,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改,所以以上所述仅为本发明的实施例,并非因此限制本发明的专利保护范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围之内。

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