# Streamlit main app placeholder import streamlit as st from utils.audio_utils import process_audio, save_audio from utils.visualizer import show_equalizer, karaoke_lyrics from firebase_config import firebase_auth_check import os st.set_page_config(page_title="AI Voice Cloner & Singer", layout="wide") st.markdown('', unsafe_allow_html=True) st.title("🎤 AI Voice Cloner & Singer App") firebase_auth_check() user_audio = st.file_uploader("Upload Your Voice Sample (Male/Female)", type=['wav', 'mp3']) ref_audio = st.file_uploader("Upload Target Singer Audio", type=['wav', 'mp3']) gender = st.radio("Select Target Voice Gender:", ("Male", "Female", "Both")) enable_eq = st.checkbox("Show Real-Time Frequency Spectrum Visualizer 🎶") show_lyrics = st.checkbox("Show Karaoke Lyrics Sync (If Available) 🎤") if st.button("Convert Voice"): if user_audio and ref_audio: output_path = process_audio(user_audio, ref_audio, gender) st.audio(output_path) if enable_eq: show_equalizer(output_path) if show_lyrics: karaoke_lyrics(output_path) save_audio(output_path) st.success("✅ Conversion Done!") else: st.error("Please upload both your voice and target singer voice.")