import streamlit as st from audiorecorder import audiorecorder import openai import os import wave import tempfile # Nastavení klíče API pro OpenAI openai.api_key = os.environ['OPENAI_API_KEY'] def transcribe(audio_path): """ Transkribuje audio soubor pomocí Whisper API. """ with open(audio_path, "rb") as audio_file: response = openai.Audio.transcribe("whisper-1", audio_file) return response['data']['text'] # Streamlit aplikace st.title("Audio Transkriptor") # Nahrávání audia st.markdown("Nahrajte svůj hlasový záznam.") audio_data = audiorecorder("Record", "Stop") # Zpracování a zobrazení transkripce if audio_data is not None and len(audio_data) > 0: # Uložení audio dat do dočasného WAV souboru with tempfile.NamedTemporaryFile(delete=False, suffix='.wav') as tmp_file: audio_path = tmp_file.name with wave.open(audio_path, 'wb') as wav_file: wav_file.setnchannels(1) wav_file.setsampwidth(2) wav_file.setframerate(44100) wav_file.writeframes(audio_data.tobytes()) # Transkripce audia with st.spinner('Probíhá transkripci...'): transcript = transcribe(audio_path) st.text_area("Transkript", value=transcript, height=300)