Update app.py
Browse files
app.py
CHANGED
|
@@ -91,21 +91,20 @@ from chromadb.utils import embedding_functions
|
|
| 91 |
from chromadb import Client
|
| 92 |
from chromadb.config import Settings
|
| 93 |
|
| 94 |
-
def extract_audio(
|
| 95 |
"""Extracts audio from video or handles audio file directly."""
|
| 96 |
audio_path = "temp_audio.wav"
|
| 97 |
|
| 98 |
-
#
|
| 99 |
-
|
| 100 |
-
|
| 101 |
-
|
| 102 |
-
|
| 103 |
-
|
| 104 |
-
|
|
|
|
| 105 |
else:
|
| 106 |
-
|
| 107 |
-
with open(audio_path, "wb") as f:
|
| 108 |
-
f.write(file.getvalue())
|
| 109 |
|
| 110 |
return audio_path
|
| 111 |
|
|
|
|
| 91 |
from chromadb import Client
|
| 92 |
from chromadb.config import Settings
|
| 93 |
|
| 94 |
+
def extract_audio(uploaded_file):
|
| 95 |
"""Extracts audio from video or handles audio file directly."""
|
| 96 |
audio_path = "temp_audio.wav"
|
| 97 |
|
| 98 |
+
# Write uploaded file to a temporary file
|
| 99 |
+
temp_file = f"temp_{uploaded_file.name}"
|
| 100 |
+
with open(temp_file, "wb") as f:
|
| 101 |
+
f.write(uploaded_file.getvalue())
|
| 102 |
+
|
| 103 |
+
# Extract audio from video files or use directly for audio files
|
| 104 |
+
if uploaded_file.name.endswith(('.mp4', '.mkv')):
|
| 105 |
+
ffmpeg.input(temp_file).output(audio_path).run(overwrite_output=True)
|
| 106 |
else:
|
| 107 |
+
audio_path = temp_file
|
|
|
|
|
|
|
| 108 |
|
| 109 |
return audio_path
|
| 110 |
|