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

Turbo Pascal Discussion :

[TP]faire la musique


Sujet :

Turbo Pascal

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 4
    Points : 3
    Points
    3
    Par défaut [TP]faire la musique
    exist-il un moyen de composer des musique sur pascal? si possible un exemple de program

  2. #2
    Membre du Club
    Inscrit en
    Octobre 2002
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 62
    Points : 61
    Points
    61
    Par défaut Music avec TP
    Salut kgahi!
    C'est un sujet assez vaste, surtout la musique informatique. Il existe plein de programmes, je te donnerais des sources en Pascal un peu plus tard. Mais d'abord il faut que je sache ce que tu veux exactement. Par exemple, tu peux lire un fichier WAV (un sample), ou bien utiliser le midi, ...Et plein d'autres méthodes existent, mais je ne vais rien détailler pour le moment, car c'est à toi de m'en dire davantage sur ce que tu désires faire, et puis aussi, quel est le système (et compilateur) sur lequel tu comptes développer ce prog, quel est le type de ta carte son, etc...
    Autre chose, vu que tu es nouveau (ou nouvelle) sur le forum, je te conseille vivement de lire les règles du forum sauf si tu l'as pas déjà fait bien sûr! A+

  3. #3
    Nouveau membre du Club
    Inscrit en
    Octobre 2002
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 30
    Points : 27
    Points
    27
    Par défaut
    En sachant que tu as le meme tp que moi je te passe ce que tu veux:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    sound(frequence);
    delay(temps de la note);
    nosound;
    amuse toi bien avec ton tp bye

  4. #4
    Membre du Club
    Inscrit en
    Octobre 2002
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 62
    Points : 61
    Points
    61
    Par défaut
    Salut vinyl74!
    D'abord, tu peux compiler un prog avec Turbo (TPP, TPU) ou Bpw (TPW). Faire de la zic avec cette fonction, c'était ya 20 ans! La qualité est vraiement basse (pour rester poli). Tu doit pouvoir qu'en même, mélanger des fréquences... Mais pour moi, des bips avec le PC speaker, c'est pas de la musique! Je suis assez surpris, même si il est possible de restituer un sample avec le HP standart, mais bonjour la qualité! A+

  5. #5
    Nouveau membre du Club
    Inscrit en
    Octobre 2002
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 30
    Points : 27
    Points
    27
    Par défaut
    salut a toi aussi la guimb mais le but de ce tp n'est pas de faire une musique haut de gamme on utilise tp7 et on a un tp sur les pointeurs ayant pour theme les pointeurs (c'est noté la dessus) et le sujet est starwars d'ou l'idée de faire une petite intro sympa. Par contre je cherche toujours le moyen d'afficher les jpeg et gif voir le sujet le concernant.

  6. #6
    Membre du Club
    Inscrit en
    Octobre 2002
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 62
    Points : 61
    Points
    61
    Par défaut
    salut!
    Oui, tu aurais du commencer par là! Je comprend un peu mieux...
    Alors, si j'ai bien saisi, tu programmes avec TP7. Mais sous Dos ou sous Windows? Si c'est un tp pour le lycée, je pense, ils t'ont donné des consignes, lesquelles? Combien de temps il te reste pour le faire... Je préfère t'avertir, je vais pas faire ce prog à ta place, mais je peux te donner des conseils, des tuyaux...

  7. #7
    Nouveau membre du Club
    Inscrit en
    Octobre 2002
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 30
    Points : 27
    Points
    27
    Par défaut
    En fait le tp je le bosse tout seul et j'y arrive c'est pour la fin de la semaine mais on veut faire un truc qui donne bien avec quelques conneries sur starwars pour "embellir" notre tp musique image ...
    Donc je veux juste kon me dise comment utilisé les gifs(voir sujet déja posé)

  8. #8
    Membre du Club
    Inscrit en
    Octobre 2002
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 62
    Points : 61
    Points
    61
    Par défaut
    Sur cette page, on discutera seulement de la musique, si tu veux bien! Il faut qu'on reste dans le sujet (voir tout en haut de cette page). Pour les images, c'est un autre sujet: Il vaut mieux ne pas mélanger, et rester méthodique pour mieux avancer... Si tu es sûr de vouloir utiliser la fonction Sound pour la musique d'intro, je pense que tu capable de réaliser cette fonction. C'est juste trouver les bonnes notes, et les bons delais qui va être compliqué, surtout si t'y vas à coups de tests à chaque nouvelle note! J'ai trouvé des sources pour pouvoir sortir un sample RAW (échantillonné à 8bits 11kHz) par le speaker du PC. J'essai de la retrouver si tu la veux! Ce sera plus facile d'échantillonner (récupérer) la musique du film, que de la faire soi-même. A+

  9. #9
    Membre du Club
    Inscrit en
    Octobre 2002
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 62
    Points : 61
    Points
    61
    Par défaut
    J'ai cherché un peu, et j'ai trouvé dans les veilles SWAGS du pascal, un prog qui permet de jouer une note par le speaker du PC, suivant l'appui d'une touche au clavier, qui est donc transformé en une sorte de piano... Je continu mes recherches!
    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
     
    {You'll have to write a new Keyboard hardware interrupt handler, I did that(quite a while ago) for this little program. It generates a different beep sound for every key pressed. The comments are in Dutch, but if you can read Afrikaans you might be able to understand them. I think the code is self-explanatory anyway.}
     
    program MusicKey;                                    { herziene versie }
     
    uses crt, dos;
     
    const kbd_data   = $60;                   { Keyboard data poort        }
          kbd_ctrl   = $61;                   { Keyboard control poort     }
          int_ctrl   = $20;                   { Interrupt control poort    }
          eoi        = $20;                   { End-of-interrupt constante }
          release    = $80;                   { Key released bit           }
          enable_kbd = $80;                   { Enable keyboard bit        }
     
    const Press      : Byte = 0;    { Scancode van ingedrukte toets        }
    var   SaveInt09  : Pointer;     { Om originele intvector in te bewaren }
     
    Procedure NewKbdInt; interrupt;        { Interrupt service routine,    }
    var b:Byte;                            { aangeroepen door kbd hardware }
    begin
      b:=Port[kbd_data];                    { Lees scancode van poort      }
      if b = Press + Release then Press:=0  { Laatst ingedrukte toets los? }
        else if b < Release then Press:=b;  { Toets ingedrukt? Press:=b    }
      b:=Port[kbd_ctrl];                    { Interrupt netjes afwerken    }
      Port[kbd_ctrl]:=b or enable_kbd;
      Port[kbd_ctrl]:=b;
      Port[int_ctrl]:=eoi;
    end;
     
    begin
      GetIntVec($9,SaveInt09);                  { Bewaar originele vector  }
      SetIntVec($9,@NewKbdInt);                 { Installeer onze routine  }
    {***}
      Writeln(^J^J^M,'Escape = Exit');
      repeat
        Write(^M,'Gelezen scancode: ',Press:2);     { Druk scancode af     }
        if Press > 1 then Sound(100 * Press)        { Laat toontje horen   }
                     else NoSound;                  { Of niet (Press = 0)  }
      until Press = 1;                              { Escape : Press = 1   }
    {***}
      SetIntVec($9,SaveInt09);                  { Herstel originele vector }
    end.
    A+

  10. #10
    Nouveau membre du Club
    Inscrit en
    Octobre 2002
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 30
    Points : 27
    Points
    27
    Par défaut
    En fait je suis ds la meme promo que kgahi et moi j'ai un pote qui vient de me faire la musique si il galere je pourrai lui filer c'est sympa de te démmener pour notre tp

  11. #11
    Membre actif

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    107
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 107
    Points : 279
    Points
    279
    Par défaut
    Bien joué LaGuimb !

    @++ Mathieu
    Chaque jour, l'homme crée des choses plus grandes, meilleures et sûres, et chaque jour, la nature crée des idiots plus performants. Pour l'instant, je pense que la nature gagne.

  12. #12
    Membre du Club
    Inscrit en
    Octobre 2002
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 62
    Points : 61
    Points
    61
    Par défaut
    Apparemment, j'ai trouvé la correspondance des notes avec la fréquence! Je ne l'ai pas encore testé - Une harmonie, c'est de la musique en fait... A+
    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
    > {Anyone out there ever bothered to fing out what numbers make which note,
    > eg. does any know if Sound(3000) makes an A, a C, D#, or what?  I'd like
    > to know as many as possible, hopefully With the middle C on a piano as
    > one of them.}
     
    Const
      Notes : Array[1..96] Of Word =
      { C    C#,D-  D    D#,E-  E     F    F#,G-  G    G#,A-  A    A#,B-  B  }
      (0033, 0035, 0037, 0039, 0041, 0044, 0046, 0049, 0052, 0055, 0058, 0062,
       0065, 0069, 0073, 0078, 0082, 0087, 0093, 0098, 0104, 0110, 0117, 0123,
       0131, 0139, 0147, 0156, 0165, 0175, 0185, 0196, 0208, 0220, 0233, 0247,
       0262, 0277, 0294, 0311, 0330, 0349, 0370, 0392, 0415, 0440, 0466, 0494,
       0523, 0554, 0587, 0622, 0659, 0698, 0740, 0784, 0831, 0880, 0932, 0987,
       1047, 1109, 1175, 1245, 1329, 1397, 1480, 1568, 1661, 1760, 1865, 1976,
       2093, 2217, 2349, 2489, 2637, 2794, 2960, 3136, 3322, 3520, 3729, 3951,
       4186, 4435, 4699, 4978, 5274, 5588, 5920, 6272, 6645, 7040, 7459, 7902);
     
    {Each line represents one octave, starting With octave 0.  Middle C is 523Hz and
    Middle A is 440 (middle A is what all other note calculations are besed on;
    each note it the 12th root of 2 times the previous one.)  You should be able to
    arrange the Array into two dimensions if you want to access it using an octave
    and note #.}
     
    {Here are the notes..
     
        C0      16.35    C2      65.41    C4     261.63    C6    1046.50
        C#0     17.32    C#2     69.30    C#4    277.18    C#6   1108.73
        D0      18.35    D2      73.42    D4     293.66    D6    1174.66
        D#0     19.45    D#2     77.78    D#4    311.13    D#6   1244.51
        E0      20.60    E2      82.41    E4     329.63    E6    1328.51
        F0      21.83    F2      87.31    F4     349.23    F6    1396.91
        F#0     23.12    F#2     92.50    F#4    369.99    F#6   1479.98
        G0      24.50    G2      98.00    G4     392.00    G6    1567.98
        G#0     25.96    G#2    103.83    G#4    415.30    G#6   1661.22
        A0      27.50    A2     110.00    A4     440.00    A6    1760.00
        A#0     29.14    A#2    116.54    A#4    466.16    A#6   1864.66
        B0      30.87    B2     123.47    B4     493.88    B6    1975.53
        C1      32.70    C3     130.81    C5     523.25    C7    2093.00
        C#1     34.65    C#3    138.59    C#5    554.37    C#7   2217.46
        D1      36.71    D3     146.83    D5     587.33    D7    2349.32
        D#1     38.89    D#3    155.56    D#5    622.25    D#7   2489.02
        E1      41.20    E3     164.81    E5     659.26    E7    2637.02
        F1      43.65    F3     174.61    F5     698.46    F7    2793.83
        F#1     46.25    F#3    185.00    F#5    739.99    F#7   2959.96
        G1      49.00    G3     196.00    G5     783.99    G7    3135.96
        G#1     51.91    G#3    207.65    G#5    830.61    G#7   3322.44
        A1      55.00    A3     220.00    A5     880.00    A7    3520.00
        A#1     58.27    A#3    233.08    A#5    932.33    A#7   3729.31
        B1      61.74    B3     246.94    B5     987.77    B7    3951.07}{C8    4186.01}

  13. #13
    Membre du Club
    Inscrit en
    Octobre 2002
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 62
    Points : 61
    Points
    61
    Par défaut
    Je n'ai pas retrouvé le programme pour les samples RAW, mais je pense que ces codes suffiront pour faire une musique avec le HP standart du PC. Pour conclure, je voulais dire que si tu t'intéresse un peu à l'électronique, il est très facile de faire une sortie analogique avec le port parrallèle - j'ai les plans je crois (en bref, 1 AOP et quelques résistances). Ce procédé est limité à restituer des sons en 8bits. Il ne peut pas les enregistrer, voilà! A+

Discussions similaires

  1. Réponses: 0
    Dernier message: 14/02/2009, 16h29
  2. Comment faire un site de musique
    Par mouchkar dans le forum Langage
    Réponses: 2
    Dernier message: 24/12/2007, 12h33
  3. [Boeuf] Se retrouver pour faire de la musique
    Par yolepro dans le forum Musique
    Réponses: 3
    Dernier message: 28/11/2007, 15h24
  4. [HTML] Comment faire pour mettre de la musique sur un site
    Par Gray Man dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 11/12/2005, 18h13

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