Verfahren und Vorrichtung zur rhythmischen Aufbereitung von
Audiosignalen
Beschreibung
Die vorliegende Erfindung bezieht sich auf die rhythmische Aufbereitung von Audiosignalen, um das Ergebnis der rhyth¬ mischen Aufbereitung beispielsweise mit anderen Melodien bzw. Stimmen oder Begleitungen zu einer mehrstimmigen MeIo- die mischen bzw. vereinigen zu können.
Audiosignale, wie sie unmittelbar nach einer Tonaufnahme erhalten werden, liegen meistens zunächst als äquidistante Folge von Abtastwerten vor, wie z.B. im PCM-Format (PCM = Pulse Code Modulation = Pulscodemodulation) . In dieser Form werden Musikstücke auf CDs gespeichert, nämlich als Folge digitaler Abtastwerte.
Audiosignale werden meistens in komprimierter Form als kom- primierte Audiosignale abgespeichert und weiterverarbeitet, um die Datenmenge zu komprimieren. Ein Beispiel eines Kom¬ primierungs-Algorithmus ist der allseits bekannte MP3- Standard. Bei den meisten solchen Komprimierungsverfahren wird das Audiosignal in Frequenzbänder zerlegt, wobei die Spektralwerte zur Komprimierung derart quantisiert oder auf Null gesetzt werden, dass bei der Rücktransformation bzw. Dekompression der Informationsverlust nicht hörbar ist. Verwendung findet hier ein sogenanntes psycho-akustisches Modell, das zeitliche und frequenzmäßige Verdeckungen in Form einer sich zeitlich ändernden Mithörschwelle berück¬ sichtigt.
Unabhängig davon, in welcher der beiden oben genannten For¬ men ein Audiosignal nun vorliegt, d.h. in einer unkompri- mierten oder komprimierten Form, lässt sich ein Audiosignal dieser Art nur schlecht mit anderen Audiosignalen automa¬ tisch, d.h. durch einen Computer oder dergleichen und ohne Interaktion einer fachkundigen Person, mischen, so dass ein
akzeptables Hörergebnis herauskommt. Soll eine zweistimmige Melodie beispielsweise dadurch erhalten werden, dass ein erstes Audiosignal, das eine erste Melodie darstellt, und ein zweites Audiosignal, das eine zweite Melodie darstellt, gemischt bzw. miteinander vereinigt werden, so ist das ohne die Interaktion einer musikalisch ausgebildeten Person auch dann nicht möglich, wenn die beiden Melodien rhythmisch i- deal aufeinander abgestimmt sind, d.h. Taktsynchron sind. Jedenfalls ist es schwierig, die Takte der beiden Melodien derart übereinander zu legen, dass die Taktschläge der bei¬ den Melodien aufeinander fallen.
Gar unmöglich ist es da Melodien miteinander zu mischen, die rhythmisch nicht perfekt sind, wie z.B. Tempovariatio- nen aufweisen. Ein Beispiel für ein rhythmisch nicht per¬ fektes Audiosignal ist beispielsweise eine solche, die durch Aufnehmen eines Gesangs eines Benutzers erhalten wird, oder durch Summen oder Pfeifen oder dergleichen. In diesem Fall ist ein Mischen von derart erhaltenen Audiosig- nalen unter bloßer Einstellung eines geeignetes zeitlichen Versatzes zwischen den Audiosignalen nicht möglich. Ande¬ rerseits ist es auch nicht möglich, die Rhythmusabweichun¬ gen eines Audiosignals in seiner vorliegenden Form als zeitliche Abfolge von Abtastwerten zu beseitigen. Dasselbe gilt für eine rhythmische Aufbereitung in der Domäne der Frequenzbänder.
Es ist deshalb wünschenswert, Audiosignale, die in unkomp¬ rimierter oder in komprimierter Form bzw. einer Zeitabtast- bzw. Frequenzbanddomäne vorliegen, rhythmisch aufbereiten zu können, um dieselben beispielsweise anschließend mitein¬ ander mischen bzw. vereinigen zu können.
Die Aufgabe der vorliegenden Erfindung besteht deshalb dar- in, ein Verfahren und eine Vorrichtung zur rhythmischen Aufbereitung eines Audiosignals zu schaffen, so dass effek¬ tiver, mit weniger Mühe und besser hörbarem Erfolg eine Weiterverarbeitung des Audiosignals, wie z.B. ein Mischen
bzw. Vereinigen dieses Audiosignals mit anderen Audiosigna¬ len für eine mehrstimmige Melodie, möglich ist.
Diese Aufgabe wird durch eine Vorrichtung gemäß Anspruch 1 und ein Verfahren gemäß Anspruch 14 gelöst.
Der Kerngedanke der vorliegenden Erfindung besteht darin, dass eine effektivere, weniger aufwändige und qualitativ bessere rhythmische Aufbereitung eines Audiosignals erhal- ten werden kann, wenn die eigentliche rhythmische Aufberei¬ tung in einer Notendarstellung des eine Melodie beinhalten¬ den bzw. darstellenden Audiosignals erfolgt. Mittels einer Verarbeitung des Audiosignals, die eine Notenerkennung bzw. -extraktion umfasst, wird deshalb erfindungsgemäß zunächst eine Notenfolge erzeugt. Aus dieser Notenfolge wird dann eine Grundnotenlänge bestimmt, woraufhin die Noten der No¬ tenfolge den Notenlängen-Quantisierungsstufen auf der Basis der Grundnotenlänge zugeteilt werden können, um eine Noten- längen-quantisierte Notenfolge zu erhalten. Die Taktlänge kann dann ohne weiteres als ein ganzzahliges Vielfaches der Grundnotenlänge bestimmt werden, nämlich durch Bestimmung derart, dass eine sich ergebende Schlaggeschwindigkeit der Notenlängen-quantisierten Notenfolge eine vorbestimmte Be¬ dingung erfüllt, wie z.B. der BPM- (beats per minute = Schläge pro Minute) Wert innerhalb eines vorbestimmten Be¬ reiches liegt. Auf der Basis der Taktlänge kann dann der Auftakt bestimmt werden, wodurch das Taktraster der Noten¬ längen-quantisierten Notenfolge bzw. der Rhythmus der Melo¬ die durch die Taktlänge und den Auftakt definiert ist. An- schließend kann dann ein Anpassen der Notenlängen- quantisierten Notenfolge an das Taktraster auf der Basis der Taktlänge und des Auftakts durchgeführt werden, wodurch eine rhythmische Aufbereitung des Audiosignals bzw. der in dem Audiosignal beinhalteten Melodie erhalten wird. Am Ende liegt das Audiosignal zwar als eine Notenfolge vor, nämlich als eine rhythmisch korrigierte Notenfolge, aber diese lässt sich ohne weiteres in eine Zeitabtast- bzw. Frequenz-
banddarstellung rücktransformieren, und zwar unter jegli¬ cher Instrumentierung.
Gemäß einem bevorzugten Ausführungsbeispiel der vorliegen- den Erfindung wird die Grundnotenlänge dadurch bestimmt, dass die Ton- bzw. Notenanfangszeitpunkte der Noten ausge¬ wertet werden, die bei der Erzeugung der Notenfolge bei der Notenerkennung für jede Note erzeugt worden sind. Insbeson¬ dere werden die Differenzen der Notenanfangszeitpunkte auf- einanderfolgender Noten der Notenfolge quantisiert, und die sich ergebende Tonabstandsstatistik ausgewertet, um die Grundnotenlänge zu ermitteln. Dabei wird die Grundnotenlän¬ ge beispielsweise mit derjenigen Tonanfangsabstandsquanti- sierungsstufe gleichgesetzt, die am häufigsten in der No- tenfolge auftritt.
Bei der Notenerkennung gemäß einem bevorzugten Ausführungs¬ beispiel der vorliegenden Erfindung, wird jeder erkannten Note ein NotenanfangsZeitpunkt und eine Notendauer zugeord- net. Zwischen den einzelnen erkannten Noten der Notenfolge entstehen somit stets Pausen. Neben den normal vorkommenden Pausen in der Notenfolge, die aufgrund von Atempausen beim Einsingen einer Melodie beispielsweise auch in ihrer Länge erheblich schwanken können, können in einer Notenfolge je- doch auch Pausen entstehen, die gewünscht sind bzw. zur Me¬ lodie dazugehören. Bei diesen Noten bildet sich eine beson¬ ders große Differenz zwischen dem Tonanfangsabstand zur nachfolgenden Note und der Notendauer der der Pause voraus¬ gehenden Note. Damit solche Diskrepanzen nicht bei der nachfolgenden Auswertung zu Fehlern führen, wird gemäß ei¬ nem bevorzugten Ausführungsbeispiel auf die Bestimmung der Grundnotenlänge hin die Notenfolge daraufhin überprüft, ob solche großen Diskrepanzen zwischen Tonanfangszeitpunkt- Differenzen aufeinander folgender Noten auf der einen Seite und der Notendauer der jeweils ersten Note auf der anderen Seite existieren. Ist dies der Fall, wird in die Pause eine Pausennote eingefügt, d.h. eine Note mit einer zugeordneten Lautstärke von Null.
Zur eigentlichen Einteilung der Noten in die Notenlängen- Quantisierungsstufen, d.h. der eigentlichen Notenlängen- Quantisierung, wird gemäß einem ersten Ausführungsbeispiel der vorliegenden Erfindung für jede Note die Differenz ih¬ res Notenanfangsabstands zur nachfolgenden Note zur Grund¬ notenlänge ausgewertet. Vorzugsweise sind ganzzahlige No¬ tenlängen-Quantisierungsstufen vorgegeben, wie z.B. 1, 2, 3, 4, 8, 16, 32 ..., denen die einzelnen Noten derart zuge- ordnet werden, dass die zugeordnete Notenlängen- Quantisierungsstufe multipliziert mit der Grundnotenlänge dem Notenanfangsabstand zur nachfolgenden Note am nächsten kommt.
Gemäß einem weiterem Ausführungsbeispiel wird die Zuordnung der Noten zu Notenlängen-Quantisierungsstufen auf eine kom¬ pliziertere Art und Weise durchgeführt, um der üblichen Un¬ zulänglichkeit von eingesungenen Audiosignalen Herr zu wer¬ den, nämlich dass der Takt einer eingesungenen Melodie über die Zeit hinweg variiert. Bei dieser Vorgehensweise wird die Grundnotenlänge abschnittsweise an die Notenfolge ange- passt, wodurch sich weniger Fehler in der Notenlängen- Quantisierungsstufeneinordnung ergeben.
Gemäß einem weiteren Ausführungsbeispiel wird der Umstand ausgenutzt, dass üblicherweise Noten eine quantisierte No¬ tendauer bzw. Notenlänge von 2~x, mit x einer ganzen Zahl, aufweisen. Im Anschluss an die Einstufung der Noten der No¬ tenfolge in die Notenlängen-Quantisierungsstufen wird gemäß diesem Ausführungsbeispiel folglich ausgewertet, wie viele der Noten einer Notenlängen-Quantisierungsstufe zugeordnet worden sind, die einem Vielfachen von 3 entspricht. Sind dies zu viele, so wird Grundnotenlänge mit 2/3 oder 3/2 multipliziert und die Notenlängen- Quantisierungsstufeneinteilung erneut durchgeführt.
Gemäß einem bevorzugten Ausführungsbeispiel der vorliegen¬ den Erfindung wird die Auftaktbestimmung unter Ausnutzung
einer Beobachtung durchgeführt, nach welcher Notenanfänge zumeist mit Taktanfängen zusammenfallen, und nach welcher lange Noten zumeist an den Taktanfängen positioniert sind. Diese Vorgehensweise ermöglicht die schnelle Auffindung des Auftaktes bei bekannter Taktlänge, indem lange Noten in der Notenfolge gesucht werden, deren Notenanfänge zueinander einen Abstand aufweisen, der einem ganzzahligen Vielfachen der Taktlänge entspricht.
Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung werden nachfolgend Bezug nehmend auf die beiliegenden Zeichnungen näher erläutert. Es zeigen:
Fig. 1 ein Blockschaltbild einer Vorrichtung zur Erzeu- gung einer polyphonen Melodie;
Fig. 2 eine schematische Skizze zur Veranschaulichung der Notendarstellung, wie sie von der Extrakti¬ onseinrichtung der Vorrichtung von Fig. 1 ausge- geben wird;
Fig. 3 ein Blockschaltbild des internen Aufbaus der Rhythmuseinrichtung aus der Vorrichtung von Fig. 1, die zusammen mit der Notenextraktionsein- richtung der Vorrichtung von Fig. 1 ein Ausfüh¬ rungsbeispiel für eine Rhythmus-Aufbereitungs¬ einrichtung gemäß der vorliegenden Erfindung lie¬ fert;
Fig. 4 ein Flussdiagramm zur Veranschaulichung der Funk¬ tionsweise der Einrichtung zur Bestimmung der Grundnotenlänge und zur Einteilung der Noten der Notenfolge in Notenlängen-Klassen bzw. -Quan¬ tisierungsstufen aus Fig. 3;
Fig. 5 ein Flussdiagramm zur Veranschaulichung einer möglichen Vorgehensweise zur Zuordnung der Noten-
längen-Quantisierungsstufen zu den Noten in dem Ablauf nach Fig. 4;
Fig. 6 ein Flussdiagramm zur Veranschaulichung der Funk- tionsweise der Auftaktbestimmungseinrichtung von
Fig. 3;
Fig. 7 ein Flussdiagramm zur Veranschaulichung der Funk¬ tionsweise der Anpassungseinrichtung von Fig. 3.
Fig. 1 zeigt ein Ausführungsbeispiel für eine Vorrichtung zur Erzeugung einer polyphonen Melodie aus einem Audiosig¬ nal, das eine gewünschte Melodie enthält. Anders ausge¬ drückt zeigt Fig. 1 eine Vorrichtung zur rhythmischen und harmonischen Aufbereitung und Neuinstrumentierung eines ei¬ ne Melodie darstellenden Audiosignals und zum ergänzen der entstehenden Melodie um eine geeignete Begleitung.
Die Vorrichtung von Fig. 1, die allgemein mit 300 angezeigt ist, umfasst einen Eingang 302 zum Empfang des Audiosig¬ nals. In dem vorliegenden Fall wird exemplarisch davon aus¬ gegangen, dass die Vorrichtung 300 bzw. der Eingang 302 das Audiosignal in einer Zeitabtastungsdarstellung, wie z.B. als WAV-Datei, erwartet. Das Audiosignal könnte am Eingang 302 allerdings auch in anderer Form vorliegen, wie z.B. in einer unkomprimierten oder komprimierten Form oder in einer Frequenzbanddarstellung. Die Vorrichtung 300 umfasst ferner einen Ausgang 304 zur Ausgabe einer polyphonen Melodie in jedwedem Format, wobei in dem vorliegenden Fall exempla- risch von einer Ausgabe der polyphonen Melodie im MIDI- Format ausgegangen wird (MIDI = musical instrument digital interface) . Zwischen den Eingang 302 und den Ausgang 304 sind eine Extraktionseinrichtung 304, eine Rhythmuseinrich¬ tung 306, eine Tonarteinrichtung 308, eine Harmonieeinrich- tung 310 und eine Syntheseeinrichtung 312 in dieser Reihen¬ folge in Reihe geschaltet. Ferner umfasst die Einrichtung 300 einen Melodiespeicher 314. Ein Ausgang der Tonartart¬ einrichtung 308 ist nicht nur mit einem Eingang der nach-
folgenden Harmonieeinrichtung 310 verbunden, sondern ferner mit einem Eingang des Melodiespeichers 314. Dementsprechend ist der Eingang der Harmonieeinrichtung 310 nicht nur mit dem Ausgang der in Verarbeitungsrichtung vorher angeordne- ten Tonarteinrichtung 308 sondern auch mit einem Ausgang des Melodiespeichers 314. Ein weiterer Eingang des Melodie¬ speichers 314 ist dazu vorgesehen, eine Bereitstellungs- Identifikationsnummer ID zu empfangen. Ein weiterer Eingang der Syntheseeinrichtung 312 ist dazu ausgelegt, eine Stil- Information zu empfangen. Die Bedeutung der Stilinformation und der Bereitstellungs-Identifikationsnummer geht aus der folgenden Funktionsbeschreibung hervor. Extraktionseinrich¬ tung 304 und Rhythmuseinrichtung 306 bilden zusammen eine Rhythmus-Aufbereitungseinrichtung 316.
Nachdem im Vorhergehenden der Aufbau der Vorrichtung 300 von Fig. 1 beschrieben worden ist, wird im folgenden ihre Funktionsweise beschrieben.
Die Extraktionseinrichtung 304 ist dazu ausgebildet, das am Eingang 302 empfangene Audiosignal einer Notenextraktion bzw. -erkennung zu unterziehen, um aus dem Audiosignal eine Notenfolge zu erhalten. Die Notenfolge 318, die die Extrak¬ tionseinrichtung 304 an die Rhythmuseinrichtung 306 weiter- leitet, liegt bei dem vorliegenden Ausführungsbeispiel in einer Form vor, bei der für jede Note n ein Tonanfangszeit¬ punkt tn, der den Ton- bzw. Notenanfang beispielsweise in Sekunden angibt, eine Ton- bzw. Notendauer τn, die die No¬ tendauer der Note beispielsweise in Sekunden angibt, eine quantisierte Noten- bzw. Tonhöhe, d.h. C, Fis oder derglei¬ chen, beispielsweise als MIDI-Note, eine Lautstärke Ln der Note und eine exakte Frequenz fn des Tons bzw. der Note in der Notenfolge enthalten ist, wobei n einen Index für die jeweilige Note in der Notenfolge darstellen soll, der mit der Reihenfolge der aufeinanderfolgenden Noten zunimmt bzw. die Position der jeweiligen Note in der Notenfolge angibt.
Die Melodieerkennung, die durch die Einrichtung 304 zur Ge¬ nerierung der Notenfolge 318 durchgeführt wird, kann bei¬ spielsweise mit Hilfe des Ohrmodells Modells von Torsten Heinz oder unter Verwendung des Verfahrens nach der WO 2004/010327 A2 stattfinden.
In Fig. 2 ist exemplarisch ein Beispiel für eine Notenfolge veranschaulicht. Insbesondere zeigt Fig. 2 - aufgetragen über eine Zeitachse 320 - die Tonanfangszeitpunkte tn, tn+1, tn+2 und tn+3 von vier aufeinander folgenden Noten mit der Notendauer τn - τn+3, wobei die Noten nach ihrer zeitlichen Ausdehnung entlang der Zeitachse 320 durch schraffierte Felder 322a-322d veranschaulicht sind. Wie oben erwähnt, sind jeder der Noten 322a-322d noch eine quantisierte Ton- höhe Tn, eine Lautstärke Ln und eine exakte Frequenz fn zu¬ geordnet.
Die Notenfolge 318 stellt immer noch die Melodie dar, wie sie auch durch das Audiosignal 302 dargestellt wurde. Die Notenfolge 318 wird nun der Rhythmuseinrichtung 306 zuge¬ führt. Die Rhythmuseinrichtung 306 ist ausgebildet, um die zugeführte Notenfolge zu analysieren, um eine Taktlänge, einen Auftakt, d.h. ein Taktraster, für die Notenfolge zu bestimmen und dabei die einzelnen Noten der Notenfolge ge- eigneten quantifizierten Längen zuzuordnen und die Notenan¬ fänge der Noten an das Taktraster anzupassen.
Fig. 3 zeigt den internen Aufbau der Rhythmuseinrichtung 306. Wie es gezeigt ist, umfasst die Rhythmuseinrichtung 306 eine Einrichtung 330 zur Bestimmung einer Grundnoten¬ länge und zur Einteilung der Noten der Notenfolge 318 gemäß der Grundnotenlänge in Notenlängenklassen. Die Einrichtung 330 ist ausgebildet, um als Folge hiervon eine vorläufige Notenlängen-quantisierte Notenfolge auszugeben, bei der für jede Note zusätzlich zu den Informationen, die bereits in der Notenfolge 318 enthalten waren, ein der jeweiligen Note zugeordneter Notenlängenklassenwert LCn enthalten ist, so¬ wie eine für die gesamte Notenfolge geltende Notenlänge NL,
_
die quasi die Quantisierungsschrittweite angibt. Die Rhyth¬ museinrichtung 306 umfasst ferner eine Taktlängenbestim- mungseinrichtung 332, die ausgebildet ist, um die Notenlän- gen-quantisierte Notenfolge von der Einrichtung 330 zu emp- fangen, aus derselben eine Taktlänge TL zu bestimmen und an ihrem Ausgang die bestimmte Taktlänge TL auszugeben. Eine Auftaktbestimmungseinrichtung 334 ist ausgebildet, um von der Einrichtung 330 die Notenlängen-quantisierte Notenfolge sowie die Notenlänge NL und von der Taktlängenbestimmungs- einrichtung 332 die Taktlänge TL zu erhalten, um basierend auf diesen Informationen einen Auftakt zu bestimmen und an ihrem Ausgang auszugeben. Der Auftakt und die Taktlänge bestimmen ein Taktraster der Notenlängen-quantisierte No¬ tenfolge. Auftakt, Taktlänge TL und Notenlängen- quantisierte Notenfolge inklusive der Notenlänge NL werden an eine Anpassungseinrichtung 336 der Rhythmuseinrichtung 306 weitergeleitet, die ausgebildet ist, um diese Informa¬ tionen zu empfangen und basierend auf denselben die Noten¬ längen-quantisierte Notenfolge an das Taktraster abhängig von der Taktlänge und des Auftakts anzupassen, wodurch sich am Ausgang der Anpassungseinrichtung 336 eine rhythmisch aufbereitete Notenfolge ergibt. Bei der sich gemäß der im Folgenden beschriebenen bevorzugten Ausführungsform der An¬ passungseinrichtung 336 ergebenden rhythmisch aufbereiteten Notenfolge weisen gegenüber der Notenfolge, wie sie von der Einrichtung 330 ausgegeben wird, einige Noten verbesserte, nämlich auf ein ganzzahliges Vielfaches der Grundnotenlänge quantisierte Tonanfangszeitpunkte tn' auf.
Nachdem im Vorhergehenden der interne Aufbau der Einrich¬ tung 306 von Fig. 1 bezugnehmend auf Fig. 3 beschrieben worden ist, wird im folgenden ihre Funktionsweise beschrie¬ ben.
Die Einrichtung 330 ist dazu ausgebildet, zunächst eine Grundeinheit bzw. Grundnotenlänge bzw. kürzeste Notenein¬ heit NL zu bestimmen, als Vielfaches derer die Notenlängen der Noten der Notenfolge 318 angegeben und damit quanti-
_
siert werden sollen, und dann alle Noten tatsächlich auf entsprechende Vielfache dieser kürzesten Notenlänge NL zu quantisieren sowie zusätzlich diese quantisierten Notenlän¬ gen als Ganzzahl für jede Note hinzuzufügen bzw. abzuspei- ehern, um zu einer Notenlängen-quantisierten Notenfolge 324 zu gelangen, die die Einrichtung 324 dann an die Tonartein¬ richtung 308 weitergibt. Dabei markiert die Einrichtung 330 Noten, bei denen die dadurch entstehende quantisierte No¬ tenlänge mehr als einen Grenzwert von der tatsächlich ext- rahierten Notendauer τn abweicht. Zum Schluss überprüft die Einrichtung 330 statistisch, ob die Quantisierung prinzi¬ piell brauchbar ist, und wiederholt evt. die Quantisierung mit einer veränderten Notenlänge NL.
Im folgenden wird Bezug nehmend auf Fig. 4 die Funktions¬ weise der Einrichtung 330 detaillierter beschrieben. Zu¬ nächst legt die Einrichtung 330 die kürzeste Einheit NL, bzw. die Grundnotenlänge, fest. Hierzu führt die Einrich¬ tung 330 in einem Schritt 400 zunächst eine Tonabstandssta- tistikermittlung durch. Dabei bestimmt die Einrichtung 330 zunächst für jede Note n den Abstand vom Notenanfang tn bis zum Anfang tn+i der nächsten Note n+1, d.h. tn+i-tn, wobei somit für jede Note n - ausgenommen der letzten Note - ein 10In- (inter onset intervall = Interanfangszeitpunktinter- vall) Wert bestimmt wird. Diese IOI-Werte werden auf ein geeignetes Raster quantisiert. Für jede IOI- Quantisierungsstufe zählt die Einrichtung 330 die Anzahl der entsprechenden Noten, deren IOIn-Wert auf diese IOI- Quantisierungsstufe quantisiert worden ist, um ein Histo- gramm der IOI-Häufigkeiten bzw. die Tonabstandsstatistik zu ermitteln. Zur endgültigen Bestimmung der Grundnotenlänge NL in einem Schritt 402 sucht die Einrichtung 330 daraufhin die häufigste Notenlänge bzw. diejenige 101- Quantisierungsstufe, für die die meisten Noten in der No- tenfolge 318 in Schritt 400 ermittelt worden sind. Je nach Länge und weiterer Verteilung im Histogramm verwendet die Einrichtung 330 im Schritt 402 diese häufigste Notenlänge, die Hälfte oder ein Viertel hiervon als den Wert für die
kürzeste Notenlänge bzw. die Grundnotenlänge NL. In anderen Worten ausgedrückt, hängt die Bestimmung von NL in Schritt 402 von der Tonabstandsstatistik aus Schritt 400, einer Ge¬ wichtung, die kürzere IOI-Quantisierungsstufen vor größeren IOI-Quantisierungsstufen bevorzugt, und einem Maß für die Streuung der IOI-Werte ab.
In einem weiteren Schritt 404 überprüft die Einrichtung 330 dann für jede Note m, ob der Unterschied zwischen dem No- tenanfangszeitpunktunterschied zur nachfolgenden Note bzw. zwischen 10In = tn+i - tn, auf der einen Seite und der tat¬ sächlichen Notendauer τn dieser Note größer als eine vorbe¬ stimmte Konstante c mal die Grundnotenlänge NL ist, d.h. ob tn+i - tn - τn > c ■ NL gilt. Wenn dem so ist, fügt die Rhythmuseinrichtung 106 hinter der jeweiligen Note eine Pause bzw. Pausennote als zusätzliche Note mit eigener No¬ tendauer τ und eigenem Notenanfangszeitpunkt t in die No¬ tenfolge 318 ein.
Insbesondere umfasst der Schritt 404 folgende Teilschritte. Zunächst initialisiert die Einrichtung 330 einen Zähler i in einem Schritt 404a. Danach überprüft sie in einer Abfra¬ ge 404b, ob die Ungleichung ti+i - ti - Ti > c ■ NL erfüllt ist, was bedeutet, dass die Note i zur nachfolgenden Note einen Tonanfangsabstand aufweist, der von ihrer Notendauer Xi um mehr als den Schwellenwert c • NL abweicht. Ergibt die Abfrage 404b, dass die Ungleichung erfüllt ist, fügt die Einrichtung 330 in einem Schritt 404c in die Notenfolge 318 die Pausennote ein. Dabei wird der Pausennote beispielswei- se der Index i+1 zugewiesen, also die Position in der No¬ tenfolge 318 unmittelbar hinter der aktuellen Note i, und zwar mit einem Tonanfangszeitpunkt ti+i >= ti + τ± und einer Notendauer τi+i kleiner gleich dem Notenanfangszeitpunkt ti+i der noch - ohne die Pausennoteneinfügung - aktuellen Nach- folgenote i+1 der Noten i. Die aktuellen Noten mit dem In¬ dex > i, d.h. die aktuellen Noten i+1, i+2... werden um ei¬ nen Index nach oben verschoben bzw. ihr Index wird um Eins inkrementiert. Anschließend wird auch der Zähler i in
Schritt 404c inkrementiert, um nunmehr auf die eingefügte Pausennote zu zeigen.
Nach dem Schritt 404c wird der Zähler i in Schritt 404d in- krementiert, woraufhin die Abfrage 404b erneut durchgeführt wird. Erhält die Einrichtung 330 für die Abfrage 404b ein negatives Ergebnis, so überprüft sie in einem Schritt 404e, ob der Zähler i am Ende der Notenfolge 318 bereits ange¬ langt ist, bzw. ob Noten in der Notenfolge 318 noch nicht in dem Schritt 404 verarbeitet worden sind. Ist dies der Fall, so wird in einem Schritt 404f der Zähler i inkremen¬ tiert, woraufhin mit Schritt 404b fortgefahren wird. Erst wenn die Abfrage in Schritt 404e negativ ausfällt, ist der Schritt 404 und damit die Einfügung von Pausennoten been- det.
Danach führt die Einrichtung 330 in einem Schritt 406 die Bildung von Längenklassen durch, d.h. sie ordnet jeder Note der Notenfolge, wie sie aus Schritt 404 erhalten wird, d.h. einer gegebenenfalls um Pausennoten erweiterten Notenfolge 318, eine Notenlängenquantisierungsstufe bzw. eine Noten- längenklasse eine aus einer vorbestimmten Mehrzahl von No- tenlängenquantisierungsstufen zu und markiert dabei schlecht quantisierte Noten. Hierzu existieren zwei mögli- che Vorgehensweisen, wobei es vorgesehen sein kann, dass die Rhythmuseinrichtung in der Lage ist, zwischen beiden Vorgehensweisen auszuwählen, wie es im folgenden noch näher beschrieben wird.
Die erste Möglichkeit, auf die die Einrichtung 330 die Zu¬ ordnung der Notenlängenquantisierungsstufen durchführt, be¬ steht darin, dass die Einrichtung 330 für jede Note n ihren Wert 10In, d.h. die Differenz zwischen ihrem Anfangszeit¬ punkt tn und dem Tonanfangszeitpunktes tn+i der Nachfolgeno- te n+1, durch die in Schritt 402 bestimmte Grundnotenlänge NL teilt, und das Ergebnis der Division in beispielsweise auf eine Ganzzahl gerundeter Form dazu verwendet, in einer Nachschlagtabelle nachzuschlagen, die jedem möglichen Divi-
sionsergebnis eine Längenklasse LC bzw. eine Notenlängen- quantisierungsstufe zuordnet. Die Zuordnung gemäß dieser Nachschlagtabelle ist derart definiert, dass die hierdurch erhaltende Zuordnung, die die Einrichtung 330 ausführt, je- der Note eine aus einer Mehrzahl von möglichen Notenlängen- quantisierungsstufen bzw. Längenklassen LC zuordnet, wobei die möglichen Längenklassen beispielsweise 1, 2, 3, 4, 6, 8, 10, 12 usw., für musikalisch sinnvolle Noten wie - ab¬ hängig von der Taktlänge - beispielsweise eine Sechzehntel- , Achtel-, 3/16-tel-, Viertel-, 3/8-tel-, halbe, 5/8-tel-, 3/4-tel-Note usw., sind. Ferner ist die Nachschlagtabelle derart ausgebildet, dass die entstehende Zuordnung der Di¬ visionswerte zu den Längenklassen LC derart ist, dass die entstehende quantisierte Notenlänge für die Note n, nämlich LCn-NL, ungefähr dem Tonanfangsabstand dieser Note n zu der nachfolgenden Note n+1, d.h. dem Wert 10In, entspricht, bzw. dem IOIn-Wert für alle möglichen LC-Werte am nächsten kommt. Ist die Abweichung zwischen einer für eine Note n ermittelten quantisierten Notenlänge LCn 1NL und dem Tonan- fangsabstand 10In dieser Note n zu der nachfolgenden Note n+1 größer einer vorbestimmten Konstante, so markiert die Einrichtung 330 diese Note n als schlecht quantisiert, wo¬ bei die Markierung dieser Noten zu einem späteren Zeitpunkt verwendet wird, wie es noch im folgenden erörtert wird. Nach dem Schritt 406 umfasst die Notenfolge folglich zu je¬ der Note nicht nur eine tatsächliche Notendauer τn sondern auch eine Längenklasse LCn, die bezogen auf die Grundnoten¬ länge NL die Länge der Note in quantvisierter Form angibt, nämlich zu LCn 1NL.
Die erste Möglichkeit zur Durchführung des Schrittes 406 funktioniert nur dann gut, wenn das Audiosignal bzw. die in demselben enthaltene Melodie einen gleichmäßigen Takt auf¬ weist. Dies ist jedoch häufig nicht der Fall. Insbesondere dann, wenn das Audiosignal am Eingang 302 der Vorrichtung 300 von einem Benutzer in ein Mikrophon eingesungen, mit einem Instrument vorgespielt, vorgesummt oder vorgepfiffen worden ist, dessen musikalisches Können eher durchschnitt-
lieh ist, variiert nämlich der der Melodie des Audiosignals am Eingang 302 zugrunde liegende Takt bzw. der Rhythmus, und somit auch die Notendauer der ansonsten - beabsichtig¬ ter Weise - vielleicht gleichlangen Noten über die Noten- folge 318 hinweg. Die Einrichtung 330 wird diesen Fall ei¬ ner im Rhythmus variierenden Melodie daran erkennen, dass die Anzahl der als schlecht quantisierten Noten relativ hoch ist, die Anzahl also beispielsweise einen bestimmten Prozentsatz aller Noten in der Notenfolge 318 überschrei- tet. Die Einrichtung 330 kann es deshalb davon abhängig ma¬ chen, ob dieser Fall eintritt, ob sie die im folgenden be¬ schriebene Vorgehensweise zur Notenlängenklassenzuordnung alternativ zu der im Vorhergehenden beschriebenen verwen¬ det. Gemäß einem weiteren Ausführungsbeispiel führt die Einrichtung 330 gleich die im folgenden beschriebene Art und Weise zur Notenlängenklassenzuordnung aus, wobei diese im nachfolgenden Bezug nehmend auf Figur 5 beschrieben wird. Alternativ ist die Einrichtung 330 fest darauf einge¬ stellt, die folgende Vorgehensweise zur Notenklassenzuord- nung zu verwenden. Wiederum möglich wäre eine manuelle Um¬ stellung zwischen den beiden alternativen Möglichkeiten durch den Benutzer.
Um also die Adaption der schwankenden Geschwindigkeit der durch das Audiosignal 302 repräsentierten Melodie bei ent¬ sprechend unterschiedlich langen IOIs zu verbessern, - oder gemäß der fest eingestellten alternativen Vorgehensweise zur Notenklassenzuordnung - variiert die Einrichtung 330 für jede Note der Notenfolge, wie sie in Schritt 404 erhal- ten wird, den Wert von NL und berechnet damit die Abwei¬ chung der quantisierten Länge LCn-NL von dem tatsächlichen IOI-Wert für die folgenden s Noten, worauf hin die Einrich¬ tung 330 die Abweichung mit der Größe der Abweichung als zusätzlichen Faktor minimiert, so dass immer ein lokal- optimales NL verwendet wird. Für die folgenden Noten ver¬ wendet die Einrichtung 330 dann immer die lokale NL der vorhergehenden Noten, woraufhin der Prozess wiederholt wird. Am Schluss wird aus allen Noten ein durchschnittli-
ches NL berechnet und damit das aus Schritt 402 bestimmte NL ersetzt. Um die Vorgehensweise näher zu veranschauli¬ chen, sei im folgenden auf Fig. 5 Bezug genommen.
Zunächst initialisiert die Einrichtung 330 einen Zähler n, um alle möglichen Gruppen von aufeinander folgenden s+1 No¬ ten der Notenfolge 318 durchzuscannen, d.h. alle N-s mögli¬ chen Gruppen, wobei N die Anzahl der Noten der aktuellen Notenfolge sein soll. Die Initialisierung findet in Schritt 40βa statt. Danach, in einem Schritt 406b, variiert die Einrichtung 330 die aktuelle Notenlänge NL, nämlich die in Schritt 402 erhaltene Notenlänge, um eine Kandidatennoten¬ länge zu erhalten, die von der Notenlänge NL um ein vorbe¬ stimmtes maximales Maß abweicht. Wie es sich im Folgenden noch herausstellen wird, wird der Schritt 406b mehrmals für eine Gruppe durchlaufen, wobei die in Schritt 406b ermit¬ telten Kandidatennotenlängen beispielsweise auf eine vorbe¬ stimmte Weise um die variierte Notenlänge liegen.
In einem darauf folgenden Schritt 406c bestimmt die Ein¬ richtung 330 für jede Note der Gruppe von Noten, deren ers¬ te Note die Note m ist, also für die Noten mit dem Index zwischen m und m + s, die Notenlängenquantisierungsstufe, wie es bereits im vorhergehenden Bezug nehmend auf die ers- te Möglichkeit zur Durchführung des Schrittes 406 beschrie¬ ben worden ist, diesmal jedoch für bzw. abhängig von der Kandidatennotenlänge KNL, wie sie in Schritt 406b ermittelt worden ist. Das Ergebnis von Schritt 406c sind folglich s+1 Notenlängenquantisierungsstufen LCn, nämlich eine pro Note der Gruppe m.
In einem darauf folgenden Schritt 406d berechnet die Ein¬ richtung 330 einen gewissen Abstandswert aus den Notenlän- genquantisierungsstufen bzw. Längenklassen, die für die No- ten der Gruppe m in Schritt 406d bestimmt worden sind, der¬ art, dass der Abstandswert repräsentativ ist für eine mitt¬ lere Abweichung der in Schritt 406c ermittelten quantisier- ten Notenlängen LCj/NL mit m < i < m+s von den entsprechen-
den Notenanfangsabständen zwischen den Noten der Gruppe m und der jeweils nachfolgenden Note, d.h. von IOIi mit n < i < m+s. Beispielsweise berechnet die Einrichtung 330 in Schritt 406d den Abstandswert am,j für die Gruppe m und die j-te Kandidatennotenlänge KNL zu
Im darauf folgenden Schritt 406e überprüft die Einrichtung 330, ob eine vorbestimmte Anzahl von Kandidatennotenlängen in Schritt 40βb erzeugt worden sind. Falls nicht, wieder¬ holt die Einrichtung 330 den Schritt 406b und erzeugt somit eine zweite, dritte, ... q-te Kandidatennotenlänge KNL. Daraufhin werden die Schritte 406c und 406d für die neue Kandidatenlänge durchgeführt. Auf diese Weise wird, bis in dem Schritt 406e feststeht, das eine genügend hohe Anzahl an Kandidatennotenlängen erzeugt worden ist, für jede Kan¬ didatennotenlänge KNLj ein Abstandswert am,j für die Gruppe m erhalten. In einem Schritt 406f bestimmt nun die Einrich- tung 330 diejenige Kandidatennotenlänge für die Gruppe m als eine lokale Notenlänge für diese Gruppe m, für die der Abstandswert am,j minimiert ist. Vorzugsweise gewichtet da¬ bei die Einrichtung 330 die Abstandswerte am,j vorher mit einem zusätzlichen Faktor Pj, der mit zunehmender Abwei- chung der Kandidatennotenlänge KNLj von der Notenlänge, wie sie dem Schritt 406b zur Variation zugrunde lag, zunimmt, also beispielsweise mit Pj = IKNLj-NL |, so dass die Ein¬ richtung 330 die Folge von Werten fj = am,j Pj minimiert. Die lokale Notenlänge für die Gruppe m, die auf diese Weise in Schritt 406f bestimmt wird, weicht folglich höchstens um ein vorbestimmtes Maß von der Notenlänge ab, wie sie in Schritt 406b zur Variation verwendet worden ist, was beim ersten Durchlauf der Schritte 406b - 406f die Notenlänge ist, die in Schritt 402 ermittelt worden ist, d.h. NL, bei nachfolgenden Schritten jedoch, wie es im folgenden noch beschrieben wird, die lokale Notenlänge der vorhergehenden Gruppe m-1. Auf diese Weise wird eine kontinuierliche Adap-
tion der lokalen Notenlängen für die aufeinander folgenden Gruppen m erzielt.
In einem auf den Schritt 406f folgenden Schritt 406g ordnet die Rhythmuseinrichtung 302 der ersten Note der Gruppe, d.h. der Note m, die in Schritt 406f bestimmte lokale No¬ tenlänge und die Notenlängenquantisierungsstufe zu, die in Schritt 40βc für diese Note und für die lokale Notenlänge bestimmt worden ist.
Daraufhin überprüft die Einrichtung 330 in einem Schritt 40βh ob eine nachfolgende Gruppe von s+1 aufeinander fol¬ genden Noten existiert. Ist dies der Fall, erhöht in einem Schritt 406i die Einrichtung 330 den Zähler m und führt die Schritte 406b - 406h für die auf die Note m folgende Note m+1 und die s auf diese Note folgenden Noten durch, wobei sie hierbei bei Schritt 406b, wie im vorhergehenden bereits erwähnt, Kandidatennotenlängen nicht als Variation zu der in Schritt 402 bestimmten Notenlänge NL sondern als Varia- tion zu der lokalen Notenlänge der zuletzt verarbeiteten Gruppe bestimmt. Der Abstand der einer Note in Schritt 406g zugeordneten lokalen Notenlänge zu der in Schritt 402 be¬ stimmten Notenlänge kann deshalb durchaus groß werden, grö¬ ßer jedenfalls als das maximale Variationsmaß in Schritt 406b. Allerdings ändern sich die lokalen Notenlängen von Note zu Note lediglich um das Variationshöchstmaß in Schritt 40βb.
Stellt die Einrichtung 330 in Schritt 406h fest, dass zu allen Noten, bzw. Gruppen die Schritte 406b - 406g durchge¬ führt worden sind, berechnet sie in einem Schritt 406j eine neue Notenlänge als einen Mittelwert über die den Noten in Schritt 406g zugeordneten lokalen Notenlängen, um die in Schritt 402 bestimmte Notenlänge für die darauf folgende Verarbeitung zu ersetzen. Ferner kann die Einrichtung 330, obwohl es in Fig. 5 nicht gezeigt ist, in dem Schritt 406g ferner gleich einer Markierung der schlecht quantisierten Noten durchführen, wie es im vorhergehenden Bezug nehmend
auf die erste mögliche Durchführungs-Art und Weise für den Schritt 406 beschrieben worden ist.
Nachdem im Schritt 406 jeder Note n eine Längenklasse LCn zugeordnet worden ist, wird durch die Einrichtung 330 in einem Schritt 408 eine prinzipielle Überprüfung der durch den Schritt 406 realisierten Quantisierung bzw. eine Über¬ prüfung der Güte der Notenklassenbestimmung durchgeführt. Dabei geht die Einrichtung 330 insbesondere folgendermaßen vor. Zunächst untersucht die Einrichtung 330, wie viele der Noten der Notenfolge eine Längenklasse LC hat, die einem Vielfachen von 3 entspricht, also beispielsweise 3, oder, wenn auch die Längenklassen 6, 9, 12 usw. zu den möglichen Längenklassen gehören, die Längenklasse 6 usw. In einen darauf folgenden Schritt überprüft die Einrichtung 330 dann, ob die Anzahl einen gewissen Wert überschreitet, wie z.B. einen gewissen Prozentsatz relativ zu der Anzahl aller Noten der Notenfolge. Ist dies der Fall (410), so geht die Einrichtung 330 davon aus, dass die bisherige Wahl der No- tenlänge NL, wie sie entweder durch den Schritt 402 oder alternativ durch den Schritt 406j bestimmt worden ist, kei¬ ne geeignete Grundnotenlänge darstellt, da Noten zumeist zueinander Notenlängenverhältnisse von 2~x mit x einer Ganzzahl aufweisen. Deshalb ändert die Einrichtung 330 in einem Schritt 412 die bisher geltende Notenlänge aus Schritt 402 bzw. 406j, indem sie die bisher geltende Noten¬ länge mit 2/3 oder 3/2 multipliziert, um eine neue Noten¬ länge NL' zu erhalten. Insbesondere multipliziert die Ein¬ richtung 330 im Schritt 412 die bisher geltende Notenlänge NL mit 2/3, wenn die bisher geltende Notenlänge größer als eine Konstante x, mit x beispielsweise einem Wert zwischen 0,05 und 0,2 Sekunden und vorzugsweise 0,11 Sekunden, ist, und mit 3/2, wenn die bisher geltende NL kleiner oder gleich der Konstante x ist. Hält die bisher geltende NL je- doch im Schritt 410 der Überprüfung Stand, so beendet die Einrichtung 330 ihre Arbeit, um, wie Bezug nehmend auf Fig. 3 beschrieben, die Notenfolge 318 unter zusätzlicher Zuord¬ nung jeder Note zu einer Längenklasse LC als Notenlängen-
quantisierte Notenfolge zusammen mit der bestimmten Noten¬ länge NL an die Taktbestimmungseinrichtung 332 und die Auf¬ taktbestimmungseinrichtung 334 sowie die Anpassungseinrich¬ tung 336 auszugeben.
Nach der Ausgabe der Notenlängen-quantisierten Notenfolge wird zunächst die Taktlängenbestimmungseinrichtung 332 ak¬ tiv, um die Taktlänge zu bestimmen, und zwar als eine An¬ zahl der Grundnotenlänge NL. Damit ergibt sich inhärent auch die Anzahl der Grundnotenlängen pro Taktschlag bzw. Beat bzw. pro Beatintervall und eine Taktgeschwindigkeit bzw. ein BPM-Wert der Notenlängen-quantisierten Notenfolge.
Gemäß einem bevorzugten Ausführungsbeispiel führt die Ein- richtung 332 die Taktlängenbestimmung auf die folgende Wei¬ se durch. Sie geht zunächst vorgabemäßig davon aus, dass ein bestimmtes Taktschema vorliegt, wobei im Folgenden ex¬ emplarisch davon ausgegangen wird, dass die Taktlängenbe- stimmungseinrichtung 332 einen Vier-Viertel-Takt annimmt, bei dem vier Schläge bzw. Beats pro Takt vorkommen. Außer¬ dem ist der Taktlängenbestimmungseinrichtung 230 eine Min¬ destgeschwindigkeit vorgegeben, wie z.B. eine Mindestge¬ schwindigkeit von 70 bpm. Gemäß dem vorliegenden Ausfüh¬ rungsbeispiel bestimmt nun die Taktlängenbestimmungsein- richtung 332 eine Ganzzahl x > 0 derart, dass
β0Sek < 2X NL < 60Sek
2 mi nbpm minbpm
gilt, wobei „sek" die Einheit Sekunden sein soll, minbpm der bpm-Wert der Mindestgeschwindigkeit und NL die durch die Einrichtung 330 bestimmte Grundnotenlänge sei.
Auf diese Weise wird einem Taktschlag die Länge 2X NL zuge¬ ordnet, so dass sich eine Geschwindigkeit der Schläge zwi- sehen der Minimalgeschwindigkeit und dem Doppelten der Mi¬ nimalgeschwindigkeit ergibt, also, um bei dem vorhergehen¬ den Ausführungsbeispiel zu bleiben, eine Geschwindigkeit
zwischen 70 und 140 bpm. Die Taktlänge beträgt damit unter der vorhergehenden exemplarischen Annahme eines Vier- Viertel-Taktes automatisch 4 x 2X NL. Damit liegt die Länge eines Taktes in NL-Einheiten und damit auch in Sekunden fest, woraufhin die Taktlängenbestimmungseinrichtung 332 die Taktlänge TL an die Auftaktbestimmungseinrichtung 334 und die Anpassungseinrichtung 336 ausgibt.
Auf die Ausgabe der Taktlänge TL durch die Einrichtung 332 hin wird die Auftaktbestimmungseinrichtung 334 aktiv, um ihrerseits eine Auftakterkennung und damit eine endgültige Festlegung der Taktgrenzen bzw. eine endgültige Festlegung des Taktrasters der Notenlängen-quantisierte Notenfolge durchzuführen.
Die Funktionsweise der Auftaktbestimmungseinrichtung 334 zur Bestimmung des Auftaktes wird im Folgenden Bezug neh¬ mend auf Fig. 6 näher erläutert. Zunächst versucht die Auf¬ taktbestimmungseinrichtung 334 in einem Schritt 500 unter den Noten der Notenlängen-quantisierten Notenfolge lange Noten ausfindig zu machen. Gemäß einem bevorzugten Ausfüh¬ rungsbeispiel der vorliegenden Erfindung erkennt die Auf¬ taktbestimmungseinrichtung 334 solche Noten der Notenlän¬ gen-quantisierte Notenfolge als lange Noten an, deren zuge- ordnete Längenklasse LCn multipliziert mit der Grundnoten¬ länge NL größer als das Schlagintervall 2X NL bzw., in dem Fall eines Vier-Viertel-Taktes, größer als TL/4 ist.
Nachdem die Einrichtung 334 solche langen Noten im Schritt 500 bestimmt hat, versucht die Einrichtung in einem Schritt 502 Gruppen von langen Noten zu finden, die untereinander bezüglich ihrer Notenanfangszeitpunkte im wesentlichen mit einem Vielfachen einer Taktlänge TL beabstandet sind. An¬ ders ausgedrückt, ermittelt die Einrichtung 334 in dem Schritt 502 alle Gruppen von langen Noten, deren Noten alle Notenanfangszeitpunkte tn aufweisen, die untereinander ei¬ nen Abstand aufweisen, der im Wesentlichen einem ganzzahli¬ gen Vielfachen der ermittelten Taktlänge TL entspricht bzw.
von einem ganzzahligen Vielfachen der ermittelten Taktlänge um höchstens einen vorbestimmten Schwellenwert abweicht. Die Ermittlung im Schritt 502 wird beispielsweise derart durchgeführt, dass die Überprüfung der Abstände zwischen den Notenanfangszeitpunkten der Noten einer potentiellen Gruppe von langen Noten daraufhin, ob dieselben weniger als ein vorbestimmtes Maß von einem Vielfachen einer Taktlänge TL entfernt sind, auf die Abstände zwischen Taktanfangs¬ zeitpunkten aufeinander folgender bzw. nächstliegender No- ten dieser Gruppen beschränkt wird. Alternativ können je¬ doch auch alle Abstände überprüft werden.
Dem Schritt 502 liegt die Beobachtung zugrunde, dass lange Noten zumeist an Taktanfängen angeordnet sind. Alle im Schritt 502 ermittelten Gruppen stellen folglich Kandida¬ tengruppen von langen Noten dar, deren Noten an den Taktan¬ fängen angeordnet sein könnten. Alle Noten der Kandidaten¬ gruppen werden folglich als mögliche erste Note eines Tak¬ tes markiert.
In einem Schritt 504 wählt die Einrichtung 334 eine der Kandidatengruppen aus, nämlich bevorzugter Weise diejenige, die die meisten langen Noten aufweist. Anders ausgedrückt, wählt die Einrichtung 334 im Schritt 504 diejenigen unter den markierten langen Noten, die zu den meisten anderen langen Noten den im Schritt 502 geforderten Abstand haben, als erste Noten eines Taktes bzw. Noten aus, die Taktanfän¬ ge bilden. Im Schritt 506 bestimmt die Einrichtung 334 dar¬ aufhin den Auftakt, indem sie ein Taktraster mit der be- stimmten Taktlänge TL so zeitlich verschiebt, dass die Taktanfänge möglichst gut mit den Notenanfängen der langen Noten der im Schritt 504 bestimmten Gruppe übereinstimmen, wodurch sich der Auftakt bzw. der Versatz der Takte zu dem Beginn der Notenlängen-quantisierten Notenfolge ergibt. Diesen Auftakt gibt die Auftaktbestimmungseinrichtung 334 an ihrem Ausgang aus, beispielsweise in Sekunden, gemessen von Beginn der Melodie an, um ihn an die Anpassungseinrich¬ tung 336 weiterzuleiten.
Die Anpassungseinrichtung 336 führt daraufhin eine Korrek¬ tur von neben dem durch die Taktlänge TL und den Auftakt bestimmten Takt bzw. dem durch die Taktlänge und den Auf- takt bestimmte Taktraster liegenden Noten der Notenlängen- quantisierten Notenfolge durch. Insbesondere führt die An¬ passungseinrichtung 336 eine Quantisierung der Notenan¬ fangszeitpunkte durch, wie sie Bezug nehmend auf Fig. 7 nä¬ her veranschaulicht wird.
Zunächst sucht die Einrichtung 336 in einem Schritt 600 den durch die Notenlängen-quantisierten Notenfolge repräsen¬ tierten gesamten Vektor außer demjenigen Teil, der sich auf den ersten Takt bzw. den Auftakt bezieht, daraufhin durch, ob er Gruppen von aufeinander folgenden Noten enthält, die ein oder mehrere Ticks bzw. um ein oder zwei NL oder um ein anderes vorbestimmtes Maß neben den Taktschlägen liegen, wie sie durch das Taktraster definiert sind, das durch die Taktlänge TL und den Auftakt definiert ist.
Um dies zu veranschaulichen, sei beispielsweise auf Fig. 2 Bezug genommen. Fig. 2 deutet mit gestrichelten Linien auf¬ getragen über der Zeitachse 320 eine Einteilung der Zeit¬ achse 320 in aufeinanderfolgende Abschnitte der Länge NL an, wie sie durch die Auftaktbestimmung durch die Einrich¬ tung 334 festgelegt ist. In diesem exemplarischen Fall ge¬ hörte beispielsweise die Note 322c zu den langen Noten, wie sie im Schritt 500 ermittelt worden sind. Dementsprechend liegt in der Gegend des Notenanfangszeitpunktes der Note 322c tn+2 ein Taktanfang 602, wie es im Schritt 506 festge¬ legt worden ist, und somit auch ein Taktschlag. Die in Fig. 2 erkennbare leichte Diskrepanz zwischen dem Zeitpunkt des Taktanfangs 602 und dem Notenanfangszeitpunkt tn+2 der Note 342c lässt sich durch die Rhythmusschwankungen des ur- sprünglichen Audiosignals am Eingang 302 der Vorrichtung erklären. Durch die Festlegung des Taktrasters derart, dass in dem gezeigten Ausschnitt von Fig. 2 der Taktanfang 602 an der gezeigten Stelle ist, ist aber auch das Raster von
Notenlängen NL in seinem zeitlichen Versatz festgelegt. In dem Fall von Fig. 2 sei exemplarisch angenommen, dass durch die Einrichtung 332 das Schlagintervall auf 23 NL festge¬ legt worden sei, weshalb sich in Fig. 2 ein weiterer Takt- schlag bei 604 befindet und ein wiederum weiterer bei 606. Wie es zu sehen ist, liegt von den Noten 322a, 322c und 322d keine der Noten derart, dass ihre Notenanfänge um mehr als eine Notenlänge NL von einem Taktschlag 602-606 abwei¬ chen. Folglich würde keine der Noten in dem Schritt 600 durch die Einrichtung 336 im Rahmen einer Gruppe ausgewählt werden. Die Note 323b würde ebenfalls nicht, da sie eine einzelne Note umgeben von Noten mit geringen Abständen zu Taktschlägen ist, als Teil einer Gruppe von aufeinander folgenden Noten der im Schritt 600 gesuchten Art ausgewählt werden.
Findet aber die Einrichtung 336 eine Gruppe der im Schritt 600 gesuchten Art, führt die Einrichtung 336 bestimmte Ma߬ nahmen nach einer gewissen Priorität an dieser Gruppe durch, wie es im Folgenden beschrieben wird. Zunächst über¬ prüft die Einrichtung 336 in einem Schritt 608 die Noten der gefundenen Gruppe von aufeinander folgenden Noten der Notenlängen-quantisierten Notenfolge daraufhin, ob eine No¬ te im Schritt 504 durch die Auftaktbestimmungseinrichtung 334 als Anfangsnote eines Taktes markiert worden ist. Falls dies der Fall ist, verschiebt die Einrichtung 336 in einem Schritt 610 die Gruppe derart, dass die betreffende Note, d.h. diejenige, die einen Taktanfang darstellt, auf dem Taktanfang liegt, wobei alle auf diese Note folgenden Noten dieser Gruppe dementsprechend mitverschoben werden. Beginnt die Gruppe von aufeinander folgenden Noten beispielsweise bei der Note m, und reicht die Gruppe bis zur Note m + 1, und ist weiterhin die Note, die den Taktanfang darstellt, die Note j mit m ≤ j ≤ m+1, und ist tTakt der Zeitpunkt des entsprechenden Taktanfangs, so verschiebt die Einrichtung 336 im Schritt 610 alle Noten j bis m + 1 durch Addieren von tTakt - tj zu den NotenanfangsZeitpunkten tj, ..., tm+i.
Nach dem Schritt 610 fährt die Einrichtung 336 bei Schritt 600 mit der nächsten Gruppe fort.
Fällt jedoch die Überprüfung im Schritt 608 negativ aus, d.h. befindet sich in der aktuellen. Gruppe keine Note, die einen Taktanfang darstellt bzw. im Schritt 504 als erste Note eines Taktes markiert worden ist, so fährt die Ein¬ richtung 336 bei Schritt 612 damit fort, zu überprüfen, ob vor der aktuellen Gruppe von Noten eine Note vorhanden ist, die wegen ihrer großen Abweichung des Produktes aus Längen¬ klasse mal Notenlänge von der wirklichen Notendauer τ im Schritt 406 durch die Einrichtung 330 markiert worden ist. Ist dies der Fall, führt die Einrichtung 336 in einem Schritt 614 eine Untersuchung dahingehend durch, ob alle folgenden Noten der Gruppe nach einer Verschiebung besser relativ zu den Taktschlägen liegen, d.h. ein mittlere Ab¬ stand jedes Notenanfangszeitpunktes der Noten der aktuellen Gruppe zu dem jeweils nächstgelegenen Taktschlag bei Ver¬ schiebung in der Zeitachse kleiner wird, und zwar vorzugs- weise bei Verschiebung um Vielfache von NL. Ist dies der Fall, verschiebt die Einrichtung 336 in einem Schritt 616 die Noten in der aktuellen Gruppe unter entsprechender Ver¬ kürzung bzw. Verlängerung der Note vor der Gruppe um Ein¬ heiten der Grundnotenlänge NL nach vorne oder nach hinten, je nachdem, wie die im Schritt 406 markierte Note besser an ihre ursprüngliche Länge herankommt, d.h. derart, dass die entstehende Längenklasse LC für diese Note multipliziert mit NL ihrer tatsächlichen Notendauer τ näher kommt. Nach dieser Maßnahme fährt die Einrichtung 336 mit der nächsten Gruppe im Schritt 600 fort.
Befindet sich jedoch keine als schlecht quantisiert mar¬ kierte Note in der aktuellen Gruppe, so fährt die Einrich¬ tung 336 bei Schritt 618 damit fort, zu überprüfen, ob die Gruppe insgesamt ein oder zwei Ticks neben dem Takt bzw. neben den Taktschlägen liegt, woraufhin, wenn dies der Fall ist, die Einrichtung 336 in einem Schritt 620 nur die Grup¬ pe von Noten verschiebt, wobei die Richtung vom Durch-
schnitt der ursprünglichen Positionen der Noten abhängt, d.h. den für diese Noten in der Notenlängen-quantisierten Notenfolge enthaltenen Notenanfangszeitpunkten tn.
Nach Durchführung der Maßnahme 620 fährt die Einrichtung 336 bei Schritt 600 mit der nächsten Gruppe fort. Bei einem negativen Ergebnis der Abfrage 618 fährt die Einrichtung 336 ebenfalls mit dem Schritt 600 bezüglich der nächsten Gruppe fort.
Die Notenfolge, die die Anpassungseinrichtung 336 nach Durchführung der in Fig. 7 gezeigten Schritte ausgibt, stellt folglich eine rhythmisch aufbereitete Notenfolge dar, die auch das Ausgangsergebnis 324 der Rhythmuseinrich- tung 306 von Fig. 1 darstellt.
An der rhythmisch aufbereiteten Notenfolge 324 führt die Tonarteinrichtung 308 eine Tonartbestimmung und ggf. eine Tonartkorrektur durch. Genauer ausgedrückt bestimmt die Einrichtung 308 basierend auf der Notenfolge 324 eine Haupttonart bzw. Tonart der durch die Notenfolge 324 bzw. das Audiosignal 302 repräsentierten Benutzermelodie inklu¬ sive des Tongeschlechtes, d.h. Dur oder Moll, des bei¬ spielsweise gesungenen Stückes. Danach erkennt dieselbe an dieser Stelle ferner tonleiterfremde Töne bzw. Noten in der Notenfolge 114 und korrigiert dieselben, um zu einem harmo¬ nisch klingenden Endergebnis zu kommen, nämlich einer rhythmisch aufbereiteten und tonart-korrigierten Notenfolge 700, die an die Harmonieeinrichtung 310 weitergeleitet wird und eine Tonart-korrigierte Form der von dem Benutzer ge¬ wünschten Melodie darstellt.
Die Funktionsweise der Einrichtung 324 hinsichtlich der Tonartbestimmung kann auf verschiedene Weisen ausgeführt sein. Die Tonartbestimmung kann beispielsweise auf die in dem Artikel Krumhansl, Carol L. : Cognitive Foundations of Musical Pitch, Oxford University Press, 1990, oder die in dem Artikel Temperley, David: The Cognition of basical mu-
sical structures. The MIT Press, 2001, beschriebene Weise stattfinden.
Die Harmonieeinrichtung 310 ist dazu ausgebildet, die No- tenfolge 700 von der Einrichtung 308 zu empfangen und für die Melodie, die durch diese Notenfolge 700 repräsentiert wird, eine passende Begleitung zu finden. Dazu agiert bzw. wirkt die Einrichtung 310 taktweise. Insbesondere wirkt die Einrichtung 310 an jedem Takt, wie er durch das durch die Rhythmuseinrichtung 306 festgelegte Taktraster bestimmt ist, derart, dass sie eine Statistik über die in dem jewei¬ ligen Takt vorkommenden Töne bzw. Tonhöhen der Noten Tn er¬ stellt. Die Statistik der vorkommenden Töne wird dann mit den möglichen Akkorden der Tonleiter der Haupttonart ver- glichen, wie sie von der Tonarteinrichtung 308 bestimmt worden ist. Die Einrichtung 310 wählt unter den möglichen Akkorden dann insbesondere denjenigen Akkord aus, dessen Töne am besten mit den Tönen übereinstimmen, die sich in dem jeweiligen Takt befinden, wie es durch Statistik ange- zeigt wird. Auf diese Weise bestimmt die Einrichtung 310 für jeden Takt denjenigen Akkord, der am besten zu den bei¬ spielsweise eingesungenen Tönen bzw. Noten in dem jeweili¬ gen Takt passt. Mit anderen Worten ausgedrückt, ordnet die Einrichtung 310 den durch die Einrichtung 306 gefundenen Takten Akkordstufen der Grundtonart in Abhängigkeit des Tongeschlechtes zu, so dass sich eine Akkordprogression ü- ber den Verlauf der Melodie bildet. Am Ausgang der Einrich¬ tung 310 gibt dieselbe folglich neben der rhythmisch aufbe¬ reiteten und Tonart-korrigierten Notenfolge inklusive NL ferner für jeden Takt eine Akkordstufenangabe an die Syn¬ theseeinrichtung 312 aus.
Die Syntheseeinrichtung 312 benutzt zur Durchführung der Synthese, d.h. zur künstlichen Erzeugung der sich schließ- lieh ergebenden polyphonen Melodie, eine Stilinformation, die von einem Benutzer eingegeben werden kann, wie es durch den Fall 702 angezeigt ist. Beispielsweise kann ein Benut¬ zer durch die Stilinformation aus vier verschiedenen Stilen
bzw. Musikrichtungen auswählen, in denen die polyphone Me¬ lodie generiert werden kann, nämlich Pop, Techno, Latin o- der Reggae. Zu jedem dieser Stile ist entweder eine oder sind mehrere Begleitpatterns in der Syntheseeinrichtung 312 hinterlegt. Zur Erzeugung der Begleitung verwendet nun die Syntheseeinrichtung 312 das bzw. die durch die Stilinforma¬ tion 702 angezeigte (n) Begleitmuster. Zur Erzeugung der Be¬ gleitung hängt die Syntheseeinrichtung 312 die Begleitmus¬ ter pro Takt aneinander. Handelt es sich bei dem durch die Einrichtung 310 bestimmten Akkord zu einem Takt um die Ak¬ kordversion, in der ein Begleitmuster bereits vorliegt, so wählt die Syntheseeinrichtung 312 für diesen Takt für die Begleitung einfach das entsprechende Begleitmuster zu dem aktuellen Stil aus. Ist jedoch für einen bestimmten Takt, der durch die Einrichtung 310 bestimmte Akkord nicht derje¬ nige, in welchem ein Begleitmuster in der Einrichtung 312 hinterlegt ist, so verschiebt die Syntheseeinrichtung 312 die Noten des Begleitpatterns um die entsprechende Halbton¬ zahl bzw. ändert die Terz und ändert die Sext und Septim um einen Halbton im Falle eines anderen Tongeschlechtes, näm¬ lich durch Verschiebung um einen Halbton nach oben im Fall von einem Dur-Akkord umgekehrt im Fall eines Moll-Akkords.
Ferner instrumentiert die Syntheseeinrichtung 312 die durch die Notenfolge 700, die von der Harmonieeinrichtung 310 an die Syntheseeinrichtung 312 weitergeleitet wird, repräsen¬ tierte Melodie, um eine Hauptmelodie zu erhalten und kombi¬ niert anschließend Begleitung und Hauptmelodie zu einer po¬ lyphonen Melodie, die sie vorliegend exemplarisch in Form einer MIDI-Datei am Ausgang 304 ausgibt.
Die Tonarteinrichtung 308 ist ferner dazu ausgebildet, die Notenfolge 700 im Melodiespeicher 314 unter einer Bereit¬ stellungsidentifikationsnummer zu speichern. Ist der Benut- zer mit dem Ergebnis der polyphonen Melodie am Ausgang 304 unzufrieden, kann er die Bereitstellungsidentifikationsnum¬ mer zusammen mit einer neuen Stilinformation neu in die Vorrichtung von Fig. 1 eingeben, woraufhin der Melodiespei-
eher 314 die unter der Bereitstellungsidentifikationsnuiπmer gespeicherte Folge 700 an die Harmonieeinrichtung 310 wei¬ terleitet, die daraufhin - wie im Vorhergehenden beschrie¬ ben - die Akkorde bestimmt, woraufhin die Syntheseeinrich- tung 312 unter Verwendung der neuen Stilinformation abhän¬ gig von den Akkorden eine neue Begleitung und abhängig von der Notenfolge 700 eine neue Hauptmelodie erzeugt und zu einer neuen polyphonen Melodie am Ausgang 304 zusammenfügt.
Akkordstufenzuordnung zu den Takten durch die Einrichtung 310 und die anschließende Synthetisierung der Begleitung und Instrumentierung der Hauptmelodie funktionieren besser, weil die durch die Einrichtung zur rhythmischen Aufberei¬ tung 316 erzeugte Notenfolge 324 ein Zusammenfügen der Be- gleitung und der Hauptmelodie zu einem rhythmisch wohlklin¬ genden polyphonen Klang erst überhaupt ermöglicht.
Bezug nehmend auf die vorhergehende Figurenbeschreibung wird darauf hingewiesen, dass die vorliegende Erfindung nicht auf das Gebiet der Erzeugung polyphoner Melodien, wie z.B. polyphoner Klingeltöne, beschränkt ist. Die rhythmi¬ sche Aufbereitung von Audiosignalen ist bei vielen Einsatz¬ gebieten vorteilhaft und notwendig. Ferner wird darauf hin¬ gewiesen, dass viele der im vorhergehenden beschriebenen Schritte nicht in dieser Reihenfolge von den einzelnen Ein¬ richtungen durchgeführt werden müssen. Bezüglich der Schritte wird insbesondere darauf hingewiesen, dass die einzelnen Einrichtungen, deren Funktionsweisen durch die Schrittabfolge jeweils definiert sind, für die einzelnen Schritte Einrichtungen aufweisen, die die jeweilige Funkti¬ onalität bzw. den jeweiligen Schritt übernehmen. Beispiels¬ weise ist die gesamte Vorrichtung von Fig. 1 als Computer¬ programm implementiert, das für jede einzelne Einrichtung bzw. jeden einzelnen Schritt ein Unterprogramm oder einen Abschnitt eines Programmcodes aufweist.
Ferner ist es möglich, viele der Funktionalitäten der Ein¬ richtungen der Rhythmuseinrichtung 306 auch anders zu imp-
lementieren als dies Bezug nehmend auf die Figuren 4-7 be¬ schrieben worden ist. Insbesondere Bezug nehmend auf die Funktionalität der Auftaktbestimmungseinrichtung 334 wird im Folgenden eine Alternative zu der im Vorhergehenden be- schriebenen Vorgehensweise beschrieben. Nach dieser alter¬ nativen Vorgehensweise unterscheidet die Auftaktbestim¬ mungseinrichtung 334 nicht zwischen langen und kurzen No¬ ten. Sie verschiebt lediglich kontinuierlich oder quasi kontinuierlich ein Taktraster mit der durch die Taktlängen- bestimmungseinrichtung 332 bestimmten Taktlänge über die Zeitachse 320 (Fig. 2) und bestimmt dabei für jeden Versatzwert, wie viele Notenanfangszeitpunkte mit Taktan¬ fängen derart zusammenfallen, dass der Zeitunterschied ei¬ nen bestimmten Schwellenwert unterschreitet. Abhängig von dieser Anzahl für jeden Taktrasterversatz bestimmt die Auf¬ taktbestimmungseinrichtung 334 dann denn Auftakt als denje¬ nigen Versatzwert, der zu den meisten Aufeinandertreffen zwischen Taktanfängen und Notenanfängen führt. Dabei kann die Auftaktbestimmungseinrichtung 334 zusätzlich solche Versatzwerte bevorzugen, die kleiner sind. Ferner kann die Auftaktbestimmungseinrichtung 334 bestimmen, um wie viel der nächstgelegene Notenanfangszeitpunkt von einem Taktan¬ fang entfernt ist, bei dem keine Übereinstimmung bzw. kein Zusammenfallen mit einem Notenanfang festgestellt worden ist. Die Auftaktbestimmungseinrichtung 334 könnte dann noch eine Anzahl von Taktanfängen zählen, bei denen dieser grö¬ ßere Abstand einen bestimmten Schwellenwert überschreitet. Diese Anzahl könnte die Auftaktbestimmungseinrichtung 334 bei der Auswahl unter den Versatzwerten als Auftakt dadurch berücksichtigen, dass sie Versatzwerte benachteiligt, bei denen solche Taktanfänge vorkommen, und zwar ggf. um so mehr, je größer die Anzahl solcher Nicht-Zusammenfallen- Ereignis-Taktanfänge ist. Die Einrichtung 334 könnte ferner die Bezug nehmend auf Fig. 6 beschriebene Vorgehensweise zur Bestimmung des Auftaktes versuchen, und daraufhin, falls die Anzahl der Noten in der größten Gruppe zu klein ist, die in diesem Absatz beschriebene Vorgehensweise ver¬ wenden.
Bezug nehmend auf die Syntheseeinrichtung 312 wird darauf hingewiesen, dass es möglich ist, dass in der Syntheseein¬ richtung 312 zu jedem Stil Begleitmuster mit verschiedenen Geschwindigkeiten (bpms) hinterlegt sein können und in der Synthese dann jenes gewählt wird, welches am Nähesten an der Geschwindigkeit der Melodie dran ist.
Ferner wird darauf hingewiesen, dass die im Vorhergehenden beschriebene Reihenfolge der Einrichtungen und/oder Schrit¬ te nicht immer festgelegt sein muss. So kann beispielsweise in Fig. 1 die Tonarteinrichtung 308 auch zwischen der Ex¬ traktionseinrichtung 304 und der Rhythmuseinrichtung 306 angeordnet sein, um die Notenfolge 318 vor ihrer Verarbei- tung durch die Rhythmuseinrichtung 306 hinsichtlich einer bestimmten Tonart in den Tonhöhen zu korrigieren.
Über die in Fig. 1 gezeigten Einrichtungen hinaus kann die Vorrichtung von Fig.l ferner eine Aufnahmeeinrichtung auf- weisen; die durch Aufnahme einer Benutzeingabe, wie z.B. eines Gesanges, das Audiosignal erst erzeugt, um es an den Eingang 302 weiterzuleiten.
Insbesondere wird darauf hingewiesen, dass abhängig von den Gegebenheiten das erfindungsgemäße Schema auch in Software implementiert sein kann. Die Implementation kann auf einem digitalen Speichermedium, insbesondere einer Diskette oder einer CD mit elektronisch auslesbaren Steuersignalen erfol¬ gen, die so mit einem programmierbaren Computersystem zu- sammenwirken können, dass das entsprechende Verfahren aus¬ geführt wird. Allgemein besteht die Erfindung somit auch in einem Computerprogrammprodukt mit auf einem maschinenlesba¬ ren Träger gespeicherten Programmcode zur Durchführung des erfindungsgemäßen Verfahrens, wenn das Computerprogrammpro- dukt auf einem Rechner abläuft. In anderen Worten ausge¬ drückt kann die Erfindung somit als ein Computerprogramm mit einem Programmcode zur Durchführung des Verfahrens rea-
lisiert werden, wenn das Computerprogramm auf einem Compu¬ ter abläuft.