Work

SoundIA TV

UML
Kotlin, JNI, CPP, Bluetooth
Room Database
Abonnements
Android TV
Firebase

Application android.

SoundIA TV KaEdDev

SoundIA TV est le module TV de l'application SoundIA:

  • Connexion / Inscription
  • On peut s'inscrire, se connecter avec google Sign in


  • Abonnements
  • La gestion des abonnements s'est faite avec google Play billing. Vertification de l'existance d'un abonnement ou pas ainsi que sa validité.


  • Enregistrement audio - transformation des données audio pour le model
  • Ce module est la base de l'application, il est composé de :

    • Service audio
    • Ce service s'occupe de l'enregistrement de donnéees audio avec la classe AudioRecord, initialisée avec un sampleRate, un channel, ainsi qu'un format. Pour compléter la phase d'enregistrement j'ai mis en place un Circular buffer. Le service s'occupe aussi de la coupure et de la reprise de l'enregistrement avec AudioManager, afin de détecter si le service audio est requis par une autre application. Exemple un appel entrant, ou l'utilisateur se sert d'une autre application, qui elle devient prioritaire car l'utilisateur est dessus.

    • traitement des données audio JNI C++
    • Une fois notre buffer rempli, les données sont envoyées à ma librairie native qui les transforme afin de concorder aux données d'entrées de notre model. Cette lib est construite à l'aide d'un fichier Cmake ainsi que quelques classes.


  • TensorFlow lite / Prédiction
  • Module qui permet d'effectuer un prédiction avec les données retournées par notre librairie native et le model chargé. Puis retourne le resulat. Si la prédiction atteint ou dépasse un certain seuil, une alerte est émise à l'utilisateur, ou une notification locale si l'application est en background.


  • Notification push, Connexion Bluetooth SmartEar.
  • Une notification push est émise afin d'avertir les utilisateurs possédant l'application Notifier. Application réalisé en Kotlin qui permet d'être averti si un proche possédant Strix IA à une alerte. Ensuite si l'utilisateur possède un smartEar, l'application se connecte au smartear en bluetooth et lui envoie une commande, afin que ce dernier émette un signal lumineux.


  • Historique des alertes
  • Les alertes détectées sont sauvegardés dans une base de données en local mise en place avec Room. Notre module de base de données est composé de Repository, Dao et de viewmodel afin d'établir la communication entre l'interface et notre base de données.