import gradio as gr from pydub import AudioSegment import os def convert_audio(input_files, output_format): output_file_paths = [] for audio_file in input_files: audio = AudioSegment.from_file(audio_file.name) output_filename = os.path.splitext(audio_file.name)[0] + "." + output_format audio.export(output_filename, format=output_format) output_file_paths.append(output_filename) return output_file_paths # Define Gradio interface with gr.Blocks() as app: gr.Markdown("## Audio Format Converter") with gr.Row(): input_files = gr.File(label="Upload Audio Files", file_types=["audio"], file_count="multiple") output_format = gr.Dropdown(label="Select Output Format", choices=["mp3", "wav", "ogg", "flac"]) convert_button = gr.Button("Convert") output_files = gr.Files(label="Converted Audio Files", type="file") convert_button.click(fn=convert_audio, inputs=[input_files, output_format], outputs=output_files) # Launch the app app.launch()