[發明專利]一種基于GPU的完全硬件轉碼的方法和系統有效
| 申請號: | 201510621107.2 | 申請日: | 2015-09-25 |
| 公開(公告)號: | CN105228000B | 公開(公告)日: | 2018-10-30 |
| 發明(設計)人: | 洪珂;白永光;王榮祥 | 申請(專利權)人: | 網宿科技股份有限公司 |
| 主分類號: | H04N21/4402 | 分類號: | H04N21/4402 |
| 代理公司: | 上海專利商標事務所有限公司 31100 | 代理人: | 顧嘉運 |
| 地址: | 200030 上海市徐匯區*** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 gpu 完全 硬件 方法 系統 | ||
本申請涉及一種基于GPU的完全硬件轉碼的方法和系統。具體而言,本申請的方法和系統是在原本NVENC的基礎上,借助OPENCV封裝的CUVID進行硬件解碼,然后在顯存里使用新開發的轉碼邏輯進行轉碼計算,最后使用NVENC的編碼器進行編碼,從而實現完整的純GPU硬件轉碼過程。
技術領域
本專利涉及到流媒體視頻轉碼技術,尤其是針對一種基于GPU的對具有H.264、MPEG-2編碼格式的視頻數據進行完全硬件轉碼生成H.264編碼格式的視頻以減少CPU占用率的方法和系統。
背景技術
2007年,NVIDIA公司推出了CUDA(Compute Unified Device Architecture)框架以及CUDA C語言,將傳統的GPU通用計算(GPGPU)推向一個新的高峰。傳統的GPU通用計算是通過“欺騙”GPU與顯存的渲染過程,來借助顯卡的強大并行處理矩陣型數據的能力達到通用計算的目的。這一過程既不直觀,也很費力,很難得到較好的推廣。而CUDA框架的出現,使GPGPU編程變得類似普通高級語言編程,使開發者可以便利使用GPU的強大并行運算能力。具體而言,CUDA框架是一個新的基礎架構,這個架構可以使用GPU來解決商業、工業以及科學方面的復雜計算問題。它是一個完整的GPGPU解決方案,提供了硬件的直接訪問接口,而不必像傳統方式一樣必須依賴圖形API接口來實現GPU的訪問。在架構上采用了一種全新的計算體系結構來使用GPU提供的硬件資源,從而給大規模的數據計算應用提供了一種比CPU更加強大的計算能力。CUDA C采用C語言作為編程語言提供大量的高性能計算指令開發能力,使開發者能夠在GPU的強大計算能力的基礎上建立起一種效率更高的密集數據計算解決方案。
GPU極為擅長處理大型矩陣型或類矩陣型數據的整體變換或計算,在當時,借助GPU的計算能力可以達到CPU效率的數倍甚至數十倍。盡管在現在隨著CPU的進一步發展,GPU的壓倒性優勢有所衰減,但其強大依然不容小視。
而視頻轉碼技術是指將已經壓縮編碼的視頻碼流轉換成另一個視頻碼流,以適應不同的網絡帶寬、不同的終端處理能力和不同的用戶需求。隨著互聯網技術的發展,越來越多的視頻被廣泛傳播到各種播放設備上,例如個人計算機、筆記本、電視機、MP4播放器、平板和手機等等。這些設備通常安裝了各種不同的操作系統或播放軟硬件,分別支持不同格式的視頻流。這就很容易導致用戶所獲得的視頻的格式可能并不能直接被其持有的播放設備所支持。而隨著技術的進步,各種新的視頻編碼技術被不斷推出,這也導致老的設備可能并不支持最新的視頻格式。因此,為了解決上述問題,視頻轉碼技術正變得日益重要。所述視頻轉碼技術本質上是一個先對原始格式的視頻進行解碼,隨后將其轉碼成所需的格式,再以新的視頻編碼標準對其進行編碼的過程。對于高效的視頻文件轉碼需求,視頻文件的每一幀都是一幅圖像,而圖像是完美的矩陣型數據,因此,借助GPGPU進行GPU硬件視頻轉碼,從而在效率上超越傳統的純CPU視頻轉碼就成了一個很自然的思路。
NVIDIA伴隨著CUDA,也發布了視頻的解碼與編碼工具開發包,解碼工具為NVCUVID(簡稱CUVID),編碼工具為NVENC。乍看之下,CUVID+NVENC已經可以完成GPU視頻轉碼,而且新版本的FFMPEG中已經增加了對NVENC的支持,但經代碼分析和運行測試,可以發現:NVENC包含轉碼計算(包含轉碼率計算)和編碼器兩個部分,其中轉碼部分的計算依舊在CPU里完成,并非真正的純GPU硬件轉碼——FFMPEG也是如此。另一個常見的商業轉碼軟件WOWZA也不是純GPU硬件轉碼,它們都采用了“GPU解碼,取回內存,CPU轉碼,推送顯存,GPU編碼”的方式,這一方式對CPU和內存資源消耗依舊很大,同時,在轉碼過程中,數據在內存和顯存之間的來回過程消耗了大量的系統時間,而且轉碼計算并沒有充分利用GPU的計算能力。因此,現有的NVENC和應用NVENC的諸如FFMPEG、WOWZA之類的轉碼軟件均不是嚴格意義上的完全基于GPU的硬件轉碼。
因此,為了提高視頻轉碼效率,存在期望能夠提供一種基于GPU的完全硬件轉碼的方法和系統的需求。
發明內容
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于網宿科技股份有限公司,未經網宿科技股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201510621107.2/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:顯示設備及其控制方法
- 下一篇:遙控器按鍵分配方法和裝置





