Trouver un accord depuis des notes
- 34 réponses
- 11 participants
- 1 756 vues
- 18 followers

Djardin

je me disais que j'allais tenté un programme pour trouver un accord depuis des notes.
On en a parlé là :
https://fr.audiofanzine.com/le-pub-des-gentlemen/forums/t.71857,les-questions-auxquelles-on-a-pas-les-reponses-mais-un-afien-peut-les-avoir,post.10317118.html
En gros, je cherche à rentrer 4 notes et à avoir le nom de l'accord.
Je pensais partir sur une solution un peu simple :
je génère tous les accords possible et je vérifie si mes 4 notes sont dans chaque accord.
ça peut avoir l'air brute force, mais au final une liste de 15000 valeurs ça devrait se filtrer vite !
Référence en matière de bon gout capillaire et vestimentaire.
homme à tête de zizi.
- 1
- 2

KoalaMan

Si j'ai bien compris l'objectif premier, on se fiche de l'enharmonie des accords, on veut juste pouvoir reproduire ces notes exactement, éventuellement les transposer, sur un autre instrument.
On ne voit bien qu'avec les yeux. Le cœur est invisible pour l'essentiel.

Dr Pouet



KoalaMan


On ne voit bien qu'avec les yeux. Le cœur est invisible pour l'essentiel.

Djardin


En vrai, l'objectif c'est que je joue avec quelqu'un qui n'a aucune idée de ce qu'il joue.
Donc il pose ses doigts et trouve que ça sonne.
Puis ensuite pour écrire des arrangements et un accompagnement il faut donc trouver les accords.
(ces saloperies de chanteurs qui se mettent à la guitare, mais sans apprendre !)
L'idée à la base c'est de donner les notes et d'avoir les accords.
Mais je note plein d'idées cools : trouver la tonalité du morceau, trouver des renversements, partir d'une position (et pas des notes des notes).
Après, mis à part la technique de : je fais une liste d'accords possible et je cherche dedans, quelqu'un à testé de faire un truc avec un algo ? en cherchant des intervalles ?
même en fixant que le plus grave est la fondamentale, hein, juste voir si un truc marche.
Référence en matière de bon gout capillaire et vestimentaire.
homme à tête de zizi.

KoalaMan

On ne voit bien qu'avec les yeux. Le cœur est invisible pour l'essentiel.

Dr Pouet

Et avec, ça va revenir un peu à faire une table de hashage « à la main ». Bref, je pense que ton idée initiale de hashtable remplie par un algo, était la bonne, et c’est ce que j’ai fait. On voit que ça demande peu de lignes.
Mais pour faire plus subtil, je pense que ça va se compliquer nettement.

KoalaMan

Et du coup, en do majeur, on sait que
I C E G soit C
II D F A soit Dm
III E G B soit Em
IV F A C soit F
V G B D soit G
VI A C E soit Am
VII B D F soit B dim
On ne voit bien qu'avec les yeux. Le cœur est invisible pour l'essentiel.

offenbach

J'ai lu rapidement les pages précédentes, mais si j'ai bien compris le problème il faudrait coder un algorithme qui compare la structure d'intervalle de l'accord à une table qui contient les structures de bases de tous les types d'accords.Ce qu'il faut au départ c'est réduire l'accord inconnu à une structure dans laquelle les notes elles-même n'interviennent plus. Uniquement les distances entre les notes. Cela élimine les problème dièse/bémol et permet une table plus petite dans laquelle figure une structure par position d'accord.
Dans une structure d'accord donnée dans la table, une note en particulier doit être identifiée comme la fondamentale. Ainsi en alignant cette structure avec les notes à analyser (après avoir retrouvé la structure évidement...) la fondamentale est tout de suite apparente !
Après pour mettre tout ça en code, là ça dépasse mes compétences

Site officiel et boutique en ligne du Studio Delta Sigma https://www.studiodeltasigma.com

_d j a n g o

Après, on peut estimer qu'un accord c'est d'abord une fondamentale + une tierce (mineure ou majeure) et le reste n'est là que pour préciser le contexte hatmonique... en très gros, hein. Mais c'est pour dire qu'il faut d'abord chercher la tierce (ou le sus2/sus4) ou la déduire du reste (accords "no 3rd").
Oui, je dirais que la façon dont on entend un accord dépend beaucoup de ce que joue la basse.
Imaginons que le piano joue C E G :
Si la basse joue C, c est un do majeur
Si la basse joue G, c'est un Gsus avec une 13e
Si la basse joue E, c'est un Em avec une b13
Et ça, ça dépend du contexte harmonique. D'où vient cet accord ? Quand intervient il dans le morceau ? Morceau tonal ? Quelle est la tona générale du morceau ? Est ce qu'il intervient à un moment où ça "module" vers une autre tona que la tona de base ? Est-ce une resolution ? Une tension ?
Imaginons que le piano joue C E G et que la basse joue E... si c est un morceau en do majeur on le notera simplement C/E, c'est à dire "C majeur avec un E à la basse".
Résultats du questionnaire écolo :
[ Dernière édition du message le 13/05/2020 à 11:20:30 ]

Dr Pouet

Ce qu'il faut au départ c'est réduire l'accord inconnu à une structure dans laquelle les notes elles-même n'interviennent plus. Uniquement les distances entre les notes. Cela élimine les problème dièse/bémol et permet une table plus petite dans laquelle figure une structure par position d'accord.
C'est à peu près ce que j'ai fait en n'ayant qu des dièses !

En fait, mes "notes" sont essentiellement des nombres de 0 à 11.
Après je me posais des questions par rapport au tableau de christian_r :
2 notes sont tantôt en # tantôt en bémol, 2 autres sont toujours en bémol, 1 autre toujours en #. Quelle est la raison, la logique ? Y a-t-il une règle / un algorithme simple pour le déterminer ? J'imagine que non, mais bon.
Déjà : pourquoi c'est comme ça dans le tableau ? Parce-que l'on suppose que c'est en do ?
[ Dernière édition du message le 13/05/2020 à 19:34:50 ]
- < Liste des sujets
- Charte
- 1
- 2