-
Die
vorliegende Erfindung bezieht sich auf die Erzeugung einer polyphonen
Melodie, und insbesondere die Erzeugung einer polyphonen Melodie basierend
auf einem Audiosignal, wie es beispielsweise durch den Gesang, das
Vorsummen oder das Vorspielen durch einen Benutzer mittels eines
Musikinstrumentes erhalten wird. In besonderen Ausführungsbeispielen
bezieht sich die vorliegende Erfindung auf die Generierung polyphoner
Signalisierungsmelodien, wie z. B. als Klingeltöne für Mobiltelefone.
-
Schon
seit einigen Jahren dienen Signaltöne von Mobiltelefonen nicht
mehr nur alleine der Signalisierung eines Anrufes. Vielmehr wurden
dieselben mit wachsenden melodischen Fähigkeiten der mobilen Geräte zu einem
Unterhaltungsfaktor und unter Jugendlichen zu einem Statussymbol.
-
Frühere Mobiltelefone
boten zum Teil die Möglichkeit,
monophone Klingeltöne
am Gerät
selber zu komponieren. Dies war jedoch kompliziert und für musikalisch
wenig vorgebildete Benutzer oft frustrierend und vom Ergebnis her
betrachtet unbefriedigend. Daher ist diese Möglichkeit bzw. Funktionalität aus neueren
Telefonen weitgehend verschwunden.
-
Insbesondere
moderne Telefone, die mehrstimmige Signalisierungsmelodien bzw.
Klingeltöne zulassen,
bieten eine solche Fülle
an Kombinationen, dass eine eigenständige Komposition einer Melodie auf
einem solchen Mobilgerät
kaum noch möglich
ist. Allenfalls lassen sich vorgefertigte Melodie- und Begleitmuster
neu kombinieren, um so in einem beschränkten Maße eigenständige Klingeltöne zu ermöglichen.
Eine solche Kombinierbarkeit vorgefertigter Melodie- und Begleitmuster
ist beispielsweise in dem Telefon Sony-Ericsson T610 imple mentiert.
Darüber
hinaus ist der Benutzer jedoch auf das Zukaufen kommerziell erhältlicher,
vorgefertigter Klingeltöne angewiesen.
-
Wünschenswert
wäre es,
dem Benutzer eine intuitiv bedienbare Schnittstelle zur Erstellung
einer eigenen Signalisierungsmelodie zur Verfügung stellen zu können, die
keine große
musikalische Bildung voraussetzt, aber trotzdem zur Umsetzung eigener polyphoner
Melodien geeignet ist.
-
In
den meisten Keyboards besteht heutzutage eine als sogenannte Begleitautomatik
bezeichnete Funktionalität,
eine Melodie bei Vorgabe der zu verwendenden Akkorde automatisch
zu begleiten. Ganz abgesehen davon, dass solche Keyboards keine
Möglichkeit
liefern, über
eine Schnittstelle zu einem Computer die mit einer Begleitung versehene Melodie
an einen Computer zu übertragen
und dort in ein geeignetes Handy-Format umzuwandeln zu lassen, um
dieselben als Klingeltöne
in ein Mobiltelefon verwenden zu können, scheidet die Verwendung
eines Keyboards zur Erzeugung eigener polyphoner Signalisierungsmelodien
für Mobiltelefone
für die meisten
Benutze aus, da dieselben nicht in der Lage sind, dieses Musikinstrument
zu bedienen.
-
In
der
DE 20 2004
003 465 U1 wird ein Verfahren beschrieben, mit dem sich
mit Hilfe eines Java-Applets und einer Serversoftware monophone und
polyphone Klingeltöne
generieren und auf ein Mobilgerät
versenden lassen. Die Vorgehensweise zur Erzeugung polyphoner Klingeltöne wird
dort nicht weiter beschrieben.
-
Die
US 2003/0013497 A1 beschreibt
ein tragbares Telefongerät,
welches es einem Benutzer ermöglicht,
einen polyphonen Klingelton dadurch zu erstellen, dass er zunächst mittels
einer Tastatur den Melodieteil eingibt, woraufhin dem Benutzer Gelegenheit
gegeben wird, Stilinformationen auszuwählen bzw. einzugeben, die dann
bei einem nachfolgenden automatischen Be gleitungsteilerzeugungsprozess
verwendet werden, um für
den Melodieteil noch eine Begleitung zu ermitteln.
-
Die
US 6,472,591 B2 beschreibt,
eine tragbare Kommunikationsvorrichtung mit Musikkompositionsfähigkeit,
bei der ein Benutzer ebenfalls über Tastatur
oder Maus ein Motiv ergibt, das dann unter Verwendung von Stilinformationen
mit einer Begleitung versehen wird.
-
Die
US 6,294,720 B1 zeigt
eine Vorgehensweise zur Erzeugung einer Melodie und eines Rhythmus
durch Extrahieren von Charakteristika aus einem gegebenen Motiv.
Die Motiveingabe erfolgt über eine
Tastatur oder eine Maus. Die so eingegebenen Melodiedaten werden
analysiert, um Charakteristika der Melodiedaten herauszufinden,
wie z. B. den Rhythmus, die Tonhöhren
der Noten mit primärer Wichtigkeit
in dem Rhythmusmuster, die Tonhöhenvariation
unter diesen wichtigen Noten usw.. Mit Hilfe dieser Information
wird dann auf vorbereitete Melodieerzeugungsdaten zugegriffen, mit
Hilfe von welchen dann die Melodie aus dem Motiv erzeugt wird, wobei
bei der Erzeugung noch Nebenbedingungen berücksichtigt werden, die der
Benutzer vorgeben kann, wie z. B. einen Notenbereich usw..
-
Die
US 6,395,970 B2 beschreibt
ein automatisches Musikkompositionsverfahren zur Komposition einer
ein Motiv darstellenden Melodie. Nach dieser Vorgehensweise, gibt
ein Benutzer an einem Motiveingabeblock eine Motivmelodie ein. Die
Eingabe erfolgt über
eine zweite Vorrichtung oder erfolgt in Echtzeit über eine
Betriebsvorrichtung des Systems, das eine Tastatur, eine Zeigevorrichtung,
wie z. B. eine Maus, oder aber auch eine Klaviertastatur oder eine
andere Schalttafel sein könne.
Daraufhin wird dem Benutzer in einem Parameterauswahlblock die Möglichkeit
gegeben, Melodieerzeugungsparameter einzugeben, die aus einem Rhythmuserzeugungsparameter
und einem Tonhöhen erzeugungsparameter bestehen,
wobei die Rhythmuserzeugungsparameter beispielsweise den charakteristischen
Beat des musikalischen Rhythmus, die Anzahl von Noten, oder die
Existenz von Synkopierungen umfassen können, und die Tonhöhenerzeugungsparameter
beispielsweise die Tonart, Dynamiken oder dergleichen umfassen können. Dabei
kann die Eingabe der Parameter durch den Benutzer mittelbar dadurch
erfolgen, dass derselbe ein Musikgenre auswählt. Ein Tonarterfassungsblock
erfasst die Tonart der eingegebenen Motivmelodie. Ein Grundtonerfassungsblock
erfasst den Grundton der erfassten Tonart sowie den Grundton der
spezifischen Tonart, die vorbereiteten Akkorddaten zugrunde liegt.
Aufgrund dieser Daten transponiert dann ein Transpositionsblock
die Akkorddaten von der spezifischen Tonart auf die erfasste Tonart
der Motivmelodie, woraufhin vermittels der transponierten Akkorddaten
und des Melodiemotivs schließlich
die Melodie erzeugt wird. Eine alternative Vorgehensweise, sieht
vor, dass die Transposition derart durchgeführt wird, dass die Motivmelodie
von der erfassten Tonart auf die spezifische Tonart transponiert
wird.
-
Die
US 4,982,643 A beschreibt
einen Vorgang, bei welchem einem Benutzer ermöglicht wird, einen existierenden
Satz von Erzeugungsregeln, die ein musikalisches Wissen repräsentieren,
zu editieren.
-
Die
US 6,316,712 B1 beschreibt
eine Tempo- und Down-Beat-Erfassung
sowie eine Änderung
eines Rhythmus innerhalb eines Musiksegmentes.
-
Die
EP 1 172 797 A2 zeigt
verschiedene Möglichkeiten
zur Ergänzung
einer von einem Benutzer vorgegebenen Melodie durch Begleitungsinformationen.
Eine dieser Möglichkeiten
besteht darin, dass der Benutzer die Melodie einsummt oder mit einem
Musikinstrument vorspielt. Aus der Aufnahme werden dann MIDI-Daten erzeugt. Dem
Benutzer wird weiterhin Möglichkeit
gegeben, Stil-Parameter einzugeben, die die Aufbereitung der schließlichen Komposition
beeinflussen, wie z. B. die Vorgabe eines Arpeggio-Akkordes. Unter
Verwendung der Stil-Parameter und der erzeugten MIDI-Daten wird dann
die Erzeugung der Begleitungskomposition durchgeführt.
-
Die
US 2003/0070536 A1 bezieht
sich auf eine Erzeugung eines polyphonen Klingeltons für Handys.
Der Benutzer summt eine gewünschte
Melodie in ein Mikrofon. Nach dieser Eingabe der Melodie werden
die so eingegebenen Noten auf ihre Frequenz hin analysiert. Dann
wird untersucht, ob eine Beabstandung zwischen den eingegebenen
Noten einem Vielfachen der Intervalle der temperierten Skala ist,
wobei Noten, die diesen temperierten Tonhöhen nahe kommen, ein Begleitakkord
zugewiesen wird, ebenso wie ein Flag Tp. Die weiter weg beabstandeten
Noten bleiben unberücksichtigt.
Danach wird zunächst
die Tonart der noch einstimmigen Melodie bestimmt, wobei hierzu
beispielsweise die letzte Note der Melodie herangezogen werden könne. Nach
diesem Teilschritt wird jeder Note der noch einstimmigen Melodie
ein Grad in dieser Tonart zugewiesen, wie z. B. Tonika, Dominante,
Subdominante usw. Daraufhin wird jedem dieser Grade einer von möglicherweise
mehreren für
diesen Grad vordefinierten Akkorden zugewiesen. Die Zuweisung geschieht
unter Verwendung von Wahrscheinlichkeitswerten p. Auch den Übergängen zwischen
verschiedenen Akkorden werden Wahrscheinlichkeiten zugewiesen. Auf
diese Weise entstehen mehrere miteinander konkurrierende Kandidatenabfolgen
von Akkorden, unter denen unter Verwendung eines Extremalisierungsalgorithmus
derjenige Pfad ausgewählt wird,
der die Summe der Wahrscheinlichkeiten extremal macht. Schließlich wird
noch eine Alternative zur Bestimmung der Haupttonart beschrieben.
Dabei wird zunächst
ein Histogramm über
alle Noten der noch einstimmigen Melodie gebildet. Ferner werden Histogramme
gebildet, in denen die Auftretenshäufigkeiten bezogen auf die
unterschiedlichen möglichen
Tonarten definiert sind. Letztere Histogramme werden dann mit einem
Vektor AM für
Dur-Tonarten und
einem Vektor Am für
Moll-Tonarten multipliziert, um Wahrscheinlichkeitswerte dafür zu erhalten,
dass eine bestimmte Tonart in Moll oder in Dur die gesuchte Tonart
der Melodie ist. Die Tonart in Moll bzw. in Dur wird als die gesuchte
Tonart herausgefunden, die den höchsten
Wahrscheinlichkeitswert erhält.
-
Die
Aufgabe der vorliegenden Erfindung besteht darin, ein Verfahren
und eine Vorrichtung zum Erzeugen einer polyphonen Melodie zu schaffen,
das bzw. die ermöglicht,
unabhän gig
von der musikalischen Vorbildung des jeweiligen Benutzers und damit
von einer möglichst
großen
Anzahl von Benutzern bedienbar zu sein und dabei für den Benutzer
ansprechende Ergebnisse in Form polyphoner Melodien zu liefern.
-
Diese
Aufgabe wird durch eine Vorrichtung gemäß Anspruch 1 und ein Verfahren
gemäß Anspruch
25 gelöst.
-
Die
Erkenntnis der vorliegenden Erfindung besteht darin, dass eine komfortable,
flexible und für einen
Benutzer auch kommerziell in Betracht kommende polyphone Signalisierungsmelodielieferung dadurch
erzielt werden kann, dass einer Verarbeitungseinrichtung ein von
einem Benutzer stammendes Audiosignal, wie beispielsweise eine von
dem Benutzer gesungene Melodie, bereitgestellt wird. Die Verarbeitungseinrichtung
wird dann das Audiosignal einer Verarbeitung unterziehen, die eine
Notenextraktion umfasst, um aus dem Audiosignal eine maschinell
verarbeitbare Analysemelodie bzw. eine Notenfolge zu erzeugen, die
zumindest eine Repräsentation
der von dem Benutzer gesungenen Benutzermelodie ist.
-
Gemäß der vorliegenden
Erfindung kann ein Benutzer nicht nur das Audiosignal eingeben,
sondern zusammen mit demselben im Rahmen einer Anforderung zur Erzeugung
einer polyphonen Melodie auch eine Stilinformation, abhängig von
welcher die Begleitung für
die in dem Audiosignal enthaltene Melodie des Benutzers ermittelt
wird.
-
Gemäß einem
Ausführungsbeispiel
der vorliegenden Erfindung wird eine einfach bedienbare und für einen
Benutzer auch kommerziell in Betracht kommende Erzeugung polyphoner
Melodien dadurch erreicht, dass einerseits dem Benutzer ermöglicht wird,
eine gewünschte
Melodie einzusingen, vorzusummen bzw. vorzuspielen, indem das entstehende Audiosignal
in eine Notenfolge umgewandelt wird, und andererseits die hierbei
entstehenden und für
die Erzeugung einer harmonischen Begleitmusik von hoher Bedeutung
seienden musikalischen Unzulänglichkeiten
dadurch korrigiert werden, dass die aus dem Audiosignal erhaltene
Notenfolge analysiert wird, um eine Haupttonart zu erhalten, und
diese Haupttonart dann verwendet wird, um eine Tonart-korrigierte
Version der Notenfolge zu erhalten, die eine Tonart-korrigierte
Melodie darstellt. Zu dieser Tonart-korrigierten Version der Notenfolge
wird dann die Begleitung ermittelt, die dann mit der Tonart-korrigierten
Melodie vereinigt wird, um die polyphone Melodie zu erhalten. Gemäß diesem
Ausführungsbeispiel
besteht ein Vorteil der vorliegenden Erfindung darin, dass es auch
musikalisch nicht vorgebildeten Benutzern möglich ist, die erfindungsgemäße Erzeugung
polyphoner Melodien einzusetzen. Die hierbei durch musikalisch weniger
vorgebildete Benutzer entstehenden Abweichungen zwischen dem tatsächlichen
Audiosignal, das der polyphonen Melodieerzeugung zugeführt wird,
und der von dem Benutzer gewünschten
Melodie wird durch die Bestimmung der Haupttonart und die Tonart-Korrektur
noch vor der Ermittlung der Begleitung „herausgefiltert”. Hierdurch
werden Missklänge
in der Begleitung bei diesen Benutzern vermieden. Insbesondere ermöglicht es
dieses Ausführungsbeispiel,
die eigene Gestaltung polyphoner Melodien zur Verwendung als beispielsweise
Signalisierungsmelodie zu vereinfachen. Ferner kann der Mensch einfach,
ohne dass es einer Notenschrift etc. bedarf, das Audiosignal, das die
von dem Benutzer gewünschte
Benutzermelodie umfasst, erzeugen, beispielsweise durch ein einfaches,
durch den Benutzer selbst gespieltes Instrument oder einfach durch
Gesang oder Summen.
-
Gemäß verschiedener
Ausführungsbeispiele der
vorliegenden Erfindung werden während
der Verarbeitung des Audiosignals durch die Verarbeitungseinrichtung
verschiedene Versionen der Notenfolge erzeugt, von denen schließlich eine
zur Ermittlung der Begleitung und zur Vereinigung zur polyphonen Melodie
herangezogen wird. Eine Zwischen- oder Endversion dieser Versionen
der Notenfolge wird gemäß einem
Ausführungsbeispiel
der vorliegenden Erfindung zwischengespeichert. Dies hat den Vorteil, dass
der Benutzer nach einer Anforderung mittels Audiosignals und Stilinformation
die sich ergebende polyphone Signalisierungsmelodie probehören kann, und
gegebenenfalls die Stilinformationen nachträglich ändern kann, ohne dass er das
Audiosignal erneut durch Singen, Summen oder dergleichen erzeugen
muß, in
welchem Fall auch fraglich wäre,
ob er in der Lage wäre,
das selbe Melodieergebnis zu erhalten. Vielmehr muss er lediglich
die Stilinformationen ändern,
und erneut eine Anfrage stellen, wobei zur Identifizierung der zwischengespeicherten
Version gemäß einem
Ausführungsbeispiel
der vorliegenden Erfindung eine bei Zwischenspeicherung ergebende Bereitstellungs-ID
verwendet wird. Der Benutzer kann somit ohne weiteres und mühelos mehrmals
an der polyphonen Signalisierungsmelodie feilen, ohne das Audiosignal
mühevoll
immer wieder zu wiederholen.
-
Insbesondere
ist die vorliegende Erfindung folglich dahingehend vorteilhaft,
dass sie die eigene Gestaltung polyphoner Melodien zur Verwendung
als beispielsweise Signalisierungsmelodien vereinfacht.
-
Ferner
kann ein Mensch einfach, ohne dass es einer Notenschrift etc. bedarf,
das Audiosignal, dass die von dem Benutzer gewünschte Benutzermelodie umfasst,
erzeugen, beispielsweise durch ein einfaches, durch den Benutzer
selbst gespieltes Instrument oder einfach durch Gesang oder Summen.
-
Bevorzugte
Ausführungsbeispiele
der vorliegenden Erfindung werden nachfolgend Bezug nehmend auf
die beiliegenden Bezeichnungen näher
erläutert.
Es zeigen:
-
1 ein
Blockschaltbild eines Systems zur Erzeugung polyphoner Melodien
gemäß einem
Ausführungsbeispiel
der vorliegenden Erfindung;
-
2 ein
Flussdiagramm zur Veranschaulichung der Funktionsweise des Systems
nach 1;
-
3 ein
Blockschaltbild des internen Aufbaus des Servers nach 1 gemäß einem
Ausführungsbeispiel
der vorliegenden Erfindung;
-
4 ein
Flussdiagramm zur Veranschaulichung der Funktionsweise der Tonartbestimmungs/Tonartkorrektur-Einrichtung von 3 gemäß einem
Ausführungsbeispiel
der vorliegenden Erfindung;
-
5 ein
Flussdiagramm zur Veranschaulichung der Funktionsweise der Rhythmus/Auftakt-Bestimmungseinrichtung
von 3;
-
6 eine
schematische Skizze eines Ausschnitts aus einer Tonart-korrigierten
Notenfolge zur Veranschaulichung der Funktionsweise der Rhythmus/Auftakt-Bestimmungseinrichtung
von 3;
-
7 ein
Blockschaltbild des internen Aufbaus des Servers nach 1 gemäß einem
weiteren Ausführungsbeispiel
der vorliegenden Erfindung;
-
8 eine
schematische Skizze zur Veranschaulichung der Notendarstellung,
wie sie von der Extraktionseinrichtung der Vorrichtung von 7 ausgegeben
wird;
-
9 ein
Blockschaltbild des internen Aufbaus der Rhythmuseinrichtung aus
der Vorrichtung von 1, die zusammen mit der Notenextraktionseinrichtung
der Vorrichtung von 7 ein Ausführungsbeispiel für eine Rhythmus-Aufbereitungseinrichtung
gemäß der vorliegenden
Erfindung liefert;
-
10 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 9;
-
11 ein
Flussdiagramm zur Veranschaulichung einer möglichen Vorgehensweise zur
Zuordnung der Notenlängen-Quantisierungsstufen
zu den Noten in dem Ablauf nach 10;
-
12 ein
Flussdiagramm zur Veranschaulichung der Funktionsweise der Auftaktbestimmungseinrichtung
von 9; und
-
13 ein
Flussdiagramm zur Veranschaulichung der Funktionsweise der Anpassungseinrichtung
von 9.
-
Bevor
im Folgenden anhand der Figuren Ausführungsbeispiele der vorliegenden
Erfindung näher
veranschaulicht werden, wird darauf hingewiesen, dass sich dieselben
zwar lediglich auf die Generierung polyphoner Signalisierungsmelodien
für Mobiltelefone
beziehen, dass die vorliegende Erfindung aber auch auf anderen Anwendungsgebieten
geeignet ist.
-
1 zeigt
ein System bzw. eine Anordnung zur Erzeugung einer polyphonen Signalisierungsmelodie
für das
Mobilgerät
eines Benutzers. Das System, das in 1 allgemein
mit 10 angezeigt ist, verteilt sich auf eine private Benutzer-Sphäre 12 und
einen zentralen Server- bzw. Dienst-Bereich 14, die über Übertragungsmedien 16 miteinander
kommunikativ verbunden sind. In seiner privaten Sphäre 12 umfasst
der Benutzer einen Browser 18, der auf einem Computer des
Benutzers (nicht gezeigt) läuft, wobei
unter Browser ein Internetprogramm verstanden wird, das in der Lage
ist, eine kommunikative Verbindung mit dem Internet herzustellen.
In der privaten Sphäre 12 des
Benutzers befindet sich ferner ein Mobilgerät 20 des Benutzers,
nämlich
dasjenige, für
das die polyphone Signalisierungsmelodie bestimmt ist, die der Benutzer
zu generieren wünscht.
-
Auf
der anderen Seite, nämlich
in dem Service-Bereich 14 befindet sich ein Server 22,
der ebenfalls wie der Computer des Benutzers an das Internet angeschlossen
ist. Über
das Internet, das in 1 mit 24 angedeutet
ist, können
der Browser 18 und der Server 22 folglich miteinander
kommunizieren. Insbesondere befindet sich auf dem Server 22 eine
auf dem Computer des Benutzer herunter ladbare Version eines auf
dem Browser 18 lauffähigen
Applets 26, das, wie es im Folgenden noch näher erörtert werden
wird, in der Lage ist, aus einem Gesang, einem Vorsummen oder einem
Vorspielen mittels eines Instrumentes durch den Benutzer ein Audiosignal
zu erzeugen und dies mit Zusatzinformationen, wie sie ebenfalls
im Folgenden noch näher
beschrieben werden, an den Server 22 zu senden, daraufhin eine
Probe- bzw. vorläufige
Fassung einer hieraus generierten polyphonen Signalisierungsmelodie
mit einer Bereitstellungs-ID bzw. -Identifikationsnummer zu erhalten
und dem Benutzer vorzuspielen, sowie gegebenenfalls die Bereitstellungs-ID
zusammen mit veränderten
Zusatzinformationen erneut an den Server 22 zu senden und
daraufhin eine entsprechend angepasste bzw. modifizierte Fassung
der polyphonen Melodie zusammen mit einer Bereitstellungs-ID zu
erhalten.
-
In 1 ist
exemplarisch davon ausgegangen worden, dass das Audiosignal beispielsweise
in Form einer wav-Datei an den Server 22 weitergeleitet wird,
während
die vorläufigen
bzw. überarbeiteten Versionen
der polyphonen Signalisierungsmelodien als MIDI-Dateien (MIDI =
musical Instrument digital interface) an das Applet 26 über das
Internet 24 weitergeleitet werden. Andere Formate sind
jedoch ebenfalls möglich.
-
Der
Server 22 ist mit einem Messaging- bzw. Nachrichten-Server 28 verbunden,
der ebenfalls Teil des Service- bzw. Dienst-Bereiches 14 ist.
Die Kommunikationsverbindung zwischen Server 22 und Nachrichten-Server 28 ist
in 1 mit 30 angezeigt und kann jegliche
Art einer Verbindung sein, wie z. B. eine drahtgebundene oder drahtlose
Verbindung.
-
Insbesondere
müssen
Server 22 und Nachrichten-Server 28 nicht unbedingt örtlich getrennt sein,
sondern können
in ein und demselben Computer vorgesehen sein. Über die Verbindung 30 übermittelt
der Server 22 dem Nachrichten-Server 28 die erzeugten
vorläufigen
und überarbeiteten
Fassungen der polyphonen Melodien zusammen mit einer von ihm vergebenen
Bereitstellungs-ID, die der Server 22 wie im Vorhergehenden
erwähnt
gegenüber
dem Applet 26 als Identifizierungsmittel zur Identifikation
der vorläufigen
und überarbeiteten
Versionen der polyphonen Signalisierungsmelodien verwendet. Der Nachrichten-Server 28 speichert
die erhaltenen polyphonen Melodiedateien unter der Bereitstellungs-ID (ID)
ab.
-
Gefällt dem
Benutzer eine der probeweise vorgespielten Fassungen einer polyphonen
Melodie, so kann er die dieser Version entsprechende Bereitstellungs-ID
in 1 exemplarisch im Rahmen einer SMS von seinem
Mobilgerät 20 aus
an den Nachrichten-Server 28 übermitteln, der daraufhin unter
Verwendung der in der SMS enthaltenen Bereitstellungs-ID die bereitgestellte
polyphone Signalisierungsmelodiedatei abruft und per MMS (MMS =
multi-media messaging services) kostenpflichtig an das Mobilgerät 20 des
Benutzers zurücksendet.
-
Nachdem
im Vorhergehenden der Aufbau des Systems 10 von 1 beschrieben
worden ist, sowie die Funktionsweisen der einzelnen Komponenten
des Systems 10, wird Bezug nehmend auf 2 die
Funktionsweise des gesamten Systems 10 bzw. das Zusammenspiel
aller Komponenten beschrieben. Wie im Vorhergehenden beschrieben, funktioniert
das System 10 als ein Internet-Angebot auf Browser-basierte
Weise. Der Benutzer bzw. potentielle Kunde verfügt folglich über einen
PC bzw. Computer mit Internetanbindung als auch ein entsprechendes
mehrstimmfähiges
Mobiltelefon bzw. Mobilgerät 20.
-
Um
nun die Erzeugung einer polyphonen individuellen Signalisierungsmelodie
zu starten, führt der
Benutzer zunächst
eine Gesangsaufnahme 50 durch. Hierzu öffnet der Benutzer mit seinem
Browser 18 die Internet-Seite des auf dem Server 22 laufenden
Dienstes. Hierbei wird das Applet 26 von dem Server 22 über das
Internet 24 auf den Computer des Benutzers geladen, welches
von da an der Steuerung der Klingeltongenerierung auf Seiten des
Benutzers bzw. der Benutzer-Sphäre 12 dient.
Nachdem das Applet 26 auf den Computer des Benutzers geladen
ist, greift der Benutzer in dem Schritt 50 auf eine Audioaufnahme-Funktion
des Applets 26 zu, mit Hilfe derer der Benutzer die gewünschte Melodie
aufnehmen kann. Die Aufnahme findet beispielsweise mittels eines
an dem PC des Benutzers angeschlossenen Mikrofons und sich eines
daran anschließenden A/D-Wandlers
statt. Das Audiosignal, dass das Applet 26 in dem Schritt 50 aus
der erhaltenen Aufnahme erzeugt, stellt beispielsweise eine komprimierte
oder unkomprimierte Audiodatei dar, die eine Folge von zeitlichen
Abtastwerten, wie sie beispielsweise durch das Mikrofon nach Analog-Digital-Wandlung
erhalten werden, repräsentiert.
Das von dem Applet 26 erzeugte Audiosignal repräsentiert
somit die von dem Benutzer gewünschte
Melodie in Form von beispielsweise einer Folge von Audiowerten oder
einer Zeit/Frequenz-Darstellung der gewünschten Melodie.
-
Danach
wählt der
Benutzer in einem Schritt 52 unter einer vorbestimmten
Auswahl von unterschiedlichen möglichen
Musikstilen einen gewünschten
Musikstil aus, dem anschließend
die synthetisch generierte polyphone Melodie entsprechen soll. Die aufgenommene
Melodie bzw. das von dem Applet 26 erzeugte Audiosignal,
das in 1 mit „wav” repräsentiert
ist, und die von dem Benutzer ausgewählte, einen Musikstil angegebene
Stilinformation, die in 1 mit „Info” repräsentiert ist, werden dann als Erstgenerierungsanforderung „wav/Info” über das
Internet an den Server 22 geschickt. Dieser führt daraufhin
in einem Schritt 54 eine Melodieanalyse an dem empfangenen
Audiosignal durch und erzeugt eine polyphone Notenfolge, die die
angeforderte polyphone Melo die darstellt. Die Art und Weise, auf
welche der Server 22 den Schritt 54 durchführt, wird nachfolgend
Bezug nehmend auf die 3–6 näher erörtert.
-
Innerhalb
des Server-Bereiches 14 wird die vorläufige Version der polyphonen
Klingelmelodie in dem Nachrichten-Server 28 abgespeichert – in 1 mit
dem mit „MIDI” beschrifteten
Pfeil angedeutet, wobei der Server hierzu eine von dem Server vergebene
Bereitstellungs-ID verwendet. Alternativ könnte es sein, dass der Nachrichtenserver
die Bereitstellungs-ID vergibt, unter welcher der Nachrichten-Server 28 diese
vorläufige
Version der polyphonen Klingelmelodie abspeichert, und diese dann
an den Server 22 zurückschickt,
wie es durch einen mit „ID” beschrifteten
Pfeil angedeutet ist. Als Reaktion auf die Anfrage wav/Info von
dem Benutzer hin sendet der Server eine die vorläufige Version der polyphonen Klingelmelodie
enthaltenden Datei zusammen mit der Bereitstellungs-ID an das Applet 26,
wie es durch einen mit „MIDI/ID” beschrifteten
Pfeil angedeutet ist. Das Applet 26 gibt die polyphone
Melodie zum Probehören
durch den Benutzer in einem Schritt 56 wieder, wie z. B. über in einem
Monitor des Computers integrierte Lautsprechboxen.
-
Das
Applet 26 gibt dann dem Benutzer 10 in einer Abfrage 58 die
Möglichkeit,
seine Zufriedenheit oder Unzufriedenheit über die vorgespielte vorläufige Version
der polyphonen Klingelmelodie zum Ausdruck zu bringen. In dem Fall,
dass er mit der vorgespielten Version noch nicht zufrieden ist,
kann der Benutzer in einem Schritt 60 Korrekturen bzw.
Veränderungen
von Parametern vornehmen, die zur Generierung der polyphonen Melodie
in Schritt 54 verwendet worden sind, nämlich insbesondere des von
dem Benutzer in Schritt 52 eingegebenen Stils, aber auch von
anderen Parametern, wie z. B. Taktinformationen, wie es im Folgenden
noch näher
beschrieben wird, wobei die Änderung
dieser Parameter in Schritt 60 erfolgt. Nach Eingabe der
veränderten
Parameter in Schritt 60 werden dieselben zusammen mit der
Bereitstel lungs-ID als Nachbesserungsanfrage zur Neuberechnung bzw.
Neugenerierung an den Server 22 geschickt, wie es durch
einen gestrichelten und mit „ID/Info” überschriebenen
Pfeil angedeutet ist. Der Server 22 durchläuft daraufhin
zumindest zum Teil die Melodieanalyse und die Erzeugung der polyphonen
Melodie aus Schritt 54 erneut, wie es Bezug nehmend auf 3–6 noch
näher erörtert werden wird,
um eine überarbeitete
Version der polyphonen Melodie zu erzeugen, die daraufhin wieder
im Schritt 56 wiedergegeben wird. Anders ausgedrückt, berechnet
der Server 22 aus der bekannten Melodie mit Hilfe der neuen
Parameterinformationen aus Schritt 60 einen neuen Klingelton
und sendet denselben wieder zurück,
wobei der Rücksendevorgang
einer überarbeiteten
Version in 1 mit einem mit „MIDI/ID” unterschriebenen
gestrichelten Pfeil angedeutet ist.
-
Die
Schritte 54, 56, 58 und 60 werden
so lange wiederholt, bis der entstandene Klingelton bzw. die entstandene
polyphone Signalisierungsmelodie dem Benutzer zusagt bzw. er mit
derselben zufrieden ist, wobei jedes Mal, da eine neue Version der
polyphonen Melodie von dem Server 22 generiert worden ist,
diese als aktuelle Version in dem Nachrichten-Server 28 entweder wieder unter
der gleichen Bereitstellungs-ID oder unter Vergabe einer neuen Bereitstellungs-ID
in dem Nachrichten-Server 28 zur Abrufung durch den Benutzer
gespeichert wird.
-
In
dem Fall, dass der Benutzer zufrieden ist, kann der Benutzer in
einem Schritt 62 die in dem Nachrichten-Server 28 bereitgestellte
Datei mit der aktuellen Version der polyphonen Melodie unter Verwendung
der zuletzt von dem Server 22 erhaltenen Bereitstellungs-ID
anfordern, indem er in dem exemplarischen Beispiel von 1 im
Rahmen einer SMS die Bereitstellungs-ID in das Mobilgerät 20 eingibt und
die SMS inklusive der Bereitstellungs-ID als Kaufangebot an den
Server 28 sendet, wie es durch einen mit „ID/SMS” überschriebenen
Pfeil in 1 angedeutet ist. Nachdem der
Benutzer die ID-Nummer von seinem Mobilgerät 20 aus als Kurz nachricht (SMS)
an den Nachrichtenserver 28 des Systems 10 geschrieben
hat, erhält
derselbe in einem Schritt 64, vorzugsweise kostenpflichtig,
wie z. B. unter Abrechnung in seiner Telefonrechnung, die unter
dieser ID bereitgestellte polyphone Signalisierungsmelodie auf sein
Endgerät
bzw. Mobilgerät 20 geschickt,
wobei dieser Vorgang in 1 mit dem mit „MIDI/MMS” unterschriebenen
Pfeil angedeutet ist.
-
Nachdem
im Vorhergehenden Bezug nehmend auf 1 und 2 eher
im Groben ein Überblick über die
Generierung einer polyphonen Signalisierungsmelodie gegeben wurde,
soll im Folgenden Bezug nehmend auf die 3–6 der
Aufbau und die Funktionsweise des Servers 22 beschrieben
werden, oder anders ausgedrückt,
die exakte Vorgehensweise bei der Durchführung bzw. die genauen Teilschritte
des Schrittes 54.
-
3 zeigt
den internen Aufbau des Servers 22. Wie es 3 zu
entnehmen ist, besteht der Server 22 intern aus mehreren
Komponenten, die in 3 mit Rechtecken angedeutet
sind. Die einzelnen Komponenten bzw. Einrichtungen übernehmen dabei
verschiedene Funktionen des Servers 22 und könnten beispielsweise
in Software implementiert sein, wie z. B. als einzelne Unterprogrammroutinen eines
auf dem Server laufenden Programms. Im Besonderen umfasst der Server 22 eine
Melodieextraktionseinrichtung 102, eine Tonartbestimmungs/Tonartkorrektur-Einrichtung 104,
eine Rhythmus/Auftakt-Bestimmungseinrichtung 106, eine
Progression/Harmoniebestimmungseinrichtung 108, eine MIDI-Syntheseeinrichtung 110 und
einen Melodiespeicher 112. Ein Eingang der Melodieextraktionseinrichtung 102 ist
vorgesehen, um das Audiosignal 114, angedeutet mit wav,
von dem Applet 26 zu erhalten, wenn, wie im Vorhergehenden
beschrieben, der Benutzer seine erstmalige Anforderung bezüglich der Generierung
einer polyphonen Signalisierungsmelodie an den Server 22 sendet.
An die Melodieextraktionseinrichtung 102 schließen sich
die Tonartbestimmungs/Tonartkorrektur-Einrichtung 104,
die Rhythmus/Auftakt-Bestimmungseinrichtung 106, die Progressi ons/Harmoniebestimmungseinrichtung 108 und
die MIDI-Syntheseeinrichtung 110 in
Reihe geschaltet an, wobei sich am Ausgang der MIDI-Syntheseeinrichtung 110 die
polyphone Signalisierungsmelodie in einem vorbestimmten Format,
hier exemplarisch in Form einer MIDI-Datei, ergibt, die dann, wie
es Bezug nehmend auf 1 bereits beschrieben worden
ist, an den Nachrichten-Server 28 weitergeleitet wird.
Die Rhythmus/Auftakt-Bestimmungseinrichtung 106 umfasst
ferner einen weiteren Eingang, über
welchen sie Stilinformationen empfangen kann, die beispielsweise
bei der erstmaligen Anforderung einer polyphonen Signalisierungsmelodie
von dem Benutzer eingegeben werden (durchgezogene Linie in 3 und
in 1) oder von dem Benutzer in veränderter
Form auf ein Probehören
zusammen mit der Bereitstellungs-ID nach einem Probehören an den
Server 22 gesendet werden (gestrichelte Linie in 1 und 3).
-
Wie
es in 3 zu erkennen ist, gibt die Tonartbestimmung/Tonartkorrektoreinrichtung 104 die von
ihr auf die später
Bezug nehmend auf 4 noch näher erörterte Weise erzeugte Tonart-korrigierte
Notenfolge nicht nur direkt an die Rhythmus/Auftakt-Bestimmungseinrichtung 106 weiter,
sondern leitet dieselbe ferner an den Melodiespeicher 112 weiter,
welche dieselbe dann gemäß dem vorliegenden Ausführungsbeispiel – aber nicht
notwendiger Weise – unter
der selben Bereitstellungs-ID, die sie für die bei diesem Durchgang
erzeugte polyphone Signalisierungsmelodie am Ausgang der Midi-Syntheseeinrichtung 110 zur
Speicherung im Nachrichten-Server 28 vergibt, zwischenspeichert.
Die Zwischenspeicherung der Tonart-korrigierten Notenfolge dient
dazu, dass, wie es im Folgenden noch näher erörtert werden wird, der Benutzer
bei Änderung
der Stilinformationen oder anderer Parameter nach einem Probehören der
vorläufigen
Version der polyphonen Signalisierungsmelodie seine gewünschte Melodie
am Applet 26 nicht erneut einsingen bzw. vorspielen muss, sondern
dass er lediglich die von dem Applet 26 angeforderten Zusatzinformationen
bzw. Parameter ändern
muss. Aus diesem Grund ist ein Ausgang des Melodie speichers 112 ebenfalls
mit dem Eingang der Rhythmus/Auftakt-Bestimmungseinrichtung 106 verbunden,
an welchem dieselbe die Tonart-korrigierte Notenfolge erwartet.
Auf den Melodie-Speicher 112 kann über die Bereitstellungs-ID zugegriffen werden. Diese
Funktionalität
ist in 3 mit gestrichelten Linien angedeutet und wird
später
noch detailliert erörtert.
-
Nachdem
im Folgenden der interne Aufbau des Servers 22 beschrieben
wurde, wird im Folgenden die Funktionsweise desselben für den Fall
der Erstanfrage „wav/Info” (siehe 1)
beschrieben. Sobald nach den Schritten 50 und 52 von 2 die Anforderung
von dem Benutzer beim Server 22 eingeht, die das Audiosignal
mit der gewünschten
und vom Benutzer eingesungenen oder vorgespielten Melodie sowie
die vom Benutzer eingegebene Stilinformation enthält, erhält die Melodieextraktionseinrichtung 102 das
Audiosignal 114 und extrahiert aus demselben eine Notendarstellung
der von dem Benutzer gewünschten
Melodie bzw. eine Notenfolge 116. Genauer ausgedrückt liegt
das Audiosignal am Eingang der Melodieextraktionseinrichtung 102 noch in
einem Zustand vor, da dasselbe eine komprimierte oder unkomprimierte
Fassung einer Folge von Audiowerten darstellt, wie sie bei einer
Abtastung des Ausgangssignals durch eine Audioaufnahmeeinrichtung,
wie z. B. ein Mikrofon, erhalten werden. Das Audiosignal ist in 3 mit
dem Pfeil 114 angedeutet. In der Notendarstellung ist die
vom Benutzer gewünschte
Melodie in Form einer Folge von Noten dargestellt, wobei im folgenden
exemplarisch davon ausgegangen wird, dass für jede Note n der Notenfolge
an der Position n ein Notenanfangszeitpunkt tn, eine
unquantisierte Notenlänge τn,
eine Tonhöhe
Tn in quantisierter Form, wie z. B. im MIDI-Format,
und in unquantisierter Form bzw. als exakte Frequenz fn sowie
ggf. noch weitere Informationen, wie z. B. eine Lautstärke Ln oder dergleichen, in der Notendarstellung
enthalten sind. Andere Notendarstellungen sind allerdings ebenfalls
möglich.
-
Die
Melodieerkennung, die durch die Melodieextraktionseinrichtung
102 zur
Generierung der Notenfolge
114 durchgeführt wird, kann beispielsweise
mit Hilfe des Ohrmodells von Torsten Heinz, unter Verwendung des
Verfahrens nach der
WO 2004/010327
A2 oder unter Verwendung des Konzepts nach der
US 5,918,223 stattfinden.
Die Inhaltsbasierte Analyse nach
US
5,918,223 extrahiert mehrere akustische Merkmale aus einem
Audiosignal. Gemessen werden dort beispielsweise Lautstärke, Bass,
Tonhöhe,
Brightness und Cepstral-Koeffizienten in einem Zeitfenster bestimmter
Länge in
periodischen Intervallabständen,
woraus dann ein Vektor gebildet wird, mit dem in eine Datenbank
zugegriffen werden kann, um aus der Datenbank beispielsweise eine
Notenfolgedarstellung einer Melodie zu erhalten, also einer Analysemelodie,
die wenigstens ähnlich
ist zu der Benutzermelodie, also der Melodie, wie sie der Benutzer
vorgesungen, vorgespielt bzw. vorgesummt hat.
-
Die
Tonartbestimmungs/Tonartkorrektur-Einrichtung 104 erhält die Notenfolge 114 und
bestimmt basierend auf derselben eine Haupttonart bzw. Tonart der
durch die Notenfolge 104 repräsentierten Benutzermelodie
inklusive des Tongeschlechtes, d. h. Dur oder Moll, des gesungenen
Stückes.
Nachdem aus der Melodie die Tonart sowie das Tongeschlecht des gesungenen
Stückes
erkannt worden sind, erkennt dieselbe an dieser Stelle ferner tonleiterfremde Töne in der
Notenfolge 114 und korrigiert dieselben, um zu einem harmonisch
klingenden Endergebnis zu kommen, nämlich einer Tonart-korrigierten
Notenfolge 118, die eine Tonartkorrigierte Form der von
dem Benutzer gewünschten
Melodie darstellt. Die Funktionsweise der Einrichtung 104 hinsichtlich
der Tonartbestimmung kann auf verschiedene Weisen eingefü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 Temperley, David: The cognition
of basical musical structures. The MIT Press, 2001, beschriebene
Weise stattfinden. Eine exemplarische Vorgehensweise bzw. Funktions weise
der Einrichtung 104 wird im Folgenden explizit Bezug nehmend
auf 4 beschrieben.
-
Die
Einrichtung 104 unterzieht die erhaltene Notenfolge 116 zunächst einer
Analyse 150, um für jede
mögliche
Note bzw. Tonhöhe
die Häufigkeit
ihres Auftretens über
einen geeigneten Ausschnitt oder über die gesamte Notenfolge 116 hinweg
zu bestimmen, wobei hierzu die quantisierte Notenhöhe Tn jeder Note herangezogen wird. Gegebenenfalls
wird diese aus der exakten Frequenz fn zu
jeder Note n erst ermittelt, falls in der Notenfolge 116 diese
Information noch nicht für
die Noten enthalten sein sollte. Das Ergebnis des Schrittes 150 ist
eine Notenhäufigkeitsverteilung,
die die Häufigkeit
einzelner Noten bzw. Tonhöhen
in der Notenfolge 116 darstellt. In einem Schritt 152 vergleicht
daraufhin die Einrichtung 104 die ermittelte Notenhäufigkeitsverteilung
mit Referenzverteilungen, die einzelnen möglichen Tonarten zugeordnet
sind. Die Referenzverteilungen sind beispielsweise über Statistiken über die
Notenhäufigkeit
bei verschiedenen Tonarten ermittelt und in Form einer Nachschlagtabelle
in der Einrichtung 104 bereitgestellt worden. In einem
Schritt 154 ermittelt dann die Einrichtung 104 die
Haupttonart zu der Notenfolge 116 bzw. zu der von dieser
Notenfolge 116 repräsentierten
Benutzermelodie. Insbesondere bestimmt sie diejenige Tonart unter
den möglichen
Tonarten als die Haupttonart, deren zugeordnete Referenzverteilung
der ermittelten Notenhäufigkeitsverteilung
laut dem Vergleich aus Schritt 152 am ähnlichsten ist.
-
Jeder
möglichen
Tonart ist eine Tonleiter zugeordnet, d. h. ein Satz zugelassener
Töne bzw. Halbtöne, im folgenden
auch als Noten bezeichnet. Ein Schritt 156 ermittelt nun
die Einrichtung 104 unter den Tönen bzw. Noten der Notenfolge 116 diejenigen,
die nicht zur Tonleiter der ermittelten Haupttonart passen, wobei
jedoch vorzugsweise als zur Tonleiter einer Tonart passend auch
solche Noten angesehen werden, die zwar nicht zur reinen Tonleiter
der Tonart ge hören,
aber bei denen es sich um Noten handelt, zur dritten oder siebten
Stufe um einen Halbton erniedrigt sind.
-
Es
wird angenommen, dass diese nicht passenden Töne bzw. Noten von dem Benutzer
falsch eingesungen bzw. vorgespielt worden sind. Da die Noten der
Melodie nicht immer korrekt eingesungen werden, sondern eben auch „danebenliegen” können, führt die
Einrichtung 104 in einem nachfolgenden Schritt 158 eine
Korrektur dieser erkannten Noten bzw. Töne durch. Dabei verändert sie
die in der Melodieextraktion ermittelten quantisierte Tonhöhe Tn dieser Noten zu Tönen der Tonleiter der ermittelten Haupttonart.
Anders ausgedrückt,
wird die im Schritt 150 erhaltene Tonartinformation dazu
verwendet, die quantisierten Tonhöhen Tn aller
Noten der Notenfolge 116, deren quantisierte Tonhöhe Tn nicht in die erkannte Tonart passt, und
die im Schritt 156 ermittelt worden sind, nach oben oder
unten zu korrigieren bzw. ihre Tonhöhe zu ändern. Die Entscheidung, ob eine
Note nach oben oder unten korrigiert wird, d. h. ob ihre quantisierte
Tonhöhe
erhöht
oder verringert wird, hängt
von der in der Melodieextraktion erkannten exakten Frequenz fn dieser Note ab. Liegt diese Frequenz näher am nächsthöheren Ton
der Tonleiter der erkannten Haupttonart, wird der betrachtete Ton bzw.
die betrachtete Note nach oben verschoben, ansonsten nach unten.
Es werde beispielsweise angenommen, dass im Schritt 154 als
Haupttonart C-Dur erkannt worden sei. Ferner sei angenommen, dass einer
Note n mit einer Frequenz fn der Benutzermelodie
bei der Melodieextraktion 102 in der Notenfolge 116 als
quantisierter Ton Tn ein C# zugewiesen worden
sei, und ferner dass der Wert fn exemplarisch
exakt dem Tn, d. h. dem C#, entspreche,
was natürlich in
Wirklichkeit nur selten vorkommen wird. Die quantisierte Tonhöhe Tn = C# gehört nicht zur C-Dur-Tonleiter,
weshalb im Schritt 156 die betreffende Note n als Note
ermittelt wird, die nicht zur Tonleiter der ermittelten Tonart passt.
Da die Frequenz fn der eingesungenen Note,
hier exemplarisch genau C#, näher an
dem nächsthöheren Ton
der C-Dur-Tonleiter liegt, nämlich
dem D, als an dem nächstniedrigeren
Ton der C-Dur-Tonleiter, wird in dem Schritt 158 in diesem exemplarischen
Fall aus dem C# ein D.
-
Das
Ergebnis des Schrittes 158 ist die Tonart-korrigierte Notenfolge 118,
die der Rhythmus/Auftakt-Bestimmungseinrichtung 106 zugeht.
Die Einrichtung 106 legt dann aufgrund der rhythmischen
Eigenschaften der Notenfolge 118 ein Taktraster über die
Tonart-korrigierte Melodie, wobei leichte Rhythmusabweichungen von
ihr korrigiert werden. Über das
Taktraster ermittelt die Einrichtung 106 auch, ob die Melodie
auftaktig oder volltaktig beginnt. Zur Festlegung der Geschwindigkeit
der Melodie bzw. des Stückes
wertet die Einrichtung 106 die Stilinformation von dem
Benutzer aus. Die genaue Funktionsweise der Einrichtung 106 wird
im Folgenden Bezug nehmend auf die 5 und 6 beschrieben.
-
Zunächst bestimmt
die Einrichtung 106 in einem Schritt 198 zu der
Tonart-korrigierten Notenfolge 118 eine Grundnotenlänge bzw.
eine Mindestnotenlänge,
wie z. B. aus einer Auswertung der Statistik der vorkommenden unquantisierten
Notendauern Tn der Noten der Notenfolge 118,
und ordnet dann jeder Note der Notenfolge 118 eine quantisierte
Notenlänge
als ein Vielfaches der Grundnotenlänge bzw. eine Notenquantisierungsstufe,
die die quantisierte Notenlänge
in Einheiten der Grundnotenlänge
angibt, zu. Nach Schritt 198 enthält die Notendarstellung bzw.
die entstehende Notenfolge rhythmisch-quantisierte Noten, deren
ganzzahlige Vielfache Notenlängen
der Noten in der Notenfolge 118 sein können. In einem Schritt 200 untersucht
nun die Einrichtung 106 die in der Notenfolge 118 vorhandenen
quantisierten (dieser Zusatz wird im folgenden auch manchmal weggelassen)
Notenlängen,
um die häufigst
vorkommende Notenlänge
in der Tonartkorrigierten Notenfolge 118 zu bestimmen.
Diese häufigst
vorhandene Notenlänge
ist ein ganzzahliges Vielfaches der Mindestnotenlänge der
Notenfolge 118 und wird später von der Einrichtung 106 benötigt, um
eine Taktkorrektur bzw. Rhythmuskorrektur vorzunehmen.
-
In
einem Schritt 202 bestimmt daraufhin die Einrichtung 106 die
Notenlängen
der in der Notenfolge 118 vorkommende Noten ausgedrückt in Bruchteilen
einer Taktlänge,
um ein Taktraster zu bestimmen. Anders ausgedrückt identifiziert die Einrichtung 106 in
Schritt 202 die Noten der Notenfolge 118 als bestimmte
Bruchteile unter möglichen
Bruchteilen einer Taktlänge,
wie als eine von einer ganzen, halben, Viertel-, Achtel-, Sechzehntel-,
Zweiunddreißigstel- ...
Note. Dies ist gleichbedeutend damit, dass die Einrichtung 106 bestimmt,
welchem Bruchteil einer Taktlänge
die Mindestnotenlänge
entspricht. Längere
Notenlängen
entsprechen dann einem entsprechenden ganzzahligen Vielfachen dieses
Bruchteils. Zur Durchführung
des Schrittes 202 zieht die Einrichtung 106 die
Stilinformation 204 heran, die der Benutzer bei der erstmaligen
Anforderung der polyphonen Signalisierungsmelodie zusammen mit der
durch Singen oder Vorspielen oder dergleichen erhaltenen Audiosignal
im Rahmen des Applet 26 eingegeben und an den Server 22 geliefert
hat, wie es in 3 mit einem Pfeil 204 angedeutet
ist. Die Einrichtung 106 verwendet die Stilinformation
in dem Schritt 202 auf die folgende Weise. Jedem möglichen
Stil bzw. Genre ist ein unterschiedlicher Tempobereich zugeordnet,
wie z. B. für
Pop 80–102
BPM (BPM = Beats per minute = Takte pro Minute). Beispiele für weitere
mögliche Stile
bzw. Genres sind Rock, Blues, Reggae etc. Durch die Stilinformation 204 wird
nun einer der Tempobereiche ausgewählt und die Mindestnotenlänge wird
als derjenige Bruchteil unter den möglichen Bruchteilen eines Taktes
bestimmt, so dass das sich ergebende Tempo bzw. die sich ergebende
Anzahl an Takten pro Minute für
die Notenfolge 118 einen Wert annimmt, der in dem ausgewählten Tempobereich
liegt, bzw. am nächsten
zu diesem Bereich liegt. In einem exemplarischen Fall betrage die
Mindestnotenlänge
beispielsweise 1/16 Sekunden und der durch Stilinformation angegebene
Tempobereich erstrecke sich von 80 bis 120 BPM. In diesem exemplarischen
Fall führte
eine Identifizierung von Noten mit einer Mindestnotenlänge in der
Notenfolge 118 als Sechzehntel-Noten, also als Noten einer
Notenlänge
gleich einem Sechzehntel einer Taktlänge, zu einem Tempo von 240
BPM, d. h. einem zu hohen Tempowert, der außerhalb des gewünschten
Tempobereiches liegt. Die Einrichtung 106 würde deshalb im
Schritt 202 Noten der Mindestnotenlänge als Achtel-Noten identifizieren,
wodurch sich ein Wert von 120 BPM für das resultierende Tempo der
Notenfolge 118 ergäbe.
Für andere
Mindestnotenlängen
als dem exemplarischen Wert von 1/16 Sekunden kann es vorkommen,
dass keine der möglichen
Bruchteile x–2n (n ∊ IN)
zu einem Tempo führt,
das in dem gewünschten
Tempobereich liegt. In diesem Fall wird die Mindestnotenlänge als
ganze, halbe, 1/4-, 1/8- bzw. 1/16-Note identifiziert, je nach dem,
bei welchem dieser Werte das Tempo dem gewünschten Tempobereich am nächstgelegenen
ist. Wie im Vorhergehenden bereits beschrieben, wird hierdurch nicht
nur für die
kürzeste
Notenlänge
bestimmt, ob es sich um eine ganze, halbe, 1/4-, 1/8-, 1/16- ...
-Note handelt, sondern auch gleichzeitig für die anderen Noten mit anderen
Notenlängen
in der Notenfolge 118, deren Notenlänge dann eben einfach als ein
entsprechendes ganzzahliges Vielfaches dieses Bruchteiles identifiziert
werden können,
der für
die Mindestnotenlänge
bestimmt worden ist.
-
6 zeigt
exemplarisch bei 206 ein Beispiel einer Notenfolge 118.
Jede Ziffer in der Zahlenfolge 206 in 6 soll
anzeigen, um die wievielte Note in der Notenfolge es sich jeweils
handelt. Die einzelnen Ziffern beziehen sich dabei auf aufeinanderfolgende
Zeiträume
der Mindestnotenlänge.
Somit erstreckt sich die erste Note „1” über einen Zeitraum der ersten
fünf Mindestnotenlängen bzw.
fünf Einheiten
hinweg, die zweite Note „2” über einen
darauf folgenden Zeitraum von vier Mindestnotenlängen bzw. vier Einheiten, die
dritte Note „3” über einen
wiederum darauf folgenden Zeitraum von zwölf Einheiten usw. Ein Zeitstrahl 208 soll
die zeitliche Anordnung der Ziffern bzw. Noten in der Notenfolge 206 veranschaulichen.
-
Wie
es zu erkennen ist, ist die häufigst
vorkommende Notenlänge 210 bei
dem Beispiel von 6 gleich Vier mal der Mindestnotenlänge 212.
In 6 ist exemplarisch davon ausgegangen worden, dass
Noten der Mindestnotenlänge
1/16-Noten sind. Aus
dieser Bestimmung 202 folgt, dass sich ein Takt über 16 Mindestnotenlängen 212 erstreckt
bzw. über 16
Ziffern in 6. Fraglich ist jedoch noch,
mit welchem Versatz zu der Notenfolge 206 bzw. 118 die Taktgrenzen
der aufeinander folgenden Takte bzw. das Taktraster zu dem Notenfolgenanfang
liegt. Der Versatz bzw. Offset wird auch als Auftakt bezeichnet. Bei 214 in 6 sind
nun untereinander Taktraster mit 16 Einheiten langen Takten angedeutet,
die sich lediglich durch den Offset bzw. den Auftakt voneinander
unterscheiden. Die senkrechten Striche sollen hierbei die Taktgrenzen
bzw. die Taktanfänge
bedeuten. Ein Auftakt von Null bedeutet, dass die Notenfolge 118 bzw. 206 volltaktig
ist. In einem Schritt 216 vergleicht nun die Rhythmus/Auftakt-Bestimmungseinrichtung 106 die
Taktanfänge
mit den Notenanfängen
der Notenfolge 306 für
unterschiedliche Versatz- bzw. Auftaktwerte. Insbesondere vergleicht
die Einrichtung 106 im Schritt 216 die 16 Einheiten
langen Taktraster, die sich lediglich durch den Offset voneinander
unterscheiden, mit der Notenfolge 206 daraufhin, wie oft
Taktanfänge
auf Notenanfänge
fallen, und wie sehr in dem Fall eines Zusammenfallens eines Taktanfangs
mit einer Notenmitte der Notenüberlapp ist,
d. h. die kleinere Länge
der Hälften
dieser Noten vor und nach der jeweiligen Taktgrenze. Diesen Vergleich
führt die
Einrichtung 106 für
alle möglichen Auftakte
durch.
-
In
einem Schritt 218 bestimmt die Einrichtung 106 daraufhin
basierend auf dem Vergleich 216 einen der möglichen
Versatz- bzw. Auftaktwerte als den Auftakt der Notenfolge 206.
Eine Möglichkeit
besteht darin, dass die Einrichtung 106 denjenigen Auftakt
wählt,
bei dem am meisten Taktanfänge
auf Notenanfänge
fallen. In dem Beispiel von 6 würde dies
dazu führen,
dass das Taktraster in der sechsten Zeile bei 214 zu dem
Auftaktwert 5 am besten passt, da hier die meisten Taktanfänge, d.
h. die senkrechten Striche in der Zeile mit Auftakt = 5, auf Notenanfänge fallen,
so dass in diesem Fall die Einrichtung 106 im Schritt 218 einen
Auftakt von fünf
Mindestnotenlängen
annehmen würde.
In die Bestimmung bzw. Bewertung gemäß Schritt 218 können jedoch
auch andere Parameter einfließen
als die Häufigkeit
des Zusammenfallens zwischen Takt- und Notenanfängen. Die Position in der gesamten
Melodie kann beispielsweise ebenfalls eine Rolle spielen, so dass
näher am
Anfang liegende Startzeitpunkte bzw. kleinere Auftaktwerte höher bewertet
bzw. bevorzugt werden, da der musikalische Auftakt im Regelfall
relativ kurz ist. Ferner könnten Überlappungen,
d. h. Male, an denen Taktgrenzen mit Notenmitten zusammenfallen und
deren Längen
größer als
eine Mindestnotenlänge
ist, dazu führen,
dass das Taktraster mit dem entsprechenden Auftakt weniger wahrscheinlich
als der Auftakt für
die Notenfolge 206 im Schritt 218 bestimmt wird,
quasi als „Bestrafung” für Überlappungen
bzw. Overlaps bzw. überhängende Noten.
-
Noch
einmal in anderen Worten ausgedrückt,
legt die Einrichtung 106 in dem Falle, dass es sich bei
der Mindestnotenlänge
exemplarisch um eine 1/16-Note handelt, ein entsprechendes Taktraster
mit Takten der Länge
16 Mal der Mindestnotenlänge
mit dem Anfang auf alle möglichen
1/16-Zeitpunkte.
Dann wird untersucht, für
welchen Startzeitpunkt es an den Taktübergängen möglichst wenig überlappende
Noten gibt, bzw. es werden die anderen Untersuchungen durchgeführt. Der
Startzeitpunkt mit den wenigsten Überlappungen wird als Offset
bzw. Auftakt definiert, in dem Fall von 6 der Auftakt
5.
-
Nachdem
im Schritt 218 die Position für den besten Taktanfang und
damit der Auftakt bestimmt und im Schritt 202 bereits die
Taktlänge
als ein Vielfaches der Mindestnotenlänge bestimmt worden ist, quantisiert
in einem Schritt 220 die Einrichtung 106 die Notenlängen der
Noten in der Notenfolge 118 auf das errechnete bzw. bestimmte
Taktmaß bzw.
das ermittelte Taktraster. Wie es Bezug nehmend auf Schritt 200 beschrieben
worden ist, wird dort aus einer Untersuchung der vorhandenen Notenlängen die am
häufigst
vorhande ne Notenlänge
als ein Maß bestimmt.
Sind beispielsweise Notenlängen
mit der Einheit „2” bzw. mit
einer Länge
gleich dem Zweifachen der Mindestnotenlänge am häufigsten vorhanden, dann wird
diese Länge
als ein Vergleichsmaß für den Schritt 220 herangezogen.
Noten mit einem Überhang,
der kleiner als dieses Vergleichsmaß ist, werden nun gekürzt, so
dass ihr Anfang oder Ende mit einer Taktgrenze zusammenfällt, so
dass auf das Taktmaß quantisiert
werden. Beträgt
das Vergleichsmaß bzw.
die häufigst
vorkommende Notenlänge
beispielsweise zwei Mindestnotenlängen und ist die Mindestnotenlänge eine
1/16-Note, dann werden kurz, nämlich
1/16 einer Taktlänge,
in den nächsten Takt überhängende Noten
um die Mindestnotenlänge gekürzt und
kurz, nämlich
etwa 1/16 einer Taktlänge, vor
dem Takt beginnende Noten auf den Taktanfang korrigiert, und zwar
indem gleichzeitig die jeweils nachfolgende Note bzw. die vorhergehende
Note entsprechend verlängert
wird. Auf diese Weise werden im Schritt 220 die Notenlängen der
Noten in der Notenfolge 118 abhängig von dem bestimmten Auftakt
und der bestimmten Taktlänge
korrigiert. Die sich so ergebende Notenfolge stellt eine Tonart-
und Taktmaß-korrigierte
Notenfolge 222 dar, die, wie es in 3 gezeigt
ist, von der Einrichtung 106 an die Progression/Harmoniebestimmungseinrichtung 108 weitergeleitet
wird.
-
Die
Einrichtung 108 ist dazu da, um für die Melodie, die durch die
Notenfolge 222 repräsentiert wird,
eine passende Begleitung zu finden. Dazu agiert bzw. wirkt die Einrichtung 108 taktweise.
Insbesondere wirkt die Einrichtung 108 an jedem Takt derart,
dass sie eine Statistik über
die in dem jeweiligen Takt vorkommenden Töne bzw. Tonhöhen der
Noten erstellt. Die Statistik der vorkommenden Töne wird dann mit den möglichen
Akkorden der Tonleiter der Haupttonart verglichen, wie sie von der
Tonartbestimmungseinrichtung 104 bestimmt worden ist. Die
Einrichtung 108 wählt
unter den möglichen
Akkorden insbesondere denjenigen Akkord aus, dessen Töne am besten
mit den Tönen übereinstimmen,
die sich in dem jeweiligen Takt befinden, wie es durch die Sta tistik
angezeigt wird. Wird beispielsweise als Tonart durch die Tonartbestimmungseinrichtung 104 C-Dur erkannt,
und befinden sich in einem Takt beispielsweise die Töne D, F
und A, dann wird als Begleitung für diesen Takt durch die Einrichtung 108 der
Akkord D-Moll gewählt,
der mit diesen Tönen übereinstimmt und
ein Akkord der C-Dur-Tonart ist. Bevorzugter Weise werden als mögliche Akkorde
für die
Dur-Tonleiter die
erste, zweite, vierte und fünfte
Stufe und für Moll-Tonleitern
die erste, dritte, vierte und siebte Stufe als mögliche Akkordstufen verwendet.
Für die
Tonart C-Dur sind also die Akkorde C-Dur, D-Moll, F-Dur und G-Dur
für die
Begleitung möglich.
Auf diese Weise bestimmt die Einrichtung 108 für jeden
Takt denjenigen Akkord, der am besten zu den eingesungenen Tönen in dem
jeweiligen Takt passt. Mit anderen Worten ausgedrückt, ordnet
die Einrichtung 108 den durch die Einrichtung 106 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 Progressions/Harmoniebestimmungseinrichtung 108 gibt
dieselbe folglich neben der Tonart- und Taktmaß-korrigierten Notenfolge ferner
für jeden
Takt eine Akkordstufenangabe an die Midi-Syntheseeinrichtung 110 aus.
-
Die
Midi-Syntheseeinrichtung 110 benutzt zur Durchführung der
Synthese, d. h. zur künstlichen Erzeugung
der sich schließlich
ergebenden polyphonen Signalisierungsmelodie, obwohl in 3 nicht gezeigt,
ebenfalls die Stilinformation 204 von dem Benutzer. Beispielsweise
kann der Benutzer durch die Stilinformation aus vier verschiedenen
Stilen bzw. Musikrichtungen auswählen,
in denen der Klingelton bzw. die Signalisierungsmelodie generiert
werden kann, nämlich
Pop, Techno, Latin oder Reggae. Zu jedem dieser Stile sind bereits
mehrere Begleitpatterns im System hinterlegt. Gemäß einem
Ausführungsbeispiel
sind zu jedem Stil drei Begleitpatterns hinterlegt, nämlich ein
Begleitpattern Intro, ein Begleitpattern Outro und ein Begleitpattern
für normale Takte.
Alle Begleitpattern bzw. Begleitmuster sind bei ei nem bevorzugten
Ausführungsbeispiel
nur in einer Akkordversion abgelegt, vorliegend exemplarisch nur in
C-Dur. Die Begleitmuster sind beispielsweise in einer Nachschlagtabelle
in der Einrichtung 110 hinterlegt. Zur Erzeugung der Begleitung
verwendet nun die Midi-Syntheseeinrichtung 110 die durch
die Stil-Information 204 angezeigten Begleitmuster. Zur Erzeugung
der Begleitung hängt
die Midi-Syntheseeinrichtung 110 diese
Begleitmuster pro Takt aneinander. Handelt es sich bei dem durch
die Einrichtung 108 bestimmten Akkord zu diesem Takt um
denjenigen, in dem die Begleitmuster bereits vorliegen, so wählt die
Syntheseeinrichtung 110 für diesen Takt für die Begleitung
einfach eines der Begleitmuster zu dem aktuellen Stil aus. Gemäß dem Ausführungsbeispiel
mit Intro-, Outro- und Normal-Takt-Begleitmuster wählt die Syntheseeinrichtung 110 nur
beim ersten Takt das Intro-Begleitmuster, beim letzten Takt das
Outro-Begleitmuster und bei den übrigen
Takten das Normal-Takt-Begleitmuster.
Entspricht jedoch für einen
bestimmten Takt, der durch die Einrichtung 108 bestimmte
Akkord nicht der Akkordversion, für welche das Begleitmuster
vorliegt, so verschiebt die Syntheseeinrichtung 110 die
Noten um die entsprechende Halbtonanzahl, bzw. ändert – im Falle eines anderen Tonartgeschlechts-
die Terz sowie die Sext und Septim, und zwar durch Verschieben um
eine Halbtonzahl nach unten in dem Fall eines Moll-Akkords bei einem
Dur-Begleitmuster
und um eine Halbtonzahl nach oben in dem Fall eines Dur-Akkords
bei einem Moll-Begleitmuster. Liegen die Begleitmuster beispielsweise
in C-Dur vor, so werden im Falle einer Moll-Tonart die Terzen und
die Sext sowie die Septim in den Begleitmustern dementsprechend geändert, nämlich um
einen Halbton verringert. Auf diese Weise setzt die Syntheseeinrichtung 110 die Begleitung
abhängig
von dem ausgewählten
Stil aus einem Intro-Begleitmuster, n normalen Begleitmustern und
einem Outro-Begleitmuster zusammen. Die Instrumente für die Begleitung
wählt die
Syntheseeinrichtung vorzugsweise ebenfalls abhängig von der Stilinformation
aus.
-
Ferner
setzt die Syntheseeinrichtung 110 die Melodieinformation,
die in der Tonart- und Taktmaß-korrigierten
Notenfolge repräsentiert
ist, abhängig
von der Stilinformation in eine Hauptmelodie um. Hauptmelodie und
Begleitung fügt
die Syntheseeinrichtung 110 dann zu einer polyphonen Signalisierungsmelodie
zusammen, die sie vorliegend exemplarisch in Form einer Midi-Datei 226 an
ihrem Ausgang ausgibt und den Klingelton darstellt. Mit anderen
Worten ausgedrückt,
werden vorbereitete bzw. vorliegende Rhythmus- und Begleitmuster
der gewählten
Stilrichtung unter die Hauptmelodie gelegt, so dass sich ein polyphoner
Klingelton ergibt.
-
Die
vorhergehende Beschreibung der Funktionsweise des Servers 22 von 3 bezog
sich auf den Fall der erstmaligen Anforderung einer polyphonen Melodie
durch den Benutzer, also auf die Durchführung des Schrittes 54.
Die entstehende Midi-Datei 226 gelangt dann, wie Bezug
nehmend auf 2 beschrieben, zum Benutzer
für eine
Probewiedergabe. Im Folgenden wird die Funktionsweise des Servers 22 für den Fall
beschrieben, dass der Benutzer mit der Gehörprobe nicht zufrieden ist
(Schritt 58), und deshalb im Schritt 60 eine Nachbesserungsanforderung 228 an
den Server 22 übersendet
wird, die die Bereitstellungs-ID sowie zusätzliche Parameter enthält, die
zur Erzeugung der probeweise vorgespielten polyphonen Signalisierungsmelodie
durch den Server 22 verwendet und nun durch den Benutzer
geändert
worden sind (Schritt 60).
-
In 3 ist
der Eingang der Nachbesserungsanforderung 228 durch gestrichelte
Linien angedeutet. Sie umfasst, wie erwähnt, die Bereitstellungs-ID 230 und
weitere Parameter, unter denen sich unter anderem die Stilinformation 232 befindet. Der
Melodiespeicher 112 empfängt die Bereitstellungs-ID 230 aus
der Nachbesserungsanforderung 228. Sie verwendet diese
ID 230, um auf die Tonart-korrigierte Notenfolge zuzugreifen,
wie sie von der Einrichtung 104 aus dem im ursprünglichen Schritt 50 aufgenommenen
Audiosignal zusammen mit der Einrichtung 102 erzeugt und
in den Spei cher 112 eingetragen worden ist, wie es durch
einen Pfeil 234 angedeutet ist.
-
In
dem Fall, dass sich die Stilinformation durch den Benutzer geändert hat,
d. h. dass er nach dem Probehören
beispielsweise statt Pop Reggae als Stil ausgewählt hat, ist die Funktionsweise
des Servers 22 zur Erzeugung einer nachgebesserten polyphonen
Signalisierungsmelodie ab der Rhythmus/Auftakt-Bestimmungseinrichtung 106 im
Wesentlichen dieselbe, wie sie im Vorhergehenden beschrieben worden
ist. Und zwar erhält
die Rhythmus/Auftakt-Bestimmungseinrichtung 106 eben die Tonart-korrigierte
Notenfolge diesmal einfach nicht von der Tonartbestimmungs/Tonartkorrektur-Einrichtung 104,
sondern von dem Melodiespeicher 112, wie es durch einen
Pfeil 236 angedeutet ist. Der Melodiespeicher 112 greift
hierzu mit der ID 230 als Index auf die zwischengespeicherte
Tonart-korrigierte Notenfolge zu und leitet sie an die Einrichtung 106 weiter, die
daraufhin an dieser Notenfolge auf die Bezug nehmend auf 5 und 6 bereits
beschriebene Art und Weise arbeitet, diesmal jedoch unter Verendung
der neuen Stilinformation. Auch die folgenden Einrichtungen 108 und 110 arbeiten
entsprechend der im Vorhergehenden beschriebenen Weise.
-
Gemäß weiterer
Ausführungsbeispiele
wird es dem Benutzer in Schritt 60 aber nicht nur ermöglicht,
die Stilinformation bzw. den Stil zu verändern, sondern ferner den Auftakt
zu verschieben, so dass der Takt anders unter der Melodie zu liegen
kommt. Mit anderen Worten ausgedrückt, entfällt bei explizit eingegebenem
Auftakt bzw. geändertem
Auftaktwert in der Nachbesserungsanforderung 228 das Paar von
Schritten 216 und 218 in der Verarbeitung der Rhythmus/Auftakt-Bestimmungseinrichtung 106. Vielmehr übernimmt
die Einrichtung 106 in dem Fall eines durch den Benutzer
explizit eingegebenen geänderten
Auftaktes diesen Auftakt ohne eigene Auftaktbestimmung.
-
Gemäß einem
weiteren Ausführungsbeispiel wird
dem Benutzer Gelegenheit gegeben, das Tempo der probeweise vorgespielten
polyphonen Signalisierungsmelodie zu ändern. In diesem Fall enthält die Nachbesserungsanforderung 228 einen
explizit eingegebenen Tempowert. In diesem Fall führt die Rhythmus/Auftakt-Bestimmungseinrichtung
nach der Durchführung
der Schritte 216–220 bzw.
lediglich des Schrittes 220 in dem Fall eines ebenfalls
geänderten Auftaktes
folgende Schritte durch. Und zwar bildet sie den Quotienten aus
dem Tempo, wie er sich aus der Bestimmung im Schritt 202 tatsächlich ergeben
hat, durch den tatsächlich
explizit angegebenen Tempowert, wie er in der Nachbesserungsanforderung 228 enthalten
ist. Mit diesem Quotienten multipliziert die Einrichtung 106 dann
die Mindestnotenlänge,
wonach alle weiteren Verarbeitungen mit der neu erhaltenen Mindestnotenlänge durchgeführt werden.
Auf diese Weise wird das Tempo der Benutzermelodie und damit auch
der späteren
polyphonen Signalisierungsmelodie an die gewünschte explizit von dem Benutzer
in Schritt 60 angegebene Tempovorgabe angepasst.
-
Die
so entstehende neue polyphone Signalisierungsmelodie wird dann wiederum,
wie es bereits im Vorhergehenden beschrieben worden ist, im Nachrichten-Server 28 abgespeichert
und wiederum zum Probehören
als MIDI-Datei an den Benutzer ausgeliefert, der daraufhin wieder
den Stil oder andere Parameter ändert
sowie den Auftakt verschieben kann oder dergleichen, woraufhin wieder
mit Hilfe der eindeutigen ID die Melodie noch einmal aus dem Melodienspeicher 112 angefordert
und mit der neuen Stilinformation oder den anderen geänderten
Parametern der Prozess ab der Rhythmus-Erkennung noch einmal wiederholt wird,
..., bis irgendwann einmal die Melodie dem Benutzer zusagt.
-
Bezug
nehmend auf die 1–6 wurde folglich
ein System beschrieben, das in der Lage ist, interaktiv polyphone
Klingeltöne
bzw. Signalisierungsmelodien aus einer gesungenen, gesummten oder
vorgespielten Benutzereingabe zu gewin nen, diese intuitiv halbautomatisch
anzupassen und an den Benutzer gegen Bezahlung auszuliefern. Das System,
und insbesondere der Server 22, gewann hierzu aus einer
eingesungenen bzw. vorgespielten Melodie ein polyphones Musikstück mit Hauptmelodie,
Begleitung, Bass, Schlagzeug oder dergleichen. Insbesondere war
der Server des vorhergehenden Ausführungsbeispiels in der Lage,
eine komplette Generierung einer Begleitung aus einer monophonen Melodie,
wie z. B. Gesang, vorzunehmen.
-
Bezug
nehmend auf die vorhergehende Beschreibung wird noch darauf hingewiesen,
dass verschiedenste Veränderungen
an dem vorhergehenden beschriebenen System vorgenommen werden können. Beispielsweise
kann dem Benutzer neben der Auswahl eines Stils in Schritt 52 die
Gelegenheit gegeben werden, auch andere Parameter zu ändern, die
für die
Erzeugung der polyphonen Signalisierungsmelodie in Schritt 54 relevant
sind, wie z. B. die Auswahl eines Instruments für die Hauptmelodie, dass die
MIDI-Syntheseeinrichtung 110 zur Umsetzung der Tonart-
und Taktmaß-korrigierten
Notenfolge in die Hauptmelodie bzw. zur Instrumentierung verwendet.
Das Gleiche gilt für
den Schritt 60, bei dem dem Benutzer folglich ebenfalls
die Gelegenheit gegeben werden könnte,
das Instrument für
die Hauptmelodie zu ändern.
Ebenfalls wäre
es möglich, dem
Benutzer lediglich bei Schritt 60 die Möglichkeit der Umstellung des
Instruments für
die Hauptmelodie zu gewähren,
während
bei der ersten Generierung der polyphonen Signalisierungsmelodie
die MIDI-Syntheseeinrichtung zunächst
ein vorgabe- bzw. defaultmäßig eingestelltes
Instrument für
die gewählte
Stilinformation heranzieht.
-
Ferner
wird darauf hingewiesen, dass die vorliegende Erfindung nicht auf
das spezielle System in 1 beschränkt ist bzw. die Anordnung
der einzelnen Komponenten dieses Systems. Ferner wäre es nämlich möglich, dass
der Benutzer seine gewünschte
Melodie nicht durch ein Applet an seinem Computer aufnehmen lässt, sondern
beispielsweise via seinen Mobiltelefon 22 oder einen anderen
geeigneten Telefon an eine geeignete Aufnahmestation überträgt, die
sich in Kommunikation mit dem Server 22 befindet oder in
demselben sogar integriert ist. Die Eingabe der Zusatzinformationen
im Schritt 52, das Probehören in Schritt 56 und
die Änderung
von Stil- oder anderen Informationen, wie es im Vorhergehenden beschrieben
wurde, könnte
in diesem Fall ebenfalls über
das Mobilgerät 20 oder
das Telefon oder dergleichen durchgeführt werden, nämlich über die Tastatur
oder über
Spracherkennungseingabe. In diesem Fall müsste lediglich sichergestellt
werden, dass der Benutzer die probeweise an das Mobiltelefon 20 übersandte
Probeversion der polyphonen Signalisierungsmelodie nicht dauerhaft
verwenden kann, ohne dafür
zu bezahlen.
-
Ferner
wird darauf hingewiesen, dass die vorliegende Erfindung nicht auf
Signalisierungsmelodien begrenzt ist, und somit ebenfalls nicht
auf eine Anwendung, bei der die entstehende polyphone Melodie per
MMS an ein Mobilgerät übertragen
wird. Denkbar wäre
ferner eine Implementierung einer Vorrichtung zur Generierung einer
polyphonen Melodie aus einer eingesungenen, vorgespielten oder vorgesummten
Benutzermelodie als in sich abgeschlossenes Gerät, wie z. B. als Computer mit
entsprechender Software. Ein Benutzer könnte sich mit Hilfe einer entsprechenden
Software beispielsweise eine Einstiegsmelodie für sein Benutzerkonto auf seinem Computer
in polyphoner Form selbst erzeugen, die jedes Mal ertönt, sobald
der Benutzer an seinem Computer wieder sein Benutzerkonto bzw. seinen Account öffnet bzw.
betritt.
-
Ferner
wird darauf hingewiesen, dass der in den 2, 4 und 5 angegebene
exemplarische Funktionsablauf in seiner Funktionsabfolge auch geändert werden
kann. Ferner könnte
die Tonartbestimmung und die Tonartkorrektur durch die Einrichtung 104 auch
auf andere Weise durchgeführt werden
als auf die im Vorhergehenden beschriebene Weise. Dasselbe gilt
für die
sich an dieser Einrichtung 104 anschließende Erzeugung der Bitleitung und
Hauptmelodie.
-
Auch
die Rhythmus- und Auftaktbestimmung kann anders durchgeführt werden.
Insbesondere muss keine Taktmaßkorrektur
durchgeführt
werden. Die Begleitmuster könnten
in mehr als nur einer Tonart vorliegen. Ferner könnte für die verschiedenen Tongeschlechter
auch eine andere Gruppe von Akkordstufen als die vorgenannten Akkordstufen
zugelassen werden. Ferner könnten
sich die möglichen Akkordstufen
auch von Tonart zu Tonart nicht nur von Tongeschlecht zu Tongeschlecht ändern.
-
Im
folgenden wird ein weiteres Ausführungsbeispiel
für eine
mögliche
Implementierung des Servers 22 anhand der 7–13 beschrieben.
Insbesondere zeigt 7 ein weiteres Ausführungsbeispiel
für den
Aufbau des Servers oder, anders ausgedrückt, einer Vorrichtung zur
rhythmischen und harmonischen Aufbereitung und Neuinstrumentierung eines
eine Melodie darstellenden Audiosignals und zum Ergänzen der
entstehenden Melodie um eine geeignete Begleitung, um einen polyphonen
Klingelton zu erhalten.
-
Die
Vorrichtung von 7, 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, wie es bezugnehmend auf 1 beschrieben wurde.
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. 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 nachfolgenden 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,
nämlich
aus der Nachbesserungsbenutzeranforderung 228 (1).
Ein weiterer Eingang der Syntheseeinrichtung 312 ist dazu
ausgelegt, eine Stilinformation zu empfangen, nämlich entweder aus einer Nachbesserungsanforderung 228 (1)
zusammen mit der ID, angedeutet durch die gestrichelten Pfeile in 7,
oder durch eine Erstanforderung WAV/Info (1) zusammen
mit dem aufgenommenen Audiosignal, angedeutet durch den durchgezogenen
Pfeil in 7. Extraktionseinrichtung 304 und
Rhythmuseinrichtung 306 bilden zusammen eine Rhythmus-Aufbereitungseinrichtung 316.
-
Nachdem
im Vorhergehenden der Aufbau der Vorrichtung 300 von 7 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. Ihre Funktionalität
entspricht somit derjenigen der Extraktionseinrichtung 102 aus 3.
-
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
in, 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. In dieser Form kann auch
die Notenfolge 116 vorliegen.
-
In 8 ist
exemplarisch ein Beispiel für eine
Notenfolge veranschaulicht. Insbesondere zeigt 8 – 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.
-
9 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 7 bezugnehmend
auf 9 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 quantisiert
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 10 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. t1+1 – t,
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 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 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
Nach folgenote 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 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
Divisionsergebnis 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 LCD, 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
durchschnittlich 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 lokal optimales 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 durchschnittliches
NL berechnet und damit das aus Schritt 402 bestimmte NL
ersetzt. Um die Vorgehensweise näher
zu veranschaulichen, sei im folgenden auf 11 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
LCD, 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 No ten 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
entsprechenden Notenanfangsabständen
zwischen den Noten der Gruppe m und der jeweils nachfolgenden Note,
d. h. von IOI, 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 p = |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
Adaption, 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 11 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 je doch
im Schritt 410 der Überprüfung Stand,
so beendet die Einrichtung 330 ihre Arbeit, um, wie Bezug nehmend
auf 9 beschrieben, die Notenfolge 318 unter
zusätzlicher
Zuordnung jeder Note zu einer Längenklasse
LC als Notenlängenquantisierte
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 12 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. 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 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 13 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 8 Bezug
genommen. 8 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 8 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 8 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 8 sei
exemplarisch angenommen, dass durch die Einrichtung 332 das
Schlagintervall auf 23 NL festgelegt worden
sei, weshalb sich in 8 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 Durchschnitt 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 13 gezeigten Schritte ausgibt, stellt folglich
eine rhythmisch aufbereitete Notenfolge dar, die auch das Ausgangsergebnis 324 der
Rhythmuseinrichtung 306 von 7 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 entspricht
somit derjenigen der Einrichtung 104 von 3.
-
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 Wirkweise der Einrichtung 310 entspricht somit derjenigen
der Einrichtung 108 aus 3.
-
Die
Syntheseeinrichtung 312 benutzt zur Durchführung der
Synthese, d. h. zur künstlichen
Erzeugung der sich schließlich
ergebenden polyphonen Melodie, die Stilinformation. Ihre Funktionsweise entspricht
weitestgehend derjenigen der Einrichtung 110 aus 3.
Es kann jedoch vorgesehen sein, dass in der Syntheseeinrichtung 312 zu
jedem Musikstil mehrere Begleitmuster in unterschiedlichen Geschwindigkeiten
hinterlegt sind. Die Syntheseeinrichtung wählt dann unter diesen stets
dasjenige aus, das der Geschwindigkeit der Hauptmelodie am nächsten kommt,
wie sie durch die Notenfolge 700 repräsentiert wird, die sich – um bei
der exemplarischen Vorgabe eines Vier-Viertel-Taktes und einer Minimalgeschwindigkeit
von 70 bpm zu bleiben – zu 4·60 sek/TL
[bpm] berechnet und zwischen 70–140 bpm
liegt.
-
Die
Syntheseeinrichtung 312 instrumentiert also 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, wo
sie, wie es bezugnehmend auf 1 beschrieben,
zu dem Benutzer zum Probehören
in Nachrichten MIDI/ID zusammen mit der Bereitstellungs-ID zurückgesendet
wird, mit der die auch im Nachrichtenserver 28 gespeichert
wird.
-
Die
Tonarteinrichtung 308 ist ferner dazu ausgebildet, die
Notenfolge 700 im Melodiespeicher 314 unter der
Bereitstellungsidentifikationsnummer zu speichern. Ist der Benutzer
mit dem Ergebnis der polyphonen Melodie am Ausgang 304 unzufrieden, kann
somit. Wie im vorhergehenden beschrieben, die Bereitstellungsidentifikationsnummer
zusammen mit einer neuen Stilinformation im Rahmen der Nachbesserungsanforderung 228 (1)
neu in die Vorrichtung von 7 eingeben,
woraufhin der Melodiespeicher 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 Signalisierungsmelodie
am Ausgang 304 zusammenfügt. Im Unterschied zu dem Ausführungsbeispiel
von 3 wird die Stilinformation erst bei der Synthese
verwendet, um passende Beglei tungen auszusuchen, während sie
keinen Einfluss auf die Geschwindigkeit des Stückes hat. Die Zwischenspeicherung
kann deshalb vorliegend nach Tonartkorrektur und rythm,ischer Aufbereitung
stattfinden.
-
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 7–13 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 7 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 implementieren 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ängen bestimmungseinrichtung 332 bestimmten
Taktlänge über die
Zeitachse 320 (8) 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 12 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.
-
Ferner
wird darauf hingewiesen, dass die im Vorhergehenden beschriebene
Reihenfolge der Einrichtungen und/oder Schritte nicht immer festgelegt sein
muss. So kann beispielsweise in 7 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.
-
Explizit
wird noch mal darauf hingewiesen, dass abhängig von den Gegebenheiten
das erfindungsgemäße Schema
zur Generierung polyphoner Melodien 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 und/oder einem
entsprechenden Digital- oder Analogbaustein abläuft. In anderen Worten ausgedrückt kann
die Erfindung somit als ein Computerprogramm mit einem Programmcode
zur Durchführung
des Verfahrens realisiert werden, wenn das Computerprogramm auf
einem Computer abläuft.