提问小结

H264编码:
H264传输与分包:

  1. base profile一般用不到B帧,high profile用的较多

H264视频编码基本原理:

  1. 将一幅图像分成多个色块
  2. 计算图像间,色块的变化值,然后传输过去
  3. 如果色块产生移动,则将移动的值也传递过去
  4. 通过上面的方式,减少了编码的传输量

GOP与I帧之间的关系:
GOP中的首帧就是I帧,中间夹杂着P帧,一个GOP中可能存在多个I帧

I帧的分包传输:

  1. 因为网络传输存在mtu,一般为1500
  2. 如果I帧较大,则会超过1500,需要进行分包

ffmpeg:视频格式转换

  1. 如果原始视频是H264编码,目的视频也是H264编码,则只需要换个壳子,很快就能转好
  2. 如果原始视频是jpeg编码,需要转成H264,则速度很慢,需要将jpeg解出来然后再使用H264重新编码