Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
@@ -2,15 +2,18 @@ import streamlit as st
|
|
2 |
from audiorecorder import audiorecorder
|
3 |
import openai
|
4 |
import os
|
|
|
|
|
5 |
|
6 |
# Nastavení klíče API pro OpenAI
|
7 |
openai.api_key = os.environ['OPENAI_API_KEY']
|
8 |
|
9 |
-
def transcribe(
|
10 |
"""
|
11 |
-
Transkribuje audio
|
12 |
"""
|
13 |
-
|
|
|
14 |
return response["text"]
|
15 |
|
16 |
# Streamlit aplikace
|
@@ -22,6 +25,16 @@ audio_data = audiorecorder("Record", "Stop")
|
|
22 |
|
23 |
# Zpracování a zobrazení transkripce
|
24 |
if audio_data is not None and len(audio_data) > 0:
|
25 |
-
|
26 |
-
|
27 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
from audiorecorder import audiorecorder
|
3 |
import openai
|
4 |
import os
|
5 |
+
import wave
|
6 |
+
import tempfile
|
7 |
|
8 |
# Nastavení klíče API pro OpenAI
|
9 |
openai.api_key = os.environ['OPENAI_API_KEY']
|
10 |
|
11 |
+
def transcribe(audio_path):
|
12 |
"""
|
13 |
+
Transkribuje audio soubor pomocí Whisper API.
|
14 |
"""
|
15 |
+
with open(audio_path, "rb") as audio_file:
|
16 |
+
response = openai.Audio.transcribe("whisper-1", audio_file, filename=audio_path)
|
17 |
return response["text"]
|
18 |
|
19 |
# Streamlit aplikace
|
|
|
25 |
|
26 |
# Zpracování a zobrazení transkripce
|
27 |
if audio_data is not None and len(audio_data) > 0:
|
28 |
+
# Uložení audio dat do dočasného WAV souboru
|
29 |
+
with tempfile.NamedTemporaryFile(delete=False, suffix='.wav') as tmp_file:
|
30 |
+
audio_path = tmp_file.name
|
31 |
+
with wave.open(audio_path, 'wb') as wav_file:
|
32 |
+
wav_file.setnchannels(1)
|
33 |
+
wav_file.setsampwidth(2)
|
34 |
+
wav_file.setframerate(44100)
|
35 |
+
wav_file.writeframes(audio_data.tobytes())
|
36 |
+
|
37 |
+
# Transkripce audia
|
38 |
+
with st.spinner('Probíhá transkripci...'):
|
39 |
+
transcript = transcribe(audio_path)
|
40 |
+
st.text_area("Transkript", value=transcript, height=300)
|