Frage

Ich habe eine Zeit lang eine Menge Gedanken in prozeduralen Erzeugung von Inhalten setzen, und ich habe nie viel Experimentieren mit prozeduralen Musik gesehen. Wir haben fantastische Techniken für Modelle, Animationen, Texturen zu erzeugen, aber die Musik ist immer noch entweder vollkommen statisch oder einfach geschichtete Schleifen (z Spore).

Aus diesem Grund, ich habe eine optimale Musikerzeugungstechniken denken, und ich bin neugierig, was andere Leute im Kopf haben. Auch wenn Sie es nicht vorher in Betracht gezogen haben, was denken Sie, wird gut funktionieren? Eine Technik pro Antwort bitte, und sind Beispiele, wo möglich. Die Technik kann vorhandene Daten verwenden oder die Musik komplett neu erzeugen, vielleicht auf irgendeine Art von Eingang (Stimmung, Geschwindigkeit, was auch immer).

War es hilfreich?

Lösung

Cellular Automata - lesen

.

Sie können auch ausprobieren hier .

Edit:

rakkarage hat eine andere Ressource geliefert: http://www.ibm. com / developer / java / library / j-camusic /

Andere Tipps

Das erfolgreichste System wird wahrscheinlich mehrere Techniken kombinieren. Ich bezweifle, werden Sie eine Technik finden, die gut für die Melodie, Harmonie, Rhythmus und Bass-Sequenz Generation in allen Genres der Musik funktioniert.

