IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

Comparaison de fichiers wave avec la librairie LibOFA


Sujet :

C++

  1. #1
    Membre à l'essai
    Inscrit en
    Juin 2008
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 15
    Points : 15
    Points
    15
    Par défaut Comparaison de fichiers wave avec la librairie LibOFA
    Bonjour

    J'aimerais connaitre le pourcentage de similitudes entre deux fichiers wave, dont l'un pourra être bruité (voir ralenti), on me propose d'utiliser la libraire libofa 1.5.3. , je ne vois pas de fonctions déjà défini pour connaitre cette similitude.
    Elle permet de générer des acoustic fingerprint (ou empreinte acoustique en vf) et d'après wikipédia :

    "Si deux échantillons sont perçus comme identiques par l'oreille humaine, leur empreinte doit être égale ou très proche, même si leur représentation numérique est très différente"

    Est-ce que la librairie lifofa avec les acoustic fingerprint me permettra de connaitre le pourcentage de similitudes ?

    En fait, j'aimerais bien avoir la même fonction "Similaire" qu'avec le logiciel Similarity.

    J'ai cherché pas mal sur différents forums, la question a souvent été posé mais jamais répondu

    Si quelqu'un pourrait m'aider, ça serait vraiment sympa !!!
    Merci

    Bonne journée !!!

  2. #2
    r0d
    r0d est déconnecté
    Expert éminent

    Homme Profil pro
    tech lead c++ linux
    Inscrit en
    Août 2004
    Messages
    4 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : tech lead c++ linux

    Informations forums :
    Inscription : Août 2004
    Messages : 4 262
    Points : 6 680
    Points
    6 680
    Billets dans le blog
    2
    Par défaut
    Bonjour,

    rien de certain, mais j'ai bien l'impression que cette libfoa fait bien ce que tu veux.
    Dans les fichiers fournis avec la lib, il y a un programme d'exemple. Récupère les sources de wavefile.cpp, protocole.cpp et protocole.h, et fais quelque chose comme:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    AudioData* data1 = loadWaveFile( "monfichier1.wav" );
    AudioData* data2 = loadWaveFile( "monfichier2.wav" );
    if ( data1->createPrint() && data2->createPrint() )
    {
       std::string fingerprint1 = data1->info.getPrint();
       std::string fingerprint2 = data2->info.getPrint();
       // faire ce qu'il y a à faire pour comparer les empreintes
    }
    Après je n'ai pas la moindre idée d'à quoi ressemble les empreintes générées par cette lib, mais il n'y qu'un seul moyen de le savoir: essayer
    « L'effort par lequel toute chose tend à persévérer dans son être n'est rien de plus que l'essence actuelle de cette chose. »
    Spinoza — Éthique III, Proposition VII

  3. #3
    Membre à l'essai
    Inscrit en
    Juin 2008
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 15
    Points : 15
    Points
    15
    Par défaut
    Merci pour cette réponse.

    En fait, comme la partie comparaison est effectué sur le serveur, et que le code n'est pas libre, je vais utiliser la librairie Chromaprint qui est libre aussi bien du coté serveur que client.

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 69
    Points : 142
    Points
    142
    Par défaut
    Attention : chromaprint devrait arriver à s'en sortir avec un fichier bruité - il te sortira des features assez proches de celles du fichier original - mais par contre, avec un son ralenti, ça posera probablement des soucis.

    Note que c'est peut-être aussi le cas pour libofa mais j'ai pas trouvé de renseignements sur la manière dont est implémentée le fingerprinting chez eux.


    DU coup, tu devrais peut-être te renseigner sur ce genre de techno : certaines modifications peuvent ne pas se voir, d'autre si...

  5. #5
    Membre à l'essai
    Inscrit en
    Juin 2008
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 15
    Points : 15
    Points
    15
    Par défaut
    Merci pour ces renseignements ELGat0.

    Pour l'instant , je bloque sur sur l'import de chromaprint sous windows.
    Je pense qu'elle a écrite pour linux et pas testé sous windows.
    Elle utilise SoX (Sound eXtrator) et je ne sais si c'est prévu pour windows.
    C'est pas évident, car je n'ai jamais utilisé de dll , donc je ne sais pas vraiment ce qu'il faut comme type de fichier pour que ça marche.

    As-tu déjà utilisé Chromaprint avec windows ?

Discussions similaires

  1. Fichier Wave avec nombre de bits par échantillon=16
    Par airefrais dans le forum Langage
    Réponses: 2
    Dernier message: 17/12/2009, 00h51
  2. Comparaison d'un fichier local avec un fichier distant
    Par WerKa dans le forum Général Java
    Réponses: 2
    Dernier message: 03/06/2008, 18h50
  3. Réponses: 1
    Dernier message: 09/10/2007, 07h44
  4. Comparaison de fichiers wave
    Par c-ve dans le forum Traitement d'images
    Réponses: 3
    Dernier message: 31/08/2007, 11h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo