是否有探索開源鴻蒙音視頻編解碼技術的欲望?是否對開源鴻蒙音視頻編解碼格式支持有訴求?別急——今天這份開源鴻蒙AVCodec Kit介紹文章,就是解答疑惑的指南!參考這份指南,可以使用開源鴻蒙的音視頻編解碼能力,進行應用開發;也可以參與共建,讓開源鴻蒙音視頻編解碼更加完善!
一、概述
AVCodec Kit(Audio & Video Codec Kit,音視頻編解碼,封裝解析)是媒體系統中的音視頻的編解碼、媒體文件的解析、封裝、媒體數據輸入等原子能力。 基于性能考慮,AVCodec Kit僅提供C接口。
1.1 功能模塊

1.2 簡易架構圖

二、亮點/特征
2.1系統內部數據零拷貝
在視頻解碼過程,AVCodec通過回調函數提供AVBuffer給應用,由應用將要解碼的sample數據寫入AVBuffer,在AVCodec中數據不再需要從內存拷入硬件解碼器,而是直接送入解碼器解碼,實現系統內數據零拷貝。
2.2視頻編碼、解碼支持硬件加速
支持H.264、H.265、H.265 10bit的硬件編解碼。
三、AVCodec Kit三大功能模塊簡介
3.1音頻編解碼
3.1.1功能簡介
音頻編碼的輸入和音頻解碼的輸出為PCM格式。
3.1.2流程圖

3.1.3流程說明
在編碼過程中,采集模塊將PCM數據通過回調函數通知應用數據處理的情況。
完成一幀編碼,輸出編碼結果AVBuffer。
在解碼過程通過回調通知應用輸入一幀碼流到解碼器解碼,當解碼完成也會通過回調通知應用解碼完成。
應用可以對數據做后續處理。
3.2視頻編解碼
3.2.1功能簡介
3.2.2流程圖

3.2.3流程說明
在編碼過程中,將surface數據通過回調函數通知應用數據處理的情況。
完成一幀編碼,輸出編碼結果AVBuffer。
在解碼過程通過回調通知應用輸入一幀碼流到解碼器解碼。
當解碼完成也會通過回調通知應用解碼完成,應用可以對數據做后續處理。
3.3媒體文件封裝解封裝
3.3.1功能簡介
將編碼后的音視頻數據封裝為媒體文件,將媒體文件解析為音視頻數據。
3.3.2流程圖

3.3.3流程說明
在文件封裝環節,應用將AVBuffer送入Codec對應的接口,執行數據封裝。
AVBuffer可以是由上述編碼輸出的AVBuffer,也可以是應用創建的AVBuffer,AVBuffer中要攜帶有效的碼流數據和相關的時間描述等信息。
在文件解封裝環節,應用從Codec對應的接口獲得攜帶有碼流數據的AVBuffer,該AVBuffer可以送入上述視頻和音頻編解碼對應接口。
五、結語
AVCodec Kit使得應用能夠直接調用系統提供的編解碼、封裝、解封裝能力實現音視頻的播放、錄制、編碼等功能。AVCodec Kit既是開發助手,也是技術展現的大舞臺!歡迎加入開源鴻蒙音視頻格式解碼解封裝共建,我們在開源鴻蒙開發者視頻號進行了音視頻解碼解封裝的共建賦能,歡迎開發者跟隨直播或查看回放來了解相關知識,一起參與開源鴻蒙生態建設,共建更開放、更智能的未來世界。
供稿:教育工作組 莊文琪、劉麗紅
-
音視頻
+關注
關注
4文章
593瀏覽量
31370 -
開源
+關注
關注
3文章
4203瀏覽量
46126 -
鴻蒙
+關注
關注
60文章
2963瀏覽量
45883
原文標題:【開源鴻蒙-AVCodec Kit】音視頻編解碼封裝解封裝部件介紹
文章出處:【微信號:gh_e4f28cfa3159,微信公眾號:OpenAtom OpenHarmony】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
Linux下基于ffmpeg音視頻解碼
【RTC程序設計:實時音視頻權威指南】音視頻的編解碼壓縮技術
數字音視頻編解碼技術與標準
數字音視頻編解碼技術與標準AVS
請教關于TMS320DM8148音視頻編解碼器應用
音視頻
數字音視頻編解碼技術(AVS標準)
H.264音視頻編解碼SoC芯片Hi3510的原理和應用
IPTV音視頻編解碼技術
視頻app開發過程中,會用到哪些音視頻編解碼技術
音視頻編解碼標準簡介
音視頻編解碼封裝解封裝部件介紹
評論