Frage

Ein paar Wochen vor, mein Klavierlehrer und ich Ideen wurden abprallen Musiksoftware von ihnen über Meta-Komposition. Die Idee war:

Es gibt ein System MIDI-Eingang von einem Bündel von Instrumenten nehmen und drückt an die Lautsprecher ausgegeben und Leuchten. Die Software auf dem System, analysiert die MIDI-Daten wird es immer, und bestimmt, welche die Basis des Komponisten (wenn ich spiele einen F7-Akkord 3 mal innerhalb von 2 Sekunden Wechsel vom Cembaloklang mit dem Klavierklang einrichten auf Trigger zu verwenden, klingt ), Pedale oder tatsächliche Echtzeit-Analyse der Musik. Es würde die Lichter steuert basierend auf der Performance und Klängen der Instrumente in ähnlicher Weise - der Musiker habe nur vage angeben, was sie wollten - und Echtzeitanalyse ihres Spiels würde den Rest. als auch im laufenden Betrieb kann prozedural generierte Musik zusammen mit dem Musiker spielen. Im Wesentlichen würde die Software mit dem Darsteller spielt zusammen, mit einem dem anderen zu führen. Ich stelle mir vor, dass es einige Übung Gebrauch auf ein solches System zu bekommen, aber das könnte es ganz unglaubliche Ergebnisse haben.

Ich bin ein großer Fan von Impro-Jazz. Ein Charakteristikum des Impro, die aus anderen Kunstformen fehlen, ist die Zeithaftigkeit davon. Ein Gemälde kann 10 oder 1000 Jahre geschätzt werden, nachdem es gemalt wurde, aber Musik (vor allem improvisierte Musik) ist über die Leistung, da es die Schöpfung ist. Ich denke, dass die Software, die ich beschrieben würde viel für die Leistung hinzuzufügen, wie mit ihm, wie genau dem gleichen Stück spielt in einer ganz anderen Show jedes Mal führen würde.

So, jetzt die Fragen.

Bin ich verrückt?

Gibt es eine oder alle diese Software zu tun, noch? Ich habe einige der Forschung getan und haben nichts aufgedreht. Der Schlüssel zu diesem System ist, dass es während der Ausführung ausgeführt wird.

Wäre ich so etwas zu schreiben, wäre eine Skriptsprache wie Python schnell genug sein, um die Berechnungen zu tun, die ich brauche? Vermutlich würde es auf einem ziemlich schnellen System laufen, und die Vorteile der 2 ^ n-Core-Prozessoren nehmen könnte Intel Freigabe hält.

Kann jeder von Ihnen Ihre Erfahrungen und Tipps teilen über eine Schnittstelle mit Musikinstrumenten und Lichter und dergleichen?

Haben Sie irgendwelche Ideen oder Anregungen? Kalte und harsche Kritik?

Vielen Dank für Ihre Zeit, dies in Lesen und für jeden und alle Ratschläge! (Und sorry für den Witz in der Tags, konnte ich nicht widerstehen.)

War es hilfreich?

Lösung

haben Menschen verwendet Max MSP diese Art der Sache mit Midi zu tun, und die Schaffung von Video-Begleitung , oder einfach nur Midi Begleitung. Es ist eine völlig domänenspezifische App, die wahrscheinlich durch Smalltalk oder etwas inspiriert wurde, das kaum ein wirklicher Programmierer könnte lieben, aber Musiker-Programmierer tun.

Trotz des Text auf der Seite, die ich gerade verbunden ist, und die Tatsache, dass ‚jeder‘ verwendet die kommerzielle Version, es war nicht immer ein kommerzielles Produkt. Ircam schließlich freigegeben seine eigene Linie . Es heißt jMax . Puredata , hier in einem anderen Beitrag erwähnt ist eine andere Umschreiben dieser Linie.

Es gibt auch CSound; was nicht bedeutete, in Echtzeit zu sein, ist aber wahrscheinlich in der Lage jetzt ziemlich in Echtzeit sein, dass Sie einen anständigen Computer im Vergleich zu denen CSound gestartet.

Einige Leute haben Macromedia Director-Erweiterungen auch dafür midi Sachen in Lingo zu ermöglichen gehackt ... Das ist sehr veraltet und daher einige von ihnen auf modernere Adobe-Umgebungen.

Andere Tipps

Lesen Sie Puredata . Es kann umfangreiche MIDI-Analyse tun und die Leute verwenden es für die Leistung.

Ja, hier ist ein Video , die einen Bildschirm blinkt Puredata vorbei. Es zeigt jemand mit einem ziemlich komplexen Instrumente PD interagieren.

Auch sehen CSounds .

Ich habe für den Umgang mit rohen Audio-Eingänge PyAudio recht umfangreich verwendet, und fand es sehr unpythonic sein, wirkt viel mehr wie ein sehr dünne Hülle über C-Code. Wenn Sie jedoch mit midi zu tun hat, dann eher rohe Wellenformen, dann Ihre Aufgaben sind ziemlich viel einfacher, und Python sollte schnell genug sein, es sei denn, Sie bei 10000 Schlägen pro Minute spielen :)

Einige der Themen: Erkennen Gleichzeitigkeit, harmonische (formal - das heißt, Akkordstruktur) Analyse.

Dies ist auch ein 80/20 Problem, dass, wenn Sie die Akkordfolgen erlaubt beschränken, dann wird es ein bisschen einfacher. Denn was bedeutet „mitzuspielen“ bedeuten, wie auch immer, nicht wahr?

(auch bei elektronischer Musik conf die ich habe auch schon, es gibt viele Leute tun verschiedene Echtzeit-Begleitung Experimente auf Basis eines Eingangs Klang und Bewegung). Viel Glück!

Sie auch unter ChucK und Ableton Racks leben.

(und es ist CSound. No 's' am Ende)

siehe auch:

Ich habe keine Ahnung, ob die zweite tatsächlich real oder lohnt ein Blick auf. Keykit jedoch ist.

Sie können Kontakt mit Gary Lee Nelson in der Timara Abteilung am Oberlin. Vor 20 Jahren habe ich ein Projekt, das die Rhythmussektion für 12 bar Blues automatisch generiert und ich erinnere ihn ein Werkzeug beschreibt, dass er davon wusste, tat im Wesentlichen, was Sie beschreiben.

Vielleicht haben Sie Interesse an Genjam

Die Antwort auf Ihre Frage ist nicht - du bist nicht verrückt. Ähnliche Systeme existieren, aber Ihre Beschreibung ist ziemlich vage zu beginnen, so dass es eine Spezifikation nicht viel gegen beurteilen.

Ich schlage vor, Sie beginnen, einen Prototyp zu schreiben und sehen, wie es funktioniert. Etwas extrem klein und einfach. Bestehende Systeme verdammt werden.

Ich bin mit C ++ auf win32 api (kein mfc). Begann meinen Sequenzer wieder auf dem Amiga500 zu schreiben. Dabei spielt es keine Lichter tun, aber es gibt viel in nur Musik zu tun.

Viel Glück für Sie. Es ist ein extrem Spaß-Projekt. Ich würde sagen, -don't- Muster Ihr Projekt, wie andere Projekte arbeiten. Denn wenn Sie mich fragen, sie funktionieren nicht so groß,) Und der Spaß ist in der Lage zu sein, etwas anderes zu tun.

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