Spaces:
Running
Running
distinct
Browse files
app.py
CHANGED
@@ -32,11 +32,20 @@ def process_audio(audio_path):
|
|
32 |
mfccs_scaled = scaler.fit_transform(mfccs.T)
|
33 |
print("MFCC normalisé.")
|
34 |
|
35 |
-
# Clustering avec KMeans
|
36 |
kmeans = KMeans(n_clusters=2, random_state=42, n_init=10)
|
37 |
speaker_labels = kmeans.fit_predict(mfccs_scaled)
|
38 |
print(f"Clustering terminé, {len(set(speaker_labels))} locuteurs détectés.")
|
39 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
40 |
# Regrouper les segments audio par speaker
|
41 |
speaker_audio = {speaker: [] for speaker in set(speaker_labels)}
|
42 |
segment_duration = len(audio_denoised) // len(speaker_labels)
|
|
|
32 |
mfccs_scaled = scaler.fit_transform(mfccs.T)
|
33 |
print("MFCC normalisé.")
|
34 |
|
35 |
+
# Clustering avec KMeans (au départ avec 2 clusters, mais on peut ajuster après)
|
36 |
kmeans = KMeans(n_clusters=2, random_state=42, n_init=10)
|
37 |
speaker_labels = kmeans.fit_predict(mfccs_scaled)
|
38 |
print(f"Clustering terminé, {len(set(speaker_labels))} locuteurs détectés.")
|
39 |
|
40 |
+
# Vérification du nombre de locuteurs
|
41 |
+
num_speakers = len(set(speaker_labels))
|
42 |
+
if num_speakers == 1:
|
43 |
+
print("Un seul locuteur détecté.")
|
44 |
+
elif num_speakers == 2:
|
45 |
+
print("Deux locuteurs détectés.")
|
46 |
+
else:
|
47 |
+
print(f"Plus de deux locuteurs détectés : {num_speakers} locuteurs.")
|
48 |
+
|
49 |
# Regrouper les segments audio par speaker
|
50 |
speaker_audio = {speaker: [] for speaker in set(speaker_labels)}
|
51 |
segment_duration = len(audio_denoised) // len(speaker_labels)
|