andriod - ffmpeg (二)

整个过程:录制—编码—传输—解码—播放
协议:rtmp(跟http同级)
音视频编解码
  1. 常见格式

    视频原始数据格式:yuv

    音频原始数据格式:pcm

    视频编码: h264

    音频编码:aac

    封装:mpeg4(音视频合并成avi,mp4等)

  2. 音频采集:波形数据建模

    • 采样率:单位时间内采集波形图上的点的个数(xxHz)
    • 采样位数:波峰跟波谷之间的数据用多少位来表示(8,16,32)
    • 通道:单通道跟双通道
    • 帧:对应采集的一个点(采样位数*通道数)

    采样完成之后的数据格式是pcm原始数据,相对较大,需要压缩 -> aac

  3. 视频采集

    • hvs 人类视觉系统(对亮度,对比度敏感,对色度不敏感)
    • 使用rgb不符合hvs
    • yuv(y是亮度,uv是色值对应蓝色跟红色)是根据hvs设计的,有y444,y420。。

    采样完成之后的yuv同样很大,需要压缩 -> h264

参考:https://zhuanlan.zhihu.com/p/28058109