Répondre à la discussion
Affichage des résultats 1 à 3 sur 3

Lire un fichier .BIN avec Matlab converti d'un fichier .WAV



  1. #1
    solissisme

    Cool Lire un fichier .BIN avec Matlab converti d'un fichier .WAV


    ------

    Bonjour a tous !!

    Dans le cadre d'un projet de fin d'annee, je m'interresse aux differentes transformations que subit un son lorsqu'il est enregistre dans un pc, puis re-transcrit sous une autre forme (changement de format, gravure sur un cd, ou simple lecture).

    J'ai trouve sur un Internet un petit logiciel qui convertit un fichier .wav code sur 8 bits non signe, en un fichier binaire .BIN. D'apres les informations qui s'affichent sur mon ecran, j'ai deduit que le codage se faisait en hexadecimal.
    Donc j'ai un fichier en .BIN mais code en hexadecimal. Est ce correct ?

    Une fois avoir obtenu ce fichier, je voulais pouvoir relire le son qui est a l'origine contenu dans ce code. J'ai utilise pour cela le logiciel GoldWave auquel j'ai specifie que mon fichier en .BIN etait un son de frequence d'echantillonage x, code sur 8 bits mono non signe. Le programme m'a lu le fichier sans probleme. Celui si etait identique au son originel. D'ailleurs j'ai remarque que si on change la frequence d'echantillonage, le son est plus court et plus aigu, ou plus long et plus grave, pourquoi ?

    Maintenant j'ai voulu essaye avec Matlab. Lire un fichier wav ne me pose pas de probleme. La seule chose que je ne comprends pas ce sont les valeurs prises pour y qui oscillent entre -1 et +1.

    Par contre, mon gros soucis concerne la lecture de mon fichier .BIN. Je ne sais pas comment faire pour dire a matlab que ce fichier contient un fichier son.
    J'aimerai aussi qu'il m'affiche les lignes de code bit par bit de mon fichier.

    Je ne sais pratiquement rien de la programmation (je n'ai appris que du Pascal), donc j'aimerai quelque chose d'assez simple, ou alors bien explique . Il me semble qu'il faudrait faire une espece de boucle pour afficher le codage des bit mais je ne sais pas comment faire.


    Merci beaucoup d'avance !!!

    (Pardon pour les accents, mon ordi ne veut pas se mettre en clavier francais !!)

    -----

  2. #2
    lou_ibmix_xi

    Re : Lire un fichier .BIN avec Matlab converti d'un fichier .WAV

    j'ai deduit que le codage se faisait en hexadecimal.
    Je ne comprends pas ce que tu entends par là, l'hexadécimale c'est juste un format d'affichage des nombres en base 16, ce n'est pas un format audio.
    D'ailleurs j'ai remarque que si on change la frequence d'echantillonage, le son est plus court et plus aigu, ou plus long et plus grave, pourquoi ?
    C'est tu ce qu'est la fréquence d'échantillonnage? Rapidement, la fréquence d'échantillonnage est le nombre de fois par secondes que tu vas efféctuer une mesure. Par exemple, une fréquence d'échantillonnage de 1kHz correspond à une période d'échantillonnage de 1ms (1 / 1000), soit 1000 mesures par seconde.

    Si tu numérises 10 secondes d'un signal à 1kHz de fréquence d'échantillonnage, tu auras donc 10000 échantillons. Si maintenant tu rejoues ces échantillons à une fréquence de 10kHz, tu rejoueras un échantillons toutes les 100µs, donc la durée de ton signal ne sera plus que de 1s.

    Pourquoi ce sera plus aigü? Parce que tu fais également une dilatation de tes fréquences (cf théorème d'échantillonnage de Nyquist Shannon). Un bon exemple dans la vie de tous les jours (enfin de moins en moins), c'est exactement parreille que lorsque tu joues un disque 45 tours en 33 tours et vice-versa.

  3. #3
    solissisme

    Re : Lire un fichier .BIN avec Matlab converti d'un fichier .WAV

    J'ai pensé que le fichier créé en binaire utilisait de l'hexadécimal car quand j'utilise le programme de conversion voilà ce qu'il m'affiche :


    Affichage des 128 premiers octets du fichier :
    L0 : 52 49 46 46 30 00 01 00 57 41 56 45 66 6D 74 20
    L1 : 10 00 00 00 01 00 01 00 11 2B 00 00 11 2B 00 00
    L2 : 01 00 08 00 66 61 63 74 04 00 00 00 00 00 01 00
    L3 : 64 61 74 61 00 00 01 00 80 80 80 80 80 80 80 80
    L4 : 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80
    L5 : 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80
    L6 : 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80
    L7 : 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80

    J'ai aussi d'autres informations qui me sont affichées comme l'adresse (je suppose) du début des données. Voilà un exemple :

    Début des données : $0038

    Je ne sais pas si c'est très utile. A quoi sert ce qu'il y a avant les données ? Cela sert-il à identifier les données et à bien les lire ?

    En ce qui concerne la fréquence d'échantillonnage, c'est bien ce qu'il me semblait, mais je n'étais pas sure.

    Merci encore !!!

Discussions similaires

  1. lire un fichier avec Matlab
    Par marionsmiley dans le forum Mathématiques du supérieur
    Réponses: 4
    Dernier message: 22/12/2013, 12h36
  2. MATLAB comparaison de fichier WAV
    Par Kit dans le forum Logiciel - Software - Open Source
    Réponses: 2
    Dernier message: 21/06/2006, 08h19
  3. Fichier wav sur matlab
    Par Kit dans le forum Logiciel - Software - Open Source
    Réponses: 4
    Dernier message: 02/06/2006, 13h54
  4. Fichier WAV avec simulink(matlab)
    Par Kit dans le forum Logiciel - Software - Open Source
    Réponses: 2
    Dernier message: 12/05/2006, 08h09
  5. MatLab Fichier WAV
    Par Kit dans le forum Logiciel - Software - Open Source
    Réponses: 2
    Dernier message: 11/05/2006, 08h23
Découvrez nos comparatifs produits sur l'informatique et les technologies.