Spaces:
Sleeping
Sleeping
| import streamlit as st | |
| import speech_recognition as sr | |
| from pydub import AudioSegment | |
| def convert_audio_to_wav(audio_file): | |
| audio = AudioSegment.from_file(audio_file) | |
| wav_file = audio_file.name.split(".")[0] + ".wav" | |
| audio.export(wav_file, format="wav") | |
| return wav_file | |
| def speech_to_text(audio_file): | |
| recognizer = sr.Recognizer() | |
| with sr.AudioFile(audio_file) as source: | |
| audio = recognizer.record(source) | |
| try: | |
| text = recognizer.recognize_google(audio) | |
| return text | |
| except sr.UnknownValueError: | |
| return "Could not understand audio" | |
| except sr.RequestError as e: | |
| return f"Error: {str(e)}" | |
| def main(): | |
| st.title("Speech to Text Converter") | |
| st.write("Upload an audio file and convert it to text.") | |
| uploaded_file = st.file_uploader("Choose an audio file", type=["wav", "mp3"]) | |
| if uploaded_file is not None: | |
| file_details = {"Filename": uploaded_file.name, "FileType": uploaded_file.type} | |
| st.write(file_details) | |
| if uploaded_file.type == "audio/mp3": | |
| uploaded_file = convert_audio_to_wav(uploaded_file) | |
| text = speech_to_text(uploaded_file) | |
| st.write("Converted Text:") | |
| st.write(text) | |
| if __name__ == "__main__": | |
| main() |