本发明涉及信息处理,具体地涉及一种基于嵌入式gpu级联的4k超高清直播方法及系统。
背景技术:
1、4k超高清直播是对1路或多路4k输入的画面进行特效处理、直播传输的一种技术。现有4k超高清直播,要么采用nvidia/amd等显卡处理4k图像,显示效果好,但价格高、设备体积大、功耗高,不易携带;要么采用单个嵌入式gpu,价格较显卡便宜,但效能不足,尤其无法完成多路4k图像的特效处理。针对上述问题,有必要设计一种基于嵌入式gpu级联的4k超高清直播方法及系统。
技术实现思路
1、本发明的目的在于克服现有技术存在的缺点,提出设计一种基于嵌入式gpu级联的4k超高清直播方法及系统,以解决现有4k超高清直播将所有的计算集中在单个gpu上,导致效能不足的问题。
2、本发明解决其技术问题所采取的技术方案是:
3、一种基于嵌入式gpu级联的4k超高清直播方法,包括以下步骤:
4、步骤1、hdmi/sdi视频采集模块获取4k超高清画面,cpu通过dma方式将其存储在共享显存中,同时cpu记录每一路视频的格式以及在共享显存的存储位置;
5、步骤2、cpu检测到一路视频采集完后,cpu将画面格式、在共享显存的存储位置以及待gpu1渲染的共享显存地址以渲染指令的方式通知到gpu1,gpu1根据渲染指令内容,将采集的画面转换成gpu数据,并将转换后的数据渲染到指定的共享显存中;
6、步骤3、cpu再将gpu1渲染后的一路或者多路共享显存地址以及待gpu2渲染的共享显存地址以渲染指令方式通知给gpu2,gpu2对gpu1渲染后的数据进行绿幕抠图、转场特效等渲染到gpu2指定的共享显存地址中;
7、步骤4、cpu将gpu2渲染后的共享显存数据,以指令集方式通知给gpu1,gpu1将rgba数据格式转换成yuv格式;
8、步骤5、cpu通知编码器对gpu1转换的yuv数据进行编码推流。
9、优选的,步骤2中,所述转换为yuv数据转换成rgba格式。
10、优选的,步骤5中,整个过程的时间控制在16ms以内,以保证4kp60的直播效能。
11、优选的,一种实现所述基于嵌入式gpu级联的4k超高清直播方法的系统,包括:hdmi/sdi视频采集模块、cpu模块、共享显存模块、gpu1模块、gpu2模块;hdmi/sdi视频采集模块与cpu模块连接,所述cpu模块通过系统内部数据总线与共享显存模块连接,所述gpu1模块和gpu2模块通过系统内部数据总线与共享显存模块连接。
12、优选的,hdmi/sdi视频采集模块,负责获取4k超高清信号数据;
13、cpu模块,负责数据调度、通知gpu1与gpu2渲染以及编码推流;
14、共享显存模块,负责存储采集的数据以及gpu1与gpu2渲染的数据;
15、gpu1模块,负责数据格式转换;
16、gpu2模块,负责特效渲染。
17、优选的,所述gpu1模块的数据格式转换包括视频数据转换成gpu数据,以及将gpu数据转换成待编码数据等。
18、优选的,所述gpu2模块的特效渲染包括绿幕抠图特效处理、转场特效处理等。
19、本发明的技术效果:
20、与现有技术相比,本发明解决了现有4k超高清直播将所有的计算集中在单个gpu上,导致效能不足的问题。本发明采用多嵌入式gpu协同处理的方式,使得系统效能可达4kp60,保持稳定的流畅度。此外,它还具有能耗低和便于携带的优点,同时价格相对较低,便于推广应用。
1.一种基于嵌入式gpu级联的4k超高清直播方法,其特征在于:包括以下步骤:
2.根据权利要求1所述的基于嵌入式gpu级联的4k超高清直播方法,其特征在于:步骤2中,所述转换为yuv数据转换成rgba格式。
3.根据权利要求1所述的基于嵌入式gpu级联的4k超高清直播方法,其特征在于:步骤5中,整个过程的时间控制在16ms以内。
4.一种用于实现如权利要求1或2或3的基于嵌入式gpu级联的4k超高清直播方法的系统,其特征在于:所述系统包括:hdmi/sdi视频采集模块、cpu模块、共享显存模块、gpu1模块、gpu2模块;hdmi/sdi视频采集模块与cpu模块连接,所述cpu模块通过系统内部数据总线与共享显存模块连接,所述gpu1模块和gpu2模块通过系统内部数据总线与共享显存模块连接。
5.根据权利要求4所述的系统,其特征在于:hdmi/sdi视频采集模块,负责获取4k超高清信号数据;
6.根据权利要求5所述的系统,其特征在于:所述gpu1模块的数据格式转换包括视频数据转换成gpu数据,以及将gpu数据转换成待编码数据。
7.根据权利要求5所述的系统,其特征在于:所述gpu2模块的特效渲染包括绿幕抠图特效处理、转场特效处理。