|
import gradio as gr |
|
import torchaudio |
|
from speechbrain.inference.enhancement import WaveformEnhancement |
|
import torch |
|
|
|
|
|
enhance_model = WaveformEnhancement.from_hparams( |
|
source="speechbrain/mtl-mimic-voicebank", |
|
savedir="pretrained_models/mtl-mimic-voicebank", |
|
) |
|
|
|
def enhance_audio(input_audio): |
|
|
|
waveform, sample_rate = torchaudio.load(input_audio) |
|
|
|
|
|
enhanced_waveform = enhance_model.enhance_batch(waveform) |
|
|
|
|
|
output_path = "enhanced_audio.wav" |
|
torchaudio.save(output_path, enhanced_waveform.cpu(), sample_rate) |
|
|
|
return output_path |
|
|
|
|
|
demo = gr.Interface( |
|
fn=enhance_audio, |
|
inputs=gr.Audio(type="filepath"), |
|
outputs=gr.Audio(type="filepath"), |
|
) |
|
|
|
demo.launch() |