Alors là c'est basse percussion
Sous les pavés la plage rythmique
bassePercussion.zip35 ;0.25;Grosse caisse médium
35 ;0.25;Grosse caisse médium
40 ;0.5;Caisse claire 2
35 ;0.25;Grosse caisse médium
35 ;0.25;Grosse caisse médium
38 ;1;Caisse claire 1
40 ;0.125;Caisse claire 2
40 ;0.125;Caisse claire 2
40 ;0.25;Caisse claire 2
40 ;0.5;Caisse claire 2
35 ;0.5;Grosse caisse médium
40 ;0.5;Caisse claire 2
40 ;0.5;Caisse claire 2
61 ;1;Bongo grave
61 ;1;Bongo grave
61 ;0.5;Bongo grave
61 ;0.25;Bongo grave
61 ;0.125;Bongo grave
64 ;0.125;Congas grave
64 ;0.25;Congas grave
64 ;0.25;Congas grave
64 ;0.25;Congas grave
64 ;0.5;Congas grave
64 ;0.5;Congas grave
64 ;0.5;Congas grave
64 ;0.5;Congas grave
64 ;1;Congas grave
35 ;0.5;Grosse caisse médium
61 ;0.25;Bongo grave
60 ;0.25;Bongo aigu
62 ;0.25;Congas aigu sourd
35 ;0.5;Grosse caisse médium
63 ;0.25;Congas aigu ouvert
Bonjour,
J'ai fait un test d'influence de la mesure sur un rhytme
Un 4 temps puis un 4+3+2 , le mix des 2 puis ralenti(zoom) avec instrument
BatterieM4FusionAvecM4+3+2Et+.mid.zip
Un buf à la plage à midi virtuellement midi
Buf à la plage à midi.zip
Jeux de gamme
Il y a tant de musique dans le monde que celle là passera surement vite au oubliette
Je viens de faire un tour sur Jiwa mais je dois arriver à un age où l'on a besoin de faire sa propre musique car sinon c'est la zapette assuré.
Jeux de gamme.zip
Bonsoir
Celui là ne vous endormira pas car je n'ai pas pu le ralentir ni l'accélérer il est née comme ça d'un seul jet et n'a pas voulue accepter d'autre musiciens virtuel
BatterieM42.zip
Ce matin je l'ai ralenti et je je l'ai laissé aller plus loin sur la plage rythmique et il y a wake up puis le bruit des vagues
Et pour vérifier l'orthographe de wake up j'ai tapé waik up sur google
ET il me propose une vidéo
Réveillez-vous - Rage Against The Machine
BatterieM43.zip
Bonjour,
C'est chouette les (longs) monologues. A part faire mumuse avec du matos de base, où est le rapport entre la mathématique et la musique ?
Bonsoir,
Merci de le rompre
au début c'était les nombre premiers puis ce fut le tour des décimales de PI et d'autres suites mathématique peu musicales ce qui m'a conduit à introduire plus de rigueur musicale (boucle,accord,mesure,rythmes) et c'est devenu plus de l'informatique que des maths mais je pense introduire bientôt des fractales dans ma musique.
En attendant je m'amuse à créer des rythmes.
Le dernier est un rock à 4 temps sur une mesure à 3 puis 5 temps
rock.zip
Ceci étant dit, si ce n'est plus des maths appliquées à la musique tu peux arrêter.
Rien ne sert de penser, il faut réfléchir avant - Pierre Dac
Bonjour,
Ce n'est pas une perle
croche+croche+noire+double croche+croche+croche+croche pointé = 4 noires = 4 temps
Sur une mesure à trois temps
croche+croche+noire+double croche+croche+croche=3,5
la dernière croche est tansfromé en double croche
Ce qui fait que la mesure suivante tombe juste puis ça recommence.
Voilà comment on peut modifier un rhytme en changeant de mesure
L'explication en image
rock.png
où s'arrête les maths ?
la musique automatique utilise des suites et des opérateurs mathématique.
voilà par exemple la fonction qui lit des suites de nombres pour en faire une piste de musique.
Code:void CSequencer::NombresPremiers() { BOOL CALLBACK PremiersProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam); if (!DialogBoxParam(g_hInst,MAKEINTRESOURCE(IDD_NBPREMIERS),*m_pHMdi,PremiersProc,0)) return; BYTE buf[100]; LPBYTE pp=buf; // mi,si,fa,do,sol,re,la,mi int MaxAccord=10; rangMesure=0; int accords[30][8]={7,2,-3,-1,5,6,8,-5, 3,2,1,0,0,0,0,0, 7,2,-3,-1,5,6,8,-5, 0,0,0,2,0,0,0,0, 7,2,-3,-1,5,-5, 5,3,2,1,0,0,0,0, 0,0,3,2,0,0,0,0, 0,0,4,3,0,0,0,0, 0,1,5,3,0,0,0,0, 5,1,3,2,0,0,0,0}; char s[2500]; if (NbAccord>0) { int v0=1000; FILE *f=fopen(NomFichAccord,"r"); if (f) { MaxAccord=0; while (lit_fstr(f,s)) { char *c=s,*f; int n=0; v0=atoi(c); while (f=strchr(c,';')) { *f=0; accords[MaxAccord][n++]=atoi(c)-v0; c=f+1; } accords[MaxAccord][n++]=atoi(c)%12; accords[MaxAccord++][n]=120; if (MaxAccord>29) break; } fclose(f); } } FusionChannel=m_Ctrl.nTrackSelect; DWORD dwTime=g_midi.m_dwCurrentTime; TPattern *p=GetPattern(&pp,dwTime); int n=0; // FILE *f=fopen("D:\\MSVCNT\\PIANOVB\\EcartPremiers.txt","r"); // @ FILE *f=fopen("D:\\MSVCNT\\PIANOVB\\PI1000000.txt","r"); // @ // @ lit_fstr(f,s); // @ // pour pi // @ FILE *fp=fopen("D:\\MSVCNT\\PIANOVB\\pi1M.txt","w"); // @ char c[3]; // @ n=1000000; // @ c[2]=0; // @ int i; // @ c[0]=fgetc(f); // @ c[1]=fgetc(f); // @ for (i=1;i<n;i++) // @ { // @ fprintf(fp,"%s\n",c); // @ c[0]=c[1]; // @ c[1]=fgetc(f); // @ } // @ fclose(fp); if (*NomFichSource==0) strcpy(NomFichSource,"D:\\MSVCNT\\PIANOVB\\hasard.txt"); char nomf[255]; char *c=strchr(NomFichSource,92); if (!c) strcpy(nomf,NomFichSource); else { char *cn=c+1; while (c=strchr(cn,92)) cn=c+1; strcpy(nomf,cn); } FILE *f=fopen(NomFichSource,"r"); if (!f) return; for (int i=0;i<debut;i++) lit_fstr(f,s); int pos=ftell(f); n=0; int pa=pair; if (pa==0) pair=pa=127; int j=0; int transpose0=transpose; DWORD dwTime0=dwTime; int PtAccord=0,PtDec=0,debut0=debut; int v0=0; int dep=3,dem=5; int vel1,vel0; vel1=vel0=60; int i; char t[512]; if (Reverb) CollectMidiCtrlChange(p,91,Reverb,dwTime,FALSE); for (j=0;j<Repetition;j++) { while (lit_fstr(f,s)) { int ve=(int)atoi(s); int v= ve%pa + transpose0; int duree; char *c=strchr(s,';'); if (c) duree=GetDureNoteMesure(atof(c+1)); else duree=GetDureNote(ve,n); int jou=1; if (duree<0) { jou=0; duree=-duree; } if (jou) { // int nVel=vel0+(duree+ve)%60; int nVel=vel0+duree%64; if (Touche>0) nVel+= Touche - rand() % (int)(Touche*2.5); int note=v%127; if (v0) { if (note>v0) note=v0+dep; else note=v0-dem; v0=note; if (v0<transpose0) { dep++; v0=transpose0; } else if (v0>transpose0+pa) { dep--; v0=transpose0+pa; } } // else // v0=note; CollectMidiNote(p,MIDI_NOTEON,note,nVel,dwTime,FALSE); // if (PitchBend && duree>0.6*m_Ctrl.dwTimeTick) if (PitchBend) { // double dt=duree/10; double dt=0.25*m_Ctrl.dwTimeTick; int r=PitchBend,i; if (r<0) { r=-10*r; } for (i=dt;i<duree;i+=dt) { CollectMidiPitchBend(p,0,r,dwTime+i,FALSE); r+=PitchBend; } } // else // CollectMidiPitchBend(p,0,0,dwTime+duree,FALSE); CollectMidiNote(p,MIDI_NOTEOFF,note,(int)(nVel/2),dwTime+duree,FALSE); dwTime+=duree*(1+(silence/100)*(n%3-1)); } else dwTime+=duree; if (++n>=count) break; } fseek(f,pos,0); // @ if (transposeBoucle) // @ transpose=abs(transpose+(j%transposeBoucle)-(transposeBoucle/2)+transposeBoucle); if (NbAccord==0) { dwTime+=silenceBoucle*m_Ctrl.dwTimeTick; count+=transposeBoucle; if (count<abs(transposeBoucle)) break; } else { if (PtDec==8 || accords[PtAccord][PtDec]==120) { vel0=vel1; PtDec=0; transpose0 = transpose; dwTime+=silenceBoucle*m_Ctrl.dwTimeTick; dwTime0=dwTime; if (++PtAccord==NbAccord) { PtAccord=0; if (dwTime>GetLastLocator()) SetLastLocator(dwTime); if (dwTime>p->right) p->right=dwTime; else dwTime=p->right; sprintf(t,"%d",(int)mesure[0]); for (i=1;i<nbMesure;i++) sprintf(t+strlen(t),"+%d",(int)mesure[i]); sprintf(s,"%s %d(%d) tr=%d nb=%.0f si=%d bo=%d trb=%d dec=%.2f nbt=%d mesure=%s",nomf,debut0,count,transpose,pair,silence,Repetition,transposeBoucle,decale,temps_notes,t); lstrcpy(m_pOldPattern->szTitle, s); decale+=IncDecale; if (((int)decale)%4==IncDecale && temps_notes>3) temps_notes--; p=GetPattern(&pp,dwTime); } for (int i=0;i<transposeBoucle;i++) lit_fstr(f,s); debut0+=transposeBoucle; pos=ftell(f); } else { transpose0 = transpose + accords[PtAccord][PtDec]; dwTime=dwTime0+(double)decale*(PtDec+1)*0.25*m_Ctrl.dwTimeTick; // dwTime=dwTime0+((double)decale*(PtDec+1)/8.0)*m_Ctrl.dwTimeTick; if (Echo==0) Echo=60; vel0=(double)vel0/((double)Echo/50.0); PtDec++; } } n=0; } sprintf(t,"%d",(int)mesure[0]); for (i=1;i<nbMesure;i++) sprintf(t+strlen(t),"+%d",(int)mesure[i]); sprintf(s,"%s %d(%d) tr=%d nb=%.0f si=%d bo=%d trb=%d dec=%.2f nbt=%d mesure=%s",nomf,debut0,count,transpose,pair,silence,Repetition,transposeBoucle,decale,temps_notes,t); lstrcpy(m_pOldPattern->szTitle, s); if (dwTime>GetLastLocator()) SetLastLocator(dwTime); if (dwTime>p->right) p->right=dwTime; fclose(f); }
Dernière modification par JPL ; 23/11/2010 à 12h28.
Merci pour la mise en page JPL
Comment fait on ?
J'ai même essayé de remplacer tabulation par 4 espace sans résultat
Merci de m'avoir pousser vers les fractales que je repoussait sans cesse.
Peut être parce que j'avais déjà passé assez de temps jadis à explorer leur possibilité graphique.
Je suis agréablement surpris car elle on un rythme cyclique lent rapide
Ce n'est pourtant qu'une infime partie dont j'ai capturé les coordonnées dans mon logiciel graphique pour ne pas tomber dans des déserts.
Ensuite il y a eu le problème de la traversé de petit désert qui donnait toujours la même note.
La solution a été de transformer leur nombre en durée de note
n note identique donne une note de n croche
Mandelbrot1.zip
Function RhytmeFractal()
ch = "D:\MSVCNT\pianoVB\"
Open ch & "Rhytme.txt" For Output As 1
imax = 1024
Dim x As Double
Dim y As Double
On Error Resume Next
pas = 2.61257101456891E-07
For a = -1.15559388683972 To -1.15544830516435 Step pas '-- a et b représentent les cordonnées du point c du plan --
For b = -0.214983813440546 To -0.214842216798892 Step pas
x = 0 '-- on initialise x et y à 0 --
y = 0 '-- soit z0=(0,0)
For i = 0 To imax
t = x '-- il est indispensable de sauvegarder x avant --
x = x * x - y * y + a
y = 2 * t * y + b
If ((Abs(x) > 2) Or (Abs(y) > 2)) Then
note = Int(i Mod 57) + 30
If note = oldnote Then
duree = duree + 0.25
Else
If duree > 0 Then
Print #1, oldnote & ";" & duree
Else
Print #1, oldnote
End If
duree = 0
oldnote = note
End If
' afficher_point(a,b)
i = imax ' -- pour sortir de la boucle --
End If
Next i
Next b
Next a
Close #1
End Function
Je continue sur la méme plage fractale
je suis sur la 7000 emme note avec 2000 notes par morceaux ....
Attention aux aigu, j'ai un peu abusé mais sa ouvre l'oreille musicale
Mandelbrot4.zip
C'est la 1ere fois que j'entends tam tam comme ça
Mais au début , pour la piste rythmique il y a un mélange de fractale et de rythmeBatterie que j'ai fait pour tester les rythmes
tamtam.zip
Le dernier cœur et pianos avant les bras d'Orphée ?
pianos et coeur.zip
Tout est fractal cette fois sauf les accords qui sont de moi
fractal.zip
11 minutes 46 composé en 10 seconde
FractaleArpége11Minute46.zip
un 9 minute 58 avec plus d'instruments et même un koto japonais passé par là
FractaleArpége9m58.zip
Si vous n'aimez pas St Balle dites le moi
Je suis vers la 130000 emme notes et ça donne envie d'aller plus loin mais c'est la fin de ma zone.
Il faut que j'en trouve une autre encore plus jolie
StBalle.zip
Finalement je n'ai pas exploré le milieu
J'ai fait Le Sucre Et La Mer à La fin avec tout les instrument que je n'utilise pas d'habitude et avec 3 version de plus en plus lente de 10 à 24 minutes
LeSucreEtLaMeràLafin.zip
Merci JPL
J'ai modifié la boucle
note = i Mod 127 ' pour pas en perdre une miette
et il y avais un bug car VBA Access code avec la virgule (0,5) et le C++ 2008 lit avec le . donc pour lui 0,5 c'était 0
Microsoft pour ton homogénéité
Code:For a = -1.15559388683972 To -1.15544830516435 Step pas '-- a et b représentent les cordonnées du point c du plan -- For b = -0.214983813440546 To -0.214892216798892 Step pas x = 0 '-- on initialise x et y à 0 -- y = 0 '-- soit z0=(0,0) For i = 0 To imax t = x '-- il est indispensable de sauvegarder x avant -- x = x * x - y * y + a y = 2 * t * y + b If ((Abs(x) > 2) Or (Abs(y) > 2)) Then note = i Mod 127 If note = OldNote Then duree = duree + 0.25 Else If duree > 0 Then s = duree ta = Split(s, ",") If UBound(ta) > 0 Then s = ta(0) & "." & ta(1) End If Print #1, OldNote & ";" & s ElseIf OldNote <> "" Then Print #1, OldNote End If duree = 0 OldNote = note End If i = imax ' -- pour sortir de la boucle -- End If Next i Next b Next a
dans les bras de Caliopé ce soir ?
voilà le synth caliopé, batterie et basse c'est simple, cour caliopé.zipet c'est beau
Vu que 99% du fil est occupé par tes messages successifs, penses-tu qu'il intéresse encore quelqu'un. Cela commence à ressembler à un comportement obsessionnel compulsif.
Rien ne sert de penser, il faut réfléchir avant - Pierre Dac
La consultation de ce fil n'est pas nulle et ce n'est pas parce que personne répond que je dois priver vos lecteurs de mes travaux passionnels.
Je sais aussi que remplacer les musiciens par des ordinateurs ou des robots ne plait pas aux musiciens qui ont passé leur jeunesse à apprendre le solfège et la pratique assidu d'un instrument.
Ou autrement dit : ce n'est pas parce que vos lecteurs sont polis et respectueux de la charte que je dois arrêter de les ##autocensure## et de les choquer.... ce n'est pas parce que personne répond que je dois priver vos lecteurs de mes travaux passionnels.
Je sais aussi que remplacer les musiciens par des ordinateurs ou des robots ne plait pas aux musiciens qui ont passé leur jeunesse à apprendre le solfège et la pratique assidu d'un instrument.
Ce forum n'est pas une vitrine pour travaux personnels.
C'est juste une précision apportée ici sans qu'il soit porté un quelconque jugement de ce qui a été posté ici.
ET bien j'ai trouvé des gens que ça intéresse