<
音视频 基础知识
>
上一篇

Androidx迁移问题记录
下一篇

各种工具设置代理 apt git sdkmanager as emulator flutter

音视频基础知识

音视频

比特率 = 码率 文件大小(b) = 码率(b/s) × 时长(s)

适用未压缩的情况

音视频帧

视频帧

yuv 原始视频数据

音频帧

pcm 原始音频数据

音频帧的概念没有视频帧那么清晰,几乎所有视频编码格式都可以简单的认为一帧就是编码后的一副图像, 而音频帧会因编码格式的不同而不同,如 pcm 音频流可以直接进行播放。

音频编码

pcm 经过 音频encoder编码器 encode编码 得到 音频包,相反 可以用 音频decoder解码器 decode解码

编码格式

蓝牙传输编码

视频编码

yuv 经过 视频encoder编码器 encode编码 得到 视频包,相反 可以用 视频decoder解码器 decode解码

编码格式

音视频经过混合的格式

编码后的音频和视频muxe混合成的封装格式,相反 可以 demuxe解复用

混合格式

原生 Android 的音视频

Surface 处理被屏幕排序的原生的Buffer

SurfaceView 内嵌了一个专门用于绘制的Surface,可以理解为Surface是管理数据的地方,SurfaceView是展示数据的地方

SufaceTexture 跟SurfaceView很像,可在视频解码里面获取图像流,但可以不需要显示到屏幕上, 可以取得图像帧的副本进行处理再传给SurfaceView用于显示

SurfaceHolder 是一个管理Surface的容器

##


参考

菜鸟修炼笔记-音视频开发基础知识-音频帧、视频帧及其同步

Top
Foot