前几章已经可以拿到 NV21的数据了,并且保存到本地文件,也可以正常渲染播放,
但是不知道有没有同学发现一个细节,就是在设置分辨率为 宽640像素 高480像素的时候
每一帧数据的大小是 480 * 640 * 1.5 = 460800 = 450K
那么一秒有多少帧呢?一秒大概有30帧,
那么一秒钟的时间 30 * 450K = 13500K 约等于 13 M
也就是说,你为了保存一秒的数据,花费了你13M的流量。这样子肯定不可以的,这还搞个毛。
那么,为了解决这个问题,就要用一个很优秀的算法来解决这个问题。
“同学,游泳健身了解一下。”
“同学,H264编码了解一下。”
在H264协议里定义了三种帧,完整编码的帧叫I帧,参考之前的I帧生成的只包含差异部分编码的帧叫P帧,还有一种参考前后的帧编码的帧叫B帧。
算了贴链接吧:
https://www.jianshu.com/p/668e6abbed8c
https://baike.baidu.com/item/H.264/1022230?fr=aladdin&fromid=7338504&fromtitle=H264