一种超高分辨率视频播放方法及系统与流程

文档序号:18407505发布日期:2019-08-10 00:32阅读:466来源:国知局
一种超高分辨率视频播放方法及系统与流程

本发明属于图像显示处理技术领域,更具体地,涉及一种超高分辨率视频播放方法及系统。



背景技术:

随着电视机机显示领域的发展和人们对影音体验要求的不断提升,未来的显示产品会朝着更大尺寸和更高分辨率的方向发展,在同样的屏幕分辨率下随着尺寸的不断增大,像素点也随之增大,观看时清晰度随之变差。目前主流的显示屏分辨率为2k(1920*1080)和4k(3840*2160),随着显示屏尺寸不断增大,即便是4k分辨率的屏幕,一定距离观看时夜壶感到很强的颗粒感,影响观影体验,因此,8k(7680*4320)分辨率的显示屏是现有的发展方向。

为了支持8k视频的播放,需要提高显示器对8k视频解码能力;目前市场上能支持8k视频播放的方案有以下几种:(1)x86(cpu)加显卡(gpu)方案;(2)基于armsoc芯片的嵌入式设备方案;(3)基于fpgasoc芯片xilinxmpsoc的嵌入式设备方案;(4)gpu+soc芯片的nvidiajetson嵌入式设备方案;其中,第一种x86加显卡方案由于采用桌面级架构cpu+gpu,导致其价格成本高,体积大,功耗大;第二种基于armsoc芯片的嵌入式设备方案中,为了实现8k视频播放需要2片armsoc芯片,采用两片soc芯片不仅导致设备体积大、成本高,而且还需要额外的软件程序进行两片soc芯片在运行过程中的同步控制,软件复杂不易实现,功耗大;第三种采用xilinxmpsoc的嵌入式设备方案,目前可支持多个4k30fps硬解码;但是为了实现8k视频播放同样需要2片mpsoc芯片,采用两片mpsoc芯片不仅导致设备体积大、成本高,而且还需要额外的软件程序进行两片mpsoc芯片在运行过程中的同步控制,软件复杂不易实现,功耗大;第四种采用nvidiajetson嵌入式设备方案,目前可支持多个4k30fps硬解码;但是为了实现8k视频播放同样需要2片(jetson)芯片+fpga芯片,采用两片tx2芯片不仅导致设备体积大、成本高,而且还需要额外的软件程序进行两片tx2芯片在运行过程中的同步控制,软件复杂不易实现,功耗大。

综上所述,目前可支持8k视频播放的方案中基本上都需要两片armsoc芯片、mpsoc芯片或tx2芯片,这种采用两个芯片的方案不仅导致设备体积大、成本高、功耗大;而且需要额外的软件程序进行两个芯片在运行过程中的同步控制,软件复杂不易实现。



技术实现要素:

针对现有技术的至少一个缺陷或改进需求,本发明提供了一种超高分辨率视频播放方法及系统,其目的在于解决现有8k视频播放设备存在的设备体积大、成本高、功耗大、软件复杂不易实现的问题。

为实现上述目的,按照本发明的一个方面,提供了一种超高分辨率视频播放方法,包括以下步骤:

s1:将8k视频源平均裁剪为第一视频源和第二视频源;

s2:将所述第一视频源平均裁剪为第一一视频源和第一二视频源;

s3:对第一一视频源、第一二视频源进行并行硬件解码,得到第一路rgba视频流;对第二视频源进行软件解码,得到第二路rgba视频流;

s4:对所述第一路rgba视频流、第二路rgba视频流进行同步处理,将对齐后的第一路rgba视频流、第二路rgba视频流合成得到8krgba数据。

优选的,上述超高分辨率视频播放方法,其步骤s1包括以下子步骤:

s11:对8k视频源进行yuv解码,得到rgba视频数据;

