视频:快速播放一连串连续的图片(时间上连续的图片),
每一张图片,我们称为一帧;主要每秒钟帧的数据足够多的,也即播放的足够快。比如每秒钟30帧,以人的眼睛的敏感程度,是看不出这是一张张独立的图片的,这就是我们常说的帧率(FPS)
帧率:代表刷新的速率==原理:视觉停留现象(eg:动画片)
电影:24fps
电视:25fps,30fps
时间戳:解决音视频同步问题与渲染时间控件问题
视频编码:视频压缩编码
H264:500倍量级的压缩
H265:1000倍量级的压缩
每一帧图像被网格化成一个个’像素’
每一张图片,都是由像素组成的,假设为1024*768(这个像素不算多),每个像素由RGB组成,每个8位,共24位。
光波作为一种特定频段是电磁波,其颜色和频率有关(频率决定颜色)
可见光中紫光频率最大,波长最短;红光则刚好想法
红外线、紫外线、X射线等都属于不可见光
编码:用尽量少的bit数保存视频,使播放的时候画面看起来仍然很精美。
编码是一个压缩的过程。
视频编码后,生动活泼的一帧一帧的图像,就变成了一串串让人看不懂的二进制,这个二进制可以放在一个文件里,按照一定的格式保存起来。========MP4、RMVB等
这个二进制可以通过某种网络协议进行封装,放在互联网上传输,这个时候就可以进行网络直播了。
网络协议将编码好的视频流,从主播端推送到服务器,在服务器上有个运行了同样协议的服务端来接收这些网络包,从而得到里面的视频流,这个过程叫做接流。
服务端接到视频流之后,可以对视频流进行一定的处理,例如转码,也即从一个编码格式,转成另一种格式。因为观众使用的客户端千差万别,要保证他们都能看到直播。
流处理完毕之后,就可以等待观众的客户端类请求这些视频流。观众的客户端请求的过程称为拉流。
媒体回调:截图、流状态、回放地址(转码)
融合CDN:公有协议+私有协议
sn:请求调度返回到唯一标识
流号就是标识下用户此次的直播,便于追踪某个用户的直播流状态,来迅速定位某直播用户的信息
Conn-type:连接方式
Pub为推流(直播状态)
Sub为拉流(观看状态)
信令:为使通信网中各种设备协调运作,在设备之间传递的有关控件信息