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 :

Lecture bit a bit fichier wav


Sujet :

C++

  1. #1
    Futur Membre du Club
    Inscrit en
    Avril 2008
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 10
    Points : 8
    Points
    8
    Par défaut Lecture bit a bit fichier wav
    Bonjour,
    Je suis débutant en C++ et il faudrait que je lise un fichier wav bit par bit pour le comparer avec un autre.
    Est ce que quelqu'un aurait une idée ?
    Merci d'avance

  2. #2
    Futur Membre du Club
    Inscrit en
    Avril 2008
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 10
    Points : 8
    Points
    8
    Par défaut
    J'ai fait quelques recherches sur le net et voila où j'en suis


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
     
    #include <stdio.h>
    #include <stdlib.h>
     
     
     
    int main () {
      FILE * pFile;
      long lSize;
      char * buffer;
      size_t result;
     
      FILE * pFile2;
      long lSize2;
      char * buffer2;
      size_t result2;
     
      pFile = fopen ( "./me_gustas_Content.wav" , "rb" );
      if (pFile==NULL) {fputs ("File error",stderr); exit (1);}
     
      pFile2 = fopen ( "./me_gustas.wav" , "rb" );
      if (pFile2==NULL) {fputs ("File2 error",stderr); exit (1);}
     
      // obtain file size:
      fseek (pFile , 0 , SEEK_END);
      lSize = ftell (pFile);
      rewind (pFile);
     
      fseek (pFile2 , 0 , SEEK_END);
      lSize2 = ftell (pFile2);
      rewind (pFile2);
     
      buffer = (char*) malloc (sizeof(char)*lSize);
      if (buffer == NULL) {fputs ("Memory error",stderr); exit (2);}
      buffer2 = (char*) malloc (sizeof(char)*lSize2);
      if (buffer2 == NULL) {fputs ("Memory 2 error",stderr); exit (2);}
     
      result = fread (buffer,1,lSize,pFile);
      if (result != lSize) {fputs ("Reading error",stderr); exit (3);}
     
      result2 = fread (buffer2,1,lSize2,pFile2);
      if (result2 != lSize2) {fputs ("Reading2 error",stderr); exit (3);}
     
      fclose (pFile);
      free (buffer);
      fclose (pFile2);
      free (buffer2);
     
      printf ("%d\n",result);
      printf ("%d\n",result2);
     
     
      return 0;
    }

  3. #3
    Expert éminent sénior
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 612
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 612
    Points : 30 611
    Points
    30 611
    Par défaut
    Salut, et bienvenue sur le forum.

    D'abord, il faut faire attention: le code que tu présente est - typiquement - exclusivement C...

    Pour le reste, autant te le dire tout de suite, je ne suis pas spécialiste des fichiers sonores en tous genre.

    Cependant un fichier sonore étant, à la base, un fichier dit... binaire, tu peux te baser sur cette entrée de la FAQ et sur cette autre entrée pour ce qui en est de la lecture même du fichier.

    Pour ce qui est de la comparaison, le mieux est peut etre, tout simplement, de "regrouper" les bits par... bytes (des "char" en fait), et de les comparer un à un...

    Le tout étant alors de décider la manière de les comparer
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

  4. #4
    Futur Membre du Club
    Inscrit en
    Avril 2008
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 10
    Points : 8
    Points
    8
    Par défaut
    Merci je vais suivre ces pistes

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    780
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mai 2006
    Messages : 780
    Points : 1 176
    Points
    1 176
    Par défaut
    Il faudrait le déplacer dans le forum C?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Lecture bit à bit d'un fichier
    Par luckan dans le forum Débuter
    Réponses: 4
    Dernier message: 07/02/2008, 18h45
  2. Réponses: 5
    Dernier message: 03/06/2005, 15h06
  3. afficher un bitmap 24/32 bits depuis un fichier
    Par cyber_N dans le forum MFC
    Réponses: 3
    Dernier message: 15/11/2004, 22h46
  4. Lecture de fichiers ".WAV"...
    Par 0x4e84 dans le forum Langage
    Réponses: 2
    Dernier message: 03/09/2002, 10h43
  5. Lire 1 bit d'un fichier en C
    Par Anonymous dans le forum C
    Réponses: 3
    Dernier message: 23/05/2002, 19h31

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