s12:将所述rgba视频数据平均裁剪为两个rgba数据块,分别为每个rgba数据块中的每一帧数据添加帧序号,且两个rgba数据块采用相同的帧序号;

s13:分别对两个rgba数据块进行yuv编码,得到分辨率为3840×4320、帧率为30fps的第一视频源和第二视频源。

优选的,上述超高分辨率视频播放方法,其步骤s3包括以下子步骤:

s31:根据所述第一视频源、第二视频源的分辨率和像素深度对第一通道和第二通道进行配置;所述第一通道和第二通道的配置参数为分辨率3840×4320、像素深度32bpp;

s32:对分辨率为3840×2160、帧率为30fps的第一一视频源、第一二视频源进行并行硬件解码并通过所述第一通道进行播放,得到第一路rgba视频流;

s33:对第二视频源进行软件解码并通过所述第二通道进行播放,得到第二路rgba视频流。

优选的,上述超高分辨率视频播放方法,其步骤s4包括以下子步骤:

s41:同步接收所述第一路rgba视频流、第二路rgba视频流并将其分别写入两个存储区间内;

s42:依次从两个存储区间内提取帧序号相同的rgba视频数据并进行合并,得到8k30fpsrgba数据。

优选的,上述超高分辨率视频播放方法,其步骤s4之后还包括以下步骤:

s5:将所述8krgba数据通过第三通道输出到8k显示设备。

优选的,上述超高分辨率视频播放方法,其第一通道和第二通道为dp1.2接口;所述第三通道为dp1.4接口。

按照本发明的另一个方面,还提供了一种超高分辨率视频播放系统,包括第一视频处理器和第二视频处理器;

所述第一视频处理器用于将8k视频源转换为两路rgba视频流;该第一视频处理器包括第一裁剪单元、第二裁剪单元、硬件解码单元和软件解码单元;

所述第一裁剪单元用于将8k视频源平均裁剪为第一视频源和第二视频源;

所述第二裁剪单元用于将所述第一视频源平均裁剪为第一一视频源和第一二视频源;

所述硬件解码单元对第一一视频源、第一二视频源进行并行硬件解码,得到第一路rgba视频流;

所述软件解码单元用于对第二视频源进行软件解码,得到第二路rgba视频流。

所述第二视频处理器用于接受所述第一路rgba视频流、第二路rgba视频流并进行同步处理,将对齐后的第一路rgba视频流、第二路rgba视频流合成得到8krgba数据。

优选的,上述超高分辨率视频播放系统,其第二视频处理器包括数据接收单元和数据合并单元;

所述数据接收单元用于同步接收所述第一路rgba视频流、第二路rgba视频流并将其分别写入两个存储区间内;

所述数据合并单元用于依次从两个存储区间内提取帧序号相同的rgba视频数据并进行合并,得到8k30fpsrgba数据。

优选的,上述超高分辨率视频播放系统,其第一裁剪单元包括yuv解码模块、标记模块和yuv编码模块;

所述yuv解码模块用于对8k视频源进行yuv解码,得到rgba视频数据;

所述标记模块用于将所述rgba视频数据平均裁剪为两个rgba数据块,分别为每个rgba数据块中的每一帧数据添加帧序号且两个rgba数据块采用相同的帧序号;

所述yuv编码模块用于分别对两个rgba数据块进行yuv编码,得到分辨率为3840×4320、帧率为30fps的第一视频源和第二视频源。

优选的,上述超高分辨率视频播放系统,其第一视频处理器还包括配置单元;

所述配置单元用于根据所述第一视频源、第二视频源的分辨率和像素深度对第一通道和第二通道进行配置;所述第一通道和第二通道的配置参数为分辨率3840×4320、像素深度32bpp;

硬件解码单元对分辨率为3840×2160、帧率为30fps的第一一视频源、第一二视频源进行并行硬件解码并通过所述第一通道进行播放,得到第一路rgba视频流;

软件解码单元对第二视频源进行软件解码并通过所述第二通道进行播放,得到第二路rgba视频流。

优选的,上述超高分辨率视频播放系统,其第二视频处理器还包括数据输出单元;

所述数据输出单元用于将数据合并单元得到的8k30fpsrgba数据通过第三通道输出至8k显示设备。

优选的,上述超高分辨率视频播放系统,其第一通道和第二通道为dp1.2接口;所述第三通道为dp1.4接口。

总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:

(1)本发明提供的超高分辨率视频播放方法及系统,将8k视频源裁剪为第一视频源和第二视频源,分别对第一视频源进行硬解码播放、对第二视频源进行软解码播放;然后将两路视频源进行同步处理与合成处理后,即可实现8k视频播放;当单个处理芯片不能满足8k硬解码时,本方法不需要额外增加处理芯片来实现,设备成本低,体积小,功耗小,且软件易于实现;

(2)本发明提供的超高分辨率视频播放方法及系统,提出了一种全新8k(7680*4320)30fps视频解码播放方法,支持8k60fps的解码及8k30fps的解码视频播放,能极大节省成本,并最大化利用gpu和cpu性能。

附图说明

图1是本发明实施例提供的超高分辨率视频播放方法的流程图;

图2是本发明实施例提供的超高分辨率视频播放系统的逻辑框图;

图3是本发明实施例提供的第一裁剪单元的逻辑框图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。

图1是本实施例提供的超高分辨率视频播放方法的流程图;如图1所示,该超高分辨率视频播放方法包括以下步骤:

s1:将8k(分辨率7680×4320、帧率30fps)视频源平均裁剪为分辨率为3840×4320、帧率为30fps的第一视频源和第二视频源;具体包括以下子步骤:

s11:对8k视频源进行yuv420解码,得到rgba视频数据;

s12:将解码得到的rgba视频数据平均裁剪为左右两个rgba数据块,分别为每个rgba数据块中的每一帧数据添加帧序号,且两个rgba数据块采用相同的帧序号;由于第一视频源和第二视频源采用不同的播放方法,很难保持完全帧同步;因此在裁剪时为两个视频源加入帧序号进行标记,便于后续进行帧同步处理;

s13:分别对两个rgba数据块进行yuv420编码,得到分辨率为3840×4320、帧率为30fps的第一视频源和第二视频源。

s2:将分辨率为3840×4320、帧率为30fps的第一视频源平均裁剪为左上、左下两个分辨率为3840×2160、帧率为30fps的第一一视频源和第一二视频源;

s3:对第一一视频源、第一二视频源进行并行硬件解码,得到分辨率为3840×4320、帧率为30fps的第一路rgba视频流;

对第二视频源进行软件解码,得到分辨率为3840×4320、帧率为30fps的第二路rgba视频流;

具体包括以下子步骤:

s31:根据第一视频源、第二视频源的分辨率和像素深度对第一通道和第二通道进行配置;本实施例中,该第一通道和第二通道均为dp1.2接口,配置参数为分辨率3840×4320、像素深度32bpp;

s32:对分辨率为3840×2160、帧率为30fps的第一一视频源、第一二视频源进行并行硬件解码并通过第一通道进行播放,得到分辨率为3840×4320、帧率为30fps的第一路rgba视频流;

s33:对第二视频源进行软件解码并通过第二通道进行播放,得到分辨率为3840×4320、帧率为30fps的第二路rgba视频流。

s4:对分辨率为3840×4320、帧率为30fps的第一路rgba视频流、第二路rgba视频流进行同步处理,将对齐后的第一路rgba视频流、第二路rgba视频流合成得到分辨率为7680×4320、帧率为30fps的8krgba数据;具体包括以下子步骤:

