yunusajib's picture
test app
d3f5c61 verified
raw
history blame
1.43 kB
import gradio as gr
import numpy as np
class AudioProcessor:
def __init__(self):
self.sample_rate = 16000
def process_audio(self, audio_input):
# Return properly formatted audio data with closing parenthesis
return (np.random.random(self.sample_rate * 3), self.sample_rate # Fixed missing parenthesis
def create_interface():
processor = AudioProcessor()
def process_audio(audio):
try:
audio_data, sr = processor.process_audio(audio)
status = f"Success! Processed {len(audio_data)} samples at {sr}Hz"
info = f"Audio length: {len(audio_data)/sr:.2f} seconds"
return status, info # Return exactly 2 values
except Exception as e:
return f"Error: {str(e)}", "No audio info available" # Still 2 values on error
with gr.Blocks() as demo:
gr.Markdown("## Working Audio Processor")
mic_input = gr.Audio(sources=["microphone"], type="filepath")
process_btn = gr.Button("Process")
with gr.Row():
status_out = gr.Textbox(label="Status")
info_out = gr.Textbox(label="Information")
process_btn.click(
fn=process_audio,
inputs=[mic_input],
outputs=[status_out, info_out]
)
return demo
if __name__ == "__main__":
demo = create_interface()
demo.launch()