Instruments distinctifs dans un fichier musical
Donné un fichier de musique, est-il possible de séparer chaque instrument est joué? I. e. disons que j'ai someSong.mp3, et dans cette chanson il y a du chant, guitare, basse et batterie. Je veux obtenir 4 "pistes" - une pour chaque instrument.
Je suppose qu'il est presque impossible de le faire, étant donné que les instruments peuvent se chevaucher, et il est notoirement difficile de distinguer le chevauchement des voix les laisser seuls instruments.
Cependant est il y a une bibliothèque, ou un algorithme, ou une CERTAINE façon de le faire, je serais curieux de savoir comment.
source d'informationauteur FreeMemory
Vous devez vous connecter pour publier un commentaire.
Mon premier cycle projet concerne la transcription des notes à partir d'un fichier WAV un fichier MIDI. Nous avons traité uniquement le cas simple d'un seul instrument, éventuellement de jouer plus d'une note à la fois (un piano, par exemple). Notre recherche sur le sujet avant de commencer a montré que, même ce (c'est à dire un seul instrument) est considéré comme non-trivial. Fondamentalement, le problème est:
Maintenant, si vous avez plus d'un appareil à la fois, et aucune des deux jouant les mêmes notes ou des harmonies de celle-ci, à un moment, vous pourrait être en mesure de dire les instruments en utilisant certains heuristique sur les amplitudes des harmonies ou sur les séquences de notes qu'il joue. Plus probable qu'il y aura des moments où les deux instruments jouent la même note. Ensuite, vous n'avez pas vraiment besoin de toute façon de décider s'il y est (a) un instrument de lecture de la note, (b) deux instruments jouant dans le même volume, (c) un jeu doux et l'autre jouer fort ou (d) toute combinaison de ceux-ci.
De toute façon, c'est la courte liste des problèmes à résoudre. Je ne sais pas du tout algorithme qui résout ce problème dans le cas général. Je ne pense pas que ce problème a été résolu encore.
Edit: Mon projet de présentation peut être trouvé à http://www-sipl.technion.ac.il/new/Archive/Special_Events/sipl2004/Projects_PowerPoint/WAV-to-MIDI.pdf
J'ai fait tombé sur une très intéressante algorithme appelé ACI (Analyse en composantes Indépendantes).
Le concept derrière cet algorithme ne vient pas du traitement du signal du monde, mais à partir de théories probabilistes.
Nous l'avons utilisé pour séparer les deux chansons qui ont été mélangés en un seul fichier mp3.
Vous pouvez trouver une bibliothèque pour l'implémentation en Matlab \ C++ \ Python appelé FastICA ici.
Donner un coup de feu, c'est vraiment sympa.
Chaque instrument a un caractère fallacieux de l'oscillation, donc si vous isoler une seule note (avec une DFT/FFT) et de comparer les autres fréquences, à ce point du temps, vous pouvez distinguer au moins les différents types d'instruments.
La façon la plus simple de le faire est de maintenir les instruments séparément, en premier lieu, c'est pourquoi de nombreux intermédiaires de musique applications de traitement d'utiliser le MIDI pour magasin instrument de messages dans une forme abstraite sur les pistes séparées.
Longue histoire courte: Vous ne pouvez pas, sauf dans le cas où votre quatre instruments les synthétiseurs de jeu pur sinus-ondes.
le mp3 est un format avec perte. Il fonctionne par la modélisation de la réponse acoustique d'une personne et d'en jeter les informations qu'il estime qu'une personne ne peut pas entendre. Dans l'essence de plus en plus fort des instruments de l'ombre douce des instruments - le plus doux, on obtient abandonné. Cela signifie que vous ne sera jamais capable d'extraire ce qui à l'origine est allé dans le mp3 encore moins de distinguer les instruments.
J'ai un ami qui est ingénieur du son et il l'a toujours pour dire "Non" aux personnes qui lui demandent de re-conception d'une trace enregistrée comme un mp3.
Il y A quelques semaines j'ai vu une étude qui suggère que la jeune génération en fait préféré le son de mp3 plus plus complète des formats que c'est ce qu'ils ont grandi avec.