发布者:聯誠發 时间:2022-06-28 16:46 浏览量:1848
音視頻是一个很好玩,也是一个发展了很久的技術,现在的很多技術知识都还是沿用原来的。不过音頻的东西,是挺好玩的。下面就由聯誠發LED顯示屏小編帶大家一起看看音視頻方面的知識資料。
音視頻開發要掌握圖像,視頻,音頻的基礎知識,並學會如何對他們進行采集,渲染,處理,傳輸等一系列開發和應用。
采集解决了数据从哪里来的问题,渲染解决的是数据怎么崭新的问题,处理解决的是数据怎么加工的问题,传输解决的是数据怎么共享的问题。这里的每一个门类都可以深挖,衍生出一 个个充满技術挑战的话题。
音頻技術是为了记录、存储和回放声学现象才发明的,所以先了解声学现象对学习数字音頻是有很大帮助的。
聲音的産生是由于物體的振動,造成空間內空氣的波動而共鳴發音,再由大氣的傳播,使人的聽覺神經感受到的一種物理現象。
聲音的三要素是響度,音調和音色。
響度,和聲音震動的幅度有關,用的力越大,人的鼓膜震動幅度就越大,發出的聲音越響。
音調,主要是和频率有关。声波的频率越高,音調也越高。
音色在同样的音調(频率)和響度(振幅)下,钢琴和小提琴的声音听起来是完全不相同的,因为它们的音色不同。
聲音傳播的介質是固體、液體、氣體。介質不同,傳播的速度也不同。真空的情況下聲音是無法傳播的。
對自然界的聲音(模擬信號)進行采樣,采樣就是根據奈奎斯特定理在时间轴上对信号进行数字化信号,即按照一定时间间隔△t 在模拟信号 x(t)上逐點采取其瞬時值。采樣率越高,聲音的還原程度越高,質量就越好,同時占用空間會變大。
量化是用有限個幅度值近似原來連續變化的幅度值,把模擬信號的連續幅度變爲有限數量的有一定間隔的離散值。
編碼是按照一定的規律,把量化後的值用二進制數字表示,然後轉化成二值或多值的數字信號流。這樣得到的數字信號通過可以通過電纜,衛星通道等數字線路傳輸。在接收端與上述模擬信號數字化過程相反,再經過後置濾波再恢複成原來的模擬信號。
上面數字化的過程又叫做脉冲編碼调制,通常我們說的音頻的裸数据格式就是脉冲編碼调制(PCM)数据。描述一段 PCM 数据需要几个量化指标,常用的量化指标是采样率,位深度,字节序,声道数。
采样率(Sample rate):每秒钟采样多少次,以 Hz 为单位。
位深度(Bit-depth):表示用多少个二进制位来描述采样数据,一般为 16bit。
字节序:表示音頻 PCM 数据存储的字节序是大端存储(big-endian)还是小端存储(little-endian),为了数据处理效率的高效,通常爲小端存儲。
声道数(channel number):当前 PCM 文件中包含的声道数,是单声道(mono)、双声道
以 CD 音质来说,量化格式是 2 字节,采样率是 44100,声道数是 2,这些信息就描述了 CD 的音质。那么 CD 的数据采样率 =44100*16*2=1378.125kbps, 在 1 分钟的时间里 ,需要占用的存储空间=1378.125 * 60/8/1024=10.09MB。并不小。
壓縮算法包括有損壓縮和無損壓縮。
常用的音頻編碼方式有以下几种:
MP3,MPEG-1 or MPEG-2 Audio Layer III,是曾经非常流行的一种数字音頻編碼和有損壓縮格式 , 它被设计来大幅降低音頻数据量 。
AAC,Advanced Audio Coding,是由 Fraunhofer IIS、杜比实验室、AT&T、Sony 等公司共同开发, 在 1997 年推出的基于 MPEG-2 的音頻編碼技術。AAC 比 MP3 有更高的压缩比,同样大小的音頻文件,AAC 的音质更高。
WMA,Windows Media Audio,由微软公司开发的一种数字音頻压缩格式,本身包括有损和无 损压缩格式。
像素:屏幕顯示是把有效面積化爲爲很多個小格子,每個格子只顯示一種顔色,是成像的最小元素,因此就叫做“像素”。
分辨率:屏幕在长度和宽度这俩个方向上各有多少像素,就叫做分辨率,一般用 AXB 来表示。分辨率越高,每个像素的面积越。允拘Ч驮狡交改濉
每一个像素点的 RGB 通道分别对应屏幕位置上的子像素点绘制到屏幕上,进而显示整个图像。
一张图像是由每个像素点绘成的,那么一像素点的 RGB 又该如何表示呢?
浮點表示
归一化表示,取值范围 0.0~1.0,如 openGL 对每个子像素点的表示方式。
整數表示
取值范围 0~255 或者 00~FF,8bit 表示一个子像素。
如图像格式 RGBA_8888,表示 4*8bit 表示一个像素,而 RGB_565 用 5 + 6 + 5 bit 表示一个像素。一张 1280 * 720, RGBA_8888 格式的图片的大小= 1280 * 720 * 32bit = 1280 * 720 * 32 / 8 byte,也是位图在内存中占用 的大小。所以每一张图像的裸数据都是很大的。
YUV,是另外一种颜色編碼方法,視頻的裸数据一般使用 YUV 数据格式表示。Y 表示明亮度,也称灰度 值(灰阶值)。UY 表示色度,均表示影響的色彩和飽和度,用于指定像素的顔色。
亮度需要透过 RGB 输入信号建立,方式为将 RGB 信号的特定部分(g 分量信号)叠加到一起。
色度定义了颜色的色调和饱和度,分别用 Cr、Cb 表示,(C 代表分量(是 component 的缩写))。Cr 反映 RGB 输入信号红色部分与 RGB 信号亮度值之间的差异。Cb 反映 RGB 输入信号蓝色部分与 RGB 信号亮度值之间的差异。
視頻帧裸数据之所以采用 YUV 色彩空间,使用为亮度信号 Y 和色度信号 UV 是分离的。当无 UV 色度信号,只有 Y 亮度信号时,那么这样表示的图像就是黑白灰度图像。彩色电视正是使用 YUV 空间使用 Y 亮度信号解决彩色电视与黑白电视的兼容问题、使黑白电视也能接收彩色电视信号。最常用的 YUV 都使用 8 个 字节来表示,所以取值范围就是 0~255。
音頻最开始需要采样,图像也是一样的,YUV 最常用的采样格式是 4:2:0。
YUV 格式有两大类:planar 和 packed
1.对于 planar 的 YUV 格式,先连续存储所有像素点的 Y,紧接着存储所有像素点的 U,随后是所有像素 点的 V。
2.对于 packed 的 YUV 格式,每个像素点的 Y,U,V 是连续存储的。YUV420(YUV420-Package),分辨率为 84(wh)的 YUV 图像,则内存分布如下
YUV420P(YUV420-Planar) 分辨率为 84(wh)的 YUV 图像,则内存分布如下
YUV 码流的存储格式其实与其采样的方式密切相关,主流的采样方式有三种,YUV4:4:4,YUV4:2:2, YUV4:2:0。
YUV 4:4:4 采样,每一个 Y 对应一组 UV 分量。YUV 4:2:2 采样,每两个 Y 共用一组 UV 分量。YUV 4:2:0 采样,每四个 Y 共用一组 UV 分量。
凡是渲染到屏幕上的东西(文字、图片或者其他),都要转换为 RGB 的表示形式,那么 YUV 的表示形 式和 RGB 的表示形式之间是如何进行转换的呢?
为了实现格式转换,我们首先要明确待转换格式和目标格式的特点和相互转换关系,这是编程实现转换的核心。对于 RGB 转 YUV 的过程,我们要首先拿到 RGB 文件的数据,再通过上图的 YUV 计算公式对其做 运算,得到 YUV 数据,从而实现转换。而对于 YUV 转 RGB 则要首先获得 YUV 数据,用第二组 RGB 公式计 算得到 RGB 数据。在本实验中,转换公式如下。
Y = 0.298R + 0.612G + 0.117B;
U = -0.168R - 0.330G + 0.498B + 128;
V = 0.449R - 0.435G - 0.083B + 128;
R = Y + 1.4075( V - 128);
G = Y - 0.3455( U - 128) - 0.7169( V - 128);
B = Y + 1.779( U - 128);
我们为什么要編碼呢?原因很简单,因为 YUV RGB 形式的視頻数据太大了。編碼的目的就是为了压缩, 让各种視頻的体积变得更。欣诖娲⒑痛。
視頻編碼的作用:将視頻像素数据(RGB,YUV 等)压缩成視頻码流,从而降低視頻的数据量。視頻編碼方式有以下几种方式:
国际上主流制定視頻编解码技術的组织有两个,一个是“国际电联(ITU-T)”,它制定的标准 有 H.261、H.263、H.263+、H.264 等,另一个是“国际标准化组织(ISO)”它制定的标准有 MPEG-1、MPEG-2、 MPEG-4 等。
WMV 是微软推出的一种流媒体格式,它是在“同门”的 ASF 格式升级延伸来得。在同等視頻质量下,WMV 格式的文件可以边下载边播放,因此很适合在网上播放和传输。
VP8 来自 On2 的 WebM, VPX(VP6,VP7,VP8,VP9),这个編碼设计用于 web 視頻。
WebRTC,在 2010 年 5 月,Google 以大约 6820 万美元收购了 VoIP 软件开发商 Global IP Solutions 公司,并因此获得了该公司拥有的 WebRTC 技術。WebRTC 集成 VP8, VP9。
AV1 是一个开放,免专利的視頻編碼格式,针对互联网传输視頻而设计。
AVS 是中国具备自主知识产权的第二代信源編碼标准,是《信息技術先进音視頻編碼》系列标准的简称, 其包括系统、視頻、音頻、数字版权管理等四个主要技術标准和符合性测试等支撑标准。
H265与 H.264 编解码器相比,HEVC 在压缩方面提供了重大的改进。HEVC 压缩視頻的效率比 H.264 要高出两倍。使用 HEVC,相同视觉质量的視頻只占用一半的空间。
VP9 是由 Google 开发的开放式、无版权费的視頻編碼标准,VP9 也被视为是 VP8 的下一代視頻編碼标准。
H.265 与 VP9 編碼质量的对比测试,数值越。虮硎揪幋a质量越好。从对比中我们发现 H.265、VP9 两者的差别并不大,整体平均分只差了 0.001,在實際應用中幾乎不存在差異。
在編碼时间对比中,VP9 完胜 H.265,无论是 4K 視頻还是 1920、1280 分辨率的視頻,VP9 的編碼 耗时都比 H.265 短很多。但是 H.265 的解码效率略高于 VP9 。
H.265 继承了 H.264 的視頻編碼标准体系,在商业应用中更加广泛,多使用于安防、军政、企业等场 景中,但由于其专利持有者过多,导致其商用费用过高,在推广中面临较大阻力。
VP9 由 Google 研发,可以免费使用。在实际推广中,微软、苹果等公司不愿看到 VP9 一家独大,其 他互联网厂商也不希望主流視頻編碼格式被垄断,因此目前在主要在 Google 自家的产品中得到支持,其他 使用 VP9 的大厂并不多。
在聯誠發LED顯示屏小编看来,就目前而言,H.265 在企业、安防中使用较为广泛,而 VP9 因其简易、实用的解決方案以及开发便捷的特性在互聯網應用場景中使用較多。