File size: 1,790 Bytes
af20c67 bb122a6 c890329 bb122a6 af20c67 bb122a6 af20c67 bb122a6 c890329 bb122a6 c890329 bb122a6 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
import streamlit as st
import speech_recognition as sr
# Функция для записи и распознавания речи
def record_and_recognize(language="en-US"):
recognizer = sr.Recognizer()
# Используем микрофон как источник
with sr.Microphone() as source:
st.write("🎙️ Говорите, запись началась...")
try:
# Захват аудио
audio = recognizer.listen(source, timeout=5)
st.write("✅ Запись завершена! Распознаем текст...")
# Распознавание речи
text = recognizer.recognize_google(audio, language=language)
return text
except sr.UnknownValueError:
return "❌ Не удалось распознать речь. Попробуйте снова."
except sr.RequestError as e:
return f"❌ Ошибка сервиса распознавания речи: {e}"
# Интерфейс Streamlit
st.title("🎙️ Диктофон и Распознавание Речи")
st.write("Это приложение позволяет записывать вашу речь и распознавать её на русском или английском языке.")
# Выбор языка
language = st.radio("Выберите язык для распознавания:", ("Русский", "Английский"))
language_code = "ru-RU" if language == "Русский" else "en-US"
# Кнопка для начала записи
if st.button("Начать запись"):
recognized_text = record_and_recognize(language=language_code)
st.write("### Распознанный текст:")
st.write(recognized_text) |