[Analogique] Coder un signal analogique (musique) en binaire
Répondre à la discussion
Affichage des résultats 1 à 15 sur 15

Coder un signal analogique (musique) en binaire



  1. #1
    invitefa5ff145

    Wink Coder un signal analogique (musique) en binaire


    ------

    Bonjour

    Je travaille sur un projet pour le TPE. Pour ce projet on a transféré un signal analogique envoyé par un téléphone via une prise jack avec un laser. On l'avait d'abord amplifié puis récupéré avec une photo-diode avant de l'émettre via les hauts parleurs. Pour montrer les inconvénients et avantages de l’analogique et du numérique on veut reproduire le même principe de transmission avec un signal binaire.
    Le problème c'est que je ne trouve aucun moyen d'encoder un signal musical (analogique) en binaire !

    Merci d'avance pour vos réponses

    -----

  2. #2
    jiherve

    Re : Coder un signal analogique (musique) en binaire

    Bonsoir et bienvenue,
    chercher avec .wav ou tout autre support audio numérique non compressé.
    Cela ne résoudra pas vrament l'encodage mais il pourrait être fait avec une carte son de PC et un logiciel ad hoc Audacity, Sox,....
    JR
    l'électronique c'est pas du vaudou!

  3. #3
    invitee05a3fcc

    Re : Coder un signal analogique (musique) en binaire

    Bonjour flo3800 et bienvenue sur FUTURA
    Citation Envoyé par flo3800 Voir le message
    Le problème c'est que je ne trouve aucun moyen d'encoder un signal musical (analogique) en binaire !
    ben, il faut le passer par un ADC , la fibre et un DAC
    Mais la réalisation de ce montage demande des compétences assez bonnes en traitement du signal (Software et Hardware).
    Tu peux aussi convertir ton signal analogique en PWM, la fibre et un filtre passe-bas . Mais ce ne sera pas très significatif pour faire une comparaison sur la "qualité"

  4. #4
    nornand

    Re : Coder un signal analogique (musique) en binaire

    Petite info :
    • les formats de compression avec perte : MP3, AAC, Ogg Vorbis, WMA
    • les formats non compressés ou compressés sans perte : AIFF, ALAC, FLAC, WAV, DSD, Monkey’s audio, WMA Lossless

  5. A voir en vidéo sur Futura
  6. #5
    invitefa5ff145

    Re : Coder un signal analogique (musique) en binaire

    Le problème c'est que j'ai vu que sur les cartes arduino uno on ne peut pas utiliser le pwm pour transmettre un signal analogique comme de la musique (à moins que je me trompe).
    N'y a t'il pas un module ou un composant type CAN mais qui permette de transformer en binaire le signal.

  7. #6
    invitefa5ff145

    Re : Coder un signal analogique (musique) en binaire

    Par contre j'ai pas trop compris le type de montage "ADC et DAC".
    Quelque peut m'expliquer ce que c'est?

  8. #7
    invitee05a3fcc

    Re : Coder un signal analogique (musique) en binaire

    Citation Envoyé par flo3800 Voir le message
    Le problème c'est que j'ai vu que sur les cartes arduino uno on ne peut pas utiliser le pwm pour transmettre un signal analogique comme de la musique (à moins que je me trompe).
    Pourquoi utiliser un ArduiMachin ? Y a des tas de bons vieux circuits pour faire ça !
    Par contre j'ai pas trop compris le type de montage "ADC et DAC".
    Analogique Digital Converter
    Digital Analogique Converter

  9. #8
    antek

    Re : Coder un signal analogique (musique) en binaire

    Citation Envoyé par flo3800 Voir le message
    Le problème c'est que j'ai vu que sur les cartes arduino uno on ne peut pas utiliser le pwm pour transmettre un signal analogique comme de la musique (à moins que je me trompe).
    N'y a t'il pas un module ou un composant type CAN mais qui permette de transformer en binaire le signal.
    Quelle est la fréquence PWM max du µC de la carte arduino ?
    en français -> CAN
    en anglais -> ADC

  10. #9
    jiherve

    Re : Coder un signal analogique (musique) en binaire

    Bonjour,
    je ne sais pas si avec l’environnement Arduino on ne peut pas le faire, mais le processeur le permet (je l'ai fait mais en ASM) pour des fichiers 8bits assez courts.
    Car le soucis est la taille limitée de la mémoire interne mais ,çà je ne l'ai pas essayé, avec une EEPROM série externe on devrait pouvoir gérer de plus gros fichiers tout en restant bien sur en 8bits car si le 10bits serait plus "musical" cela serait aussi très couteux en temps de calcul, et bien sur cela ne sera pas de la hifi ; Je crains cependant qu'avec du charabia arduinesque il y ait quelques soucis
    JR
    l'électronique c'est pas du vaudou!

  11. #10
    invitefa5ff145

    Re : Coder un signal analogique (musique) en binaire

    Une fois que mon entrée analogique a lu la tension du signal analogique pour un point, je n'arrives pas a ce que mon port digital renvoie le code en binaire.
    Coder en 8 bits me conviendrait largement.

  12. #11
    invitefa5ff145

    Re : Coder un signal analogique (musique) en binaire

    Citation Envoyé par antek Voir le message
    Quelle est la fréquence PWM max du µC de la carte arduino ?
    Je sais pas si c'est la fréquence de l'horlogie I/O qu'il faut mais celle-ci est de 62500 Hz
    La fréquence du CPU est de 16 MHz

  13. #12
    invitee05a3fcc

    Re : Coder un signal analogique (musique) en binaire

    Citation Envoyé par flo3800 Voir le message
    Une fois que mon entrée analogique a lu la tension du signal analogique pour un point, je n'arrives pas a ce que mon port digital renvoie le code en binaire.
    Tu récupères un mot en binaire correspondant à l'échantillon prélevé, tu le balances en série sur ta fibre en passant par un UART et tu fais la même chose pour l'échantillon suivant etc
    Coder en 8 bits me conviendrait largement.
    tu n'auras pas beaucoup de différence qu'avec la transmission analogique

  14. #13
    invitef86a6203

    Re : Coder un signal analogique (musique) en binaire

    Pour transformer une entrée analogique en une sortie PWM sur Arduino.

    Code:
    int analogPin = 3;     // potentiometer wiper (middle terminal) connected to analog pin 3
                           // outside leads to ground and +5V
    int PWM = 4;
    int val = 0;           // variable to store the value read
    int ValPwm;
    
    void setup()
    {
    }
    
    void loop()
    {
      val = analogRead(analogPin);     // read the input pin
      map(ValPwm, 0, 1023, 0, 255);
      analogWrite(PWM,ValPwm);     // read the input pin
    }
    Il faudrait parler aussi de la bande passante !
    Et en digital du type de codage.

    Et comme la fait sous entendre DAUDET78 un simple NE555 fait la même chose !
    Peut être même mieux ,qui sait ?

  15. #14
    invitefa5ff145

    Re : Coder un signal analogique (musique) en binaire

    Merci pour les infos et pour le code, je vais essayer.

  16. #15
    invitef0fb657e

    Re : Coder un signal analogique (musique) en binaire

    Bonjour,
    il faut d'abord définir la bande passante du signal analogique que l'on veut faire convertir en numérique.
    A partir de cette valeur, on pourra définir la fréquence d'échantillonnage qui selon le théorème de Shannon doit être au moins le double de la fréquence maxi à convertir.
    https://fr.wikipedia.org/wiki/Son_nu...ique_(musique)

Discussions similaires

  1. [Numérique] passer d'un signal binaire à la génération d'un signal sonore
    Par invite83ff31e4 dans le forum Électronique
    Réponses: 6
    Dernier message: 07/07/2016, 08h34
  2. signal numérique, signal analogique
    Par ey74 dans le forum Électronique
    Réponses: 17
    Dernier message: 24/05/2013, 10h30
  3. signal binaire
    Par invite00e5ff84 dans le forum Électronique
    Réponses: 6
    Dernier message: 18/01/2013, 01h05
  4. TF d'un signal NRZ binaire
    Par invite298957c6 dans le forum Mathématiques du supérieur
    Réponses: 1
    Dernier message: 29/03/2011, 12h20
  5. transformation d'un signal codeur en signal analogique
    Par invite6adeeae4 dans le forum Électronique
    Réponses: 1
    Dernier message: 19/06/2007, 14h46
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...