Qui peut m'affranchir par une exemple pour jouer une note de musique avec Lazarus et l'enregistrer dans un fichier?
Merci d'avance.
Michel Suire
Qui peut m'affranchir par une exemple pour jouer une note de musique avec Lazarus et l'enregistrer dans un fichier?
Merci d'avance.
Michel Suire
j'aimerai savoir ...
hello,
1 - Jouer une note de musique
De quelle façon ? Une représentation d'un clavier de piano ? En entrant la note avec son nom ex : do, do#? Un instrument midi relié à l'ordinateur ?
2 - Enregistrer dans un fichier
Quel format ? wav, mp3, midi, autre ?
Et pourquoi avec Lazarus ?
Ami calmant, J.P
Jurassic computer : Sinclair ZX81 - Zilog Z80A à 3,25 MHz - RAM 1 Ko - ROM 8 Ko
{exemple pour jouer une note de musique avec Lazarus et l'enregistrer dans un fichier?}
Je comprend bien que tout le monde ne peut pas savoir que Lazarus est un logiciel qui permet de programmer une interface d'ordinateur. un bouton, par exemple, avec "la" inscrit sur sa face. Bouton qui pourrait déclencher une procédure demandant à l'ordinateur d'envoyer une suite d'instructions à l'haut-parleur pour qu'il "joue" un "la" 440hz par exemple.
Je ne connais pas cette suite d'instructions; par contre à partir de là, je pourrais programmer plusieurs boutons pour exécuter plusieurs notes différentes.
Quant à stocker une note ou une suite de notes dans un fichier, là, je suis un peu ignare sur le format à utiliser.
Voilà le sens de ma démarche.
Michel Suire
j'aimerai savoir ...
Bonjour,
Voici un exemple.
J'ai trouvé la note ici: http://pcpagnol.free.fr/CRIADO/acous...gamme/note.htm
Bonjour !
Ça fonctionne chez moi (Linux 64).
Je profite que nous sommes dans une discussion sur la musique pour faire de la publicité à ce petit programme trop peu connu.
Le programme produit un fichier MIDI à partir d'une chaîne de caractères. On pourrait faire avec Lazarus une interface graphique, qui se chargerait de construire la chaîne en question. Ce serait assez compliqué, mais amusant.
Mon site personnel consacré à MSEide+MSEgui : msegui.net
Bonjour,
je vous remercie de vos réponses, mais l'objectif n'était pas de lire un fichier wav contenant la note "la" avec la command du mediaplayer: Trop facile.
Je ne sais pas comment envoyer une suite d'instructions qui demanderait au HP de l'ordinateur de jouer ou d'émettre une fréquence de 440 Hz ou 880 Hz ou ...
Si les commandes à l'intérieur du fichier Wav le font, c'est que c'est possible d'une autre manière.
Michel Suire
j'aimerai savoir ...
Bonjour,
En cherchant un peu,j'ai trouve ceci:
Alsa_Beep.zip
sur cette page:
https://www.lazarusforum.de/viewtopic.php?t=13434
Bonsoir,
Attention avec le lien !
1- faut parler couramment teuton ou avoir un bon dictionnaire ;
2- ça impose d'utiliser la librairie BASS (www.unseen.com).
Et sinon, pour répondre plus précisément à la demande de l'OP, on va déjà remettre les pendules à l'heure et préciser un point : un HP est piloté par une carte-son, qui reçoit des informations en provenance d'un programme, et ça peut aller de la bête diffusion d'un son pur et mathématique (une sinusoïde issue d'une équation) au rendu d'un fichier wav ou mp3 ou …, fichier composé de valeurs représentant l'intensité et la fréquence (pour faire court et simple) d'un son, bref, il y a tout un monde entre le fait de cliquer sur une image qui pourrait représenter une touche de piano et ce qu'on entend sortir du HP.
Difficile de résumer ça en quelques lignes.
Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peut–être qu'il peut être sûr, etc.
Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
Mes 2 cts,
--
jp
C'est très amusant de défoncer les portes ouvertes!
j'aimerai savoir ...
hello,
Avec l' extension BassMidi de la bibliothèque Bass on peut utiliser le format Midi pour générer une note ou une série de note.
Par exemple pour générer un La 440 voici un code qui génére un son en utilisant un synthétiseur intégré à l'O.S ( en utilisant une police de sons (soundfont) représentant plusieurs instruments de musiques.
La durée de la note dépend du temps appuyé sur le bouton et 69 représente le LA du 4ème octave d'un piano (le LA 440 ou A4)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 procedure TMainForm.Bt_LA440MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin BASS_MIDI_StreamEvent(MidiStream, 0, MIDI_EVENT_NOTE, MAKEWORD(69 - drums * 24 , 100)); end; procedure TMainForm.Bt_LA440MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin BASS_MIDI_StreamEvent(MidiStream, 0, MIDI_EVENT_NOTE, 69 - drums * 24 ); end;
Voici à quoi ressemble l'application de test midi sous Ubuntu sachant que les touches de claviers représentées permettent de jouer les notes du 4ème octave :
L'application a nécessité quelques modifications pour que cela fonctionne sous linux et sous windows en lazarus 64 bits.
Ami calmant, J.P
Jurassic computer : Sinclair ZX81 - Zilog Z80A à 3,25 MHz - RAM 1 Ko - ROM 8 Ko
Mon site personnel consacré à MSEide+MSEgui : msegui.net
hello,
le souci c'est que dans bassmidi24-linux il n'y a pas de répertoire delphi comme on pouvait s'y attendre. J'ai trouvé le code en pascal dans bassmidi24 dans le répertoire delphi et le projet dans le répertoire synth mais il faut faire des modifications dans les fichiers. Si ça intéresse des gens je peux mettre le projet en pièce jointe et le bassmidi.pas.
Ami calmant, J.P
Jurassic computer : Sinclair ZX81 - Zilog Z80A à 3,25 MHz - RAM 1 Ko - ROM 8 Ko
Salut, camarade !
Alors toi, tu tombes bien, avec ta proposition :
Je veux bien y jeter un œil, car je n'ai jamais réussi à faire fonctionner le projet synth (sans même parler des extensions midi -- ce n'est pas mon truc).
Comme tout le monde je suis parti des projets du dossier Delphi, mais si certains compilent avec quelques modifications, pour d'autres j'ai jeté l'éponge…
Et le projet synth m'avait intéressé comme source de son pour tester d'autres prog's, mais je n'ai jamais pu lui faire sortir un son alors, oui, ton offre m'intéresse.
C'est Noël,
Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peut–être qu'il peut être sûr, etc.
Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
Mes 2 cts,
--
jp
hello,
en pièce jointe le projet synth normalement compatible windows et linux avec dedans bass.pas et bassmidi.pas. Pour que cela fonctionne ne pas oublier d'installer dans le système les dlls bass et bassmidi à télécharger ici.
Il faut aussi charger une soundfont (.sf2) avant d'utiliser le programme sinon pas de son. Voici un lien pour télécharger des soundfonts gratuites. On peut prendre par exemple CT8MGM.SF2.
Ami calmant, J.P
Jurassic computer : Sinclair ZX81 - Zilog Z80A à 3,25 MHz - RAM 1 Ko - ROM 8 Ko
Génial, merci !
Le temps de me rappeler comment installer les bibliothèques sous Linux (1), de cafouiller un peu entre les binaires 32 et 64 bits, de renommer Bass.pas en bass.pas, et CT8MGM.SF2 en CT8MGM.sf2, et... ça fonctionne.
(1) Si quelqu'un veut savoir, j'ai copié les deux fichiers .so (64 bits) dans /home/roland/.local/bin, et ensuite j'ai tapé sudo ldconfig dans un terminal.
Merci encore pour cette précieuse contribution.
Mon site personnel consacré à MSEide+MSEgui : msegui.net
hello,
Voici en attachement un package avec deux projets BassMidi : celui que j'ai déjà mis dans la discussion (normalement corrigé pour les majuscules sous linux) et celui qui joue les fichiers midi et affiche les paroles si c'est un fichier midi kar (karaoké).
En prime dans le projet de lecture midi deux fichier midi kar : voyage voyage et le bal des Laze (à russes).
A noter que pour les dll Bass sous Windows soit vous les mettez dans le répertoire de l'exe généré ou soit sous Windows\System32 pour les dll 64 bits et Windows\SysWOW64 pour les dll 32 bits.
Ami calmant, J.P
Jurassic computer : Sinclair ZX81 - Zilog Z80A à 3,25 MHz - RAM 1 Ko - ROM 8 Ko
Tout fonctionne chez moi.
Je ne savais même pas que ça existait, les fichiers MIDI avec paroles... Tu les as faits toi-même ?
Du temps où j'avais Windows, je m'amusais à faire des fichiers MIDI avec Anvil Studio, que je trouvais simple à utiliser. On place les notes une par une sur la partition. Depuis que je suis passé à Linux, je n'ai pas encore trouvé l'équivalent.
Une chose que j'ai réussi à faire (avec peine), c'est utiliser un clavier MIDI USB avec LMMS, pour jouer. Mais je ne sais pas si on peut faire un fichier MIDI de cette façon. J'imagine que oui...
Mon site personnel consacré à MSEide+MSEgui : msegui.net
SLC salut les copains (sur un air connu) !
Le coup de la police absente c'est une tuerie, c'est juste pour ça que je n'entendais rien ! Comment as-tu découvert ça, JP ? Parce que dans mon souvenir, il n'y a rien qui en parle, dans le dossier Delphi de Bass…
Bon, il restera des bricoles à revoir (quand je joue une note, ça rajoute des crachotis, et si j'en joue une autre, la première ne s'arrête pas, tout ça peut-être lié à mes essais pour lui faire sortir quelque chose ?), mais au moins ça me remet le pied à l'étrier, pour quand j'aurai le temps (l'autre problème [rendu aléatoire] étant un tel truc de fou que je vais y passer un temps dément dessus, je le sens…)
Merci, bon dimanche, bonnes fêtes, toussa toussa,
Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peut–être qu'il peut être sûr, etc.
Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
Mes 2 cts,
--
jp
Je viens de tomber sur un très joli projet, qui semble correspondre exactement à la demande initiale :
SoundShop
Le programme est basé sur SDL2. Notez que pour le compiler j'ai dû activer cette directive dans l'unité SDL2 (unité incluse dans le projet) : {$define static}
Et voici le résultat.
Mon site personnel consacré à MSEide+MSEgui : msegui.net
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager