-
Die
vorliegende Erfindung bezieht sich auf die rhythmische Aufbereitung
von Audiosignalen, um das Ergebnis der rhythmischen Aufbereitung
beispielsweise mit anderen Melodien bzw. Stimmen oder Begleitungen
zu einer mehrstimmigen Melodie 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 komprimierte Audiosignale
abgespeichert und weiterverarbeitet, um die Datenmenge zu komprimieren.
Ein Beispiel eines Komprimierungs-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ücksichtigt.
-
Unabhängig davon,
in welcher der beiden oben genannten Formen ein Audiosignal nun
vorliegt, d.h. in einer unkomprimierten oder komprimierten Form,
lässt sich
ein Audiosignal dieser Art nur schlecht mit anderen Audiosignalen
automatisch, 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 ideal 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 beiden Melodien aufeinander fallen.
-
Gar
unmöglich
ist es da Melodien miteinander zu mischen, die rhythmisch nicht
perfekt sind, wie z.B. Tempovariationen aufweisen. Ein Beispiel
für ein rhythmisch
nicht perfektes 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 Audiosignalen unter bloßer Einstellung
eines geeignetes zeitlichen Versatzes zwischen den Audiosignalen
nicht möglich.
Andererseits ist es auch nicht möglich,
die Rhythmusabweichungen 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 unkomprimierter oder in komprimierter Form bzw.
einer Zeitabtast- bzw.
Frequenzbanddomäne vorliegen,
rhythmisch aufbereiten zu können,
um dieselben beispielsweise anschließend miteinander mischen bzw.
vereinigen zu können.
-
Die
Aufgabe der vorliegenden Erfindung besteht deshalb darin, ein Verfahren
und eine Vorrichtung zur rhythmischen Aufbereitung eines Audiosignals
zu schaffen, so dass effektiver, mit weniger Mühe und besser hörbarem Erfolg
eine Weiterverarbeitung des Audiosignals, wie z.B. ein Mischen bzw. Vereinigen
dieses Audiosignals mit anderen Audiosignalen 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
erhalten werden kann, wenn die eigentliche rhythmische Aufbereitung
in einer Notendarstellung des eine Melodie beinhaltenden 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 Notenfolge den Notenlängen-Quantisierungsstufen auf
der Basis der Grundnotenlänge
zugeteilt werden können,
um eine Notenlä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 Bedingung erfüllt, wie z.B. der BPM- (beats per
minute = Schläge
pro Minute) Wert innerhalb eines vorbestimmten Bereiches liegt.
Auf der Basis der Taktlänge
kann dann der Auftakt bestimmt werden, wodurch das Taktraster der
Notenlängen-quantisierten
Notenfolge bzw. der Rhythmus der Melodie durch die Taktlänge und
den Auftakt definiert ist. Anschließ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 jeglicher Instrumentierung.
-
Gemäß einem
bevorzugten Ausführungsbeispiel
der vorliegenden Erfindung wird die Grundnotenlänge dadurch bestimmt, dass
die Ton- bzw. Notenanfangszeitpunkte der Noten ausgewertet werden,
die bei der Erzeugung der Notenfolge bei der Notenerkennung für jede Note
erzeugt worden sind. Insbesondere werden die Differenzen der Notenanfangszeitpunkte
aufeinanderfolgender Noten der Notenfolge quantisiert, und die sich
ergebende Tonabstandsstatistik ausgewertet, um die Grundnotenlänge zu ermitteln.
Dabei wird die Grundnotenlänge
beispielsweise mit derjenigen Tonanfangsabstandsquantisierungsstufe
gleichgesetzt, die am häufigsten in
der Notenfolge auftritt.
-
Bei
der Notenerkennung gemäß einem
bevorzugten Ausführungsbeispiel
der vorliegenden Erfindung, wird jeder erkannten Note ein Notenanfangszeitpunkt
und eine Notendauer zugeordnet. 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 jedoch auch Pausen entstehen, die gewünscht sind bzw.
zur Melodie dazugehören.
Bei diesen Noten bildet sich eine besonders große Differenz zwischen dem Tonanfangsabstand
zur nachfolgenden Note und der Notendauer der der Pause vorausgehenden Note.
Damit solche Diskrepanzen nicht bei der nachfolgenden Auswertung
zu Fehlern führen,
wird gemäß einem
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 ihres Notenanfangsabstands zur nachfolgenden
Note zur Grundnotenlänge
ausgewertet. Vorzugsweise sind ganzzahlige Notenlängen-Quantisierungsstufen
vorgegeben, wie z.B. 1, 2, 3, 4, 8, 16, 32 ..., denen die einzelnen
Noten derart zugeordnet 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 kompliziertere Art und Weise durchgeführt, um der üblichen
Unzulänglichkeit
von eingesungenen Audiosignalen Herr zu werden, nämlich dass
der Takt einer eingesungenen Melodie über die Zeit hinweg variiert.
Bei dieser Vorgehensweise wird die Grundnotenlänge abschnittsweise an die
Notenfolge angepasst, wodurch sich weniger Fehler in der Notenlängen-Quantisierungsstufeneinordnung
ergeben.
-
Gemäß einem
weiteren Ausführungsbeispiel wird
der Umstand ausgenutzt, dass üblicherweise Noten
eine quantisierte Notendauer bzw. Notenlänge von 2–x,
mit x einer ganzen Zahl, aufweisen. Im Anschluss an die Einstufung
der Noten der Notenfolge 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 vorliegenden 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:
-
1 ein
Blockschaltbild einer Vorrichtung zur Erzeugung einer polyphonen
Melodie;
-
2 eine
schematische Skizze zur Veranschaulichung der Notendarstellung,
wie sie von der Extraktionseinrichtung der Vorrichtung von 1 ausgegeben
wird;
-
3 ein
Blockschaltbild des internen Aufbaus der Rhythmuseinrichtung aus
der Vorrichtung von 1, die zusammen mit der Notenextraktionseinrichtung
der Vorrichtung von 1 ein Ausführungsbeispiel für eine Rhythmus-Aufbereitungseinrichtung
gemäß der vorliegenden
Erfindung liefert;
-
4 ein
Flussdiagramm zur Veranschaulichung der Funktionsweise der Einrichtung
zur Bestimmung der Grundnotenlänge
und zur Einteilung der Noten der Notenfolge in Notenlängen-Klassen bzw.
-Quantisierungsstufen aus 3;
-
5 ein
Flussdiagramm zur Veranschaulichung einer möglichen Vorgehensweise zur
Zuordnung der Noten längen-Quantisierungsstufen
zu den Noten in dem Ablauf nach 4;
-
6 ein
Flussdiagramm zur Veranschaulichung der Funktionsweise der Auftaktbestimmungseinrichtung
von 3;
-
7 ein
Flussdiagramm zur Veranschaulichung der Funktionsweise der Anpassungseinrichtung
von 3.
-
1 zeigt
ein Ausführungsbeispiel
für eine Vorrichtung
zur Erzeugung einer polyphonen Melodie aus einem Audiosignal, das
eine gewünschte
Melodie enthält.
Anders ausgedrückt
zeigt 1 eine Vorrichtung zur rhythmischen und harmonischen
Aufbereitung und Neuinstrumentierung eines eine Melodie darstellenden
Audiosignals und zum ergänzen
der entstehenden Melodie um eine geeignete Begleitung.
-
Die
Vorrichtung von 1, die allgemein mit 300 angezeigt
ist, umfasst einen Eingang 302 zum Empfang des Audiosignals.
In dem vorliegenden Fall wird exemplarisch davon ausgegangen, 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 exemplarisch
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 Rhythmuseinrichtung 306, eine Tonarteinrichtung 308,
eine Harmonieeinrichtung 310 und eine Syntheseeinrichtung 312 in
dieser Reihenfolge in Reihe geschaltet. Ferner umfasst die Einrichtung 300 einen
Melodiespeicher 314. Ein Ausgang der Tonartarteinrichtung 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 angeordneten
Tonarteinrichtung 308 sondern auch mit einem Ausgang des
Melodiespeichers 314. Ein weiterer Eingang des Melodiespeichers 314 ist dazu
vorgesehen, eine Bereitstellungs-Identifikationsnummer
ID zu empfangen. Ein weiterer Eingang der Syntheseeinrichtung 312 ist
dazu ausgelegt, eine Stilinformation zu empfangen. Die Bedeutung
der Stilinformation und der Bereitstellungs-Identifikationsnummer
geht aus der folgenden Funktionsbeschreibung hervor. Extraktionseinrichtung 304 und Rhythmuseinrichtung 306 bilden
zusammen eine Rhythmus-Aufbereitungseinrichtung 316.
-
Nachdem
im Vorhergehenden der Aufbau der Vorrichtung 300 von 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 Extraktionseinrichtung 304 an
die Rhythmuseinrichtung 306 weiterleitet, liegt bei dem
vorliegenden Ausführungsbeispiel
in einer Form vor, bei der für
jede Note n ein Tonanfangszeitpunkt tn,
der den Ton- bzw. Notenanfang beispielsweise in Sekunden angibt,
eine Ton- bzw. Notendauer τn, die die Notendauer der Note beispielsweise
in Sekunden angibt, eine quantisierte Noten- bzw. Tonhöhe, d.h.
C, Fis oder dergleichen, 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 Generierung
der Notenfolge 318 durchgeführt wird, kann beispielsweise
mit Hilfe des Ohrmodells Modells von Torsten Heinz oder unter Verwendung
des Verfahrens nach der WO 2004/010327 A2 stattfinden.
-
In 2 ist
exemplarisch ein Beispiel für eine
Notenfolge veranschaulicht. Insbesondere zeigt 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
Tonhöhe
Tn, eine Lautstärke Ln und
eine exakte Frequenz fn zugeordnet.
-
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 zugefü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 geeigneten quantifizierten
Längen
zuzuordnen und die Notenanfänge
der Noten an das Taktraster anzupassen.
-
3 zeigt
den internen Aufbau der Rhythmuseinrichtung 306. Wie es
gezeigt ist, umfasst die Rhythmuseinrichtung 306 eine Einrichtung 330 zur Bestimmung
einer Grundnotenlä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, sowie eine für die gesamte
Notenfolge geltende Notenlänge
NL, die quasi die Quantisierungsschrittweite angibt. Die Rhythmuseinrichtung 306 umfasst
ferner eine Taktlängenbestimmungseinrichtung 332,
die ausgebildet ist, um die Notenlängen-quantisierte Notenfolge
von der Einrichtung 330 zu empfangen, 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ängenbestimmungseinrichtung 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 Notenfolge.
Auftakt, Taktlänge TL
und Notenlängenquantisierte
Notenfolge inklusive der Notenlänge
NL werden an eine Anpassungseinrichtung 336 der Rhythmuseinrichtung 306 weitergeleitet,
die ausgebildet ist, um diese Informationen zu empfangen und basierend
auf denselben die Notenlä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 Anpassungseinrichtung 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 Einrichtung 306 von 1 bezugnehmend
auf 3 beschrieben worden ist, wird im folgenden ihre
Funktionsweise beschrieben.
-
Die
Einrichtung 330 ist dazu ausgebildet, zunächst eine
Grundeinheit bzw. Grundnotenlänge bzw.
kürzeste
Noteneinheit 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ängen
als Ganzzahl für
jede Note hinzuzufügen
bzw. abzuspeichern, um zu einer Notenlängen-quantisierten Notenfolge 324 zu
gelangen, die die Einrichtung 324 dann an die Tonarteinrichtung 308 weitergibt.
Dabei markiert die Einrichtung 330 Noten, bei denen die
dadurch entstehende quantisierte Notenlänge mehr als einen Grenzwert
von der tatsächlich
extrahierten Notendauer τn abweicht. Zum Schluss überprüft die Einrichtung 330 statistisch,
ob die Quantisierung prinzipiell brauchbar ist, und wiederholt evt.
die Quantisierung mit einer veränderten Notenlänge NL.
-
Im
folgenden wird Bezug nehmend auf 4 die Funktionsweise
der Einrichtung 330 detaillierter beschrieben. Zunächst legt
die Einrichtung 330 die kürzeste Einheit NL, bzw. die
Grundnotenlänge,
fest. Hierzu führt
die Einrichtung 330 in einem Schritt 400 zunächst eine
Tonabstandsstatistikermittlung durch. Dabei bestimmt die Einrichtung 330 zunächst für jede Note
n den Abstand vom Notenanfang tn bis zum
Anfang tn+1 der nächsten Note n + 1, d.h. tn+1 – tn, wobei somit für jede Note n – ausgenommen
der letzten Note – ein
IOIn- (inter onset intervall = Interanfangszeitpunktintervall)
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 Histogramm 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 IOI-Quantisierungsstufe,
für die
die meisten Noten in der Notenfolge 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 Gewichtung, 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 Notenanfangszeitpunktunterschied
zur nachfolgenden Note bzw. zwischen IOIn = tn+1 – tn, auf der einen Seite und der tatsächlichen
Notendauer τn dieser Note größer als eine vorbestimmte Konstante
c mal die Grundnotenlänge
NL ist, d.h. ob tn+1 – 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 Notendauer τ und
eigenem Notenanfangszeitpunkt t in die Notenfolge 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 Abfrage 404b, ob die Ungleichung ti+1 – ti – τi > c·NL erfüllt ist, was bedeutet, dass die
Note i zur nachfolgenden Note einen Tonanfangsabstand aufweist,
der von ihrer Notendauer τi 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 beispielsweise der Index i + 1 zugewiesen,
also die Position in der Notenfolge 318 unmittelbar hinter
der aktuellen Note i, und zwar mit einem Tonanfangszeitpunkt ti+1 >=
ti + τi und einer Notendauer τi+1 kleiner
gleich dem Notenanfangszeitpunkt ti+1 der
noch – ohne
die Pausennoteneinfügung – aktuellen
Nachfolgenote i + 1 der Noten i. Die aktuellen Noten mit dem Index > i, d.h. die aktuellen
Noten i + 1, i + 2... werden um einen 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 inkrementiert,
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
angelangt 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 inkrementiert,
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 beendet.
-
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 Notenlängenklasse
eine aus einer vorbestimmten Mehrzahl von Notenlängenquantisierungsstufen zu
und markiert dabei schlecht quantisierte Noten. Hierzu existieren
zwei mögliche
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 Zuordnung der Notenlängenquantisierungsstufen
durchführt,
besteht darin, dass die Einrichtung 330 für jede Note
n ihren Wert IOIn, d.h. die Differenz zwischen
ihrem Anfangszeitpunkt tn und dem Tonanfangszeitpunktes
tn+1 der Nachfolgenote 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ängenquantisierungsstufe
zuordnet. Die Zuordnung gemäß dieser
Nachschlagtabelle ist derart definiert, dass die hierdurch erhaltende
Zuordnung, die die Einrichtung 330 ausführt, jeder Note eine aus einer
Mehrzahl von möglichen
Notenlängenquantisierungsstufen
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 – abhä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 Divisionswerte
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 IOIn, 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·NL und
dem Tonanfangsabstand IOIn 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, wobei 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 jeder Note nicht nur eine tatsächliche
Notendauer τn sondern auch eine Längenklasse LCn,
die bezogen auf die Grundnotenlänge
NL die Länge
der Note in quantvisierter Form angibt, nämlich zu LCn·NL.
-
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
aufweist. 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 lich 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 – beabsichtigter
Weise – vielleicht
gleichlangen Noten über
die Notenfolge 318 hinweg. Die Einrichtung 330 wird
diesen Fall einer 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 überschreitet. Die Einrichtung 330 kann
es deshalb davon abhängig
machen, ob dieser Fall eintritt, ob sie die im folgenden beschriebene
Vorgehensweise zur Notenlängenklassenzuordnung
alternativ zu der im Vorhergehenden beschriebenen verwendet. 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 5 beschrieben
wird. Alternativ ist die Einrichtung 330 fest darauf eingestellt,
die folgende Vorgehensweise zur Notenklassenzuordnung zu verwenden.
Wiederum möglich
wäre eine
manuelle Umstellung 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 entsprechend 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 erhalten
wird, den Wert von NL und berechnet damit die Abweichung der quantisierten
Länge LCn·NL
von dem tatsächlichen
IOI-Wert für
die folgenden s Noten, worauf hin die Einrichtung 330 die
Abweichung mit der Größe der Abweichung
als zusätzlichen
Faktor minimiert, so dass immer ein lokaloptimales NL verwendet
wird. Für
die folgenden Noten verwendet 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 veranschaulichen, sei im folgenden auf 5 Bezug
genommen.
-
Zunächst initialisiert
die Einrichtung 330 einen Zähler n, um alle möglichen
Gruppen von aufeinander folgenden s + 1 Noten der Notenfolge 318 durchzuscannen,
d.h. alle N – s
möglichen
Gruppen, wobei N die Anzahl der Noten der aktuellen Notenfolge sein
soll. Die Initialisierung findet in Schritt 406a 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 Kandidatennotenlänge zu erhalten,
die von der Notenlänge NL
um ein vorbestimmtes 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 ermittelten Kandidatennotenlängen beispielsweise
auf eine vorbestimmte Weise um die variierte Notenlänge liegen.
-
In
einem darauf folgenden Schritt 406c bestimmt die Einrichtung 330 für jede Note
der Gruppe von Noten, deren erste 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 erste Möglichkeit
zur Durchführung
des Schrittes 406 beschrieben 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 Einrichtung
330 einen
gewissen Abstandswert aus den Notenlängenquantisierungsstufen bzw.
Längenklassen,
die für
die Noten der Gruppe m in Schritt
406d bestimmt worden
sind, derart, dass der Abstandswert repräsentativ ist für eine mittlere
Abweichung der in Schritt
406c ermittelten quantisierten
Notenlängen
LC
i·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 IOI
i mit n ≤ i ≤ m + s. Beispielsweise berechnet
die Einrichtung
330 in Schritt
406d den Abstandswert
a
m, 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 406b erzeugt worden
sind. Falls nicht, wiederholt 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 Kandidatennotenlänge
KNL ein Abstandswert am, j für die Gruppe
m erhalten. In einem Schritt 406f bestimmt nun die Einrichtung 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 dabei die Einrichtung 330 die Abstandswerte am, j vorher mit einem zusätzlichen Faktor pj,
der mit zunehmender Abweichung der Kandidatennotenlänge KNL
von der Notenlänge,
wie sie dem Schritt 406b zur Variation zugrunde lag, zunimmt,
also beispielsweise mit pj = |KNLj – NL|,
so dass die Einrichtung 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 Notenlänge und
die Notenlängenquantisierungsstufe
zu, die in Schritt 406c für diese Note und für die lokale
Notenlänge
bestimmt worden ist.
-
Daraufhin überprüft die Einrichtung 330 in
einem Schritt 406h ob eine nachfolgende Gruppe von s +
1 aufeinander folgenden 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 Variation 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 bestimmten 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 406b.
-
Stellt
die Einrichtung 330 in Schritt 406h fest, dass
zu allen Noten, bzw. Gruppen die Schritte 406b–406g durchgefü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 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 Überprü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 Notenlänge NL, wie sie entweder durch
den Schritt 402 oder alternativ durch den Schritt 406j bestimmt
worden ist, keine 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
Notenlänge
mit 2/3 oder 3/2 multipliziert, um eine neue Notenlänge NL' zu erhalten. Insbesondere multipliziert
die Einrichtung 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 jedoch
im Schritt 410 der Überprüfung Stand,
so beendet die Einrichtung 330 ihre Arbeit, um, wie Bezug nehmend
auf 3 beschrieben, die Notenfolge 318 unter
zusätzlicher
Zuordnung jeder Note zu einer Längenklasse
LC als Notenlängen quantisierte
Notenfolge zusammen mit der bestimmten Notenlänge NL an die Taktbestimmungseinrichtung 332 und
die Auftaktbestimmungseinrichtung 334 sowie die Anpassungseinrichtung 336 auszugeben.
-
Nach
der Ausgabe der Notenlängen-quantisierten
Notenfolge wird zunächst
die Taktlängenbestimmungseinrichtung 332 aktiv,
um die Taktlänge
zu bestimmen, und zwar als eine Anzahl 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
Einrichtung
332 die Taktlängenbestimmung auf die folgende
Weise durch. Sie geht zunächst
vorgabemäßig davon
aus, dass ein bestimmtes Taktschema vorliegt, wobei im Folgenden
exemplarisch davon ausgegangen wird, dass die Taktlängenbestimmungseinrichtung
332 einen
Vier-Viertel-Takt annimmt, bei dem vier Schläge bzw. Beats pro Takt vorkommen.
Außerdem
ist der Taktlängenbestimmungseinrichtung
230 eine
Mindestgeschwindigkeit vorgegeben, wie z.B. eine Mindestgeschwindigkeit
von 70 bpm. Gemäß dem vorliegenden
Ausführungsbeispiel
bestimmt nun die Taktlängenbestimmungseinrichtung
332 eine
Ganzzahl x > 0 derart,
dass
gilt, wobei „sek" die Einheit Sekunden
sein soll, min
bpm 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
zugeordnet, so dass sich eine Geschwindigkeit der Schläge zwischen
der Minimalgeschwindigkeit und dem Doppelten der Minimalgeschwindigkeit
ergibt, also, um bei dem vorhergehenden 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 × 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 nehmend auf 6 näher erläutert. Zunächst versucht
die Auftaktbestimmungseinrichtung 334 in einem Schritt 500 unter
den Noten der Notenlängen-quantisierten
Notenfolge lange Noten ausfindig zu machen. Gemäß einem bevorzugten Ausführungsbeispiel
der vorliegenden Erfindung erkennt die Auftaktbestimmungseinrichtung 334 solche
Noten der Notenlängen-quantisierte
Notenfolge als lange Noten an, deren zugeordnete Längenklasse
LCn multipliziert mit der Grundnotenlä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. Anders
ausgedrückt,
ermittelt die Einrichtung 334 in dem Schritt 502 alle
Gruppen von langen Noten, deren Noten alle Notenanfangszeitpunkte
tn aufweisen, die untereinander einen Abstand
aufweisen, der im Wesentlichen einem ganzzahligen 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 Taktanfangszeitpunkten aufeinander folgender bzw. nächstliegender
Noten dieser Gruppen beschränkt wird.
Alternativ können
jedoch 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
Kandidatengruppen von langen Noten dar, deren Noten an den Taktanfängen angeordnet
sein könnten.
Alle Noten der Kandidatengruppen werden folglich als mögliche erste
Note eines Taktes 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änge bilden. Im Schritt 506 bestimmt
die Einrichtung 334 daraufhin den Auftakt, indem sie ein
Taktraster mit der bestimmten 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 Anpassungseinrichtung 336 weiterzuleiten.
-
Die
Anpassungseinrichtung 336 führt daraufhin eine Korrektur
von neben dem durch die Taktlänge
TL und den Auftakt bestimmten Takt bzw. dem durch die Taktlänge und
den Auftakt bestimmte Taktraster liegenden Noten der Notenlängenquantisierten
Notenfolge durch. Insbesondere führt
die Anpassungseinrichtung 336 eine Quantisierung der Notenanfangszeitpunkte
durch, wie sie Bezug nehmend auf 7 näher veranschaulicht
wird.
-
Zunächst sucht
die Einrichtung 336 in einem Schritt 600 den durch
die Notenlängen-quantisierten Notenfolge
repräsentierten
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 2 Bezug
genommen. 2 deutet mit gestrichelten Linien
aufgetragen über
der Zeitachse 320 eine Einteilung der Zeitachse 320 in
aufeinanderfolgende Abschnitte der Länge NL an, wie sie durch die
Auftaktbestimmung durch die Einrichtung 334 festgelegt
ist. In diesem exemplarischen Fall gehö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 festgelegt worden ist, und somit auch
ein Taktschlag. Die in 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 ursprünglichen Audiosignals am Eingang 302 der
Vorrichtung erklären.
Durch die Festlegung des Taktrasters derart, dass in dem gezeigten
Ausschnitt von 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 2 sei
exemplarisch angenommen, dass durch die Einrichtung 332 das
Schlagintervall auf 23 NL festgelegt worden
sei, weshalb sich in 2 ein weiterer Taktschlag 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 abweichen. 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 überprü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 Note 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+1.
-
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
Einrichtung 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ängenklasse
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 Abstand jedes Notenanfangszeitpunktes der Noten
der aktuellen Gruppe zu dem jeweils nächstgelegenen Taktschlag bei
Verschiebung in der Zeitachse kleiner wird, und zwar vorzugsweise
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 Verkürzung bzw.
Verlängerung
der Note vor der Gruppe um Einheiten 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 markierte Note in der
aktuellen Gruppe, so fährt die
Einrichtung 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 Gruppe 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 7 gezeigten Schritte ausgibt, stellt folglich
eine rhythmisch aufbereitete Notenfolge dar, die auch das Ausgangsergebnis 324 der
Rhythmuseinrichtung 306 von 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 inklusive des Tongeschlechtes, d.h. Dur oder Moll,
des beispielsweise 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 harmonisch 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 gewü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 Notenfolge 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 jeweiligen Takt vorkommenden Töne bzw. Tonhöhen der
Noten Tn erstellt. Die Statistik der vorkommenden
Töne wird
dann mit den möglichen
Akkorden der Tonleiter der Haupttonart verglichen, 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
angezeigt wird. Auf diese Weise bestimmt die Einrichtung 310 für jeden
Takt denjenigen Akkord, der am besten zu den beispielsweise eingesungenen Tönen bzw.
Noten in dem jeweiligen 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 Einrichtung 310 gibt dieselbe folglich neben
der rhythmisch aufbereiteten und Tonart-korrigierten Notenfolge
inklusive NL ferner für
jeden Takt eine Akkordstufenangabe an die Syntheseeinrichtung 312 aus.
-
Die
Syntheseeinrichtung 312 benutzt zur Durchführung der
Synthese, d.h. zur künstlichen
Erzeugung der sich schließlich
ergebenden polyphonen Melodie, eine Stilinformation, die von einem
Benutzer eingegeben werden kann, wie es durch den Fall 702 angezeigt
ist. Beispielsweise kann ein Benutzer durch die Stilinformation
aus vier verschiedenen Stilen bzw. Musikrichtungen auswählen, in
denen die polyphone Melodie generiert werden kann, nämlich Pop,
Techno, Latin oder 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 Stilinformation 702 angezeigte(n) Begleitmuster.
Zur Erzeugung der Begleitung hängt
die Syntheseeinrichtung 312 die Begleitmuster pro Takt
aneinander. Handelt es sich bei dem durch die Einrichtung 310 bestimmten
Akkord zu einem Takt um die Akkordversion, 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 derjenige, in welchem ein Begleitmuster in der Einrichtung 312 hinterlegt
ist, so verschiebt die Syntheseeinrichtung 312 die Noten des
Begleitpatterns um die entsprechende Halbtonzahl bzw. ändert die
Terz und ändert
die Sext und Septim um einen Halbton im Falle eines anderen Tongeschlechtes,
nämlich
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äsentierte
Melodie, um eine Hauptmelodie zu erhalten und kombiniert anschließend Begleitung
und Hauptmelodie zu einer polyphonen 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
Bereitstellungsidentifikationsnummer zu speichern. Ist der Benutzer
mit dem Ergebnis der polyphonen Melodie am Ausgang 304 unzufrieden, kann
er die Bereitstellungsidentifikationsnummer zusammen mit einer neuen
Stilinformation neu in die Vorrichtung von 1 eingeben,
woraufhin der Melodiespei cher 314 die unter der Bereitstellungsidentifikationsnummer
gespeicherte Folge 700 an die Harmonieeinrichtung 310 weiterleitet,
die daraufhin – wie im
Vorhergehenden beschrieben – die
Akkorde bestimmt, woraufhin die Syntheseeinrichtung 312 unter Verwendung
der neuen Stilinformation abhängig
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 Aufbereitung 316 erzeugte
Notenfolge 324 ein Zusammenfügen der Begleitung und der
Hauptmelodie zu einem rhythmisch wohlklingenden 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 rhythmische Aufbereitung von Audiosignalen ist bei vielen Einsatzgebieten
vorteilhaft und notwendig. Ferner wird darauf hingewiesen, dass
viele der im vorhergehenden beschriebenen Schritte nicht in dieser
Reihenfolge von den einzelnen Einrichtungen 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
Funktionalität bzw.
den jeweiligen Schritt übernehmen.
Beispielsweise ist die gesamte Vorrichtung von 1 als Computerprogramm
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 Einrichtungen der Rhythmuseinrichtung 306 auch anders
zu imp lementieren als dies Bezug nehmend auf die 4–7 beschrieben
worden ist. Insbesondere Bezug nehmend auf die Funktionalität der Auftaktbestimmungseinrichtung 334 wird
im Folgenden eine Alternative zu der im Vorhergehenden beschriebenen
Vorgehensweise beschrieben. Nach dieser alternativen Vorgehensweise
unterscheidet die Auftaktbestimmungseinrichtung 334 nicht
zwischen langen und kurzen Noten. Sie verschiebt lediglich kontinuierlich
oder quasi kontinuierlich ein Taktraster mit der durch die Taktlängenbestimmungseinrichtung 332 bestimmten
Taktlänge über die
Zeitachse 320 (2) und bestimmt dabei für jeden
Versatzwert, wie viele Notenanfangszeitpunkte mit Taktanfängen derart
zusammenfallen, dass der Zeitunterschied einen bestimmten Schwellenwert
unterschreitet. Abhängig
von dieser Anzahl für
jeden Taktrasterversatz bestimmt die Auftaktbestimmungseinrichtung 334 dann
denn Auftakt als denjenigen 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 Taktanfang 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 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 verwenden.
-
Bezug
nehmend auf die Syntheseeinrichtung 312 wird darauf hingewiesen,
dass es möglich
ist, dass in der Syntheseeinrichtung 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 Schritte nicht immer festgelegt sein
muss. So kann beispielsweise in 1 die Tonarteinrichtung 308 auch
zwischen der Extraktionseinrichtung 304 und der Rhythmuseinrichtung 306 angeordnet
sein, um die Notenfolge 318 vor ihrer Verarbeitung durch
die Rhythmuseinrichtung 306 hinsichtlich einer bestimmten
Tonart in den Tonhöhen zu
korrigieren.
-
Über die
in 1 gezeigten Einrichtungen hinaus kann die Vorrichtung
von 1 ferner eine Aufnahmeeinrichtung aufweisen, 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 erfolgen,
die so mit einem programmierbaren Computersystem zusammenwirken
können,
dass das entsprechende Verfahren ausgeführt wird. Allgemein besteht
die Erfindung somit auch in einem Computerprogrammprodukt mit auf
einem maschinenlesbaren Träger
gespeicherten Programmcode zur Durchführung des erfindungsgemäßen Verfahrens, wenn
das Computerprogrammprodukt auf einem Rechner abläuft. In
anderen Worten ausgedrückt kann
die Erfindung somit als ein Computerprogramm mit einem Programmcode
zur Durchführung
des Verfahrens rea lisiert werden, wenn das Computerprogramm auf
einem Computer abläuft.