2016-07-17 6 views
0

Я хочу отфильтровать шумы из voicerecording и нормализовать его. В настоящее время я борюсь с полосовым фильтром Баттерворта.Как применить фильтр Баттерворта к моему коду?

Как это применить в моем коде? (Я новичок в Python)

from numpy import nditer 
from pydub.audio_segment import AudioSegment 
from scikits.audiolab import wavread 

from scipy import signal 

# Stereo to mono 
stereo_sound = AudioSegment.from_wav('voice.wav') 
mono_sound = stereo_sound.set_channels(1) 
mono_sound.export('voice_mono.wav', format='wav') 

podcast = wavread('voice.wav') 

for frame in podcast: 
    print(frame) 

print("\n") 
print("\n") 


# Read mono file 
podcast = wavread('voice_mono.wav') 
frames = podcast[0] 
max_iter = 2000 
i = 0 
for frame in nditer(frames): 
    i += 1 
    if i < max_iter: 
     print(frame) 


# Apply Butterworth filter 

# Do Butterworth filter and save as new wav 
b, a = signal.butter(4, 100, 'bandpass', analog=True) 

Спасибо большое!

ответ

0

Сначала вы можете проверить, что у вас установлены numpy, pydub, scikits и scipy. Затем вы можете создать функцию с этим кодом и поместить свой аудиофайл в качестве входа.

 Смежные вопросы

  • Нет связанных вопросов^_^