音频重采样有什么用_音频相关的基础知识

3b2b5c789c24be344b7d9d8077c1d7c3.png

声音是什么

声音(sound)是由物体振动产生的声波。声音作为一种机械波,频率在20 Hz~20 kHz之间的声音是可以被人耳识别的。-----百度百科夫斯基

敲黑板:波、人耳识别频率:20 Hz~20 kHz

但是,每个人还是有差别的,想测试你的耳朵到底是龙精虎猛还是老态龙钟(这小成语用的,那叫一个炉火纯青),下面的视频可以告诉你答案。​不多逼逼,盘他

0bdbd593d56c5668721bbf68b993f385.png
测试你的耳朵多少岁https://www.zhihu.com/video/1178414947833544704

音频录制

最简单的音频录制流程为:

设备采集获取模拟信号 ---》模数转换 ---》存储(播放、传输等)

5fedaf0562a6c6f76b88b85cb46077ad.png

播放端流程相反:

音频文件 ---》数模转换 ---》播放器播放

模数转换

模拟信号转化为数字信号的流程(心疼大学老师一秒钟):

fec783568b3cf9d24f41d0f7f93bf455.png

如上图:

采样: 对模拟信号隔一定的时间间隔取一个点(图中交点)

量化: 给纵坐标加刻度,根据近似取整数值,使采样得到的点的值都是整数。

编码:对量化取得的整数值按二进制进行编码

数字信号:把编码得到的 0 和 1 的序列变现为高低电平的信号

上述整个模数转换的过程称为:脉冲编码调制(PulseCodeModulation),简称PCM。由上面的模数转换可知,PCM 格式文件存储的内容实际上就是编码得到的序列。

采样率:

每秒的采样次数。

对于声音来说,从上图采样的过程可以看的出来,采样率越高,即每秒内的采样点越多,采样点越密集,也就意味着离散信号对模拟信号的还原度越高。

合适的采样率

采样点无限多即连成原来的模拟信号曲线。当然,无限多的点无限多的数据存储和 cpu 也不允许啊。那什么样的采样率比较合适呢?

答:活着不一定是为了死去,但录制最终一定是为了播放。采样编码为了存储处理和传输,最终还是要还原出模拟信号来播放。

根据 “奈奎斯特采样理论”:当对被采样的模拟信号进行还原时,其最高频率只有采样频率的一半。(装逼一定要用又黑又粗。。。。的文字)

换句话说:要想重构完整的模拟信号,采样率要是模拟信号频率的两倍以上。--- gray_dog3

鉴于前面敲黑板所讲,人听觉范围:20 Hz -20 KHz。所以对于给人听的音频,采样率要宁杀错不放过,要大于40 KHz 才不会使人感觉到音质受损。

由此得出,合适的采样率 一般大于 40 KHz,注意是一般,采样率小一些高音会受损,不过除了对那些能听出热情火电和清冽水电的耳机党外,略小应该也不明显,平常 8k,16k 都有。

来自严谨党的质问:为什么大多数音频采样率采用 44.1K?不是 40K,也不是 44K,非要带个 0.1?

答:靠,你哪那么多为什么。

装逼专用: 在高深莫测的数学领域有一个神奇的数字即 44100,前四个素数的平方的乘积 44100:2x2x3x3x5x5x7x7=44100

靠谱回答:历史原因,早期录像机:245 扫描线,一行 3 个数据块,60 场频:245x3x60=44100,现在也有在推 48kHz,甚至 96kHz 的。

采样深度:

即量化时纵坐标的量化粒度。

在上图模拟信号中,纵坐标代表的是声音的响度,即音量。

由上图量化过程可知,当量化的粒度越细,离散点取的值也就越接近模拟信号实际的值,如果量化时,采样深度为 1bit,即量化只能为 1 和 0,那每首歌听起来都像忐忑,一惊一乍的,要么播放最大声音,要么没有声音。

只有采样深度越深,即量化的粒度越细,采样出来的数据,才更接近实际的音量。

现在一般用 16 位来表示一个采样数据的音量大小。

敲黑板 16 位采样深度,即一个采集的样本点中,音量大小用 16 位二进制数来表示音量大小。

声道和立体声

友情提示:声音,音频,但是声道就只能读作声道,不能读作音道

单声道 Monaural:只有一个采集器采集音频做以上图中的流程处理。

立体音 Stereophonic:两个或两个以上声道数,多个设备录音,然后数据编码整合到一起。常见的有 双声道 4.1 环绕立体声(四个音源加一个低音喇叭来加强低音)5.1 、7.1 环绕立体声(杜比音效:装逼知识点)

PCM 数据

有了以上的认识,妈妈再也不用担心我看不懂 pcm 格式了。不废话,直接上图:

4ff2abef9da7abc5ad05d62a5a89d9f2.png

你没有看错,就是这么简单。对于 8 位采样深度的单声道,8 位表示一个采样的音量,都是这样的采样数据。

pcm 就是原始数据,没有 header,全是 body,满满的干货。双声道就是两个声道采样序列交替排列。

播放 PCM

由上面格式也可以看出 pcm 没有 header,没有采样率等信息,所以播放时需要告诉播放器:采样率、采样深度、声道数。

只有有了这些信息,播放器才知道读入 pcm 文件流的速度,以及读入数据该如何进行数模转换。

通常播放 pcm 格式的音频文件可以用 VLC 播放器,我在 mac 上使用的,windows 的百度下,播放应该很简单。就是这货:

6d546d81cbd91ceae672534cdb581164.png

播放命令:

/Applications/VLC.app/Contents/MacOS/VLC --demux=rawaud --rawaud-channels 1 --rawaud-samplerate 44100 record.pcm

命令中 samplerate 采样率,channels 声道数,现在都默认 16 位的,具体有 8 位的需求可以百度下。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值