音视频基础知识
分辨率 分辨率又称为解析度,分辨率越高,像素越多,图像越清晰。
视频分辨率:又称为图像分辨率,由视频的宽高组成,表示形式宽x高,常见的视频分辨率有480P、720P、1080P、2K(2048x1080/2160x1440)、4K(4096x2160/3840x2160)
帧率 视频帧率: 测量显示帧数的量度,单位为每秒显示帧数(FPS,全称为Frame Per Second)。一般视频帧率为24fps,P制(PAL,德国提出,中国、印度、巴基斯坦等国家使用)为25fps,也就是每帧显示40ms,N制(NTSC,美国标准委员会提出,美国、日本、韩国等国家使用)为30fps。有些超高帧率的视频达到60fps。
显示帧率: 以帧为单位的位图图像连续出现在显示器的频率,也称为刷新速率。Android设备刷新率一般为60Hz,也就是帧率为60fps,每帧为16ms,超过16ms能给人的肉眼带来延迟卡顿的感觉。做性能优化方面,也就是保证从测量、布局、绘制、上传指令、与GPU交换缓冲区等一系列动作在16ms完成。Android11支持120Hz的更高帧率,一般为对帧率要求极高的应用场景,比如互动游戏。
像素格式 目前广泛使用的有两种:
RGB RGB即红绿蓝三个通道的颜色模型,每个像素由三个颜色通道的取值组成,代表了像素的红、绿、蓝三个基本颜色成分的浓度,RGB模式下每个像素需要占用三个字节的存储空间,而且强调颜色分量之间的独立性,对于色调、亮度、色彩鲜艳、清晰度要求高的场合使用比较多,如显示器、电视、摄像机等。
R:Red——红色分量;G:Green——绿色分量;B:Blue——蓝色分量; 对于RGB格式,每个像素通常由3个8位(即24位)的分量组成,即红(R)、绿(G)和蓝(B)三原色。因此,对于RGB格式,每个像素通常占用3个字节。
YUV YUV则是一种基于亮度和色差的颜色编码方式,采用亮度(Y)和两个色差(U、V)分量来表示色彩信息。其中,亮度(Y)代表黑白灰调,色差(U、V)代表绿色和蓝色相对于红色的偏差。YUV模式下,色彩分量被分开表示,人眼感知亮度和颜色不同,YUV模式将图像的亮度和颜色分开处理,不仅可以节省存储空间,而且适合人眼的视觉特性,优化了图像的压缩,常用于数字电视、DVD、视频编码等应用中。
对于YUV格式,每个像素通常由1个亮度分量(即Y)和2个色度分量(即U和V)组成。通常为了保证兼容性和采样精度,YUV格式通常进行压缩。对于4:2:0压缩方式的YUV,每4个像素共用2个UV分量,因此每个像素由1.5个分量组成。因此,对于YUV 4:2:0格式,每个像素通常占用1.5个字节。
Y(亮度):表示灰度,即白到黑的程度,取值范围为0~255。U(色度):表示从洋红到青色的程度,取值范围为-128~127。V(色度):表示从黄色到蓝色的程度,取值范围为-128~127。
综合来说,RGB模式适用于图像的处理与操作,而YUV模式则适用于视频的压缩与编码。
YUV 是一种将颜色和亮度分离的色彩编码系统,它将图像中的亮度(明度)信息与颜色信息(色度)分开进行编码。在许多视频编解码算法(如 H.264)中,采用 YUV 格式进行数据传输和处理,因为与 RGB 相比,YUV 优势在于更加节省带宽和存储空间。
然而,由于计算机处理图像的方式主要是基于 RGB 色彩空间,所以需要将 YUV 转换为 RGB 才能在计算机上进行处理和显示。
码流率 码流(Bit Rate)是指视频文件在单位时间内使用的数据流量,也叫码率或码流率,通俗一点的理解就是取样率,是视频编码中画面质量控制中最重要的部分,一般我们用的单位是kb/s或者Mb/s。一般来说同样分辨率下,视频文件的码流越大,压缩比就越小,画面质量就越高。码流越大,说明单位时间内取样率越大,数据流,精度就越高,处理出来的文件就越接近原始文件,图像质量越好,画质越清晰,要求播放设备的解码能力也越高。
如何根据图片分辨率算码流大小? 例如:我们以1920x1080分辨率计算,图片格式为YUV420,帧率为30 FPS,那么码流大小为:19201080(3/2)830/(1024*1024) = 89 Mb/s,至于为什么乘以3/2那就和YUV420格式存储有关系了,乘8即将Byte转为bit,如果图片格式为RGB24即一帧图片大小为分辨率x3,如果是RGB32即一帧图片大小为分辨率x4。
采样率 对声音信号每秒的采样次数,采样率越高,声音的还原越真实。采样率单位为Hz,常见的采样率有:8000Hz、16000Hz、44100Hz、48000Hz。人类一般能够听到的声音范围:20Hz~20000Hz。根据奈奎斯特采样定理:当采样频率大于信号中最高频率的2倍时,采样后的数字信号能够完整保留原始信号的信息。
声道 指声音在录制或播放时,在不同空间位置采集或回放的相互独立音频信号。声道数指在录音时的音源数量,或者在播放时的扬声器数量。
声道布局 不同声道数对应不同声道布局。常见的声道布局有单声道(mono)、立体声道(stereo)、四声环绕、5.1声道。
单声道:只有一个声道,优点数据量小,amr_nb和amr_wb默认为单声道,缺点是缺乏对声音位置定位。立体声道:一般为两个声道,由左声道、右声道组成,改善对声音位置定位的状况。四声环绕:由前左、前右、后左、后右组成,形成立体环绕。4.1声道是在四声环绕基础上,增加一个低音。5.1声道:在4.1基础上,增加一个中场声道,杜比AC3就是采用5.1声道,也就是影院宣传的杜比音效。 音质 音质:声音的质量,经过编码压缩后的音频信号保真度,由音量、音高和音色组成。音量:音频的强度,数值范围0-100,静音时为0,最大值为100。Android中有提供音量增强,调节声音分贝值。音高:声音的音调,即音频频率或每秒变化次数。音色:音频泛音,又称为音品,不同声音表现在波形方面与众不同的特性。 视频播放一般经过一下几个步骤:
协议解析(本地文件不需要)解封装音视频解码音视频同步 暂时无法在Lark文档外展示此内容
下面就围绕着这些操作步骤来了解里面的内容:
流媒体协议是服务器与客户端之间通信遵循的规定。当前网络上主要的流媒体协议如表所示。
名称传输层协议使用领域HTTPTCP点播RTMPTCP直播SRTUDP直播HLSTCP直播+点播QUICUDP直播RTSP+RTPTCP+UDPIPTVRTMFPUDP直播MMSTCP+UDP直播+点播 目前使用比较多的协议:
HTTP HTTP是Hypertext Transfer Protocol(超文本传输协议)的缩写,是一种应用层协议,常用于网页数据传输。在视频直播和点播中,HTTP作为一种流媒体传输协议也受到了广泛的应用,例如HLS、DASH等协议都是基于HTTP的。HTTP协议的优点是通用性强,可以通过标准的web服务器进行传输,且具有自适应码率等特性。缺点是延迟较高,不适合实时性要求高的应用场景。并且HTTP协议下,每次请求都需要重新建立TCP连接,导致资源浪费。
RTMP RTMP是Real-Time Messaging Protocol(实时消息传输协议)的缩写,是Adobe公司开发的一种流媒体传输协议。常用于实时视频直播和点播等场景。与HTTP协议相比,RTMP具有更低的延迟和更高的稳定性。但是,RTMP需要特定的流媒体服务器来支持,相对来说不够灵活且成本较高。
SRT SRT是Secure Reliable Transport(安全可靠传输)的缩写,是一种新兴的协议,能够提供低延迟和高可靠性的视频传输。SRT使用UDP协议传输数据,同时添加了错误纠正、加密等功能。相比较RTMP和HTTP,SRT协议传输延迟更低且更加稳定,且能够支持穿越NAT等复杂网络环境。但是,SRT属于新兴的技术,目前的应用范围较为有限。
HLS HLS是http live streaming是由Apple公司定义的基于http的流媒体实时传输协议,可实现流媒体的直播和点播,主要用于ios系统。
原理是将整个流分为多个小的文件来下载,每次只下载一个。客户端只要不停的按顺序播放从服务器获取到的文件,就实现了直播。
分段推送的特点,决定了HLS的延迟一般会高于普通的流媒体直播协议。
主要场景就是使用TS文件索引组成M3U8文件进行播放。
QUIC QUIC是基于UDP的一种传输协议,最初由Google开发。QUIC具有低延迟、高速率、高安全性等特点,支持快速握手和零RTT建立连接。QUIC协议还支持多路复用,能够实现流媒体传输的逐片下载,提供更好的视频传输质量。目前,QUIC正在逐渐被各大浏览器和网站所采用。
bilibili直播使用的就是RTMP和SRT
综合来说就是直播场景使用RTMP、SRT、HLS,点播场景使用HTTP、QUIC、HLS
封装格式的主要作用是把视频码流和音频码流按照一定的格式存储在一个文件中。也就是我们常见的视频文件后缀名。
常见的封装格式:
名称支持的视频编码支持的音频编码MP4MPEG-2, MPEG-4, H.265,H.264, H.263等AAC, MPEG-1 Layers I, II, III, AC-3等TSMPEG-1, MPEG-2, MPEG-4, H.264MPEG-1 Layers I, II, III, AACMOVMPEG-4, H.264,ProRes,SorensonMP3, ADPCM, Linear PCM, AAC等MKV几乎所有格式几乎所有格式FLVSorenson, VP6, H.264MP3, ADPCM, Linear PCM, AAC等AVI几乎所有格式几乎所有格式 MP4 MP4(MPEG-4 Part 14)是一种先进的数字音视频封装格式,以其跨平台、流行和可扩展性而闻名。MP4支持多种编解码器、多个音轨和多个字幕轨道,可以在各种硬件和软件平台上实现兼容性。
TS TS文件(.ts)是一种常用的MPEG-2视频封装格式,主要用于传输数字电视信号或存储DVD文件,采用了MPEG-2 TS标准,该格式支持多种编解码器、多个音轨和字幕,具有高效的传输性能,并能够在网络传输中很好的处理丢包、错误等问题。
AVI AVI(Audio Video Interleave)是一种老旧的Microsoft开发的音视频文件封装格式,支持多种编解码器和字幕,然而在实际应用中,不支持流媒体,AVI的兼容性和可应用范围性都受到很大的限制,已经渐渐被新的视频文件封装格式替代。
MOV MOV是苹果公司开发的一种常用的音视频文件封装格式,该格式包含多种编解码器、字幕等源素材信息。MOV的兼容性很好,在不同的操作系统和设备上都能够被流畅播放。
MKV Matroska Video File,即MKV格式,是一种开源、免费、高质量的音视频文件封装格式。MKV格式支持多种编解码器、多个音轨和多个字幕轨道,同时支持高比特率、高清晰度的视频文件。
FLV FLV是Flash视频的缩写,是一种带有字幕和互动元素的视频文件格式,支持实时流媒体传输,在互联网上被广泛应用。FLV格式在播放方面兼容性强,支持流式播放和快进等基本操作。
对于视频数据而言,视频编码的最主要目的是数据压缩。这是因为动态图像的像素形式表示数据量极为巨大,存储空间和传输带宽完全无法满足保存和传输的需求。例如,图像的每个像素的三个颜色分量RGB各需要一个字节表示,那么每一个像素至少需要3字节,分辨率1280×720的图像的大小为2.76M字节。
如果对于同样分辨率的视频,如果帧率为25帧/秒,那么传输所需的码率将达到553Mb/s!如果对于更高清的视频,如1080P、4k、8k视频,其传输码率更是惊人。这样的数据量,无论是存储还是传输都无法承受。因此,对视频数据进行压缩称为了必然之选。
视频信息之所以存在大量可以被压缩的空间,是因为其中本身就存在大量的数据冗余。其主要类型有:
时间冗余:视频相邻的两帧之间内容相似,存在运动关系空间冗余:视频的某一帧内部的相邻像素存在相似性编码冗余:视频中不同数据出现的概率不同视觉冗余:观众的视觉系统对视频中不同的部分敏感度不同 针对这些不同类型的冗余信息,在各种视频编码的标准算法中都有不同的技术专门应对,以通过不同的角度提高压缩的比率。
目前使用比较多的视频编码标准就是
H.264/AVC H.265/HEVC 两者对比
压缩比:H.265相对于H.264可以提供更高的压缩比,即在同样视频质量下,H.265视频文件的大小会更小,更节省存储空间。视频质量:H.265相对于H.264同样画面质量下能够更低码率来达到视频的传输和存储,因此H.265在视频质量方面也略优于H.264。存储空间:由于H.265压缩比更高,可以在同样的存储空间下存储更多的视频文件。性能要求:由于H.265的算法更加复杂,对硬件的性能要求更高,需要更高级的处理器和显卡才能达到较高的实时编码和解码速度。 综上所述,H.265相比于H.264具有更高的压缩比和更好的视频质量,但需要更高的性能要求。
开源实现:
H.264 : openh264、x264
H.265 : libde265、x265、vp9
要算一个PCM音频流的码率是一件很轻松的事情,采样率值×采样大小值×声道数 bps。一个采样率为44.1KHz,采样大小为16bit,双声道的PCM编码的WAV文件,它的数据速率则为 44.1K×16×2 =1411.2 Kbps。我们常说128K的MP3,对应的WAV的参数,就是这个1411.2 Kbps,这个参数也被称为数据带宽,它和ADSL中的带宽是一个概念。将码率除以8,就可以得到这个WAV的数据速率,即176.4KB/s。这表示存储一秒钟采样率为44.1KHz,采样大小为16bit,双声道的PCM编码的音频信号,需要176.4KB的空间,1分钟则约为10.34M,这对大部分用户是不可接受的,尤其是喜欢在电脑上听音乐的朋友,要降低磁盘占用,只有2种方法,降低采样指标或者压缩。降低指标是不可取的,因此有了各种压缩方案。
MP3 目前最为流行的音频编码格式之一,具有较高的压缩比和音质,但是相对较为复杂,需要较高的处理算力。此外,MP3 是有损压缩格式,可能会损失一部分音频质量。
AAC AAC具有更好的压缩比和音质。AAC 格式相对比 MP3 更为复杂一些,需要更高的处理算力,但是由于更为高效,目前已经被广泛应用于音频编码领域。
WAV WAV 是一种无压缩音频文件格式,音质非常好,播放时不存在数据损失,文件体积较大。WAV 适用于对音质要求非常高的场景,例如录音录音棚。
音频信息解析: 音频信息解析
最近更新热点资讯
- 谷歌AI聊天记录让网友San值狂掉:研究员走火入魔认为它已具备人格,被罚带薪休假
- 豆瓣9.4,姐弟恋、三人行,这部大尺度太厉害
- Genes, Intelligence, Racial Hygiene, Gen
- 【土耳其电影】《冬眠》电影评价: 宛如一部回归伯格曼风格的道德剧
- 陌生人社会伦理问题研究
- 理论研究|前海实践的价值理性和工具理性
- 澳门刑事证据禁止规则
- 综艺普及剧本杀和密室逃脱助力线下实体店爆发式增长
- 日本小伙和五个小姐姐同居?看完我酸了!
- 第一学期高一语文考试期中试卷
- 高中必考的物理公式有哪些
- 这部大尺度的申奥片,却讲述了不lun恋...
- 心理语言学论文精品(七篇)
- 《贵妃还乡》 超清
- 专论 | 郭丹彤、陈嘉琪:古代埃及书信中的玛阿特观念
- 微专业招生 | 数字文化传播微专业列车即将发车,沿途课程抢先看!
- 生态安全的重要性汇总十篇
- 原创因“18禁”电影登舆论顶峰,万千少女一场春梦:这一生,足够了
- 章鱼头
- 读书心得体会
- 考研考北京大学医学部或者协和是一种怎样的难度?
- 央媒评女主播编造“夜宿故宫”:让肇事者付出代价,理所应当
- 库欣病患者求医记(流水账)
- 《太平公主》④ | 地位越高,越要装傻
- 爱体检 安卓版 v2.5