ffmpeg学习10 音视频处理流程
1、直播客户端处理流程
2、音频数据流的采集
编码流程:采集到的原始数据就是PCM 经过编码器以后成为aac/mp3 然后再套一层封装mp4/flv形成多媒体文件
解码流程:脱掉封装,解码aac/mp3 生成PCM 播放
3、声音是如何产生的?
3.1、声音产生三个原因
- 声音是由物体震动产生的
- 它可以通过空气,液体,固体等传输
- 震动耳膜
3.2、人耳
耳道越长,听觉越敏感
3.3、人类的听觉范围
3.4、听觉和发声范围
所以对于人类进入蝙蝠洞,人类小声的说话,是不会惊动到蝙蝠的
3.5、声音的三要素
音调:音频的快慢 男生---小于-->女生---小于--->儿童 音频越快声音越悦耳
相同音量振幅的情况下,甲比乙音调高,嗓音震动的频率快音调高,男生要比女生的频率低
音量:震动的幅度
可以看出相同的频率的情况下甲比乙音量大
音色:谐波 不同的乐器有不同的谐波,对于乐器来说,钢琴对于小提琴产生的声音是不一样的,但是他们的频率是一样的,这不同的音色是由什么产生的呢?实际就是谐波
谐波就是和音,将黄色绿色蓝色三种正弦波合成以个波就是紫色的波形,紫色中的小的震动波形就是谐波,声音好听不好听就是这些小的谐波导致的。
4、模数转换
需要将声音的模拟信号转化为数字信号,如何进行数字信号采样,首先模拟信号如下
进行量化采样,按照每0.25进行采样,采样越多声音损失就越少。
常用的采样频率 48k次 44.1k次 32k 8k
这就是电路上使用的方波了,这就是模拟信号转化为数字信号的过程,转化为数字信号以后,计算机就可以使用了。
5、音频原始数据
5.1、音频原始数据格式
PCM 纯的音频数据,没有任何格式
WAV 封装多媒体文件的,既可以存储PCM数据就是在PCM数据上加了一个头,也可以存储压缩数据,
5.2、量化基本概念
采样大小:一个采样用多少bit存放。常用的是16bit
采样频率:8k、16k。32k、44.1k、48k
声道数:单声道、双声道、多声道、三个声道以上叫做立体声。
5.3、码流计算
要算一个PCM的音频流的码率是一件很轻松的事情,采样率*采样大小*声道数
例如:采样率为44.1khz,采样大小为16bit,双声道的PCM编码WAV文件,它的码率为44.1khz*16*2=1411.2kb/s 每秒1.4M的数据传输。这么大的码流显然无法在我们的网络上传输,所以需要压缩。
5.4、WAV Header https://www.jianshu.com/p/63d7aa88582b
详解:https://www.jianshu.com/p/63d7aa88582b
巨人的肩膀
编程必备基础-音视频小白系统入门课 https://coding.imooc.com/class/415.html
经典再升级-FFmpeg音视频核心技术全面精讲+实战 https://coding.imooc.com/class/279.html