Android Media3 技术应用详解

1、音视频基础

一个简单的音视频链路如下:

1)采集,音视频经过采集后分别生成音频流和视频帧,音频是流式的物理上没有帧的概念,但为了数据处理的方便实际数据处理中引入了音频帧的概念,一般中间插入静音数据。 视频是由一幅幅图像组成,可以理解为一幅图就是一帧。

2)采样/量化,声音本质上是振动产生的声波,然后通过媒介传输到达耳朵。

声音三要素:

a、响度:波的振幅体现为响度;

b、音调:波的频率体现音调,人耳能听到的声音频率范围:20Hz - 2万Hz

c、音色:波的形状体现音色;

声音强度定义为声压,用分贝为单位描述。

自然界中的声音是一个模拟信号,需要采样和量化后转化为数字信号才能被计算机处理。

3)编码:简单理解为将原始的音视频数据压缩处理并增加媒体数据描述。视频的压缩可以大量减少数据大小, 视频的原始数据 = 1像素所占大小 x 每张图像的像素数量 x 帧数。视频原始帧一般为YUV格式,见01 YUV 颜色编码 详解

4)封装:简单理解为将音视频合并在一起,MP4格式是一种封装格式,H264是一种视频编解码规范。

5)传输:通过网络讲媒体数据量传递到远端,涉及的协议也比较多比如HTTP、RTMP、HLS等

实际音视频的业务场景远比上面一条播放链路复杂,拿媒体播放场景来说,需要处理各种传输协议、媒体格式、封装格式、异常处理,播放状态时序管理,多端状态同步和控制,音频焦点管理等,这些都会增加复杂度。

一般的开发模式都是基于或大量借鉴开源实现,比较重要的有FFMPEG实现了大部分的音视频编解码协议, WEBRTC实现了音视频编解码处理和远程视频流以及网络管理。

2、Media3

2.1、官方简介

引用Google官网描述:

“Jetpack Media3 is the new home for media libraries that enables Android apps to

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值