Aller au contenu

M-Qualification - Vérifier l'enregistrement par échantillonnage

Type : vue plein écran (atteinte par clic « Vérifier l'enregistrement » depuis M-Passage). Persona principal : tous. C'est l'étape de sound check global que chaque utilisateur fait avant de déposer une nuit. Parcours couverts : P3 - Vérifier l'enregistrement par échantillonnage. Stories couvertes : E3.S1 - Générer la sélection, E3.S2 - Liste chronologique, E3.S3 - Lecteur audio, E3.S4 - Marquer écouté + suivi, E3.S5 - Verdict global, E3.S6 - Personnaliser la sélection.

L'écran est divisé en 2 colonnes : à gauche, la liste chronologique des séquences d'écoute échantillonnées (avec leur statut écouté/pas écouté) ; à droite, le panneau de détail avec info de la séquence + visualisation audio + boutons de verdict global + commentaire. L'utilisateur enchaîne typiquement : clic sur une séquence → écoute → coche éventuelle → suivante. Quand assez d'éléments ont été écoutés pour se faire une opinion, il sélectionne son verdict global puis l'enregistre.

Pattern visuel partagé avec M-Vision-Tadarida : les deux écrans suivent le même squelette « liste + détail » pour offrir une expérience cohérente. La différence porte sur la sémantique (un verdict GLOBAL pour M-Qualification, un verdict PAR observation pour M-Vision-Tadarida) et sur la visualisation (waveform simple ici, spectrogramme avec zoom là-bas).

Wireframe principal - 12 séquences sur 30 déjà écoutées, lecture en cours

🦇 VigieChiro PR Companion — ☐ ☓ 🏠 Mes sites 📥 Importer une nuit 📊 Vue tabulaire ⚙ Paramètres 👤 Local ‹ Mes sites Carré 640380 Passage 2 / A1 Vérifier l'enregistrement 🎧 Vérifier l'enregistrement par échantillonnage Écoutez quelques séquences réparties sur la nuit pour vous assurer que l'enregistrement est exploitable. PASSAGE Carré 640380 / A1 / N° 2 (2026) DATE 22/06/2026 (20:25 → 07:47) SÉQUENCES TOTALES 3 614 (durée audible 5h01) VERDICT ACTUEL non saisi STATUT Transformé 📋 Sélection d'écoute (30 séquences) Méthode RéparTemporel · réparties uniformément ⚙ Personnaliser... 12 / 30 écoutées (40 %) R13 : aucun seuil obligatoire HORODATAGE DURÉE FRÉQ. DOM. FICHIER ÉCOUTÉ 01 20:27:12 5,0 s 38 kHz …_202612 02 20:48:33 5,0 s 42 kHz …_204833 03 21:11:48 5,0 s 45 kHz …_211148 04 21:34:55 5,0 s 38 kHz …_213455 05 21:58:21 5,0 s 29 kHz …_215821 06 22:21:47 5,0 s 35 kHz …_222147 07 22:45:13 5,0 s 52 kHz …_224513 08 23:08:39 5,0 s — (silence) …_230839 09 23:32:05 5,0 s 41 kHz …_233205 10 23:55:31 5,0 s 37 kHz …_235531 11 00:18:57 5,0 s 44 kHz …_001857 12 00:42:23 5,0 s 25 kHz …_004223 ↓ 18 séquences supplémentaires ↓ + Ajouter une séquence... ↺ Régénérer la sélection 📋 Séquence sélectionnée N° 04 22/06 — 21:34:55 Durée 5,0 s · Fréquence dominante 38 kHz 04 / 30 ⚪ non écoutée 🎵 Vue audio (sonogramme + spectrogramme) Lecture vitesse normale · R10 +1 0 -1 120 80 40 20 8 kHz 0 1,5 3,0 4,0 5,0 s + ⏮ ⏯ ⏭ 2,1 s / 5,0 s 🔊 ━━━━━○── 📝 Verdict global du passage ✓ OK la nuit est exploitable ⚠ Douteux à signaler ❌ À jeter bloque dépôt (R14) 💬 Commentaire (optionnel) Vent fort vers 02:00, sons à vérifier en validation Tadarida ultérieurement. 💾 Enregistrer le verdict 💡 Raccourcis : ↑/↓ navigation · Espace lecture/pause · O verdict OK · D Douteux · J À jeter · ⏎ Enregistrer 12/30 écoutées · verdict OK sélectionné (non enregistré)

Annotations

  • Bandeau infos passage : 5 cellules de rappel (passage, date, séquences totales, verdict actuel, statut).
  • Colonne gauche - Liste séquences (identique au design précédent) :
    • Header avec compteur + bouton « ⚙ Personnaliser »
    • Barre de progression verte (12/30, 40 %) + rappel R13
    • Tableau 7 colonnes (▶, N°, horodatage, durée, fréquence, fichier, écouté ✓/○)
    • Ligne courante (n° 04) en surbrillance bleue
    • Boutons en bas : ajouter manuellement / régénérer
  • Colonne droite - Panneau de détail (style harmonisé avec M-Vision-Tadarida) :
    • Section 1 : info séquence (card claire .seq-info-card) — N° de séquence + horodatage + métadonnées + position dans la sélection (04/30), miroir de la « card info taxon » de M-Vision-Tadarida.
    • Section 2 : vue audio combinée (sonogramme + spectrogramme) — Composant partagé avec M-Vision-Tadarida, fourni par l'équipe pédagogique. Le sonogramme (amplitude/temps, fond clair) et le spectrogramme (fréquence/temps, fond sombre) sont synchronisés par un cursor rouge vertical unique. Boutons de zoom temps/fréquence accessibles sur le spectrogramme. L'utilisateur peut faire de l'écoute simple (sonogramme) ou analyser plus en détail (spectrogramme) selon ses besoins.
    • Section 3 : player audio (bar sombre comme M-Vision-Tadarida) — Contrôles ⏮ ⏯ ⏭, timecode, volume.
    • Section 4 : verdict global — 3 boutons colorés grand format (✓ OK vert / ⚠ Douteux orange / ❌ À jeter rouge). Le bouton sélectionné a une bordure plus épaisse (le OK ici est sélectionné). Sélection différée : ne persiste pas, attend le bouton « Enregistrer le verdict ».
    • Section 5 : commentaire — Champ texte multi-ligne optionnel.
    • Bouton « 💾 Enregistrer le verdict » primary à droite — Action finale qui persiste le verdict + commentaire et passe le passage au statut Vérifié.
  • Footer : raccourcis claviers harmonisés avec M-Vision-Tadarida (↑/↓/Espace/O/D/J/⏎).

Différences sémantiques avec M-Vision-Tadarida

Aspect M-Qualification (cet écran) M-Vision-Tadarida
Objet de la revue Séquences d'écoute échantillonnées Observations Tadarida (avec taxon)
Visualisation audio Sonogramme + spectrogramme (composant partagé) Sonogramme + spectrogramme (composant partagé)
Décision Un verdict GLOBAL pour toute la nuit Une décision par observation
Persistance Différée (bouton « Enregistrer ») Instantanée (par clic Valider/Corriger)
Boutons d'action OK / Douteux / À jeter Valider / Corriger / Référence
Statut résultant Passe au statut Vérifié Passe au statut Annoté Tadarida

Interactions clés

Élément Action
Clic sur ▶ d'une ligne Joue la séquence dans le player. Marque automatiquement comme « écoutée » (E3.S4)
Clic ailleurs sur la ligne Sélectionne la séquence et charge dans le player sans démarrer
↑ / ↓ (clavier) Navigation entre séquences
Espace (clavier) Lecture / pause de la séquence courante
O (clavier) ou clic vert Sélectionne le verdict OK
D (clavier) ou clic orange Sélectionne le verdict Douteux
J (clavier) ou clic rouge Sélectionne le verdict À jeter
(Entrée) ou clic Enregistrer Persiste le verdict + commentaire, passe le passage au statut Vérifié
Bouton ⚙ Personnaliser Ouvre la modale de personnalisation (cf. variante ci-dessous)
Verdict À jeter + Enregistrer Avertissement supplémentaire : « Ce passage ne pourra pas être inclus dans un lot prêt à déposer (R14) »

Variante - modale de personnalisation de la sélection

Activée par le bouton ⚙ Personnaliser dans le header de la liste. Permet de changer la méthode (RéparTemporel ou Aléatoire) et la taille (entre 10 et 100 séquences). Cette variante implémente E3.S6 (SHOULD).

⚙ Personnaliser la sélection d'écoute Méthode de constitution ⏱ RéparTemporel Séquences réparties uniformément sur la durée de la nuit (par défaut, R12). 🎲 Aléatoire Tirage aléatoire (avec seed pour reproductibilité d'une session à l'autre). Taille de la sélection Entre 10 et 100 séquences. La taille actuelle est appropriée pour ~3 600 séquences totales. 10 55 100 30 ⚠ Régénérer la sélection effacera votre progression d'écoute actuelle (12/30 séquences écoutées) mais conservera votre verdict s'il est saisi. Annuler ↺ Régénérer

Notes sur la modale de personnalisation

  • Méthode : 2 cards radio horizontales. RéparTemporel sélectionnée par défaut (cf. R12).
  • Taille : slider 10-100, valeur courante affichée à droite (gros chiffre bleu).
  • Aperçu impact (encart jaune) : avertissement explicite que la régénération efface la progression d'écoute mais conserve le verdict.
  • Boutons : Annuler (secondary) / Régénérer (primary).

Notes pour l'implémentation

  • TableView avec virtualisation : la liste des séquences peut atteindre 100 lignes (taille max). JavaFX TableView gère nativement la virtualisation, à confirmer avec un test sur 100+ lignes.
  • Composant de vue audio fourni : le bloc sonogramme + spectrogramme + cursor synchronisé + boutons zoom est un composant JavaFX fourni par l'équipe pédagogique (cf. Contraintes techniques). Les étudiants ne le réimplémentent pas - ils l'instancient avec un wav:Path et reçoivent les évènements de lecture / curseur. Ce composant est partagé avec M-Vision-Tadarida, évitant ainsi la duplication d'un calcul FFT non trivial.
  • Player audio : MediaPlayer JavaFX avec Media. Le composant audio fourni gère les contrôles standards (⏮ ⏯ ⏭) et expose une API simple.
  • Cohérence visuelle avec M-Vision-Tadarida : les deux écrans partagent le même style de panneau de détail (fond clair, sections numérotées, vue audio combinée, boutons d'action colorés en bas). Les étudiants n'implémentent qu'un seul pattern de « lieu d'écoute », réutilisé sur les deux écrans.
  • Sélection vs persistance du verdict : le clic sur l'un des 3 boutons (OK / Douteux / À jeter) sélectionne mais ne persiste pas. La persistance se fait via le bouton « Enregistrer le verdict » (qui peut aussi être déclenché par ⏎ Entrée). Cette dissociation évite les fausses manipulations et permet de changer d'avis avant de valider.
  • Synchronisation lecture ↔ progression : le statut écouté doit être marqué dès le début de la lecture (pas à la fin), pour permettre à l'utilisateur de zapper rapidement.
  • Persistance : la sélection, son état d'écoute, le verdict et le commentaire doivent tous être persistés en BD (E0.S4 + E0.S3). Au retour sur l'écran, on doit retrouver tout son contexte.
  • Raccourcis clavier (O/D/J/⏎/Espace/↑/↓) : à implémenter via setOnKeyPressed au niveau de la racine de la vue. Cohérents avec M-Vision-Tadarida (V/C/R/→) pour faciliter le transfert d'apprentissage.