s41:同步接收第一通道输出的第一路rgba视频流、第二通道输出的第二路rgba视频流并将其分别写入两个存储区间zone0、zone1内;本实施例中,两个存储区间zone0、zone1均被预先划分为16个帧数据块,每帧数据块用于存储一帧rgba视频数据;同步接收两路rgba视频流并按序分别存储在对应存储区间的16个帧数据块内;

s42:检测帧数据块内的rgba视频数据的帧序号,帧序号一致则代表为同步帧;依次从两个存储区间zone0、zone1的帧数据块内提取出帧序号相同的rgba视频数据,经过ip逻辑合成得到8k30fpsrgba数据。

s5:将8k30fps32bpprgba数据通过第三通道输出到8k显示设备;本实施例中,该第三通道均为dp1.4接口。

图2是本实施例提供的超高分辨率视频播放系统的逻辑框图,如图2所示,该超高分辨率视频播放系统包括第一视频处理器和第二视频处理器;

第一视频处理器用于将8k视频源转换为两路rgba视频流;本实施例中,第一视频处理器采用jetsontx2,jetsontx2具有双核心denver264-bitcpu和四核心a57complexcpu,其gpu的最大解码能力为4k60fps,cpu的最大解码能力为、3840×4320、30fps。

该第一视频处理器包括第一裁剪单元、第二裁剪单元、配置单元、硬件解码单元和软件解码单元;

其中,第一裁剪单元用于将分辨率7680×4320、帧率30fps的8k视频源平均裁剪为分辨率为3840×4320、帧率为30fps的第一视频源和第二视频源;

图3是本实施例提供的第一裁剪单元的逻辑框图;本实施例中,第一裁剪单元包括yuv解码模块、标记模块和yuv编码模块;

yuv解码模块用于对8k视频源进行yuv420解码,得到rgba视频数据;

标记模块用于将解码得到的rgba视频数据平均裁剪为左右两个rgba数据块,分别为每个rgba数据块中的每一帧数据添加帧序号且两个rgba数据块采用相同的帧序号;

yuv编码模块用于分别对两个rgba数据块进行yuv420编码,得到分辨率为3840×4320、帧率为30fps的第一视频源和第二视频源。

第二裁剪单元用于将分辨率为3840×4320、帧率为30fps的第一视频源平均裁剪为左上、左下两个分辨率为3840×2160、帧率为30fps的第一一视频源和第一二视频源;

配置单元用于根据第一视频源、第二视频源的分辨率和像素深度对第一视频处理器内部的第一通道和第二通道进行配置;本实施例中,该第一通道和第二通道均为dp1.2接口,配置单元将两个dp1.2通道驱动适配成标准linux系统framebuffer设备/dev/fb0,/dev/fb1;然后将framebuffer设备配置成宽3840、高4320、色彩深32bpp。

硬件解码单元对分辨率为3840×2160、帧率为30fps的第一一视频源、第一二视频源进行并行硬件解码并通过第一通道进行播放,得到分辨率为3840×4320、帧率为30fps的第一路rgba视频流;本实施例中,硬件解码单元为jetsontx2中gstreamer-1.0架构下的gst-lanuch工具内嵌的视频硬件解码器,采用omxh264dec(openmaxilh.264videodecoder)插件实现。

软件解码单元对第二视频源进行软件解码并通过第二通道进行播放,得到分辨率为3840×4320、帧率为30fps的第二路rgba视频流。

第二视频处理器用于接收分辨率为3840×4320、帧率为30fps的第一路rgba视频流、第二路rgba视频流并进行同步处理,将对齐后的第一路rgba视频流、第二路rgba视频流合成得到分辨率为7680×4320、帧率为30fps的8krgba数据;本实施例中,第二视频处理器采用alteraa10fpga芯片,该第二视频处理器包括数据接收单元、数据合并单元和数据输出单元;

