1.产生过程:
肺部空气
→
\rightarrow
→冲击声带
→
\rightarrow
→通过声道(可以调节)
→
\rightarrow
→发出不同声音
2.感知过程:
空气传播
→
\rightarrow
→进入人耳
→
\rightarrow
→鼓膜震动
→
\rightarrow
→听小骨
→
\rightarrow
→耳蜗
→
\rightarrow
→电信号
→
\rightarrow
→中枢听觉系统

2.基音轨迹: 信号以横轴为时间,纵轴为基频得到的曲线。汉语拼音四声如图2所示 1 ^1 1。



1.工作原理:当声波使膜片振动时,连接在膜片上的线圈随着一起振动,产生感应电流(电信号),通过信号放大器,并从扬声器发出声音。
2.优缺点:优点有不需要直流工作电压,缺点包括灵敏度低。
sox input.wav -e mu-law -b 8 output.wav
sox input.wav -e mu-law output1.wav
output.wav和output1.wav一样大小,均为input.wav一半。上面两行代码一直,表示
μ
−
law
\mu-\text{law}
μ−law默认为8位
μ
−
law
\mu-\text{law}
μ−law公式为:
f
(
x
)
=
sgn
(
x
)
ln
(
1
+
μ
∣
x
∣
)
ln
(
1
+
μ
)
f(x) =\text{sgn}(x)\frac{\text{ln}(1+\mu|x|)}{\text{ln}(1+\mu)}
f(x)=sgn(x)ln(1+μ)ln(1+μ∣x∣)


import scipy
import matplotlib.pyplot as plt
import numpy as np
# 读取音频文件
rate, data = scipy.io.wavfile.read("resampled.wav")
# 计算 STFT
f, t, Z = scipy.signal.stft(
data, fs=rate, window='hann', nperseg=400, noverlap=240,
nfft=None, detrend=False, return_onesided=True,
boundary='zeros', padded=True, axis=-1
)
# 绘制音频波形
plt.figure(figsize=(12, 6))
plt.subplot(2, 1, 1)
plt.plot(data)
plt.title('Audio Waveform')
plt.xlabel('Sample')
plt.ylabel('Amplitude')
# 绘制频谱
plt.subplot(2, 1, 2)
plt.pcolormesh(t, f, 10 * np.log10(np.abs(Z)), shading='auto')
plt.title('Spectrogram')
plt.xlabel('Time (s)')
plt.ylabel('Frequency (Hz)')
plt.colorbar()
plt.tight_layout()
plt.show()
