import gradio as gr import numpy as np import librosa import soundfile as sf from pydub import AudioSegment from pydub.silence import split_on_silence # Fonction pour diviser l'audio et supprimer les silences def remove_silence(input_audio): # Charger le fichier audio audio = AudioSegment.from_file(input_audio) # Diviser l'audio en segments sans silence segments = split_on_silence(audio, min_silence_len=1000, silence_thresh=-40) # Recomposer l'audio sans les silences non_silent_audio = AudioSegment.empty() for segment in segments: non_silent_audio += segment # Ajouter les segments sans silence # Sauvegarder le fichier audio sans silences output_path = "/tmp/output_without_silence.wav" non_silent_audio.export(output_path, format="wav") return output_path # Interface Gradio iface = gr.Interface( fn=remove_silence, inputs=gr.Audio(type="filepath"), outputs=gr.File(label="Audio sans silence"), title="Diviser Audio; suppression de silence." ) # Lancer l'interface Gradio iface.launch()