Markov Ketten , sind beispielsweise gut geeignet für die melodische und harmonische Sequenzerzeugung. Diese Methode erfordert die Analyse der vorhandenen Songs der Kettenübergangswahrscheinlichkeiten zu bauen. Die wahre Schönheit von Markov-Ketten ist, dass die Staaten sein können, was Sie wollen.

  • Für Melodieerzeugung, versucht Schlüssel relative Notennummern (z, wenn der Schlüssel c-Moll, würde C 0 sein, D 1 sein würde, D # 2 sein würde und so weiter)
  • Für Harmonie Generation, versucht, eine Kombination von Schlüsseln relativer Notennummern für den Grundton des Akkords, die Art des Akkords (Dur, Moll, vermindert, übermäßig, etc.) und die Umkehrung des Akkords (Wurzel, ersten oder zweite)

Neuronale Netze gut geeignet sind, auf Genetische Algorithmen verwendet werden können Rhythmusgruppen zu entwickeln. Ein einfaches Modell könnte ein binäres Chromosoms verwenden, in denen die ersten 32 Bits repräsentieren die Muster von eine Basstrommel, die zweiten 32 Bits eine Schlinge, die dritte 32 Bit eine geschlossene hallo hat und so weiter. Der Nachteil in diesem Fall ist, dass sie kontinuierliches menschliches Feedback erfordern die Eignung des neu entwickelte Musters zu bewerten.

Ein Expertensystem verwendet werden kann, um Sequenzen von den anderen Techniken erzeugt zu überprüfen. Die Wissensbasis für einen solchen Validierungssystem kann wahrscheinlich von jedem guten Musiktheorie Buch oder Website aufgehoben werden. Versuchen Sie Ricci Adams' musictheory.net .

Es gibt mehr als 50 Jahre Forschung in diese Techniken, die oft von den Entwicklern übersahen nicht vertraut mit der Geschichte der Computermusik und algorithmischer Komposition. Zahlreiche Beispiele von Systemen und Forschung, die diese Probleme anzugehen sind hier zu finden:

http://www.algorithmic.net

Ein einfacher und wenig wirkungsvoll Algorithmus ist 1 / f-Rauschen auch bekannt als „rosa Rauschen“ zu verwenden, Dauern und Notizen aus einer Skala auswählen. Das klingt ein bisschen wie Musik und kann ein guter Ausgangspunkt sein.

Ein besserer Algorithmus ist „Markow-Ketten“ .. scannen einig Beispiel Musik und baute eine Tabelle von Wahrscheinlichkeiten zu verwenden. Im einfachsten Fall wäre es so etwas wie C 20% wahrscheinlich ist A. zu folgen, um dieses besser zu machen, sehen Sie die Reihenfolge der letzten Noten, zum Beispiel „CAB“ ist 15% wahrscheinlich von B folgen, und 4% wahrscheinlich durch eine Bb, usw. Dann folgen, nur Noten nehmen die Wahrscheinlichkeiten der zuvor ausgewählten Noten mit. Dieser bemerkenswert einfache Algorithmus erzeugt recht gute Ergebnisse.

Markov-Ketten für Musik Generation

Dmitri Tymoczko hat einige interessante Ideen und Beispiele hier:

http://music.princeton.edu/~dmitri/whatmakesmusicsoundgood.html

Meine Software Evolutionstheorie angewendet verwendet, um Musik "wachsen". Der Prozess ist ähnlich wie Richard Dawkins' Das Programm blinde Uhrmacher - MusiGenesis fügt musikalische Elemente zufällig, und dann entscheidet der Benutzer, ob oder ob nicht jedes hinzugefügte Element zu halten. Die Idee ist, nur zu halten, was Ihnen gefällt und Graben, was nicht richtig klingen, und Sie müssen keine musikalische Ausbildung haben, es zu benutzen.

Die Schnittstelle Schläge, aber es ist alt -. Sue me

Ich habe immer gerne die alten Lucasarts-Spiele, die das iMuse System verwendet, das einen nie endende, reaktiven Soundtrack für das Spiel produzierte und war sehr musikalisch (weil die meisten davon noch von einem Komponisten erstellt wurden). Sie können die Spezifikationen (einschließlich des Patents) finden Sie hier: http://en.wikipedia.org/wiki/IMUSE

Nintendo scheint das einzige Unternehmen zu sein, noch einen Ansatz zu verwenden, ähnlich wie iMuse die Musik on the fly zu erstellen oder beeinflussen.

Es sei denn, Ihr Projekt sehr experimentell ist, würde ich nicht die Verwendung eines Komponisten verlassen -. Ein echter Mensch Komponist produziert viel mehr musikalische und hörbare Ergebnisse als ein algorythm

Vergleichen sie ein Gedicht zu schreiben. Sie leicht nonsene Gedichte erzeugen können, die sehr Avantgarde klingen, aber shakespeare mit einem algorythm schwer zu replizieren, um es gelinde auszudrücken

Sie einen Blick auf SoundHelix genommen haben (http://www.soundhelix.com)? Es ist ein Open-Source-Java-Framework für die algorithmische Zufallsmusikproduktion, die recht ordentlich Musik produziert. Sie können in einer Webseite eingebettet SoundHelix als eigenständige Anwendung, als Applet verwenden, als JNLP-basiertes Applet oder Sie können es selbst in der Java-Programm enthalten.

Beispiele mit SoundHelix erzeugt finden Sie hier: http://www.soundhelix.com/audio-examples

Forschung an nicht-langweiligen prozeduralen Erzeugung von Musik geht weit zurück. Durchsuchen Sie alte und neue Ausgaben von Computer Music Journal http://www.mitpressjournals.org/cmj (keine echte Domain-Namen?) Das hat schwerwiegende technische Artikel der tatsächlichen Nutzung zu Musiksynthese Tüftler, Lötkolben Jockeys, Bit Herders und akademische Forscher. Es ist ot eine flauschige Reviews und Interviews Lappen wie mehrere der mags Sie in großen Buchhandlungen finden.

So ein großes Thema. Sie können einen Blick auf meiner iPad App nehmen, Dickicht, oder meine Ripple Software bei morganpackard.com. Nach meiner Erfahrung kommen die meisten der wissenschaftlichen Ansätze zur dynamischen Erzeugung von Musik mit Zeug, die, na ja, akademisch klingen. Ich denke, desto erfolgreiche Sachen am Rande der Club / electronica Welt zu finden sind. Monolake ist mein Held in dieser Hinsicht. Sehr hörbares Zeug, sehr viel computergenerierte. Meine eigene Musik ist auch nicht schlecht. Paul Lanskys „Alphabet Book“ ist ein schönes Beispiel für extrem hörbare algorithmische Musik, besonders wenn man bedenkt, dass er ein akademischer Typ.

Die Technik, die ich angesichts habe klein musikalische Muster zu erzeugen, bis zu einer Bar oder so. Tag diese Muster mit Gefühl Kennungen wie ‚Aufregung‘, ‚intensiv‘ usw. Wenn Sie Musik für eine Situation erzeugen möchten, wählen Sie ein paar Muster auf der Grundlage dieser Tags und wählen Sie ein Instrument Sie spielen möchten es mit. Basierend auf dem Instrumente, herauszufinden, wie die Muster kombinieren (zB auf einem Klavier Sie in der Lage sein können, sie alle zusammen zu spielen, je nach Handspanne, auf einer Gitarre können Sie die Noten in schnellen Folge spielen) und dann macht es zu PCM . Darüber hinaus könnten Sie Schlüssel, Änderungsgeschwindigkeit ändern, Effekte hinzufügen, etc.

Die spezifische Technik Sie beschreiben, ist etwas, Thomas Dolby wurde vor über zehn oder fünfzehn Jahren arbeiten, obwohl ich nicht mehr erinnern kann, was er nannte es so kann ich Ihnen nicht geben einen guten Suchbegriff ein.

Aber finden Sie unter diesem Wikipedia-Artikel und diese Metafilter Seite.

Das Buch algorithmische Komposition ist eine gute Rundgang durch die verschiedenen Methoden verwendet:

„Die behandelten Themen sind:. Markov Modelle, generative Grammatiken, Übergang Netzwerke, Chaos und Selbstähnlichkeit, genetische Algorithmen, zelluläre Automaten, neuronale Netze und künstliche Intelligenz“

Es ist ein guter Ausgangspunkt auf diesem breiten Thema, aber es ist nie in der Tiefe beschreibt, wie jede Methode funktioniert. Es gibt einen guten Überblick der einzelnen, aber nicht genug, wenn Sie nicht bereits über das Wissen über sie haben.

Zurück in den späten 90er Jahren, erstellt Microsoft ein ActiveX-Steuerelement die „Interactive Music Control“, die genau tat, was Sie suchen. Leider scheinen sie das Projekt zu haben, zu verlassen.

Nicht ganz das, was Sie nach, aber ich wusste, dass jemand, der automatisch sah Erzeugung DJ-Sets genannt Content Based Musik Ähnlichkeit .

Wenn Sie in tiefere Theorien darüber, wie Musik hängt zusammen, Bill Sethares Website hat einige interessante Wendungen.

Ive gesucht in tun diesem Projektvorschlag - „8.1 “von der‚Theorie und Praxis in Programmiersprache‘Forschungsgruppe von der Universität Kopenhagen - Abteilung von CS:

  

8.1 Automatische Harvesting und statistische Analyse von Musik Corpora

     

Traditionelle Analyse der Noten   besteht aus einer oder mehreren Personen   Analysieren Rhythmus, Akkordfolgen, und   andere Merkmale eines einzigen   Stück im Rahmen eines oft eingestellt   vagen Vergleich anderer Stücke von   die gleichen Komponisten oder andere Komponisten   aus der gleichen Zeit.

     

Traditionelle   automatisierte Analyse von Musik hat kaum   Noten behandelt, sondern konzentriert sich   auf die Signalanalyse und die Verwendung von   Maschinenlerntechniken zu extrahieren,   und klassifizieren, in der, sagen wir, Stimmung oder   Genre. Im Gegensatz dazu beginnende Forschung   bei DIKU zielt darauf ab, Teile der automatisieren   Analyse von Noten. der Mehr   Wert ist das Potential für das Extrahieren   Informationen aus großen Mengen an   Noten, die nicht leicht getan werden kann,   von Hand und kann nicht sinnvoll sein   durch maschinelles Lernen analysiert   Techniken.

- wie ich es sehe - die entgegengesetzte Richtung Ihrer Frage ist, die Daten erzeugt - Ich stelle ich vor -., Die in einigen Fällen von Verfahren Generation von Musik könnte

Meine Meinung ist, dass generative Musik funktioniert nur, wenn es einen strengen Auswahlprozess durchläuft. David Cope, einen algorithmischen Musik-Pionier, durch Stunden musikalischen Output von seinen Algorithmen gehen würde (was ich denke, war meist Markov Chain basiert), um die wenige herausgreifen, die tatsächlich gut worden.

Ich denke, dieser Auswahlprozess durch die Modellierung der Eigenschaften eines bestimmten musikalischen Stil automatisiert werden konnten. Zum Beispiel würde ein „Disco“ Stil verleiht viele Punkte für eine Basslinie, den Offbeats und Trommelteile mit Schlingen auf dem unbetonten aber subtrahieren Punkte für stark dissonant Harmonien verfügt.

Die Tatsache ist, dass die Musikkomposition Prozess mit so vielen idiomatischen Praktiken gefüllt ist, dass sie sehr schwer sind ohne besondere Kenntnisse auf das Gebiet zu modellieren.

Ich habe für verfahrens Musik auf ein Python-Modul gearbeitet. Ich programmiere gerade heraus, was ich weiß, über Noten, Skalen und Akkord Bau, dann in der Lage gewesen, sie nach dem Zufall Inhalt von diesen Einschränkungen generieren zu lassen. Ich bin sicher, es gibt mehr Theorie und Muster ein System wie das gelehrt werden könnte, vor allem von jemandem, der das Thema besser versteht. Dann können Sie diese Systeme als Einschränkungen für genetische Algorithmen oder randomisierten Content-Generierung verwendet werden.

Sie können meine Implementierung gehen über hier , vor allem der zufällig generierten Lead Beispiel für Sie nützlich sein können. Jemand mit einem soliden Verständnis von Akkordfolgen könnte eine Songstruktur von Techniken wie die und implementieren Constrained-Random-Melodien wie diese über ihn erstellen. Meine Kenntnisse der Musiktheorie erstreckt sich nicht so weit.

Aber im Grunde, müssen Sie die Theorie von der Art von Musik, die Sie generieren mögen codieren, und dann, dass für einigen Algorithmus als Einschränkung verwendet für prozedural den Bereich dieser Theorie zu erforschen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top