本發(fā)明涉及一種直播系統(tǒng),特別是涉及一種游戲直播系統(tǒng)及方法。
背景技術:
現(xiàn)有的網(wǎng)絡直播,包括娛樂平臺直播、公開課直播、游戲直播等等,圖1為現(xiàn)有直播系統(tǒng)架構圖,如圖1所示,現(xiàn)有的直播系統(tǒng)的直播(如教育直播平臺、娛樂直播平臺),都是直播端101將攝像頭采集或者屏幕錄制的圖形圖像經(jīng)過編碼壓縮后,將圖形圖像發(fā)送到云端服務器102,云端服務器102將圖形圖像進行加速,分發(fā)到客戶端103,共用戶觀看。
上述直播模式用于游戲直播或vr直播時,雖然觀眾可以調(diào)整自己喜歡的直播視角,但是這種方式是針對單個游戲或單個場景,而且是在游戲開發(fā)的時候就決定了有無該直播功能,不能實用和推廣到廣大第三方游戲中去,更不能實現(xiàn)3d、非3d、全景非全景的自由切換。
技術實現(xiàn)要素:
為了解決現(xiàn)有技術存在的不足,本發(fā)明的目的在于提供一種云端加速渲染集群全景游戲直播系統(tǒng)及方法,把要渲染的圖形圖像原始數(shù)據(jù)發(fā)送到云端,由云端重新渲染出更生動逼真的畫面。
為實現(xiàn)上述目的,本發(fā)明提供的一種云端加速渲染集群全景游戲直播系統(tǒng),包括,數(shù)據(jù)采集端、云端圖形加速服務器,以及客戶端,其中,
所述數(shù)據(jù)采集端,其采集手機直播平臺或pc直播平臺的實時游戲圖形數(shù)據(jù),并將圖形圖像原始數(shù)據(jù)發(fā)送到所述云端圖形加速服務器;
所述云端圖形加速服務器,其對所述圖形圖像原始數(shù)據(jù)進行異步集群渲染并保存;
所述客戶端,其與所述云端圖形加速服務器進行連接,觀看直播、回放或延時播放。
進一步地,所述數(shù)據(jù)采集端,進一步包括,游戲?qū)崟r采集分發(fā)引擎、手機直播平臺和pc直播平臺,
所述實時采集分發(fā)引擎,其采集所述手機直播平臺或pc直播平臺運行的游戲圖形數(shù)據(jù)和圖形api運行流暢和業(yè)務邏輯,將游戲圖形圖像原始數(shù)據(jù)經(jīng)編碼后發(fā)送給所述云端圖形加速服務器。
進一步地,所述實時采集分發(fā)引擎進一步包括,實現(xiàn)游戲原始圖形數(shù)據(jù)和圖形api運行流暢和業(yè)務邏輯采集的原始數(shù)據(jù)采集模塊,以及對游戲原始圖形數(shù)據(jù)、圖形api運行流暢和業(yè)務邏輯進行編碼的編碼模塊。
更進一步地,所述云端圖形加速服務器,進一步包括,數(shù)據(jù)收集模塊、渲染引擎和編碼分發(fā)模塊,其中,
所述數(shù)據(jù)收集模塊,其接收所述數(shù)據(jù)采集端發(fā)送的圖形圖像原始數(shù)據(jù),并將其發(fā)送給渲染引擎;
所述渲染引擎,對所述圖形圖像原始數(shù)據(jù)進行異步集群渲染,將其渲染為全景全視角的視頻圖片;
所述編碼分發(fā)模塊,其將經(jīng)過渲染后的圖形圖像原始數(shù)據(jù)進行編碼并儲存到本地。
為實現(xiàn)上述目的,本發(fā)明提供的云端加速渲染集群全景游戲直播方法,包括以下步驟:
1)采集手機直播平臺或pc直播平臺的實時游戲圖形數(shù)據(jù),并將圖形圖像原始數(shù)據(jù)發(fā)送到云端圖形加速服務器;
2)所述云端圖形加速服務器對所述圖形圖像原始數(shù)據(jù)進行異步集群渲染,形成全景視頻并保存;
3)客戶端連接所述云端圖形加速服務器,接收并觀看全景視頻的直播、回放或延播。
進一步地,所述步驟1)進一步包括,由圖形圖像數(shù)據(jù)采集引擎采集手機直播平臺或pc直播平臺的實時游戲圖形數(shù)據(jù),形成圖形圖像原始數(shù)據(jù);編碼模塊對所述圖形圖像原始數(shù)據(jù)進行編碼、壓縮后發(fā)送給云端圖形加速服務器。
更進一步地,所述步驟2)進一步包括,所述云端圖形加速服務器的渲染引擎,根據(jù)圖形圖像原始數(shù)據(jù),推斷出采集端的業(yè)務邏輯,調(diào)用本地的圖形加速卡異步渲染數(shù)據(jù),根據(jù)游戲場景的變換對所述圖形圖像原始數(shù)據(jù)進行異步集群渲染,將其渲染為全景全視角的視頻圖片,編碼后保存。
本發(fā)明的云端加速渲染集群全景游戲直播系統(tǒng)及方法,與現(xiàn)有技術相比,具有如下技術效果:
針對第三方閉源游戲直播,無全景多視角個人可隨意調(diào)節(jié),互不影響其他用戶視角的通用直播。
針對第三方游戲直播者的游戲界面,不是簡單的屏幕錄制或者攝像頭采集、而是把要渲染的圖形圖像最原始的數(shù)據(jù)發(fā)送到云端應用更強的圖形加速卡(如:gpu\fpga、dsp集群)重新渲染出更生動逼真的畫面。
針對第三方游戲異步渲染來加速,增加游戲直播的流暢、清晰度,來減少對本地收看者的個人設備配置的硬性需求,來增加用戶的個人的友好體驗。
針對發(fā)布直播者個人硬件的配置不同,直播的質(zhì)量的差異化利用云端圖形渲染集群來保障和解決體驗不統(tǒng)一。
本發(fā)明的其它特征和優(yōu)點將在隨后的說明書中闡述,并且,部分地從說明書中變得顯而易見,或者通過實施本發(fā)明而了解。
附圖說明
附圖用來提供對本發(fā)明的進一步理解,并且構成說明書的一部分,并與本發(fā)明的實施例一起,用于解釋本發(fā)明,并不構成對本發(fā)明的限制。在附圖中:
圖1為現(xiàn)有直播系統(tǒng)架構圖;
圖2為根據(jù)本發(fā)明的云端加速渲染集群全景游戲直播系統(tǒng)架構圖;
圖3根據(jù)本發(fā)明的云端加速渲染集群全景游戲直播方法流程圖。
具體實施方式
以下結合附圖對本發(fā)明的優(yōu)選實施例進行說明,應當理解,此處所描述的優(yōu)選實施例僅用于說明和解釋本發(fā)明,并不用于限定本發(fā)明。
圖2為根據(jù)本發(fā)明的云端加速渲染集群全景游戲直播系統(tǒng)架構圖,如圖2所示,本發(fā)明的云端加速渲染集群全景游戲直播系統(tǒng),包括,數(shù)據(jù)采集端200、云端圖形加速服務器300,以及客戶端400,其中,
數(shù)據(jù)采集端200,實現(xiàn)本地游戲直播內(nèi)容的實時采集,并將采集的實時游戲圖形數(shù)據(jù)發(fā)送到的云端圖形加速服務器300。
數(shù)據(jù)采集端200,進一步包括,游戲?qū)崟r采集分發(fā)引擎201、手機直播平臺202和pc直播平臺203,圖形圖像數(shù)據(jù)采集引擎201采集手機直播平臺202或pc直播平臺203的實時游戲圖形數(shù)據(jù),其通過opengl\vulkan\directx3d圖形硬件api,實現(xiàn)采集直播者運行的游戲模型數(shù)據(jù)、以及游戲運行時圖形api運行時進程上下文業(yè)務邏輯,并把采集到的原始數(shù)據(jù)發(fā)送到云端圖形加速服務器300。其中,圖形圖像數(shù)據(jù)采集引擎201的原始數(shù)據(jù)采集模塊211實現(xiàn)游戲原始圖形數(shù)據(jù)和圖形api運行流暢和業(yè)務邏輯的采集、編碼模塊212將游戲原始圖形數(shù)據(jù)和圖形api運行流暢和業(yè)務邏輯進行編碼、壓縮后發(fā)送到云端圖形加速服務器300。
云端圖形加速服務器300,其實現(xiàn)云端遠程gpu\fpga集群異構渲染引擎,把收到需要加速的內(nèi)容渲染為全景視頻,完成視頻的渲染編碼,儲存到服務端,等待收看者的請求然后分發(fā)視頻到客戶端400。
云端圖形加速服務器300接收到采集的圖形圖像原始數(shù)據(jù),并推斷出采集端的業(yè)務邏輯,調(diào)用本地的圖形加速卡異步渲染數(shù)據(jù),根據(jù)游戲的各個場景可以變換把數(shù)據(jù)以最高的分辨率、較高圖形圖像質(zhì)量渲染為全景全視角的視頻圖片,然后以及h264/h265編碼儲存到本地。然后根據(jù)客戶端400的請求,例如不同分辨率、不同時間段、然后分發(fā)不同的視頻資源。
云端圖形加速服務器300,進一步包括,數(shù)據(jù)收集模塊301、渲染引擎302和編碼分發(fā)模塊303,其中,數(shù)據(jù)收集模塊301用于接收數(shù)據(jù)采集端200發(fā)送的圖形圖像原始數(shù)據(jù),并將該圖形圖像原始數(shù)據(jù)發(fā)送給渲染引擎302;渲染引擎302根據(jù)收到的游戲等應用的模型數(shù)據(jù)和程序運行時進程上下文業(yè)務邏輯,根據(jù)收到的數(shù)據(jù)并推斷出采集端的業(yè)務邏輯,調(diào)用本地的圖形加速卡異步集群渲染環(huán)境渲染遠程的模型數(shù)據(jù),根據(jù)游戲的各個場景可以變換把數(shù)據(jù)以較高的分辨率、較高圖形圖像質(zhì)量離屏或?qū)崟r渲染為全景全視角的視頻流(其中視頻格式包含3d左右、或上下格式),然后編碼分發(fā)模塊303以h264/h265編碼格式進行編碼并儲存到本地;編碼分發(fā)模塊303根據(jù)客戶端400的請求,分發(fā)儲存在本地的不同的全景視頻資源。
客戶端400,其包括pc客戶端401和手機客戶端402,實現(xiàn)全景播放器,接收服務端的推送的視頻流文件,在本地實現(xiàn)vr和普通視頻的隨意切換和視角的隨意選擇。
客戶端像本地、網(wǎng)絡播放器一樣,列出現(xiàn)在正在直播的視頻,已經(jīng)發(fā)出即將直播視頻的預告,當用戶選擇了進入正在直播的視頻時,建立云端和客戶端的鏈接,然后觀看直播;用戶還可以選擇已經(jīng)直播過的視頻,進行回放,或者已經(jīng)播放一段時間的直播,選擇快進或快退進行延時觀看。還可以選擇以自己喜歡的視角觀看游戲直播者玩游戲,以及實現(xiàn)3d、非3d、全景非全景的自由切換。
圖3根據(jù)本發(fā)明的云端加速渲染集群全景游戲直播方法流程圖,下面將參考圖3,對本發(fā)明的云端加速渲染集群全景游戲直播方法進行詳細描述。
首先,在步驟301,原始數(shù)據(jù)采集模塊采集手機直播平臺202或pc直播平臺203的實時游戲圖形數(shù)據(jù),并通過opengl\vulkan\directx3d圖形硬件api,實現(xiàn)游戲?qū)崟r采集分發(fā)引擎采集直播者運行的游戲圖形數(shù)據(jù)(定點、紋理)和圖形api運行流暢和業(yè)務邏輯;采集到的游戲圖形圖像原始數(shù)據(jù)經(jīng)過編碼模塊212分發(fā)送到云端圖形加速服務器300。
在步驟302,數(shù)據(jù)收集模塊301接收數(shù)據(jù)采集端200發(fā)送的游戲圖形圖像原始數(shù)據(jù),并將該游戲圖形圖像原始數(shù)據(jù)發(fā)送給渲染引擎302;渲染引擎302根據(jù)收到的游戲圖形圖像原始數(shù)據(jù),并推斷出采集端的業(yè)務邏輯,調(diào)用本地的圖形加速卡異步集群渲染數(shù)據(jù),根據(jù)游戲的各個場景可以變換把數(shù)據(jù)以最高的分辨率、較高圖形圖像質(zhì)量渲染為全景全視角的視頻圖片;然后編碼分發(fā)模塊303以h264/h265編碼格式進行編碼并儲存到本地。
在步驟302,pc客戶端401或手機客戶端402,連接云端圖形加速服務器300,接收云端圖形加速服務器300推送的視頻流文件,在本地實現(xiàn)vr和普通視頻的隨意切換和視角的隨意選擇。
本發(fā)明的云端加速渲染集群全景游戲直播系統(tǒng)及方法,通過云端圖形加速服務器300對數(shù)據(jù)采集端200采集的游戲?qū)崟r游戲圖形數(shù)據(jù)進行異步集群渲染并保存到云端圖形加速服務器300中供客戶端400進行觀看直播,用戶選擇進入正在直播的視頻時,建立云端圖形加速服務器300和客戶端400的鏈接,然后觀看直播、回放或延時播放,還可以選擇以自己喜歡的視角觀看游戲直播者玩游戲,以及實現(xiàn)3d、非3d、全景非全景的自由切換。
本領域普通技術人員可以理解:以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,盡管參照前述實施例對本發(fā)明進行了詳細的說明,對于本領域的技術人員來說,其依然可以對前述各實施例記載的技術方案進行修改,或者對其中部分技術特征進行等同替換。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內(nèi)。