Partage
  • Partager sur Facebook
  • Partager sur Twitter

Detection BPM avec Fmod(Ex) ou sans

Anonyme
    30 décembre 2007 à 3:29:12

    Bonsoir à tous.

    Bon voila j'suis en train (depuis quelques temps déjà) de développer un petit logiciel de mixage le Player21 mais à présent je bloque :
    Comment trouver le taux de Battement Par Minute d'une musique ?


    Donc vous vous doutez bien que j'ai recherché avant de poster...
    Et j'ai trouvé une lib utilisant Fmod 4 cette bibliotheque c'est : BPM Detection Library.
    Mais je suis incapable de l'utiliser (pour le moment en tout cas) j'ai vu les exemples, j'ai lu la doc, etc mais je n'y arrive pas :( .

    Donc si quelqu'un par hasard là déjà utilisé ce qui serait miraculeux pour moi qu'il m'aide un peu ^^
    Ou alors si quelqu'un peut m'expliquer comment on fait simplement avec FmodEx sachant que je sais déjà faire ce genre de visualisation

    Bon ou sinon c'est pas grave je trouverai sans doute tout seul mais ça sera long :p

    Merci de votre aide ^^.
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      31 décembre 2007 à 14:07:17

      Personne n'a une idée ? :euh:
      • Partager sur Facebook
      • Partager sur Twitter
        31 décembre 2007 à 19:00:55

        Bah chaque battement c'est en fait l'émission d'un son très grave. Peut être qui si tu analyses la partie grave du spectre, tu peux voir quand un beat arrive. Si la BMP Detection Library est open-source, tu peux aller voir comment ils font puis recoder l'algorithme...

        Mon idée serait : pour chaque tranche de 25ms, faire la moyenne des 10% des fréquences les plus grave (vu que tu as 512 fréquence, on va dire les 50 premières). Chaque fois que cette moyenne dépasse un certain seuil => beat. Tant qu'on est au dessus du seuil, on est toujours dans le même beat (car chaque beat durera sûrement plus qu'une seule frame).

        Tu peux aussi essayer en comparant la moyenne actuelle avec la moyenne des fréquences graves de la frame précédente : si la moyenne est nettement plus haute que la frame d'avant, alors il y a beat.

        Ce ne sont que des pistes, mais je vois pas d'autres solutions.
        • Partager sur Facebook
        • Partager sur Twitter
        J'ai déménagé sur Zeste de savoir — Ex-manager des modérateurs.
        Anonyme
          2 janvier 2008 à 17:19:56

          Salut GuilOooo.

          Oui j'ai très bien compris ce que tu as dit.
          Mais regarde dans l'image ICI dans le graphique en haut on voit bien les Bass des autres sons tandis que sur le graphique d'en dessous on voit rien du tout alors que c'est le même son simplement avec un compressor dessus...
          Et le graphique pour se dessiner il utilise que les bass (la fréquence 0)

          Donc voilà ce que je veux dire c'est que les musiques en général ne montre pas les bass (donc les Beat) aussi bien que celui du premier graphique.

          (Le son qui m'a permi de faire les deux graphique dure 6 secondes et je l'ai fait sous FL-S simplement pour ces test)

          Citation : GuilOooo

          (vu que tu as 512 fréquence, on va dire les 50 premières)


          En fait on peu en avoir bien plus ou bien moins si tu veux

          Citation : Fmod Documentation

          Size of array in floating point values being passed to the function. Must be a power of 2. (ie 128/256/512 etc). Min = 64. Max = 8192.


          Le gros problème à ça c'est que c'est impossible d'en prendre que une c'est super chiant :p .
          Cependant moi aussi j'ai pris 512 ^^.


          Merci d'avoir répondu.
          • Partager sur Facebook
          • Partager sur Twitter
            2 janvier 2008 à 19:38:42

            Je vois...
            Désolé, je ne peux pas t'aider plus pour ce problème là.
            • Partager sur Facebook
            • Partager sur Twitter
            J'ai déménagé sur Zeste de savoir — Ex-manager des modérateurs.

            Detection BPM avec Fmod(Ex) ou sans

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown