OuterPractice draait drie observatielagen in de browser: MediaPipe PoseLandmarker haalt gewrichtsposities op, FaceLandmarker leidt gezichtsspanning-kenmerken af, en een Web Audio-worklet berekent aanzet- en dynamische kenmerken uit omgevingsgeluid. Geen beelden of ruwe audio verlaten het apparaat.

Hoe OuterPractice observeert.

De technische laag: MediaPipe-houdingsdetectie, FaceLandmarker voor gezichtsspanning-kenmerken en analyse van omgevingsgeluid voor aanzet en dynamiek. Alles in je browser.

Probeer een sessie →
capturecamera + microfoonextractkenmerkvectorenspanninggekalibreerd signaal

De capture-laag

MediaPipe PoseLandmarker en FaceLandmarker draaien op de camerastream met ~30 frames per seconde. Een Web Audio-worklet draait op de microfoonstream en berekent aanzet- en dynamische kenmerken. Er worden geen beelden of ruwe audiomonsters bewaard — alleen afgeleide kenmerken.

De extract-laag

Per seconde leveren de extractors een kenmerkvector: schouderlift- delta, hoofdkantelingshoek, kaakafstand-verhouding, aantal knipperingen, wenkbrauwspanning-proxy, variantie van het aanzetinterval en amplitude van dynamische gebeurtenissen. Pure afleidingen uit de ruwe streams.

De spanning-laag

Kenmerken vormen samen één gekalibreerd spanningssignaal. Baselines zijn persoonlijk — vastgesteld tijdens de eerste 30 seconden van elke sessie, zodat de natuurlijke hoofdkanteling van een violist niet als spanning telt. De spanningspatronen zijn nu afgestemd op drummen; andere instrumenten gebruiken generieke baselines tot er een afgestemd profiel is toegevoegd.

Wat er bewaard blijft

De kenmerkvector per seconde en het afgeleide spanningssignaal, opgeslagen in de IndexedDB van je browser. Geen video. Geen ruwe audio. Geen beelden. Sessies kunnen als JSON worden geëxporteerd voor de docentloop.

Waarom een browser

Geen installatie, geen toestemmingen behalve camera en microfoon. De PWA installeert naar het beginscherm voor starten met één tik, maar blijft lokaal werken, ook offline.