是否有探索开源鸿蒙音视频编解码技术的欲望?是否对开源鸿蒙音视频编解码格式支持有诉求?别急——今天这份开源鸿蒙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文章
575浏览量
31212 -
开源
+关注
关注
3文章
4052浏览量
45629 -
鸿蒙
+关注
关注
60文章
2870浏览量
45430
原文标题:【开源鸿蒙-AVCodec Kit】音视频编解码封装解封装部件介绍
文章出处:【微信号:gh_e4f28cfa3159,微信公众号:OpenAtom OpenHarmony】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
Linux下基于ffmpeg音视频解码
【RTC程序设计:实时音视频权威指南】新书一瞥
【RTC程序设计:实时音视频权威指南】音视频的编解码压缩技术
数字音视频编解码技术与标准
数字音视频编解码技术与标准AVS
请教关于TMS320DM8148音视频编解码器应用
音视频
数字音视频编解码技术(AVS标准)
H.264音视频编解码SoC芯片Hi3510的原理和应用
IPTV音视频编解码技术
视频app开发过程中,会用到哪些音视频编解码技术
音视频编解码标准简介

音视频编解码封装解封装部件介绍
评论