案例介紹
火山引擎通過與 NVIDIA 團隊合作開發了 BMF(Babit Media Framework,多媒體處理框架),提供了豐富的 GPU 即用模塊,低門檻的擴展方式,多語言接口以及各類主流框架 SDK 的簡單接入,方便用戶快速打造高效的全 GPU 視頻處理流水線,有效解決開發效率低,鏈路缺乏整體優化的問題,使得 GPU 能夠充分發揮其強大的并行計算能力,應用于各類視頻 AI 場景。視頻成為企業數字化增長新動力
在當今人們的生活中,視頻化場景已經滲透到了方方面面。QuestMobile 數據顯示,截止到 2023 年 5 月,中國移動視頻行業整體用戶規模達到 10.76 億,月人均時長達到 64.2 小時[1]。在艾瑞研究院報告的數據中也顯示,目前中國用戶量排名前 100 的 APP 中,有 69% 搭載了視頻類功能,65% 搭載了點播功能,51% 有直播類功能,32% 有實時音視頻類功能[2]。視頻應用正在從內容、娛樂行業拓展至泛互聯網和大量傳統行業。
2016 年抖音上線,同年全民直播和短視頻時代正式開啟。2018 年,業界已經廣泛地使用 AI 進行內容理解,視頻增強。2019 年則是云游戲的元年,這一年,低延遲成為業務關注焦點。進入 2021 年,市面上已經有大量的基于 AI 的視頻增強,特效貼紙,AI 視頻編輯的產品出現。如今,以 Stable Diffusion 和大語言模型(LLM) 掀起的生成式 AI 浪潮,正席卷整個行業進入另一個全新時代。GPU 不斷增強的計算能力和視頻圖像處理能力,正好和業界的發展完全契合。與圖文內容相比,企業自建視頻應用對技術積累和資金成本要求較高。為此,火山引擎與 NVIDIA 團隊合作,開源了 BMF(Babit Media Framework)多媒體處理框架。該框架是視頻化部署的“底座”,可為企業提供從視頻生產到消費的全鏈路場景支持,并能協助幫助開發者低成本構建視頻應用。
從 GPU 加速圖像處理,
到 GPU 上部署生成式 AI 業務
NVIDIA 自 1999 年發明 GPU 驅動了 PC 游戲市場的增長,并重新定義了現代計算機圖形,開啟了現代 AI 時代。2012 年,NVIDIA 在 Kepler 架構上添加了硬件視頻編解碼器,能更好地支持視頻串流和直播,也就是現在云游戲和游戲直播的原型。到了 2016 年,以卷積神經網絡為代表的深度學習技術為整個圖像處理和計算機視覺領域帶來革命,NVIDIA 也順勢推出了用于模型推理的 TensorRT,加速深度學習圖像處理。2019 年,為了配合深度學習的發展,NVIDIA 發布了 nvJPEG,使得 GPU 可以進行圖片編解碼。2022 年,NVIDIA 和字節跳動聯合開源了 CV-CUDA,把加速進一步推進到前后處理。
圖 1. GPU 加速圖像處理發展歷程
但是從圖像處理到視頻內容生成,并非一蹴而就。
理想情況下,我們以 ControlNet 為例,它可以配合 Stable Diffusion 進行更精細的文生圖。如果單純向 Stable Diffusion 提供 cute dog 作為 prompt,Stable Diffusion 會生成形態各異的小狗。但是如果用戶想要某一個特定姿勢的小狗圖片,就需要用更加精細的方式控制生成過程。ControlNet 就可以做到這一點。以下圖為例,使用 Canny edge detector 生成輸入圖片的輪廓圖,檢測出的輪廓會和 prompt 一起被輸入 ControlNet 和 Stable Diffusion,即可生成姿勢樣貌相同,但其他細節不同的可愛小狗了。實際上,在其他場景下我們也可以將 Canny edge detector 替換成其他的傳統圖像處理或者 AI 算法,比如使用 pose detector 提取人體姿勢。類似的技術還可用于文生圖、圖生圖、image inpainting 等。
圖 2. ControlNet + Stable Diffusion
部署這樣一個業務具體涉及到哪些模塊和環節呢?首先,需要圖片和視頻的編解碼,模型的推理(ControlNet/Stable Diffusion),還有前后處理(Canny edge detector)。GPU 有編解碼器,可以運行 TensorRT 和 CV-CUDA,能夠將這些模塊一一加速。理想情況下,開發者應當充分利用 GPU 各種的硬件單元,減少 GPU 和 CPU 之間的拷貝,讓視頻和圖片存留在 GPU;如果涉及跨界點通信,如將處理前后的視頻在網絡和 GPU 之間傳輸,還需要結合 GPU Direct RDMA,簡化通信鏈路,大幅降低延遲、提升吞吐。并且開發過程遵循阿姆達爾定律(Amdahl's law),將盡可能多的環節加速,整體的性能才能最優。
但實際上,火山引擎視頻團隊遇到了不同模塊之間通信不暢,整體性能不高等諸多問題。本質上是因為視頻處理變得越來越復雜,環節越來越多。2000 年 FFmpeg 剛出現的時候,需要面對的編解碼需求是非常簡單的,單機、個人用戶、簡單處理、容錯要求低、用戶耐心強。但是用戶對于視頻處理的要求已經今非昔比,算法和應用的復雜度越來越高,用戶體驗要求也越來越高。以前用戶在電腦前長時間等待編解碼完成的耐心,已經被短視頻的秒級延遲,甚至 VR/AR、云游戲這樣的毫秒級延遲所取代。視頻處理涉及的技術棧也越來越多,包括編解碼、圖像處理、深度學習甚至圖像渲染。
NVIDIA 加速火山引擎為視頻云
提供更理想的處理框架:BMF
面對這些挑戰,NVIDIA 和火山引擎緊密合作開發了 BMF,旨在幫助企業和開發者將各類視頻的原子能力與方案做到優勢互補、協同工作和快速落地。多媒體處理框架 BMF 的整體架構分為應用層、框架層、模塊層和異構層,共 4 個部分:
-
應用層:即頂層,為用戶提供多語言的 API,包括 Python、Go、C++,方便用戶根據不同的項目需求進行開發集成。
-
框架層:即中間層,包括框架對 graph / pipeline 的調度、跨數據類型跨設備的數據流轉 ackend、以及常用的跨設備 reformat、color space conversion、tensor 算子等 SDK。
-
模塊層:包含了具備各種原子能力的模塊,提供多種語言的模塊開發機制,用戶可根據自身需要將算法/處理實現為 Python、Go、C++ 語言的任意一種。
圖 3. BMF 架構圖(綠色高亮表示支持 GPU 加速)
火山引擎通過與 NVIDIA 團隊深入合作,針對 GPU 相關的框架層能力、處理能力進行了深度優化,從框架層和模塊層對 BMF 都進行了深入改造,針對各種場景進行了開發和測試,并且貢獻了多種應用層示例。BMF 提供了豐富的 GPU 即用模塊,低門檻的擴展方式,多語言接口以及各類主流框架 SDK 的簡單接入,方便用戶快速打造高效的全 GPU 視頻處理流水線,有效解決前文所述的開發效率低,鏈路缺乏整體優化的問題。這一系列的工作,使得 GPU 能夠充分發揮其強大的并行計算能力,應用于各類視頻 AI 場景。
比如在大型活動直播、電商直播間等場景中,通過“極致超清”技術,能夠有效提升畫質體驗;針對不同損傷情況的經典影片,通過“AI 修復”技術,能夠對損傷后的影片進行全面的畫質提升;在 VR/AR 等復雜圖像場景中,通過“ VR 360° 全景圖像技術”幫助圖像實現更加高清的效果。
火山引擎總裁譚待表示:“在營銷、空間、商業和知識的交互體驗都在發生變化的視頻化時代,視頻云技術因其從視頻生產,處理、傳輸至消費的全鏈路技術能力被賦予了重要使命。隨著 AIGC、XR 等技術的興起,新技術與視頻云的融合將帶來更多創新和價值。”
字節跳動視頻架構負責人、火山引擎視頻云架構技術總監王悅表示:“BMF 框架是基于抖音多年實踐打磨出來的,火山引擎又攜手 NVIDIA 針對 GPU 相關能力進行了深度優化,使其能夠發揮更強大的并行計算能力。“
目前,BMF 已經全面開源,包含 BMF 框架層整體開源、9 個開箱即用案例、20+ API 調用范例,旨在幫助開發者低成本地構建視頻應用。
歡迎訪問BMF Github(https://github.com/BabitMF/bmf)頁面,了解更多信息。
數據來源:
[1] 資料來源于 QuestMobile 研究院《2023 內容視頻化與商業化洞察報告》:https://www.questmobile.com.cn/research/report/1678658723797635073 。[2] 資料來源于艾瑞咨詢《2022 年中國視頻云服務行業研究報告》:https://report.iresearch.cn/report/202207/4038.shtml。 GTC 2024 將于 2024 年 3 月 18 至 21 日在美國加州圣何塞會議中心舉行,線上大會也將同期開放。點擊“閱讀原文”或掃描下方海報二維碼,關注更多會議及活動信息。
原文標題:NVIDIA 助力火山引擎開源多媒體處理框架 BMF,將抖音、西瓜視頻的先進技術推向千行百業
文章出處:【微信公眾號:NVIDIA英偉達】歡迎添加關注!文章轉載請注明出處。
-
英偉達
+關注
關注
22文章
3791瀏覽量
91313
原文標題:NVIDIA 助力火山引擎開源多媒體處理框架 BMF,將抖音、西瓜視頻的先進技術推向千行百業
文章出處:【微信號:NVIDIA_China,微信公眾號:NVIDIA英偉達】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論