update app.py
Browse files
app.py
CHANGED
|
@@ -193,20 +193,28 @@ def preprocess_sound(df):
|
|
| 193 |
# -------- Gradio --------
|
| 194 |
def predict_with_metadata(url):
|
| 195 |
if url.strip() == "":
|
| 196 |
-
return " Veuillez entrer une URL FreeSound."
|
|
|
|
|
|
|
| 197 |
df_raw = fetch_sound_metadata(url)
|
| 198 |
raw_str = "=== Métadonnées brutes ===\n" + df_raw.to_string(index=False)
|
| 199 |
-
df_processed = preprocess_sound(df_raw)
|
| 200 |
|
| 201 |
-
|
| 202 |
-
|
| 203 |
-
|
| 204 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 205 |
|
| 206 |
return raw_str + processed_str
|
| 207 |
|
| 208 |
|
| 209 |
|
|
|
|
| 210 |
with gr.Blocks(title="FreeSound Popularity Detector") as demo:
|
| 211 |
gr.Markdown("# 🎧 FreeSound Popularity Detector")
|
| 212 |
gr.Markdown("Collez l'URL d'un son FreeSound et le preprocessing complet sera appliqué automatiquement.")
|
|
|
|
| 193 |
# -------- Gradio --------
|
| 194 |
def predict_with_metadata(url):
|
| 195 |
if url.strip() == "":
|
| 196 |
+
return "❌ Veuillez entrer une URL FreeSound."
|
| 197 |
+
|
| 198 |
+
# 1️⃣ Récupérer les métadonnées brutes
|
| 199 |
df_raw = fetch_sound_metadata(url)
|
| 200 |
raw_str = "=== Métadonnées brutes ===\n" + df_raw.to_string(index=False)
|
|
|
|
| 201 |
|
| 202 |
+
# 2️⃣ Vérifier la durée
|
| 203 |
+
dur = df_raw["duration"].iloc[0]
|
| 204 |
+
if dur < 0.5:
|
| 205 |
+
return raw_str + f"\n\n❌ Son trop court ({dur} sec)"
|
| 206 |
+
elif 3 < dur < 10 or dur > 60:
|
| 207 |
+
return raw_str + f"\n\n❌ Son trop long ou hors plage acceptable ({dur} sec)"
|
| 208 |
+
|
| 209 |
+
# 3️⃣ Prétraitement seulement si durée ok
|
| 210 |
+
df_processed = preprocess_sound(df_raw)
|
| 211 |
+
processed_str = "\n\n=== Features après preprocessing ===\n" + df_processed.to_string(index=False)
|
| 212 |
|
| 213 |
return raw_str + processed_str
|
| 214 |
|
| 215 |
|
| 216 |
|
| 217 |
+
|
| 218 |
with gr.Blocks(title="FreeSound Popularity Detector") as demo:
|
| 219 |
gr.Markdown("# 🎧 FreeSound Popularity Detector")
|
| 220 |
gr.Markdown("Collez l'URL d'un son FreeSound et le preprocessing complet sera appliqué automatiquement.")
|