-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmp3_noise_filter.py
29 lines (23 loc) · 929 Bytes
/
mp3_noise_filter.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import soundpy as sp
import IPython.display as ipd
import os
import argparse
import sys
import logging
parser = argparse.ArgumentParser()
parser.add_argument('-i', '--input_file_path', type=str)
parser.add_argument('-o', '--output_file_path', type=str)
args = parser.parse_args()
if args.input_file_path == None or args.output_file_path == None:
logging.exception('Arguments not properly set. -i for input file, -o for output file')
sys.exit()
input_file_path = args.input_file_path
output_file_path = args.output_file_path
noisy_sound = sp.string2pathlib(input_file_path)
sr = 48000
# sp.plotsound(noisy_sound, sr=sr, feature_type='signal',
# title = 'Noisy Speech', subprocess=True)
filtered_sound, sr = sp.filtersignal(noisy_sound,
sr = sr,
filter_type = 'wiener') # default
sp.files.savesound(output_file_path, filtered_sound, sr)