数据接收单元用于同步接收第一通道输出的第一路rgba视频流、第二通道输出的第二路rgba视频流并将其分别写入两个存储区间zone0、zone1内;本实施例中,两个存储区间zone0、zone1均被预先划分为16个帧数据块,每帧数据块用于存储一帧rgba视频数据;同步接收两路rgba视频流并按序分别存储在对应存储区间的16个帧数据块内;

数据合并单元用于依次从两个存储区间zone0、zone1的帧数据块内提取出帧序号相同的rgba视频数据,经过ip逻辑合成得到8k30fpsrgba数据;

数据输出单元用于将数据合并单元得到的8k30fpsrgba数据通过第三通道输出至8k显示设备;本实施例中,该第三通道均为dp1.4接口,alteraa10fpga芯片通过内部的dp1.4接口将得到的8k30fpsrgba数据输出到8k显示屏,实现8k(7680*4320)30fps视频解码播放。

需要说明的是,本实施例提供的超高分辨率视频播放系统同样可应用于其他分辨率,如4k分辨率视频的播放;当用于对4k视频进行播放时,第一视频处理器中的第一裁剪单元将分辨率3840×2160、帧率30fps或6030fps的4k视频源平均裁剪为分辨率为1920×2160、帧率为30fps的第一视频源和第二视频源;

其中,第一裁剪单元中的yuv解码模块对4k视频源进行yuv420解码,得到rgba视频数据;标记模块将解码得到的rgba视频数据平均裁剪为左右两个rgba数据块,分别为每个rgba数据块中的每一帧数据添加帧序号且两个rgba数据块采用相同的帧序号;yuv编码模块分别对两个rgba数据块进行yuv420编码,得到分辨率为1920×2160、帧率为30fps的第一视频源和第二视频源。

配置单元根据第一视频源、第二视频源的分辨率和像素深度对第一视频处理器内部的第一通道和第二通道进行配置;本实施例中,该第一通道和第二通道均为dp1.2接口,配置单元将两个dp1.2通道驱动适配成标准linux系统framebuffer设备/dev/fb0,/dev/fb1;然后将framebuffer设备配置成宽1920、高2160、色彩深32bpp。

硬件解码单元对分辨率为1920×2160、帧率为30fps的第一视频源进行硬件解码并通过第一通道进行播放,得到分辨率为1920×2160、帧率为30fps的第一路rgba视频流;

软件解码单元对分辨率为1920×2160、帧率为30fps的第二视频源进行软件解码并通过第二通道进行播放,得到分辨率为1920×2160、帧率为30fps的第二路rgba视频流。

第二视频处理器接收分辨率为1920×2160、帧率为30fps的第一路rgba视频流、第二路rgba视频流并进行同步处理,将对齐后的第一路rgba视频流、第二路rgba视频流合成得到分辨率为3840×2160、帧率为30fps的8krgba数据;

另外,由于本实施例中采用的硬件解码单元为jetsontx2中gstreamer-1.0架构下的gst-lanuch工具内嵌的视频硬件解码器,其解码性能可以达到4k分辨率、60帧率,因此也可以单独通过硬件解码单元对分辨率3840×2160、帧率30fps或6030fps的4k视频源进行硬件解码并播放,得到分辨率为3840×2160、帧率为30fps的4krgba视频流;第二视频处理器接收该4krgba视频流并通过第三通道输出至4k显示设备,从而实现4k视频播放;第三通道可采用dp1.2接口、dp1.4接口,优选采用兼容4k、8k的dp1.4接口。

相比于现有的8k视频播放方案,本发明提供的超高分辨率视频播放方法及系统,将8k视频源裁剪为第一视频源和第二视频源,分别对第一视频源进行硬解码播放、对第二视频源进行软解码播放;然后将两路视频源进行同步处理与合成处理后,即可实现8k视频播放;当单个处理芯片不能满足8k硬解码时,本方法不需要额外增加处理芯片来实现,设备成本低,体积小,功耗小,且软件易于实现;能极大节省成本,并最大化利用gpu和cpu性能。

本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

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