基本
音频处理的技术,有以下:
- 采集麦克风输入
- 采集声卡输出
- 将音频数据送入声卡播放
- 将多路音频输入进行混音
MME: MultiMedia Extentions。 级别最低的驱动,等待时间长。
Direct Sound: 一般提供远低于MME的等待时间
ASIO: Audio Stream Input Output。 音频流输入输出,是第一个真正提供了小于10毫秒低等待时间的驱动
WASAPI:Windows Audio Session API
WDM: win32 Driver Model。Microsoft的最新类型驱动
声卡
实现声波/数字信号相互转换的一种硬件,把来自话筒、磁带、光盘的原始声音信号 加以转换,输出到耳机、扬声器、录音机等声响设备。
采样率:44100或48000帧/秒
音频库
SoundFile
读写音频文件,实现ndarray(N维数组)数据与wav文件的转换
import soundfile as sf
data, samplerate = sf.read('existing_file.wav')
sf.write('new_file.wav', data, samplerate)
读到的语音文件一般有两列,表示双声道语音。
PyAudio
可以将音频流输送到计算机声卡上,理论上该模块可以播放任何解码器解码而成的有效音频帧。
SoundDevices
实现通过声卡:播放、录制、回放等功能。
播放功能:将ndarray数据通过声卡播放出去。
音频编码文件
- AAC (Advanced Audio Coding) 高级音频编码
专为声音数据设计的有损文件压缩格式, - RAW
录制的音频源码,本设备不解码直接输出到下一个设备,让下一个设备解码。
PCM:本机解码完成后输出给下一个设备。 - WAV
微软公司专门为windows开发的一种标准数字音频文件,尺寸较大。
音频接口
AUX接口: (Auxiliary)是音频输入接口,常见的耳机接口,用来输入音频模拟信号,对应 TRS端子
TRS端子:连接音响设备,用以传递音频信号的连接器。 Tip 尖、Ring 环、Sleeve 套。虽然统称TRS,但也可依据具体的插头/插座的环(R)数不同而分别称为TS(无环,即尖和套各提供一个接触点)、TRS(一环,三个接触点)、TRRS(两环,四个接触点)等等。
RCA接口: 莲花头;
XLR接口:卡农口,传输 平衡与非平衡 信号;
AES/EBU :
Mic/Line接口:是TRS与XLR两用接口,可以接话筒若线路输入;
DAW
Digital Audio Workstation
Cubase AI常用;
FFMPEG
# mp3格式转化为wav格式
ffmpeg -i xi.mp3 -f wav -ar 16000 xie2.wav