论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
IT评测·应用市场-qidao123.com
»
论坛
›
数据库
›
SQL-Server
›
鸿蒙(API 12 Beta3版)【AVCodec Kit简介】 音视频编码 ...
鸿蒙(API 12 Beta3版)【AVCodec Kit简介】 音视频编码服务 ...
伤心客
论坛元老
|
2024-8-10 04:36:00
|
显示全部楼层
|
阅读模式
楼主
主题
1025
|
帖子
1025
|
积分
3075
AVCodec kit(Audio & Video Codec Kit,音视频编解码,封装解封装原子本领)是媒体系统中的音视频的编解码、媒体文件的剖析、封装、媒体数据输入等原子本领。
本领范围
媒体数据输入:媒体应用可以传入文件fd、或者流媒体url,进行后续的媒体信息剖析等处理。
媒体基础本领(Media Foundation):提供媒体数据处理的公共基础类型,包括[AVBuffer]、[AVFormat]等。
音频编码:音频类应用(比如音频通话、音频录制等)可以将未压缩的音频数据送到音频编码器进行编码,应用可以设置编码要用到的编码格式、码率、采样率等参数,控制编码的输出,达到压缩音频文件的目的。
视频编码:视频类应用(比如视频通话、视频录制等)可以将未压缩的视频数据送到视频编码器进行编码,应用可以设置编码要用到的编码格式、码率、帧率等参数,控制编码的输出,达到压缩视频文件的目的。
音频解码:音频类应用(比如音频通话、音频播放器等)将音频码流畅过音频解码器解码,解码后的数据可以送到音频设备播放。
视频解码:视频类应用(比如视频通话、视频播放器等)将视频码流畅过视频解码器解码,解码后的图像数据可以送到视频显示设备显示。
媒体文件剖析:在媒体应用(音视频播放器等),将当地或者网络接收到的媒体文件剖析,获得音视频的码流、音视频的呈现时间、编码格式、文件的一些基本属性信息等。
媒体文件封装:在媒体应用(音视频录制、音频录制等),将音视频编码器编码后的码流数据封装成媒体文件(mp4、m4a),将音视频的码流、音视频的呈现时间、编码格式、文件的一些基本属性信息等按照文件格式写入应用指定的文件中。
亮点/特征
系统内部数据零拷贝:在视频解码过程,AVCodec通过回调函数提供AVBuffer给应用,由应用将要解码的sample数据写入AVBuffer,在AVCodec中数据不再必要从内存拷入硬件解码器,而是直接送入解码器解码,实现系统内数据零拷贝。
视频编码、解码支持硬件加速:支持H264、H265、H265 10bit的硬件编解码。
基础概念
媒体文件:携带有音视频、字幕等媒体数据的文件,如.mp4、.m4a。
流媒体:可以边下载,边播放的媒体传输情势,下载协议如HTTP/HTTPS、HLS协议。
音视频编码:将未压缩原序列音视频数据转换为另一种格式数据,如H264、AAC。
音视频解码:将一种数据格式转换为未压缩状态的原序列音视频数据,如YUV、PCM。
媒体文件封装:将音频、视频、字幕等数据以及形貌信息,按照某种格式要求,写入到同一个文件中,如.mp4。
媒体文件解封装:将文件中的音频、视频、字幕等媒体数据读出,剖析出媒体的形貌信息。
使用方式
视频编解码
视频编码的输入和视频解码的输出支持Surface模式。
在编码和解码过程中,通过回调函数关照应用数据处理的环境;如编码过程通过回调关照应用,完成一帧编码,输出编码结果AVBuffer;在解码过程通过回调关照应用输入一帧码流到解码器解码,当解码完成也会通过回调关照应用解码完成,应用可以对数据做后续处理。
视频编解码的逻辑如图所示。
音频编解码
音频编码的输入和音频解码的输出为PCM格式。
在编码和解码过程中,通过回调函数关照应用数据处理的环境;如编码过程通过回调关照应用,完成一帧编码,输出编码结果AVBuffer;在解码过程通过回调关照应用输入一帧码流到解码器解码,当解码完成也会通过回调关照应用解码完成,应用可以对数据做后续处理。
音频编解码逻辑如图所示。
文件剖析封装
在文件封装环节,应用将AVBuffer送入Codec对应的接口,执行数据封装,AVBuffer可以是由上述编码输出的AVBuffer,也可以是应用创建的AVBuffer,AVBuffer中要携带有效的码流数据和相干的时间形貌等信息;
在文件剖析环节,应用从Codec对应的接口获得携带有码流数据的AVBuffer,该AVBuffer可以送入上述视频和音频编解码对应接口。
文件封装解封装逻辑如图所示。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
伤心客
论坛元老
这个人很懒什么都没写!
楼主热帖
《百万IT毕业生的心声:IT专业大学生毕 ...
Java打怪之路----谷粒商场认证服务 ...
xtrabackup2版本和xtrabackup8版本对比 ...
Excelize 发布 2.6.1 版本,支持工作簿 ...
sqlserver导入sql文件的方式
原型设计工具比较及实践--滴爱音乐 ...
Snowflake(雪花算法),什么情况下会 ...
Flink-使用流批一体API统计单词数量 ...
SQL Server 2008下载及安装
基于 SpringBoot + MyBatis 的博客系统 ...
标签云
AI
运维
CIO
存储
服务器
浏览过的版块
程序人生
云原生
Mysql
.Net
DevOps与敏捷开发
Nosql
网络安全
移动端开发
分布式数据库
快速回复
返回顶部
返回列表