欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 文旅 > 明星 > 判断声音“混”的原因

判断声音“混”的原因

2025/5/5 7:51:23 来源:https://blog.csdn.net/qq_43216714/article/details/147701609  浏览:    关键词:判断声音“混”的原因

使用工具来分析音频的波形和频谱,从而判断声音“混”的原因

#定义音频路径并重新执行分析
audio_path = "/mnt/data/cb2ddbdb-f728-4c7a-b5c2-a39276d08735.wav"# 读取音频文件
with wave.open(audio_path, 'rb') as wf:n_channels = wf.getnchannels()sample_width = wf.getsampwidth()framerate = wf.getframerate()n_frames = wf.getnframes()audio_data = wf.readframes(n_frames)# 转为numpy数组
audio_np = np.frombuffer(audio_data, dtype=np.int16)
if n_channels == 2:audio_np = audio_np[::2]  # 只取一个声道# 生成波形图
time_axis = np.linspace(0, len(audio_np) / framerate, num=len(audio_np))# 生成频谱图
f, t, Sxx = spectrogram(audio_np, fs=framerate)# 可视化
fig, axs = plt.subplots(2, 1, figsize=(12, 6))axs[0].plot(time_axis, audio_np)
axs[0].set_title("Waveform")
axs[0].set_xlabel("Time (s)")
axs[0].set_ylabel("Amplitude")im = axs[1].pcolormesh(t, f, 10 * np.log10(Sxx), shading='gouraud')
axs[1].set_title("Spectrogram")
axs[1].set_xlabel("Time (s)")
axs[1].set_ylabel("Frequency (Hz)")
fig.colorbar(im, ax=axs[1], format="%+2.0f dB")plt.tight_layout()
plt.show()

在这里插入图片描述
✅ 波形图:
幅度整体较稳定,说明没有明显的爆音或削波问题。

但波形看起来比较压缩,峰值和谷值变化不够大,可能缺少高频细节或被“压缩得太狠”。

🎼 频谱图(Spectrogram):
高频(4000Hz以上)能量比较弱,声音亮度不够,容易感觉“混”或者“闷”。

中低频占比偏重,若没有削除低频噪音或背景声,会导致声音“糊”。

没有明显的清晰共振峰或谐波轨迹,说明音色信息没有很好地保留,模型输出可能存在频率模糊或失真。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词