Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -146,6 +146,8 @@ def analyze_audio(audio_file: str,
|
|
| 146 |
preprocess: bool = True,
|
| 147 |
preprocess_params: Optional[Dict[str, Any]] = None) -> AnalysisResults:
|
| 148 |
results = AnalysisResults()
|
|
|
|
|
|
|
| 149 |
if not os.path.exists(audio_file):
|
| 150 |
results.message = f"Error: Input audio file '{audio_file}' not found."
|
| 151 |
return results
|
|
@@ -200,6 +202,7 @@ def analyze_audio(audio_file: str,
|
|
| 200 |
else:
|
| 201 |
warn(results, "DIAR_SKIP", "HF_TOKEN not set. Skipping speaker diarization.")
|
| 202 |
print("Assigning speakers to words...")
|
|
|
|
| 203 |
try:
|
| 204 |
diarize_segments_for_assignment = []
|
| 205 |
if diarize_output is not None:
|
|
@@ -247,7 +250,6 @@ def analyze_audio(audio_file: str,
|
|
| 247 |
except (TypeError, ValueError):
|
| 248 |
continue
|
| 249 |
return None
|
| 250 |
-
rows: List[Dict[str, Any]] = []
|
| 251 |
for seg in final.get("segments", []):
|
| 252 |
seg_speaker = normalize_speaker(seg.get("speaker") or seg.get("speaker_label") or "Speaker_1")
|
| 253 |
word_list = seg.get("words") or seg.get("tokens") or seg.get("items") or []
|
|
@@ -290,7 +292,6 @@ def analyze_audio(audio_file: str,
|
|
| 290 |
})
|
| 291 |
rows = sorted(rows, key=lambda r: r.get("start", 0.0))
|
| 292 |
results.timelineData = rows
|
| 293 |
-
ends = []
|
| 294 |
for w in rows:
|
| 295 |
e = w.get("end")
|
| 296 |
f_e = force_float(e)
|
|
|
|
| 146 |
preprocess: bool = True,
|
| 147 |
preprocess_params: Optional[Dict[str, Any]] = None) -> AnalysisResults:
|
| 148 |
results = AnalysisResults()
|
| 149 |
+
ends: List[float] = []
|
| 150 |
+
rows: List[Dict[str, Any]] = []
|
| 151 |
if not os.path.exists(audio_file):
|
| 152 |
results.message = f"Error: Input audio file '{audio_file}' not found."
|
| 153 |
return results
|
|
|
|
| 202 |
else:
|
| 203 |
warn(results, "DIAR_SKIP", "HF_TOKEN not set. Skipping speaker diarization.")
|
| 204 |
print("Assigning speakers to words...")
|
| 205 |
+
|
| 206 |
try:
|
| 207 |
diarize_segments_for_assignment = []
|
| 208 |
if diarize_output is not None:
|
|
|
|
| 250 |
except (TypeError, ValueError):
|
| 251 |
continue
|
| 252 |
return None
|
|
|
|
| 253 |
for seg in final.get("segments", []):
|
| 254 |
seg_speaker = normalize_speaker(seg.get("speaker") or seg.get("speaker_label") or "Speaker_1")
|
| 255 |
word_list = seg.get("words") or seg.get("tokens") or seg.get("items") or []
|
|
|
|
| 292 |
})
|
| 293 |
rows = sorted(rows, key=lambda r: r.get("start", 0.0))
|
| 294 |
results.timelineData = rows
|
|
|
|
| 295 |
for w in rows:
|
| 296 |
e = w.get("end")
|
| 297 |
f_e = force_float(e)
|