from pydub import AudioSegment from pydub.playback import play import gradio as gr import os as neo import sys now_dir = os.getcwd() sys.path.append(now_dir) def apply_8d_effect(audio_path): audio = AudioSegment.from_file(audio_path) num_directions = 8 panned_tracks = [] for i in range(num_directions): pan_position = i / num_directions panned_audio = audio.pan(pan_position) panned_tracks.append(panned_audio) output_audio = f"{audio_path}_8d.wav" combined_audio = sum(panned_tracks) combined_audio.export(output_audio, format="wav") return output_audio with gr.Blocks() as app: audio_main = gr.Audio(label="your audio input", type="filepath") audio_output = gr.Audio(label="your audio output") convert_audio = gr.Button("Convert") convert_audio.click(fn=apply_8d_effect, inputs=[audio_main], outputs=[audio_output]) app.launch(share=True)