Le système RLAC (Real-time Live Audio Chronicle) de GroovyMorning repose sur une architecture distribuée où deux environnements collaborent : un backend Java (Gradle) pour l’enregistrement et un serveur Python (FastAPI) pour l’intelligence artificielle. Le maintien d’une synchronisation parfaite à la seconde près sur un flux fonctionnant 24h/24 constitue le défi principal.
Le coeur du système d’enregistrement (situé dans 1.RLAC-AudioRecorder) repose sur une approche de flux master :
continuousStartTime). Chaque segment N est ainsi virtuellement horodaté : T = StartTime + N.Lorsqu’une tâche de capture de chronique écoute le flux, elle reçoit les notifications de début et de fin de la part de l’IA (le serveur Python). Cependant, entre le début réel de la chronique et sa confirmation par l’IA, plusieurs secondes peuvent s’écouler (latence de transcription, analyse LLM, etc.).
Pour résoudre ce décalage, une stratégie de correction rétroactive est employée :
realDuration exacte, l’heure de fin réelle est recalculée par le serveur Java. Les segments excédentaires, liés par erreur à cause de la latence, sont alors instantanément supprimés.
Ce mécanisme de recalibrage est l’élément clé permettant de transformer une détection d’IA parfois imprécise ou tardive en un fichier audio parfaitement segmenté pour l’utilisateur final.