Journal panpantempo

PostĂ© par (site web personnel) . Licence CC By‐SA.
43
9
mar.
2018

Ah Nal,

En voyant l'enthousiasme autour de TapTapTempo et notamment la version js, j'ai eu l'idée d'en faire une version pour adultes: panpantempo.

Au lieu de mesurer le tempo de l'appui sur le clavier ou du clic de souris, panpantempo utilise le micro de la webcam pour détecter le tempo d'une fessée!

Pour le tester, tu peux ouvrir la page https://play.devnewton.fr/panpantempo/ avec ton brouteur préféré, autoriser l'accÚs au microphone et demander un coup de main à ton·a conjoint·e !

panpan

  • # Faut taper fort ?

    PostĂ© par . ÉvaluĂ© Ă  2.

    Non parce que j’ai pas l’impression qu’il se laisse abuser par une imitation ton code :-" Il a une prĂ©fĂ©rence pour certains objets de fessĂ©e aussi ?

    • [^] # Re: Faut taper fort ?

      PostĂ© par . ÉvaluĂ© Ă  2.

      J'ai dĂ©tournĂ© le soft en frappant des mains plutĂŽt qu'en donnant la fessĂ©e. Ça fonctionne nickel ! Beau portage.

      • [^] # Re: Faut taper fort ?

        PostĂ© par . ÉvaluĂ© Ă  5. DerniĂšre modification le 10 mars 2018 Ă  12:26.

        Ah bah en fait le micro était tout simplement éteint. Je me sens tout michu. Et du coup ça fonctionne au poil, oserais-je dire !

      • [^] # Re: Faut taper fort ?

        PostĂ© par (site web personnel) . ÉvaluĂ© Ă  7.

        J'aimerais améliorer la détection avec du deeplearning, mais ça demande une base de sons d'au moins un millier de fesses pour l'apprentissage!

        Ce post est offensant ? Prévenez moi sur https://linuxfr.org/board

  • # \_°<

    PostĂ© par . ÉvaluĂ© Ă  0.

    Tout est dans le titre.

  • # DĂ©tection

    PostĂ© par (site web personnel) . ÉvaluĂ© Ă  1.

    Bravo pour la créativité :-)

    J'ai cherché à comprendre comment tu détectes les "claps".

    function detectClap(data){
     var t = (new Date()).getTime();
     if(t - lastClap < 200) return false; // TWEAK HERE
     var zeroCrossings = 0, highAmp = 0;
     for(var i = 1; i < data.length; i++){
     if(Math.abs(data[i]) > 0.25) highAmp++; // TWEAK HERE
     if(data[i] > 0 && data[i-1] < 0 || data[i] < 0 && data[i-1] > 0) zeroCrossings++;
     }
     if(highAmp > 20 && zeroCrossings > 30){ // TWEAK HERE
     //console.log(highAmp+' / '+zeroCrossings);
     lastClap = t;
     return true;
     }
     return false;
     }
    

    Donc il faut que le signal sonore passe 20 fois au dessus de 0.25 en valeur absolue et 30 fois croiser l'origine ?
    Est-ce que cette métrique est issue de tests en conditions réelles ? ;-)

Suivre le flux des commentaires

Note : les commentaires appartiennent Ă  celles et ceux qui les ont postĂ©s. Nous n’en sommes pas responsables.