文章目录
前言
数字音频
音频编码
WAV编码
MP3编码
AAC编码
Ogg编码
前言
近一两年直播、短视频等可谓是异常火爆,随着5G技术的逐渐普及,音视频领域估计会迎来新一轮的爆发。对于移动开发者,音视频开发技术也将是一个不可或缺的技能。正所谓“好记性不如烂笔头”,作一些学习笔记仍是颇有必要的。算法
数字音频
模拟信号要转化为数字信号一般要通过采样、量化、编码。学习
采样
所谓采样就是在时间轴上对信号进行数字化。根据奈奎斯特定理(也称为采样定理):当采样频率大于信号中最高频率的2倍时,采样以后的数字信号能够完整地保留原始信号中的信息。对于高质量的音频信号,其频率范围(人耳可以听到的频率范围)是20Hz~20kHz,因此采样频率通常为44.1kHz,这样就能够保证采样声音达到20kHz也能被数字化,从而使得通过数字化处理以后,人耳听到的声音质量不会被下降。
量化
量化是指在幅度轴上对信号进行数字化。每个量化都是一个采样。
编码
所谓编码,就是按照必定的格式记录采样和量化后的数字数据,好比顺序存储或压缩存储等。编码涉及到不少种格式,一般所说的音频的裸数据格式就是脉冲编码调制(Pulse Code Modulation,PCM)数据。描述一段PCM数据通常须要如下几个概念:量化格式(sampleFormat)、采样率(sampleRate)、声道数(channel)。而对于声音格式,还有一个概念用来描述它的大小,称为数据比特率,即1秒时间内的比特数目,它用于衡量音频数据单位时间内的容量大小。
计算通过压缩的视频输出文件大小公式:
(音频编码率(kbps)/8 + 视频编码率(kbps)/8)× 影片总长度(秒)/1024 = 文件大小(MB为单位)编码
计算不通过压缩的声音文件大小公式公式:
采样频率(Hz)*采样位数(bit)*声道数=数据量(位/秒).net
图象应该是,
画面尺寸(分辨率)*彩色位数(bit)*帧数 = 数据量(位/秒)orm
音频编码
压缩编码的基本指标之一就是压缩比,压缩比一般小于1。压缩算法包括有损压缩和无损压缩。压缩编码原理其实是压缩掉冗余信号,冗余信号是指不能被人耳感知到的信号,包含人耳听觉范围以外的音频信号以及被掩蔽掉的音频信号等。而被掩蔽掉的音频信号则主要是由于人耳的掩蔽效应,主要表现为频域掩蔽效应与时域掩蔽效应。视频
常见的压缩算法有PCM、WAV、AAC、MP三、Ogg等。blog
WAV编码
WAV编码不会进行压缩操做。其有多种实现方式,其中一种就是在PCM数据格式的前面加上44字节,分别用来描述PCM的采样率、声道数、数据格式等信息。开发
特色: 音质很是好,大量软件都支持。
适用场合 : 多媒体开发的中间文件、保存音乐和音效素材。直播
MP3编码
MP3具备不错的压缩比,听感上比较接近源WAV文件。it
特色: 音质在128Kbit/s以上表现还不错,压缩比比较高,大量软件和硬件都支持,兼容性好。
适用场合: 高比特率下对兼容性有要求的音乐欣赏。
AAC编码
AAC是新一代的音频有损压缩技术,它经过一些附加的编码技术(好比PS、SBR等),衍生出了LC-AAC、HE-AAC、HE-AAC v2三种主要的编码格式。
特色:在小于128Kbit/s的码率下表现优异,而且多用于视频中的音频编码。
适用场合:128Kbit/s如下的音频编码,多用于视频中音频轨的编码。
Ogg编码
Ogg是一种很是有潜力的编码,在各类码率下都有比较优秀的表现,尤为是在中低码率场景下。Ogg除了音质好以外,仍是彻底免费的。Ogg有着很是出色的算法,能够用更小的码率达到更好的音质,128Kbit/s的Ogg比192Kbit/s甚至更高码率的MP3还要出色。但目前由于尚未媒体服务软件的支持,Ogg目前受支持的状况还不够好,不管是软件上的仍是硬件上的支持,都没法和MP3相提并论。
特色:能够用比MP3更小的码率实现比MP3更好的音质,高中低码率下均有良好的表现,兼容性不够好,流媒体特性不支持。 适用场合:语音聊天的音频消息场景。