【问题标题】:Add noise to Audio File and Reconvert the Noisy signal using Librosa Python向音频文件添加噪声并使用 Librosa Python 重新转换噪声信号
【发布时间】:2020-09-15 08:58:38
【问题描述】:

我正在使用 librosa 为信号添加噪声,但添加噪声后我无法将信号保存为 wav 文件。

我的代码如下:

import librosa

import matplotlib.pyplot as plt
import numpy as np
import math

file_path = r'path\to\file'
#
#
signal, sr = librosa.load(file_path, sr = 16000)
# plt.plot(signal)
#
RMS=math.sqrt(np.mean(signal**2))

STD_n= 0.001
noise=np.random.normal(0, STD_n, signal.shape[0])
#
# # X=np.fft.rfft(noise)
# # radius,angle=to_polar(X)
#
signal_noise = signal+noise

我想将 signal_noise 转换为 wav 文件。我尝试了不同的 librosa 功能,但找不到一个。我尝试使用 scipy.io.wavfile.write 但我收到错误可能是因为 Librosa 生成标准化音频而 Scipy 没有。

【问题讨论】:

    标签: python audio librosa


    【解决方案1】:

    你可以使用soundfile 库来做到这一点。将这些行添加到您的代码中:

    import soundfile
    soundfile.write('filename.wav',signal_noise,16000)
    

    参数:

    • 第一个参数是文件名
    • 第二个参数是你要保存的音频
    • 第三个参数是采样率

    希望对你有帮助!

    【讨论】:

    • 非常感谢苏希尔。这真的很有帮助。
    猜你喜欢
    • 2013-04-12
    • 2018-07-18
    • 1970-01-01
    • 1970-01-01
    • 2012-04-27
    • 1970-01-01
    • 2021-05-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多