-
GEBIET DER ERFINDUNG
-
Die vorliegende Erfindung bezieht sich allgemein auf Musiksysteme und insbesondere auf ein Musiksystem, Verfahren und Computerprogramm zum Umwandeln von Sensorsignalen in eine Tonfolge.
-
HINTERGRUND DER ERFINDUNG
-
Es sind allgemein Musikinstrumente bekannt, die auf analoge oder digitale Art und Weise Töne erzeugen können. Um herkömmliche Musikinstrumente spielen zu können bedarf es nicht nur einiger Übung, sondern insbesondere auch entsprechender körperlicher Voraussetzungen hinsichtlich der Koordinationsfähigkeit.
-
Die menschliche Koordinationsfähigkeit kann aber bspw. aufgrund einer Behinderung, Krankheit oder dergleichen beeinträchtigt sein.
-
Während der ungeübte Benutzer eines Musikinstrumentes noch die Möglichkeit hat, ein Instrument durch entsprechende Übung zu erlernen, kann dies für den körperlich beeinträchtigten Menschen nahezu unmöglich sein.
-
In der Musiktherapie hat sich allerdings gezeigt, dass behinderte Kinder, ältere Menschen und insbesondere Menschen, die an der Parkinsonschen Krankheit leiden, ihre motorischen Fähigkeiten und ihre psychische Gesamtsituation durch Musizieren erheblich verbessern können, wie bspw. eine klinische Studie festgestellt hat: Claudia Pacchetti et al., ”Active Music Therapy in Parkinsons Disease: An Integrative Method for Motor and Emotional Rehabilitation”, Psychosomatic Medicine, 2000, Band 62, Seiten 386 bis 393.
-
Für solche Therapien stehen letztlich nur Instrumente sinnvollerweise zur Verfügung, die auch ein ungeübter und/oder motorisch eingeschränkter Benutzer bedienen kann, wie bspw. einfache Schlag- und Rhythmusinstrumente oder einfach zu bedienende Tasteninstrumente.
-
Aus der
US-Patentschrift US 7,297,852 B2 ist ein Musiktherapiesystem bekannt, bei dem ein Benutzer die Tonhöhe und das Tempo einer vorgegebenen Tonfolge durch Bewegung einer Steuerung in horizontaler und vertikaler Richtung beeinflussen kann.
-
Die deutsche Patentschrift
DE 195 22 958 C2 offenbart ein Verfahren zur Akustisierung körpereigener Werte für Trainings- und/oder Therapiemaßnahmen, wobei die relevanten physikalischen Messwerte des Probanden über Sensoren aufgenommen und in Musiksignale umgesetzt werden. Zur Umsetzung werden vorgegeben Musikdaten verwendet.
-
Aus der
US 2007/0241918 A1 ist eine Vorrichtung bekannt, die Druckkräfte, die auf eine Steuerung ausgeübt werden, in Musiksignale umsetzen kann.
-
Aus der
US-Patentschrift 4,526,078 A ist ein Kompositionssystem bekannt, bei dem Gestiken eines Benutzers gemessen und in Töne umgesetzt werden.
-
Die
US-Patentschrift 5,541,358 A offenbart ein elektronisches Musikinstrument, bei dem dreidimensionale Bewegungen in Töne umgesetzt werden.
-
Außerdem ist es aus der europäischen Patentanmeldung
EP 0 961 262 A1 generell bekannt, Constraints für das Lösen eines Harmonisierungsproblems zu verwenden.
-
Aufgabe der vorliegenden Erfindung ist es, ein Musiksystem, ein Verfahren bzw. ein Computerprogramm bereitzustellen, das auch ungeübten und/oder motorisch beeinträchtigten Benutzern ermöglicht, zu musizieren.
-
ZUSAMMENFASSUNG DER ERFINDUNG
-
Nach einem ersten Aspekt stellt die vorliegende Erfindung ein Musiksystem zum Umwandeln von Sensorsignalen in eine Tonfolge bereit, das umfasst: wenigstens ein Instrument, das wenigstens einen ersten Sensor aufweist, der erste Sensorsignale ausgibt; und wenigstens eine Steuerung, die von dem Instrument die ersten Sensorsignale empfängt und eingerichtet ist, den ersten Sensorsignalen erste vorgegebene Präferenzen zuzuweisen und die ersten Präferenzen wenigstens mit zweiten Präferenzen zu kombinieren, wobei die Steuerung eingerichtet ist, aus den kombinierten Präferenzen mit Hilfe von Soft-Constraints eine Tonfolge zu berechnen und diese auszugeben.
-
Nach einem zweiten Aspekt stellt die vorliegende Erfindung ein Verfahren zum Umwandeln von Sensorsignalen in eine Tonfolge bereit, das die Schritte umfasst: Zuweisen von ersten vorgegebenen Präferenzen zu ersten Sensorsignalen, die von wenigstens einem ersten Sensor von wenigstens einem Instrument stammen; Kombinieren der ersten Präferenzen mit wenigstens zweiten Präferenzen; Berechnen einer Tonfolge aus den kombinierten Präferenzen mit Hilfe von Soft-Constraints; und Ausgeben der berechneten Tonfolgen.
-
Nach einem dritten Aspekt stellt die Erfindung ein Computerprogramm bereit, das eine prozessorbasierte Vorrichtung veranlasst, ein Verfahren nach dem zweiten Aspekt auszuführen.
-
Weitere Aspekte und Merkmale der vorliegenden Erfindung ergeben sich aus den abhängigen Ansprüchen, der beigefügten Zeichnung und der nachfolgenden Beschreibung bevorzugter Ausführungsbeispiele.
-
KURZBESCHREIBUNG DER ZEICHNUNG
-
Ausführungsbeispiele der Erfindung werden nun beispielhaft und unter Bezugnahme auf die beigefügten Zeichnungen beschreiben, in welchen:
-
1 den Aufbau eines Musiksystems nach einem Ausführungsbeispiel der Erfindung veranschaulicht;
-
2 ein Instrument des Musiksystems nach 1 veranschaulicht;
-
3 Bewegungen des Instruments von 2 veranschaulicht;
-
4 den Zusammenhang der Bewegungen des Instruments von 3 und zugewiesenen Präferenzen darstellt;
-
5 die Zuweisung von Präferenzen illustriert;
-
6 eine Bewegungsverteilung und zugehörige Notenwerte zeigt;
-
7 eine weitere Bewegung des Instruments veranschaulicht;
-
8 eine Bewegungsverteilung der Bewegung des Instruments nach 7 und zugehörige Tonhöhenpräferenzen zeigt;
-
9 das Musiksystem von 1 mit mehreren Musikschnittstellen zeigt; und
-
10 ein Ablaufdiagramm eines Ausführungsbeispiels in Übereinstimmung mit der vorliegenden Erfindung zeigt.
-
BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSBEISPIELE
-
1 zeigt ein Ausführungsbeispiel eines Musiksystems 1 der vorliegenden Erfindung. Vor einer detaillierten Beschreibung folgen zunächst allgemeine Erläuterungen zu den Ausführungsbeispielen und deren Vorteile.
-
Wie eingangs erwähnt, besteht insbesondere in der Musiktherapie der Bedarf, dass auch ungeübte und motorische eingeschränkte Benutzer Musizieren können, um so ihre motorischen Fähigkeiten und ihr psychisches Wohlbefinden zu steigern. Aber auch ungeübte Benutzer haben großen Spaß am Musizieren, verfügen allerdings oftmals nicht über die Zeit und/oder Möglichkeit ein Musikinstrument entsprechend zu erlernen.
-
Der Erfinder hat erkannt, dass insbesondere für solche ungeübten und/oder motorisch eingeschränkten Benutzer einerseits ein einfaches Eingabegerät erforderlich ist, dessen Benutzung keine oder nur wenig Übung verlangt und damit keine allzu hohen Anforderungen an die Feinmotorik stellt. Andererseits hat er erkannt, dass es nicht ausreicht einfach nur ein Signal, das von dem Eingabegerät stammt, in einen Ton umzusetzen, da diese Umsetzung alleine noch kein Musizieren ermöglicht. Um wohlklingende Musik zu erzeugen, müssen gewisse Regeln beachtet werden, wie bspw. die klassische Harmonielehre. Die Beachtung von gewissen Regeln, wie bspw. Rhythmus oder Harmonie, ist insbesondere dann erforderlich, wenn mehrere Benutzer gleichzeitig musizieren wollen, wie bspw. in einer Therapiegruppe mit mehreren Parkinsonpatienten oder einer Musikgruppe.
-
Um diesen Anforderungen gerecht zu werden, stellen die Ausführungsbeispiele ein Musiksystem, ein Verfahren bzw. ein Computerprogramm zum Umwandeln von Sensorsignalen in eine Tonfolge bereit.
-
Dabei weist bspw. ein Eingabegerät, im Folgenden in Anlehnung an ein Musikinstrument auch Instrument genannt, wenigstens einen ersten Sensor auf. Dieser Sensor dient dazu Bewegungen des Benutzers des Instruments oder an dem Instrument in entsprechende Sensorsignale umzusetzen. Als Sensoren kommen dabei bspw. Drucksensoren, Bewegungssensoren, wie Beschleunigungssensoren, Gyroskope oder dergleichen zur Anwendung. Auch kann ein Berührungssensor, wie eine Multitouch-Oberfläche oder andere Tangible-Interfaces Verwendung finden. Oder aber die Sensorsignale stammen von einer Bilderkennungseinrichtung, die beispielsweise die Anordnung mehrere Körper auf einer Tischoberfläche überwacht, wobei die räumliche Anordnung der Körper auf der Tischoberfläche und der verschiedenen Körper zueinander die Sensorsignale bestimmt. Letztlich kommen bspw. Sensoren zum Einsatz, die die Beschleunigung oder Bewegung des Instruments in eine, zwei oder drei Raumrichtungen, die absolute Position im Raum oder die Ausrichtung des Instruments im dreidimensionalen Raum messen können und entsprechende Signale oder davon abgeleitete Signale ausgeben können. Die Instrumente selbst können aber auch Dreh- oder Kippschalter aufweisen, die bspw. Bewegungen eines Joysticks in zwei Dimensionen aufnehmen oder dergleichen.
-
Eine Steuerung des Instruments oder eine zentrale Steuerung des Musiksystems wertet bspw. die Sensorsignale aus, um ihnen bestimmte, vorgegeben erste Präferenzen zuzuweisen. Diese Präferenzen sendet dann bspw. die Steuerung des Instruments wahlweise zusammen mit den Sensorsignalen an eine zentrale Steuerung des Musiksystems. Bei einem Ausführungsbeispiel bei dem das Instrument einen Beschleunigungssensor und ein Gyroskop aufweist, können die Präferenzen bspw. so sein, dass das Instrument, wenn es der Benutzer schnell bewegt und dabei aufrecht hält, schnelle Noten mit hoher Tonhöhe bevorzugt.
-
Die Präferenzen stellen demnach nicht in jedem Ausführungsbeispiel eine fest vorgegebene unveränderliche Abbildung der Sensorsignale bspw. auf Tonhöhen und/oder Tonlängen oder dergleichen dar, sondern sie geben nur eine Tendenz oder einen Wunsch an, den die Steuerung des Musiksystems dann bspw. mit zweiten Präferenzen kombiniert.
-
Dazu empfängt die Steuerung, bspw. die von dem Instrument an sie übertragenen ersten Präferenzen oder die von ihr zugewiesen Präferenzen und kombiniert diese mit zweiten Präferenzen. Die zweiten Präferenzen dienen bspw. der Koordination von mehreren Instrumenten und können sich bspw. aus Tönen ableiten, die von einem anderen Instrument stammen oder einer anderen vorgegeben Tonfolge oder dergleichen, wie weiter unten im Detail ausgeführt wird.
-
Die Steuerung des Musiksystems ist eingerichtet, aus den kombinierten Präferenzen mit Hilfe von Soft-Constraints eine Tonfolge zu berechnen und diese auszugeben. Dazu weist die Steuerung bspw. einen Mikroprozessor und einen nichtflüchtigen Speicher auf, indem bspw. ein entsprechendes Programm abgespeichert ist, das den Mikroprozessor bei Ablauf des Programmes dazu veranlasst, entsprechende Berechnungen vorzunehmen.
-
Ein ”Soft-Constraint” ist eine ”weiche Randbedingung” im Gegensatz zum ”normalen Constraint”, der eine ”feste” Randbedingung darstellt. In der Constraint-Programmierung wird allgemein ein erwünschtes Ergebnis durch verschiedene Bedingungen spezifiziert, welche die Eigenschaften der Lösungen des Problems beschränken. Diese Bedingungen werden in der klassischen Constraint-Programmierung oft als logische Formeln ausgedrückt, die eine harte Grenze zwischen „richtigen” und „falschen” Lösungen festlegen. Soft-Constraints sind eine Erweiterung klassischer Constraints. Sie ermöglichen die Modellierung verschiedenster Optimierungsprobleme auf natürliche Weise, ohne eine harte Grenze zwischen „gut” und „schlecht” zu ziehen. Stattdessen gewichten Soft-Constraints Lösungen, wodurch den Lösungen eine Rangfolge auferlegt wird. Dadurch ist es ermöglicht mit ihnen Alltagsprobleme zu lösen.
-
Von Bistarelli et al. wurde in „Semiring-based contraint satisfaction and optimization”, J. ACM, 44(2): 201–236, 1997 eine elegante und abstrakte Theorie von Soft-Constraints eingeführt. Auf Grundlage dieser Theorie implementierten Wirsing et al. in „A rewriting logic framework for Soft-Constraints.”, WRLA 2006, 6th International Workshop on Rewriting Logic and its Applications, April 2006, ENTCS, 2006 einen Solver in einer Rewriting-Logik und modellierten das Problem optimaler Parameterzuordnungen für Software-Definined-Radio (SDR). Hölzl et al. erweiterten diese Theorie in ”Which Soft-Constraints do you Prefer?”, WRLA 2008, 7th International Workshop on Rewriting Logic and its Applications, March 2008, ENTCS, 2008 um einen allgemeinen Ansatz, Präferenzen auf Soft-Constraints zu deklarieren. Darin sind auch sogenannte Monoide Soft-Constraints behandelt, die eine Weiterentwicklung der Soft-Constraints basierend auf mathematischen Halbringen aus der genannten Veröffentlichung von Bistarelli et al darstellen.
-
Auch wenn im Folgenden Monoide Soft-Constraints behandelt werden, so können natürlich auch andere mathematische Darstellungen, wie bspw. Halbringe, als Grundlage für die Soft-Constraints der folgenden Ausführungsbeispiele verwendet werden.
-
Bei den Monoiden Soft-Constraints werden Rangstufen (engl. ”grades”) verwendet, um Lösungen eines Problems zu klassifizieren, welche sich mathematisch als sogenannte Monoide, ein Begriff aus der Gruppentheorie, darstellen lassen. Ein Monoid sind bspw. die natürlichen Zahlen zusammen mit der Addition oder Multiplikation.
-
Allgemein kann man ein zu lösendes Problem durch eine Menge von (Problem-)Variablen und eine Menge von (Problem-)Werten darstellen. Einzelne Werte können dabei entsprechenden Variablen zugeordnet werden, was durch Funktionen von Variablen auf Werte dargestellt werden kann. Im Folgenden wird die Notation [A → B] verwendet, um die Menge aller Funktionen zu definieren, die von A nach B abbilden. Eine Belegung ist also eine Funktion von Variablen auf Werte:
Belegung = [Variable → Wert].
-
Ein Soft-Constraint weist nun einer Belegung eine Rangstufe zu. Die Rangstufen werden mithilfe von Monoiden definiert und dienen der Bewertung von Belegungen. Ein Soft-Constraint kann dann als Funktion von Belegungen auf Rangstufen definiert werden:
SoftConstraint = [Belegung → Rangstufe]
-
Mehrere Soft-Constraints lassen sich zu einem einzigen Soft-Constraint kombinieren, indem die verschiedenen Rangzahlen zu einer einzigen kombiniert werden. Ein sehr elegantes und allgemeines Verfahren zur Kombination mehrerer Constraints findet sich in dem o. g. Artikel Hölzl. et al (vgl. auch Abschnitt 2.2).
-
Die genannten Präferenzen stellen letztlich einzelne Soft-Constraints dar. So kann bspw. das Musiksystem aus mehreren Instrumenten bestehen, die jeweils eine Stimme aufweisen, zum Beispiel die erste (oberste) oder zweite (bspw. eine mittlere) usw, die dann entsprechende Variablen des Constraint Problems darstellen, oder aber ein Instrument kann selbst verschiedene Stimmen haben:
Variable = Stimme = {s1, s2, s3, ...}
-
Die Werte der Variablen sind bspw. Aktionen, die ein Instrument ausführen kann, wie das Spielen bestimmter Tonhöhen oder Noten: Diese Aktionen stellen dann Werte des Constraint Problems dar:
Belegung = [Stimme → Aktion].
Aktion = {..., Spiele(c3), Spiele(c#3), ..., Halte(f4), ..., Pausiere, ...}
-
Die Übereinstimmung einer Aktion eines Instruments mit dem Sensorsignal des Instruments stellt eine erste Randbedingung des Constraint-Problems dar:
SensorConstraint = [Belegung → Rangstufe]
= [(Stimme → Aktion) → Rangstufe]
-
Durch den ”Sensor-Constraint” werden Aktionen eines Instrumentes, bspw. Tonhöhen oder Noten, Rangstufen zugeordnet, die ihre Übereinstimmung mit dem Sensorsignal zum Ausdruck bringen. Der Sensor-Constraint stellt also die Präferenzen dar, die das Instrument einem bestimmten Sensorsignal zuordnet, wie in dem oben erwähnten Beispiel, bei dem der Benutzer das Instrument schnell und aufrecht bewegt und damit hohe und schnelle Töne/Noten bevorzugt hat.
-
Diese Aktionen können verschiedene Typen sein, so ist bspw. ein Typ eine ”Notenaktion”, die immer verknüpft ist mit einer Notentonhöhe:
NotenAktion ⊂ Aktion
Tonhöhe: NotenAktion → Tonhöhe
Tonhöhe = {..., c3, c#3, d3, d#3, ...}
-
Natürlich lassen sich beliebige andere Präferenzen definieren. Allgemein sind die Präferenzen über die Aktionen durch Soft-Constraints definiert, welche die Aktionenzuweisungen für die Stimmen mit einer Rangstufe klassifizieren:
(Stimme → Aktion) → Rangstufe
-
Auf diese Weise lassen sich also Präferenzen über Stimmenzuweisungen mit Soft-Constraints ausdrücken.
-
Bei manchen Ausführungsbeispielen legt jedes Instrument seine eigenen Präferenzen fest, wobei diese Festlegung auf den Sensorsignalen und einem globalen Zustand des Systems basieren kann. Diese Zuweisung kann allerdings auch in der zentralen Steuerung des Musiksystems geschehen, wie weiter unten beschrieben wird.
-
Diese Präferenzen kombiniert nun bspw. die Steuerung mit anderen, zweiten Präferenzen. Diese zweiten Präferenzen können bspw. von einem weiteren Instrument stammen oder aber auch nur festlegen, dass bspw. die Tonfolge des ersten Instruments gewissen harmonischen Regeln genügen soll, indem bspw. bestimmte Tonhöhenverhältnisse (Frequenzverhältnisse) zwischen den verschiedenen Stimmen bevorzugt werden und andere weniger bevorzugt sind.
-
Diese Koordinierung zwischen den Präferenzen des ersten Instruments und anderen Präferenzen kann ebenfalls als Soft-Constraint-Problem formuliert werden. Auf diese Art und Weise können auch mehrere einzelne Instrumente koordiniert werden.
-
So kann bspw. die harmonische Beziehung zwischen zwei Stimmen durch eine Klassifizierung der Intervalle zwischen diesen beiden Stimmen ausgedrückt werden. Dazu weist man bspw. einzelnen Intervallen bestimmte Rangstufen zu. Dabei bekommen wohlklingende Intervalle, d. h. bspw. konsonante Intervalle, wie Quinten und Quarten, einen hohen Rang 1 und bspw. das dissonante Intervall Tritonus den schlechtesten, untersten Rang 6:
Rang 1 = Quinte, Quarte
Rang 2 = große Terz, kleine Sexte
Rang 3 = kleine Terz, große Sexte
Rang 4 = große Sekunde, kleine Septime
Rang 5 = kleine Sekunde, große Septime
Rang 6 = Tritonus
-
Damit lässt sich die Harmonie zwischen zwei Tonlagen bzw. Tonhöhen, wie folgt darstellen:
Harmonie: Tonhöhe × Tonhöhe → Rangstufe
-
Der ”Harmonie-Constraint” ist dann analog zu den obigen Überlegungen für eine beliebige Anzahl an Stimmen:
Harmonie Constraint : Belegung → Rangstufe,
dies entspricht: (Stimme → Aktion) → Rangstufe
-
Der Harmonie-Constraint kann dargestellt werden als das Produkt über alle möglichen Harmonien von Stimmpaarkombinationen (s
a, s
b) aus der Menge aller Stimmen {s
1, s
2, s
3, ...}, wobei s
a = s
1, s
2, s
3 ... und s
b = s
1, s
2, s
3 ...:
Im obigen Beispiel bezog sich der Harmonie-Constraint auf das harmonische Zusammenspiel von Stimmen. Bezüglich der Harmonie kann man natürlich auch andere Constraints verwenden, wie bspw., dass die von einem Instrument gespielten Töne zu einer tonalen Skala, z. B. Tonleiter C-Dur oder dorische Kirchenmusikskala, gehören sollen. So wäre bspw.
Tonale Skala
C-Dur ((s
1 → Spiele(f#
4)), ...)
falsch, da der Ton ”f#
4” nicht zu C-Dur gehört. Allgemein lässt sich folglich dieser tonale Harmonie Constraint wie folgt ausdrücken:
Tonale Skala
Skala: (Stimme → Aktion) → {wahr, falsch}
-
Natürlich kann man noch andere Koordinationspräferenzen durch Constraints ausdrücken, wie bspw. gleichen Rhythmus zu spielen oder Harmonieabfolgen wie bspw. Kadenzen zu berücksichtigen, Artikulationen von Tönen (Staccato, Akzente, etc.) oder dergleichen.
-
Die Steuerung des Musiksystems kombiniert in bestimmten Zeitintervallen die vorliegenden Präferenzen, d. h. die ersten, zweiten usw. Dann stellt sie das entsprechende Soft-Constraint-Problem auf, wobei, wie oben ausgeführt, sich die verschiedenen Soft-Constraints zu einem einzigen Soft-Constraint-Problem zusammenführen lassen. Dieses ermittelte einzelne Soft-Constraint-Problem wird dann gelöst, bspw. durch einen bekannten Verzweigen-Begrenzen-Algorithmus (engl. ”branch-and-bound algorithm”). Die Lösung dieses Soft-Constraint-Problems definiert Tonfolgen für die unterschiedlichen Stimmen, die möglichst gut den jeweiligen Präferenzen genügen, die also zum einen möglichst in Übereinstimmung mit den von den Instrumenten jeweils erzeugten Sensorsignalen sind, zum anderen aber auch bspw. harmonisch sind.
-
Die Lösung ist dabei nicht absolut, sondern es können bspw. mehrere Lösungen des Problems mit unterschiedlichen Rängen als Ergebnis herauskommen. Das Ergebnis, d. h. die berechnete Tonfolge, kann als lokales optimales Ergebnis oder aber auch als globales optimales Ergebnis abgespeichert werden. Dabei kann die Tonfolge auch Harmonien, also mehrere gleichzeitig erklingende Töne umfassen oder auch nur einen einzigen Ton.
-
Unter Tonfolge soll hier auch eine Rhythmusfolge verstanden werden, die letztlich immer den gleichen ”Ton” aufweist. Mit ”Ton” ist hier ein Frequenzmuster gemeint, das also auch ein Geräusch sein kann.
-
Das Zeitintervall, das die Steuerung dem Constraint-Problem zugrundelegt, d. h. das Zeitintervall, über das die Steuerung beispielsweise Sensorsignale sammelt, um daraus die Präferenzen für bestimmte Aktionen des Instruments und damit die resultierende Tonfolge zu berechnen, kann beliebig sein, bspw. die Dauer eines metrischen Schlages, Halbschlages, 1/16-Schlages oder dergleichen umfassen. Bevorzugt ist das Zeitintervall jedoch kurz, um eine schnelle Reaktion der produzierten Tonfolge auf das Sensorsignal zu ermöglichen. Dabei kann die brechnete Tonfolge bspw. auch nur einen einzigen Ton umfassen. Alternativ kann das Zeitintervall aber auch länger sein, z. B. einen kompletten Takt umfassen. In letzterem Fall können sich, wiederum um eine schnelle Reaktion zu bewirken, aufeinanderfolgende Zeitintervalle auch überlappen, z. B. indem ein Zeitfenster der Länge eines Taktes in Schritten von 1/16-Schlägen über die Zeitachse bewegt wird. Gemäß der oben genannten Beispiele für Zeitintervalle kann sich eine Aktion eines Instruments also auf das Spielen einer Note beziehen (wenn das Zeitintervall beispielsweise die Länge eines 1/16-Schlages hat), oder aber auch auf das Spielen einer Notensequenz (wenn das Zeitintervall beispielsweise die Länge eines Takte hat). Die Zeitintervalle müssen zudem nicht unbedingt äquidistant gewählt werden. Es wäre auch denkbar, die Zeitintervalle an den Zeitpunkt der Erzeugung der Sensorsignale anzupassen, so dass beispielsweise durch jeden Sensorimpuls ein Zeitintervall abgegrenzt wird, dessen Länge durch den zeitlichen Abstand des aktuellen Sensorimpulses vom vorhergehenden Sensorimpuls bestimmt ist. Nachdem die Steuerung für ein Zeitintervall die Tonfolge berechnet hat, berechnet sie die Tonfolge des nächsten Zeitintervalls.
-
Die mithilfe von Soft-Constraints spielenden Instrumente können auch mit anderen Musikinstrumenten koordiniert werden. So können bspw. Präferenzen definiert werden, die ein Instrument mit einem elektrischen Klavier koordinieren, welches aber selbst nicht koordiniert wird. Dafür kann auch eine Aufzeichnung verwendet werden, wie bspw. eine Midi-Datei, in der Tonhöhen, Tonlängen und auch Stimmenzuteilungen gespeichert sein können.
-
Die Instrumente, die mit der Steuerung verbunden sind, können auch als Musikschnittstelle betrachtet werden, an der letztlich die Präferenzen oder wenigstens die Sensorsignale im beliebigen von der Steuerung verarbeitbaren Format bereitgestellt werden.
-
Manche Ausführungsbeispiele betreffen auch ein Verfahren oder ein Computerprogramm, das einen Programmcode enthält, der eine prozessorbasierte Vorrichtung (bspw. einen Computer) veranlasst, das entsprechende Verfahren auszuführen.
-
Wie bereits ausgeführt können die Präferenzen beliebige Parameter umfassen, wie bspw. Tonhöhe, Tondauer, Tonhöhenbereich, Tondauerbereich, Tonintervall, Tonpause, Lautstärke, Rhythmus, Klangfarbe. Der Tonhöhenbereich stellt dabei bspw. einen bevorzugten Bereich an Tönen mit einer bestimmten Höhe dar, wie bspw. Töne, die zwischen dem c2 und c4 liegen oder dergleichen. Der Tondauerbereich kann sich dabei auf ein absolutes Zeitmaß, bspw. eine Zehntelsekunde, beziehen oder auf ein relatives, wie bspw. ein metrisches Zeitmaß, wie bspw. Viertelnoten, Achtelnoten oder dergleichen. Gleiches gilt für die Lautstärke, die relativ angegeben sein kann, wie bspw. durch ”forte” oder aber auch in Dezibel oder dergleichen. Auch der Rhythmus kann auf einer absoluten Zeitskala vorgegeben sein, bspw. jede Sekunde einen Ton mit Zehntelsekunde Dauer, oder im metrischen Sinne, bspw. auf jeden ersten Schlag eines Taktes eine Sechzehntelnote usw.
-
Die Präferenzen können dabei in digitaler oder auch in analoger Form vorliegen. So kann bspw. die Steuerung aus einem normierten Frequenzmuster bestimmte Parameter z. B. durch Fouriertransformation oder dergleichen extrahieren. Dabei stellt zum Beispiel die Amplitude eine Lautstärke dar, die Länge des Frequenzmusters stellt die Tondauer da, die Frequenz selbst die Tonhöhe usw.
-
Natürlich können die Präferenzen auch in digitaler Form, bspw. als Präferenzdaten vorliegen, in denen die jeweiligen Präferenzen gespeichert sind.
-
Zurückkommend zu 1 veranschaulicht diese ein Ausführungsbeispiel eines Musiksystems 1 in Übereinstimmung mit der vorliegenden Erfindung. Das Musiksystem 1 weist ein oder mehrere Instrumente 3 auf, die einen oder mehrere Sensoren 2 aufweisen. Dabei können verschiedene Instrumente 3 auch verschiedenen Sensoren 2 aufweisen. Zwischen dem Sensor 2 und bspw. einem Mikroprozessor 14 (2) des Instruments 3 besteht eine Verbindung, die als Signalleitung 15 (2) ausgestaltet ist. Über die Signalleitung 15 können der Sensor 2 und der Mikroprozessor 14 des Instruments 3 Signale austauschen, d. h. der Sensor 2 liefert Sensorsignale an den Mikroprozessor 14 des Instruments 3.
-
Der Sensor 2 ist dabei in diesem Ausführungsbeispiel als Bewegungssensor, d. h. Beschleunigungssensor, ausgestaltet, der Bewegungen bzw. Beschleunigungen des Instruments 3 in alle drei Raumrichtungen erkennt und entsprechende Sensorsignale an den Mikroprozessor 14 ausgibt. Dabei weist das Instrument 3 den Sensorsignalen bestimmte Präferenzen zu. Zum Beispiel weist das Instrument 3 Bewegungen des Instruments 3, die nach oben gerichtet sind und entsprechende Sensorsignale erzeugt, vorzugsweise höhere Töne, das heißt Töne mit größeren Frequenzen zu, als Bewegungen, die nach unten gerichtet sind. Nach unten gerichteten Bewegungen weist das Instrument 3, bzw. der Mikroprozessor 14, tiefere Töne, das heißt Tönen mit kleineren Frequenzen zu.
-
Die Bewegungen des Instrumentes 3 sind in 3 veranschaulicht. Der Pfeil nach oben stellt eine Aufwärtsbewegung des Instruments 3 dar und der Sensor 2 detektiert die Aufwärtsbewegung und gibt entsprechende Sensorsignale aus, die die Aufwärtsbewegung repräsentieren. Der Pfeil nach unten hingegen veranschaulicht die Abwärtsbewegung des Instrumentes 3 und der Sensor 2 erkennt wiederum diese Bewegung und gibt ebenfalls entsprechende Sensorsignale aus, die die Abwärtsbewegung repräsentieren.
-
Der Mikroprozessor 14 weist diesen Sensorsignalen jeweilige Präferenzen zu, wobei die Sensorsignale entsprechend getaktet aufgenommen werden. Die Aufnahme der Sensorsignale ist je nach Ausführungsbeispiel unterschiedlich. Im vorliegenden Fall ist die zeitliche Achse nach dem entsprechenden eingestellten metrischen Takt in Sechzehntelwerte unterteilt und der Mikroprozessor 14 mittelt die empfangenen Sensorsignale für die Dauer einer Sechzehntelnote und weist dann diesem Mittelwert eine entsprechende Präferenz zu.
-
So führt beispielsweise eine kleine Abwärtsbewegung des Instrumentes 3 zu dem Ton ”f1”, wie in 3 als erste Note dargestellt ist. Eine darauffolgende, größere Aufwärtsbewegung des Instruments 3 führt hingegen zur Zuweisung der Note ”h1”. Die zwei darauffolgenden gleichstarken Abwärtsbewegungen interpretiert der Mikroprozessor 14 als jeweilige große Sekunden und weist dementsprechend die Noten ”a1” bzw. ”g1” zu. Die sehr große Aufwärtsbewegung führt schließlich zu einem Septsprung zur Note ”f2”.
-
Bei anderen Ausführungsbeispielen hingegen ist die Taktung bspw. in Viertel, Achtel, oder anderen metrischen Schritten zur Ermittlung einer Tonhöhe unterteilt. Natürlich kann auch lediglich zu einem metrischen Zeitpunkt, bspw. auf jeden metrischen Schlag eines Taktes, ein kurzer ”Schnappschuss” eines Sensorsignales aufgenommen werden. Wie die Sensorsignale aufgenommen werden steht im Belieben des Fachmanns. Jedes Verfahren, das erlaubt, Präferenzen den Sensorsignale eines zu einem bestimmten Zeitpunkt oder über ein bestimmtes Zeitintervall zuzuweisen kann verwirklicht werden.
-
Es kann auch jede andere Bewegung des Instrumentes oder Teilen davon, die von Sensoren erkannt werden und in Sensorsignalen darstellt werden können, entsprechenden Präferenzen zugewiesen werden, wie weiter oben bereits ausgeführt wurde. So kann eine Bewegung nach Links mit hohen Noten und eine Bewegung nach rechts des Instruments 3 mit niedrigen Noten assoziiert werden. Folglich kann jede unterscheidbare Bewegung oder Ausrichtung des Instruments oder Teilen davon, die in unterscheidbaren Sensorsignalen mündet, zur Zuweisung unterschiedlicher Präferenzen führen.
-
Die entsprechenden Präferenzen sendet dann das Instrument 3 an eine Steuerung 4 des Musiksystems 1. Die Steuerung 4 ist nun bspw. so eingerichtet, dass sie die Noten eines einzelnen Instrumentes 3 mit anderen Noten harmonisiert. Dazu generiert sie bspw. aus einem Zustandsspeicher 5 entsprechende Soft-Constraints, die zu einer Harmonisierung der von dem Instrument 3 übermittelten Tonfolge verwendet werden können oder bspw. nur Töne einer bestimmten Tonskala zulassen. Mit anderen Worten, die von Instrument 3 übermittelte Tonfolge ist nicht fest vorgeben, sondern sie kann variiert werden, wie in 4 durch die ”Zustandswolke” angegeben. Diese Zustandswolke symbolisiert, dass jede Note einen gewissen Tonhöhen-Spielraum besitzt in dem sie geändert werden kann.
-
Die Steuerung 4 stellt folglich das Soft-Constraint-Problem aus den von dem Instrument 3 erhaltenen Präferenzen auf und löst dieses, bspw. mit dem Verzweigen-Begrenzen-Algorithmus. Das Ergebnis dieser Lösung ist dann eine harmonisierte Tonfolge oder auch mehrere harmonisierte Tonfolgen, die jeweils einen unterschiedlichen Rang aufweisen. Welche Tonfolge dann tatsächlich ausgegeben wird, kann bspw. voreingestellt sein. So kann zum Beispiel immer die Beste ausgegeben werden oder es kann auch ein Benutzer die verschiedenen Lösungen, d. h. die verschiedenen harmonisierten Tonfolgen, analysieren und eine nach seinen persönlichen Präferenzen auswählen.
-
Diese Tonfolge, die Beste oder die ausgewählte oder nach einem anderen Verfahren bestimmte, wird dann durch eine Musikausgabe 6 ausgegeben, beispielsweise an einen Synthesizer, an eine Soundkarte eines PCs, oder an einen Digital-Analogwandler, über die die Tonfolge direkt als analoge oder digitale Signale ausgegeben wird. Die Ausgabe kann aber auch in eine Datei erfolgen, in der die Tonfolge gespeichert wird (z. B. Midi, MP3, AAC (advanced audio coding), FLAC (free losless audio codec) oder dergleichen).
-
Bei manchen Ausführungsbeispielen weist der Mikroprozessor 14 den Sensorsignalen nicht Tonhöhen in Abhängigkeit der Beschleunigungsrichtung als Präferenzen zu, sondern bspw. in Abhängigkeit der Beschleunigungsstärke entsprechende Tonlängen. Dabei spielt dann bspw. die Bewegungsrichtung des Instruments 3 keine Rolle, sondern es kommt nur auf die Beschleunigungsstärke an. Je schwächer die Bewegung ausfällt, desto länger ist der Ton und desto weniger Töne werden in einem Zeitintervall gespielt. Je schneller die Bewegungen des Instrumentes 3 sind, desto kürzer sind die Töne und desto mehr Töne werden in einem Intervall gespielt. Dies veranschaulicht 6 in der beispielhaft eine Bewertung verschiedener Tonlängen dargestellt wird. Die Beschleunigungsstärken werden auf ein Intervall von 0 bis 1 normalisiert und die Tonlängen auf dieses Intervall verteilt. Die vertikale Linie stellt die aktuelle Beschleunigungsstärke dar, die daraus abgeleitete Bewertung von Tonlängen wird als Kurve dargestellt (hier bspw. ähnlich einer Gaußverteilung). In diesem Fall bekommt die Achtelnote die beste Bewertung, gefolgt von der Viertel- und 1/16-Note.
-
Natürlich können die Beschleunigungswerte auch auf andere Art und Weise ermittelt und auf entsprechende metrische Werte abgebildet werden. So entsprechen bei manchen Ausführungsbeispiele festgelegte Beschleunigungswertbereiche jeweils einem Notenwert usw.
-
Die beiden obigen Ausführungsbeispiele können auch kombiniert werden. Dabei wird sowohl die Bewegungsrichtung und Auslenkung zur Zuweisung von Präferenzen, wie Tonhöhen, als auch die Beschleunigungsstärke zur Zuweisung von Präferenzen, wie Tondauern, genutzt.
-
Bei einem weiteren Ausführungsbeispiel berechnet der Mikroprozessor 14 bspw. aus den Beschleunigungssignalen des Sensors 2 einen Winkel, in dem das Instrument gerade gehalten wird, wie 7 durch den kreisförmigen Pfeil veranschaulicht. Bei anderen Ausführungsbeispielen weist das Instrument bspw. einen Sensor 2 auf, der als Gyroskop ausgestaltet ist und somit die absolute Ausrichtung im dreidimensionalen Raum als Sensorsignal ausgeben kann. Hier kann das Instrument 3 bspw. in einem Winkel schräg nach oben gehalten werden und der Mikroprozessor 14 berechnet aufgrund der zugehörigen Sensordaten, die aus einer Bewegung in diese Stellung folgen, zugehörige Präferenzen, wie bspw. bevorzugte Tonhöhen, wie in 8 dargestellt. Dabei entspricht die Kurve der Bewertung von Tonhöhen. In 8 liegt die am Besten bewertete Tonhöhe der Verteilung gerade bei der Note c1. Damit kann das Instrument je nach Winkelstellung in der es gerade gehalten wird, Tonhöhen unterschiedlich bewerten.
-
Damit das Instrument nicht ständig bewegt werden muss, hängen die Tonhöhen bei manchen Ausführungsbeispielen nicht direkt von der Winkelstellung des Instruments 3 ab, sondern es wird eine Gaußverteilung bspw. über den gesamten Tonumfang des Instruments berechnet. Der Peak dieser berechneten Verteilung wird nun mit der Winkelstellung des Instruments 3 assoziiert. Es bewegt sich folglich der Peak der Verteilung in Abhängigkeit der Winkelstellung des Instruments 3, wie in 8 durch die vertikale Linie dargestellt ist, die von dem Peak der Verteilung zu der Note c1 reicht.
-
Bei einem anderen Ausführungsbeispiel sind die Noten völlig wahlfrei mit der Bewegung des Instruments 3 assoziiert und es gibt bspw. nur die Präferenzen, dass die Noten innerhalb des Tonumfanges von einer Oktave sein sollen und dass sie harmonisch und rhythmisch sind. Demzufolge wird bei diesem Ausführungsbeispiel jede Art von Sensorsignalen in harmonische und rhythmische Töne umgewandelt. Dieses Ausführungsbeispiel ist insbesondere für Benutzer geeignet, deren motorische Fähigkeiten stark beeinträchtigt sind, da sie auch mit unkontrollierten Bewegungen des Instruments 3 rhythmische und harmonische Musik erzeugen können. Allerdings ist es bei diesem Ausführungsbeispiel schwierig, bestimmte vorhersagbare Tonhöhen durch eine gezielte Bewegung zu erzeugen.
-
Bei einem weiteren Ausführungsbeispiel ist das Instrument 3 ebenfalls mit Sensoren 2 ausgestattet, die Beschleunigungen in alle drei Raumrichtungen messen und entsprechende Signale ausgegeben können. Bei diesem Ausführungsbeispiel haben die Bewegungsrichtung und die Bewegungsstärke keinen direkten Einfluss auf die Tonhöhe, sondern sie sind genauso wie bei dem vorher beschriebenen Ausführungsbeispiel (harmonisch) zufallsverteilt. Allerdings wählt das Instrument 3 entsprechend den Beschleunigungswerten rhythmische Präferenzen, sodass der Benutzer des Instruments 3 Kontrolle über den Rhythmus erhält, wie oben in Zusammenhang mit 6 beschrieben ist.
-
Bei einem weiteren Ausführungsbeispiel umfasst das Musiksystem 1 neben Instrumenten 3, noch weitere Musikquellen, bspw. noch ein elektrisches Klavier 3' und eine Notenquelle 3''. Das elektrische Klavier 3' liefert bspw. Töne im Midi-Format und auch die Notenquelle 3'' liegt im Midi-Format vor. Die Musikquellen 3, 3' und 3'' sind jeweils mit der Steuerung 4 verbunden, sodass diese die einzelnen Quellen koordinieren kann. Zum Beispiel kann die Steuerung 4 die jeweils von den Instrumenten 3, dem elektrischen Klavier 3' und der Notenquelle 3'' gelieferten Präferenzen untereinander bspw. hinsichtlich Harmonie und Rhythmus koordinieren. Dabei geht die Steuerung im Wesentlichen so vor, wie oben beschrieben wurde. Das heißt sie behandelt die jeweiligen Präferenzen der Instrumente 3, des elektrischen Klaviers 3' und der Notenquelle 3'' als Soft-Constraints und stellt ein einzelnes Soft-Constraint-Problem auf, mit den oben beispielhaft eingeführten Randbedingungen ”Harmonie” und ”Rhythmus” und löst dieses. Das Ergebnis ist dann eine Tonfolge, die die einzelnen Stimmen, d. h. die Stimmen der Instrumente 3, 3' und 3'' miteinander harmonisch und rhythmisch kombiniert. Wie weiter oben bereits beschrieben, kann die Ausgabe des Ergebnisses in digitaler oder analoger Form erfolgen.
-
Die Sensorsignale des Sensors 2 können ebenfalls in analoger oder digitaler Form vorliegen. So sind bei manchen Ausführungsbeispielen die Sensoren 2 eingerichtet, digitale Sensorsignalen, also Sensordaten auszugeben, die dann von der Steuerung 4 verarbeitet werden. Auch die Präferenzen können sowohl analog als auch digital an die Steuerung 4 von den Instrumenten 3 weitergeleitet werden.
-
Bei den obigen Ausführungsbeispielen sind die Instrumente 3 eingerichtet, den Sensorsignalen entsprechende Präferenzen zuzuweisen. Bei manchen Ausführungsbeispielen übernimmt diese Funktion eine zentrale Steuerung 4 des Musiksystems 1. Bei manchen Ausführungsbeispielen empfängt demnach die zentrale Steuerung des Musiksystems 1 Sensorsignale von Instrumenten 3, 3' und/oder Präferenzen, wie bspw. Tonfolgen mit Tonhöhen und Tondauern, und ist in der Lage diese entsprechend miteinander zu koordinieren. Dabei weist dann beispielsweise die zentrale Steuerung 4 entsprechend empfangenen Sensorsignalen von verschiedenen Instrumenten 3, 3', 3'' jeweilige Präferenzen zu. Dazu ist die zentrale Steuerung 4 bspw. so eingerichtet, dass sie von einem Benutzer eingerichtet werden kann. Zum Beispiel kann der Benutzer der Steuerung 4 mitteilen welcher der Musikquellen 3, 3' oder 3'', im Folgenden auch Musikschnittstellen genannt, welche Stimme zugewiesen wird. Ferner kann der Benutzer bei manchen Ausführungsbeispielen der zentralen Steuerung 4 mitteilen, welche Musikschnittstelle welche Präferenzen hat. So kann er bspw. die zentrale Steuerung 4 so einstellen, dass diese bei den Sensorsignalen der Instrumente 3, die eine Bewegung nach oben bzw. unten repräsentieren, die Präferenz hohe bzw. tiefe Töne zuweist. Bei den Signalen, die sie von dem elektrischen Klavier 3' empfängt, kann sie bspw. die Präferenz Harmonie zuweisen. Bei der Notenquelle 3'' weist die Steuerung 4 hingegen die Präferenz Rhythmus zu, da bspw. die Notenquelle 3'' bereits harmonisch ist und nur als Rhythmusvorlage gilt.
-
Allgemein lässt sich ein Verfahrensablauf, der bspw. in der Steuerung 4 als Computerprogramm abläuft, wie folgt darstellen. Dies Computerprogramm kann zum Beispiel auf einem Datenträger, wie eine CD-Rom oder DVD gespeichert sein oder als Programmpaket von einer Internet-Seite heruntergeladen werden. Der Programmcode des Computerprogramms veranlasst die entsprechende prozessorbasierte Vorrichtung, wie bspw. ein Computer oder eine Spielekonsole, das entsprechende Verfahren auszuführen, wenn es den Programmcode des Computerprogramms ausführt.
-
Das Verfahren beginnt, wie in 10 gezeigt, nach einem Start 7 damit, bei 8 erste Sensorsignale zu empfangen. Wie oben ausgeführt, können diese Sensorsignale von einem beliebigen Sensor eines Instruments stammen und in analoger oder digitaler Form vorliegen. Bei 9 werden dann diesen ersten Sensorsignalen erste vorgegebene Präferenzen zugewiesen. Wie oben ausgeführt, können diese ersten Präferenzen bspw. Tonlage, Tondauer, Rhythmus usw. sein. Bei 10 werden diese ersten Präferenzen mit zweiten Präferenzen kombiniert. Die zweiten Präferenzen können dabei, wie erwähnt, von einer beliebigen Musikschnittstelle stammen und verschiedener Art sein, wie bspw. Tonhöhe, Tondauer, Tonhöhenbereich, Tondauerbereich, Tonintervall, Tonpause, Lautstärke, Rhythmus oder dergleichen. Bei 11 wird dann eine Tonfolge aus den kombinierten Präferenzen mit Hilfe von Soft-Constraints, wie oben beschrieben, berechnet. Bei 12 wird schließlich die Tonfolge analog oder digital entsprechend ausgegeben. Nach Ausgabe der Tonfolge springt das Verfahren wieder zurück und empfängt bei 8 folgende erste Sensorsignale.