图像基础:
1>什么是图像
是人对视觉感知的物质再现。三维自然场景的对象包括:深度,纹理和亮度信息。二维图像:纹理和亮度信息。
像素点:组成图像的每一个带颜色的点叫做像素点。
像素是图像显示的基本单位。我们通常说一幅图片的大小,例如是1920×1080,就是长度为1920个像素点,宽度为1080个像素点。乘积是2,073,600,也就是说,这个图片是两百万像素的。1920×1080,这个也被称为这幅图片的分辨率。
2>什么是PPI
就是"pixels per inch" 每英寸像素数。值越高描述图像的像素点就越多,图片就越清晰。老一点的旧手机就是因为PPI不高所以看起来图像有颗粒感。
3>计算机系统的颜色
以前我们美术课学过,任何颜色,都可以通过红色(Red)、绿色(Green)、蓝色(Blue)按照一定比例调制出 来。这三种颜色,被称为“三原色”。
在计算机里,R、G、B也被称为“基色分量”。它们的取值,分别从0到255,一共256个等级(256是2的8次方)。所以,任何颜色,都可以用R、G、B三个值的组合表示
视频基础
1> 什么是帧
简单来说,如果将一幅接一幅单个的画面,逐个连续切换展示,只要切换速度快到人眼无法觉察,就成了视频。每一幅画面,就是一帧。帧率越高,视频就越逼真、越流畅
2>音频帧
音频也有帧的概念,不过不同于视频,视频帧是数画面。音频帧是数采样数的的点。把一定数量的连续采样点组合在一起,就是一个音频帧
因为音频采样率固定,因此音频帧的大小都是固定的时长。
计算方式: 音频帧时长 = (采样点个数 /1000) / 采样率 为什么除以1000是因为方便转换成毫秒
3> 视频和音频的基本参数
视频基本参数
分辨率:视频画面的面积大小,表示方法一般是width×height(像素)
帧率:每秒的帧数量,单位是fps
码率:每秒的数据量,单位是bps,注意是bit不是Byte
音频基本参数
采样率:每秒采集的声音样本点数量,单位是Hz
声道数:同时采集声音的通道数量,常见单声道(mono)或立体声(stereo)
位宽:也叫采样位宽,指保存单个声音样本点的比特位数,通常是16bit
4-> 帧类型和GOP
H.264编码)常见的帧类型有I帧和P帧
I 帧即关键帧,记录了一幅完整的画面,可以被直接解码显示,两个相连续的 I 帧之间的一组 帧称为一个GOP(Group of Picture)。
P 帧是前向预测帧,不记录画面,记录的是本帧与前一帧之间的差异,P图不能被直接解码,需要先解码其前序依赖的参考帧。
除了I帧和P帧以外,还有B帧、SI帧、SP帧等。B帧是双向预测帧,记录的是本帧与前一帧、后一帧的差异;SI和SP帧不常见,用于切换码流时使用。
5>视频的分层
H.264)视频的层级如下:
视频流由GOP组成
GOP由帧组成 -》GOP由 I 帧开始
帧由slice组成 -》通常1帧只有1个slice
slice由宏块组成
宏块由子块组成-》宏块大小是16×16
子块由像素组成-》子块有8×8、8×4、4×8、4×4四种
什么是音视频技术
简单来说,音视频技术就是用计算机来处理人“看”和“听”的技术,所以有些时候也叫视听技术
下图是音视频的过程总览
音视频流程可以总结为四个步骤
采集:它解决的是,数据从哪里来的问题;
渲染:它解决的是,数据怎么展现的问题;
处理:它解决的是,数据怎么加工的问题;
传输:它解决的是,数据怎么共享的问题。
采集:
采集是指从输入设备上获取原始数据的过程称之为采集。输入设备可以包括:麦克风 摄像头 这样的硬件,或者电脑屏幕的某个区域 和 已有视频文件等
预处理:
采集的数据不一定是最终我们需要的数据。对原始数据进行处理的过程叫预处理
预处理包括 1>缩放 裁剪 旋转 2> 美白 磨皮 3>人脸识别 4>视频编辑 5>声音3A处理等等
视频为何需要压缩
未经压缩的视频数据量巨大
存储困难
传输困难
为了解决数据源的大小问题,就需要压缩,压缩的工具我们叫做编码器,压缩数据的算法叫编码式。之对应的解压缩工具就是解码器。二者工具组合在一起叫做编解码器(codec)
渲染与展示:
解码之后的数据需要通过渲染才能变成设备上可用信息,展示到输出设备上
(数字信号 to 电信号)
展示设备用来显示画面或者播放声音。一般包括 显示器 投影仪 、音响、耳机也可以是软件sufaceview等
文件封装
声音和图像在采集的过程中都是分开处理,但是在实际播放的时候,需要将声音和画面同时展示。因而需要将音频和视频编码后的数据打包到一个文件中
存放音视频内容的容器叫封装容器。文件类型叫做封装格式
文件的封装和解封装是互逆操作。
网络协议
音视频传输在网络传输中一般使用特殊的协议。这种协议就叫做流媒体协议
1)直播推流,有哪些常见的协议,如:RTMP,RSTP 等;
2)直播拉流,有哪些常见的协议,如:RTMP,HLS,HDL,RTSP 等;
3)基于 UDP 的协议有哪些?如:RTP/RTCP,QUIC 等。
常用协议对比
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。