Spaces:
No application file
No application file
from denoiser.enhance import * | |
def enhance_new(args, in_file, out_file, model=None, local_out_dir=None): | |
# Load model | |
if not model: | |
model = pretrained.get_model(args).to(args.device) | |
model.eval() | |
dset = Audioset([(in_file, None)], with_path=True, | |
sample_rate=model.sample_rate, channels=model.chin, convert=True) | |
if dset is None: | |
return | |
loader = distrib.loader(dset, batch_size=1) | |
distrib.barrier() | |
with ProcessPoolExecutor(1) as pool: | |
iterator = LogProgress(logger, loader, name="Generate enhanced files") | |
pendings = [] | |
for data in iterator: | |
# Get batch data | |
noisy_signals, filenames = data | |
noisy_signals = noisy_signals.to(args.device) | |
# Forward | |
estimate = get_estimate(model, noisy_signals, args) | |
for estimate, noisy, filename in zip(estimate, noisy_signals, filenames): | |
write(estimate, out_file, sr=model.sample_rate) | |
if pendings: | |
print('Waiting for pending jobs...') | |
for pending in LogProgress(logger, pendings, updates=5, name="Generate enhanced files"): | |
pending.result() | |