DE60303993T2 - Musikstrukturerkennungsgerät und -verfahren - Google Patents

Musikstrukturerkennungsgerät und -verfahren Download PDF

Info

Publication number
DE60303993T2
DE60303993T2 DE60303993T DE60303993T DE60303993T2 DE 60303993 T2 DE60303993 T2 DE 60303993T2 DE 60303993 T DE60303993 T DE 60303993T DE 60303993 T DE60303993 T DE 60303993T DE 60303993 T2 DE60303993 T2 DE 60303993T2
Authority
DE
Germany
Prior art keywords
chord
music data
music
partial
change
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE60303993T
Other languages
English (en)
Other versions
DE60303993D1 (de
Inventor
Shinichi c/o Corporate R & D Laborat Gayama
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Pioneer Corp
Original Assignee
Pioneer Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Pioneer Corp filed Critical Pioneer Corp
Application granted granted Critical
Publication of DE60303993D1 publication Critical patent/DE60303993D1/de
Publication of DE60303993T2 publication Critical patent/DE60303993T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H1/00Details of electrophonic musical instruments
    • G10H1/36Accompaniment arrangements
    • G10H1/38Chord
    • G10H1/383Chord detection and/or recognition, e.g. for correction, or automatic bass generation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2210/00Aspects or methods of musical processing having intrinsic musical character, i.e. involving musical theory or musical parameters or relying on musical knowledge, as applied in electrophonic musical tools or instruments
    • G10H2210/031Musical analysis, i.e. isolation, extraction or identification of musical elements or musical parameters from a raw acoustic signal or from an encoded audio signal
    • G10H2210/061Musical analysis, i.e. isolation, extraction or identification of musical elements or musical parameters from a raw acoustic signal or from an encoded audio signal for extraction of musical phrases, isolation of musically relevant segments, e.g. musical thumbnail generation, or for temporal structure analysis of a musical piece, e.g. determination of the movement sequence of a musical work
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2210/00Aspects or methods of musical processing having intrinsic musical character, i.e. involving musical theory or musical parameters or relying on musical knowledge, as applied in electrophonic musical tools or instruments
    • G10H2210/571Chords; Chord sequences
    • G10H2210/576Chord progression

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Electrophonic Musical Instruments (AREA)
  • Auxiliary Devices For Music (AREA)

Description

  • HINTERGRUND DER ERFINDUNG
  • 1. Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft eine Vorrichtung und ein Verfahren zum Detektieren der Struktur eines Musikstücks entsprechend Daten, die chronologische Änderungen von Akkorden in dem Musikstück darstellen.
  • 2. Beschreibung des verwandten technischen Hintergrunds
  • Bei volkstümlicher Musik werden Phrasen (selbstständige Tonfolgen) im Allgemeinen ausgedrückt als Einleitung, Melodie A, Melodie B und Auflösung, und Melodie A, Melodie B, wobei Auflösungsteile in einer bestimmten Anzahl als Refrain wiederholt werden. Die Auflösungsphrase für einen so genannten erhöhten Teil eines Musikstücks wird insbesondere selektiv häufiger verwendet als die anderen Teile, wenn die Musik in einem Musikprogramm oder einer Werbenachricht enthalten ist, das bzw. die im Radio oder im Fernsehen ausgestrahlt wird.
  • Wenn die Phrasen, die den Auflösungsteil eines Musikstücks enthalten, wiederholt werden, kann mit anderen Worten die Gesamtstruktur des Musikstücks verstanden werden, so dass nicht nur der Auflösungsteil, sondern auch die anderen Wiederholungsphrasen einfach selektiv gespielt werden können. Das Patent US-A-6.057.502 lehrt, wie die Musikakkorde, die in einer musikalischen Aufführung enthalten sind, aus dem Audiosignal automatisch erkannt werden. Da es jedoch keine derartige Vorrichtung gibt, die die Gesamtstruktur von Musikstücken automatisch detek tiert, hat der Benutzer keine andere Wahl als die Musik tatsächlich anzuhören, um Phasen zu bestimmen, wie oben erwähnt wurde.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Es ist daher eine Aufgabe der Erfindung, eine Vorrichtung und ein Verfahren zu schaffen, die ermöglichen, die Struktur eines Musikstücks, das sich wiederholende Teile enthält, mit einem einfachen Aufbau in geeigneter Weise zu detektieren.
  • Eine Musikstrukturdetektionsvorrichtung gemäß der vorliegenden Erfindung, die eine Struktur eines Musikstücks entsprechend Akkordabfolgemusikdaten, die chronologische Änderungen von Akkorden in dem Musikstück darstellen, detektiert, umfasst: ein Teilmusikdatenerzeugungsmittel zum Erzeugen von Teilmusikdaten, wobei jedes eine vorbestimmte Anzahl von aufeinander folgenden Akkorden, beginnend von einer Position von jedem Akkord in den Akkordabfolgemusikdaten, umfasst; ein Vergleichsmittel zum Vergleichen von jedem der Teilmusikdatenstücke mit den Akkordabfolgemusikdaten von jeder der Startakkordpositionen in den Akkordabfolgemusikdaten aus auf der Grundlage eines Änderungsumfangs eines Grundtons eines Akkords bei jedem Akkordwechsel und einer Eigenschaft des Akkords nach dem Wechsel, wobei Ähnlichkeitsgrade für jedes der Teilmusikdatenstücke berechnet werden; ein Akkordpositionsdetektionsmittel zum Detektieren einer Position eines Akkords in den Akkordabfolgemusikdaten, bei der der berechnete Ähnlichkeitsgrad für jedes der Teilmusikdatenstücke einen Spitzenwert anzeigt, der größer als ein vorbestimmter Wert ist; und ein Ausgabemittel zum Berechnen der Anzahl an Malen, die der berechnete Ähnlichkeitsgrad einen Spitzenwert anzeigt, der größer als der vorbestimmte Wert ist, für alle Teilmusikdatenstücke für jede Akkordposition in den Akkordabfolgemusikdaten, wodurch eine Detektionsausgabe erzeugt wird, die die Struktur des Musikstücks entsprechend der berechneten Anzahl an Malen für jede Akkordposition darstellt.
  • Ein Verfahren gemäß der vorliegenden Erfindung, das die Struktur eines Musikstücks entsprechend Akkordabfolgemusikdaten, die chronologische Änderungen von Akkorden in dem Musikstück darstellen, umfasst die folgenden Schritte: Erzeugen von Teilmusikdatenstücken, wobei jedes eine vorbestimmte Anzahl von aufeinander folgenden Akkorden, beginnend von einer Position von jedem Akkord in den Akkordabfolgemusikdaten, umfasst; Vergleichen von jedem der Teilmusikdatenstücke mit den Akkordabfolgemusikdaten von jeder der Startakkordpositionen in den Akkordabfolgemusikdaten aus auf der Grundlage eines Änderungsumfangs eines Grundtons eines Akkords bei jedem Akkordwechsel und einer Eigenschaft des Akkords nach dem Wechsel, wobei Ähnlichkeitsgrade für jedes der Teilmusikdatenstücke berechnet werden; Detektieren einer Position eines Akkords in den Akkordabfolgemusikdaten, bei der der berechnete Ähnlichkeitsgrad für jedes der Teilmusikdatenstücke einen Spitzenwert anzeigt, der größer als ein vorbestimmter Wert ist; und Berechnen der Anzahl an Malen, die der berechnete Ähnlichkeitsgrad einen Spitzenwert anzeigt, der größer als der vorbestimmte Wert ist, für alle Teilmusikdatenstücke für jede Akkordposition in den Akkordabfolgemusikdaten, wodurch eine Detektionsausgabe erzeugt wird, die die Struktur des Musikstücks entsprechend der berechneten Anzahl an Malen für jede Akkordposition darstellt.
  • Ein Computerprogrammprodukt gemäß der vorliegenden Erfindung umfasst ein Programm zum Detektieren einer Struktur eines Musikstücks, wobei das Detektieren die folgenden Schritte umfasst: Erzeugen von Teilmusikdatenstücken, wobei jedes eine vorbestimmte Anzahl von aufeinan der folgenden Akkorden, beginnend von einer Position von jedem Akkord in den Akkordabfolgemusikdaten, umfasst; Vergleichen von jedem der Teilmusikdatenstücke mit den Akkordabfolgemusikdaten von jeder der Startakkordpositionen in den Akkordabfolgemusikdaten aus auf der Grundlage eines Änderungsumfangs eines Grundtons eines Akkords bei jedem Akkordwechsel und einer Eigenschaft des Akkords nach dem Wechsel, wobei Ähnlichkeitsgrade für jedes der Teilmusikdatenstücke berechnet werden; Detektieren einer Position eines Akkords in den Akkordabfolgemusikdaten, bei der der berechnete Ähnlichkeitsgrad für jedes der Teilmusikdatenstücke einen Spitzenwert anzeigt, der größer als ein vorbestimmter Wert ist; und Berechnen der Anzahl an Malen, die der berechnete Ähnlichkeitsgrad einen Spitzenwert anzeigt, der größer als der vorbestimmte Wert ist, für alle Teilmusikdatenstücke für jede Akkordposition in den Akkordabfolgemusikdaten, wodurch eine Detektionsausgabe erzeugt wird, die die Struktur des Musikstücks entsprechend der berechneten Anzahl an Malen für jede Akkordposition darstellt.
  • KURZBESCHREIBUNG DER ZEICHNUNG
  • 1 ist ein Blockschaltplan der Konfiguration eines Musikverarbeitungssystems, bei dem die Erfindung angewendet ist;
  • 2 ist ein Ablaufplan, der die Operation der Frequenzfehlerdetektion zeigt;
  • 3 ist eine Tabelle von Verhältnissen der Frequenzen der zwölf Töne und des Tons A, der eine Oktave höher ist, in Bezug auf den niedrigeren Ton A als 1,0;
  • 4 ist ein Ablaufplan, der einen Hauptprozess bei der Akkordanalyseoperation zeigt;
  • 5 ist eine Darstellung, die ein Beispiel der Intensitätspegel von Tonkomponenten in Banddaten zeigt;
  • 6 ist eine Darstellung, die ein weiteres Beispiel der Intensitätspegel von Tonkomponenten in Banddaten zeigt;
  • 7 zeigt, wie ein Akkord mit vier Tönen in einen Akkord mit drei Tönen transformiert wird;
  • 8 zeigt ein Aufzeichnungsformat in einem temporären Speicher;
  • 9A bis 9C zeigen ein Verfahren zum Ausdrücken von Grundnoten von Akkorden, ihrer Eigenschaften und eines Akkordkandidaten;
  • 10 ist ein Ablaufplan, der einen Nachverarbeitungsprozess bei der Akkordanalyseoperation zeigt;
  • 11 zeigt chronologische Änderungen in ersten und zweiten Akkordkandidaten vor einem Glättungsprozess;
  • 12 zeigt chronologische Änderungen in ersten und zweiten Akkordkandidaten nach dem Glättungsprozess;
  • 13 zeigt chronologische Änderungen in ersten und zweiten Akkordkandidaten nach einem Austauschprozess;
  • 14A bis 14D zeigen, wie Akkordabfolgemusikdaten erzeugt werden und ihr Format;
  • 15 ist ein Ablaufplan, der eine Musikstrukturdetektionsoperation zeigt;
  • 16 ist ein Diagramm, das einen Akkorddifferenzwert in einem Akkordwechsel und die Eigenschaft nach dem Wechsel zeigt;
  • 17 zeigt die Beziehung zwischen Akkordabfolgemusikdaten, die temporäre Daten enthalten, und Teilmusikdaten;
  • 18A bis 18C zeigen die Beziehung zwischen den C-ten Akkordabfolgemusikdaten und Akkordabfolgemusikdaten für ein Suchobjekt, Änderungen eines Korrelationskoeffizienten COR(t) Zeitperioden, für die Akkorde aufrechterhalten werden, Sprungprozesse und einen Prozess der verwandten Tonart;
  • 19A bis 19F zeigen Änderungen des Korrelationskoeffizienten COR(c, t) entsprechend einer Phrase, die in Teilmusikdaten enthalten ist, und eine Reihe von Phrasen, die in Akkordabfolgemusikdaten enthalten sind;
  • 20 zeigt Spitzenwerte PK(t) für ein Musikstück, das die Phrasenreihe von 19A bis 19F aufweist, und eine Position COR_PEAK(c, t), bei der ein Spitzenwert erreicht wird;
  • 21 zeigt das Format von Musikstrukturdaten;
  • 22 zeigt ein Beispiel der Anzeige an einer Anzeigevorrichtung; und
  • 23 ist ein Blockschaltplan der Konfiguration eines Musikverarbeitungssystems als weitere Ausführungsform der Erfindung.
  • GENAUE BESCHREIBUNG DER ERFINDUNG
  • Nachfolgend werden Ausführungsformen der vorliegenden Erfindung unter Bezugnahme auf die Zeichnung genau beschrieben.
  • 1 ist ein Blockschaltplan der Konfiguration eines Musikbearbeitungssystems, bei dem die Erfindung angewendet ist. Das Musikbearbeitungssystem enthält eine Musikeingabevorrichtung 1, eine Eingabeoperationsvorrichtung 2, eine Akkordanalysevorrichtung 3, Datenspeichervorrichtungen 4 und 5, einen temporären Speicher 6, eine Akkordabfolgevergleichsvorrichtung 7, eine Wiederholungsstrukturdetektionsvorrichtung 8, eine Anzeigevorrichtung 9, eine Musikwiedergabevorrichtung 10, einen Digital/Analog-Umsetzer 11 und einen Lautsprecher 12.
  • Die Musikeingabevorrichtung 1 ist z. B. eine CD-Abspieleinrichtung, die mit der Akkordanalysevorrichtung 3 und der Datenspeichervorrichtung 5 verbunden ist, um ein digitalisiertes Audiosignal (wie etwa PCM-Daten) wiederzugeben. Die Eingabeoperationsvorrichtung 2 ist eine Vorrichtung für einen Benutzer, die betätigt wird, um Daten oder Befehle in das System einzugeben. Der Ausgang der Eingabeoperationsvorrichtung 2 ist mit der Akkordanalysevorrichtung 3, der Akkordabfolgevergleichsvorrichtung 7, der Wiederholungsstrukturdetektionsvorrichtung 8 und der Musikwiedergabevorrichtung 10 verbunden. Die Datenspeichervorrichtung 4 speichert die Musikdaten (PCM-Daten), die von der Musikeingabevorrichtung 1 geliefert werden, als Dateien.
  • Die Akkordanalysevorrichtung 3 analysiert Akkorde durch eine Akkordanalyseoperation, die beschrieben wird. Die Akkorde der Musikdaten, die durch die Akkordanalysevorrichtung 3 analysiert werden, werden als erste und zweite Akkordkandidaten in dem temporären Speicher 6 gespeichert. Die Datenspeichervorrichtung 5 speichert Akkordabfolgemusikdaten, die durch die Akkordanalysevorrichtung 3 analysiert werden, als eine Datei für jedes Musikstück.
  • Die Akkordabfolgevergleichsvorrichtung 7 vergleicht die Akkordabfolgemusikdaten, die in der Datenspeichervorrichtung 5 gespeichert sind, mit einem Teilmusikdatenstück, das ein Teil der Akkordabfolgemusikdaten bildet, um Ähnlichkeitsgrade zu berechnen. Die Wiederholungsstrukturdetektionsvorrichtung 8 detektiert einen Wiederholungsteil in dem Musikstück unter Verwendung eines Ergebnisses des Vergleichs durch die Akkordabfolgevergleichsvorrichtung 7.
  • Die Anzeigevorrichtung 9 zeigt die Struktur des Musikstücks einschließlich seines Wiederholungsteils an, die durch die Wiederholungsstrukturdetektionsvorrichtung 8 detektiert wurde.
  • Die Musikwiedergabevorrichtung 10 liest die Musikdaten für den Wiederholungsteil, die durch die Wiederholungsstrukturdetektionsvorrichtung 8 detektiert wurden, aus der Datenspeichervorrichtung 4 aus und gibt die Daten für eine Ausgabe als ein digitales Audiosignal wieder. Der Digital/Analog-Umsetzer 11 setzt das digitale Audiosignal, das durch die Musikwiedergabevorrichtung 10 wiedergegeben wird, in ein analoges Audiosignal zur Lieferung an den Lautsprecher 12 um.
  • Die Akkordanalysevorrichtung 3, die Akkordabfolgevergleichsvorrichtung 7, die Wiederholungsstrukturdetektionsvorrichtung 8 und die Musikwie dergabevorrichtung 10 werden in Reaktion auf Befehle von der Eingabeoperationsvorrichtung 2 betrieben.
  • Nun wird die Funktionsweise des Musikbearbeitungssystems, das den angegebenen Aufbau besitzt, beschrieben.
  • Dabei wird angenommen, dass ein digitales Audiosignal, das einen Musikklang darstellt, von der Musikeingabevorrichtung 1 in die Akkordanalysevorrichtung 3 eingegeben wird.
  • Die Akkordanalyseoperation enthält einen Vorverarbeitungsprozess, einen Hauptprozess und einen Nachverarbeitungsprozess. Die Akkordanalysevorrichtung 3 für als einen Vorverarbeitungsprozess eine Frequenzfehlerdetektionsoperation aus.
  • Wie in 2 gezeigt ist, werden bei der Frequenzfehlerdetektionsoperation eine Zeitvariable T und Banddaten F(N) jeweils auf null initialisiert und eine Variable N wird z. B. auf einen Wert im Bereich von –3 bis 3 initialisiert (Schritt S1). Ein digitales Eingangssignal wird in Intervallen von 0,2 s einer Frequenzumsetzung durch Fourier-Transformation unterzogen, wobei als Ergebnis der Frequenzumsetzung Frequenzinformationen f(T) erhalten werden (Schritt S2).
  • Die aktuellen Informationen f(T), frühere Informationen f(T – 1) und Informationen f(T – 2), die vor zwei Zeiteinheiten erhalten wurden, werden verwendet, um einen Prozess des gleitenden Mittelwertes auszuführen (Schritt S3). Bei dem Prozess des gleitenden Mittelwertes werden Frequenzinformationen, die bei zwei in der Vergangenheit liegenden Operationen erhalten wurden, unter der Annahme verwendet, dass sich ein Ak kord innerhalb von 0,6 s kaum ändert. Der Prozess des gleitenden Mittelwertes wird durch den folgenden Ausdruck ausgeführt: F(T) = (f(T) + f(T – 1)/2,0 + f(T – 2)/3,0)/3,0 (1)
  • Nach dem Schritt S3 wird die Variable N auf –3 gesetzt (Schritt S4) und es wird festgestellt, ob die Variable N kleiner als 4 ist (Schritt S5). Falls n < 4, werden nach dem Prozess des gleitenden Mittelwertes Frequenzkomponenten f1(T) bis f5(T) aus den Frequenzinformationen f(T) extrahiert (Schritte S6 bis S10). Die Frequenzkomponenten f1(T) bis f5(T) liegen in temperierten Zwölftonskalen für fünf Oktaven basierend auf 110,0 + 2 × N Hz als Grundfrequenz. Die zwölf Töne sind A, A#, B, C, C#, D, D#, E, F, F#, G und G#. 3 zeigt Frequenzverhältnisse zwischen den zwölf Tönen und dem um eine Oktave höheren Ton A in Bezug auf den unteren Ton A als 1,0. Der Ton A liegt bei 110,0 + 2 × N Hz für f1(T) im Schritt S6, bei 2 × (110,0 + 2 × N) Hz für f2(T) im Schritt S7, bei 4 × (110,0 + 2 × N) Hz für f3(T) im Schritt S8, bei 8 × (110,0 + 2 × N) Hz für f4(T) im Schritt S9 und bei 16 × (110,0 + 2 × N) Hz für f5(T) im Schritt S10.
  • Nach den Schritten S6 bis S10 werden die Frequenzkomponenten f1(T) bis f5(T) in Banddaten F'(T) für eine Oktave umgesetzt (Schritt S11). Die Banddaten F'(T) werden in der folgenden Weise ausgedrückt: F'(T) = f1(T) × 5 + f2(T) × 4 + f3(T) × 3 + f4(T) × 2 + f5(T) (5)
  • Die Frequenzkomponenten f1(T) bis f5(T) werden im Einzelnen jeweils gewichtet und dann zusammen addiert. Die Banddaten F'(T) für eine Oktave werden zu den Banddaten F(N) addiert (Schritt S12). Anschließend wird zur Variablen N eins addiert (Schritt S13) und der Schritt S5 wird erneut ausgeführt.
  • Die Operationen in den Schritten S6 bis S13 werden wiederholt, solange im Schritt S5 N < 4 gilt, mit anderen Worten, solange N im Bereich von –3 bis +3 liegt. Demzufolge ist die Tonkomponente F(N) eine Frequenzkomponente für eine Oktave, die Tonintervallfehler im Bereich von –3 bis +3 enthält.
  • Wenn im Schritt S5 N ≥ 4, wird festgestellt, ob die Variable T kleiner als ein vorbestimmter Wert M ist (Schritt S14). Wenn T < M, wird zu der Variable T eins addiert (Schritt S15) und der Schritt S2 wird erneut ausgeführt. Durch M Frequenzumsetzungsoperationen werden Banddaten F(N) für jede Variable N für Frequenzinformationen f(T) erzeugt.
  • Wenn T ≥ M im Schritt S14, wird in den Banddaten F(N) für eine Oktave für jede Variable N F(N), das die Frequenzkomponenten aufweist, deren Gesamtwert maximal ist, detektiert und N wird in dem detektierten Wert F(N) als ein Fehlerwert X gesetzt (Schritt S16).
  • Wenn eine bestimmte Differenz zwischen den Tonintervallen eines gesamten Musikklangs, wie etwa ein Wiedergabeklang eines Orchesters, vorhanden ist, können die Tonintervalle ausgeglichen werden, indem der Fehlerwert X durch den Vorverarbeitungsprozess erhalten wird, wobei der folgende Hauptprozess zum Analysieren von Akkorden entsprechend ausgeführt werden kann.
  • Nachdem die Operation zum Detektieren von Frequenzfehlern in dem Vorverarbeitungsprozess beendet ist, wird der Hauptprozess zum Analysieren von Akkorden ausgeführt. Es wird angemerkt, dass dann, wenn der Feh lerwert X im Voraus zur Verfügung steht oder der Fehler so unbedeutend ist, dass er ignoriert werden kann, der Vorverarbeitungsprozess weggelassen werden kann. In dem Hauptprozess wird eine Akkordanalyse für ein Musikstück vom Anfang bis zum Ende ausgeführt und deswegen wird ein digitales Eingangssignal vom Startteil des Musikstücks an die Akkordanalysevorrichtung 3 geliefert.
  • Wie in 4 gezeigt ist, wird in dem Hauptprozess in Intervallen von 0,2 s an dem digitalen Eingangssignal eine Frequenzumsetzung durch Fourier-Transformation ausgeführt und Frequenzinformationen f(T) werden erhalten (Schritt S21). Dieser Schritt S21 entspricht dem Umsetzungsmittel. Die aktuellen Informationen f(T), die vorherigen Informationen f(T – 1) und die Informationen f(T – 2), die vor zwei Zeiteinheiten erhalten wurden, werden verwendet, um einen Prozess des gleitenden Mittelwertes auszuführen (Schritt S22). Die Schritte S21 und S22 werden in der gleichen Weise wie die oben beschriebenen Schritte S2 und S3 ausgeführt.
  • Nach dem Schritt S22 werden nach dem Prozess des gleitenden Mittelwertes die Frequenzkomponenten f1(T) bis f5(T) aus den Frequenzinformationen f(T) extrahiert (Schritte S23 bis S27). Ähnlich wie die oben beschriebenen Schritte S6 bis S10 liegen die Frequenzkomponenten f1(T) bis f5(T) in den temperierten Zwölftonskalen für fünf Oktaven basierend auf 110,0 + 2 × N Hz als Grundfrequenz. Die zwölf Töne sind A, A#, B, C, C#, D, D#, E, F, F#, G und G#. Der Ton A liegt bei 110,0 + 2 × N Hz für f1(T) im Schritt S23, bei 2 × (110,0 + 2 × N) Hz für f2(T) im Schritt S24, bei 4 × (110,0 + 2 × N) Hz für f3(T) im Schritt S25, bei 8 × (110,0 + 2 × N) Hz für f4(T) im Schritt S26 und bei 16 × (110,0 + 2 × N) Hz für f5(T) im Schritt S27. Dabei ist N gleich X, das im Schritt S16 gesetzt wird.
  • Nach den Schritten S23 bis S27 werden die Frequenzkomponenten f1(T) bis f5(T) in Banddaten F'(T) für eine Oktave umgesetzt (Schritt S28). Die Operation im Schritt S28 wird unter Verwendung des Ausdrucks (2) in der gleichen Weise der oben beschriebene Schritt S11 ausgeführt. Die Banddaten F'(T) enthalten Tonkomponenten. Diese Schritte S23 bis S28 entsprechen dem Extraktionsmittel.
  • Nach dem Schritt S28 werden die sechs Töne, die unter den Tonkomponenten in den Banddaten F'(T) die größten Intensitätspegel besitzen, als Kandidaten ausgewählt (Schritt S29) und es werden zwei Akkorde M1 und M2 aus den sechs Kandidaten erzeugt (Schritt S30). Einer der sechs Kandidatentöne wird als ein Grundton verwendet, um einen Akkord mit drei Tönen zu erzeugen. Die Pegel der drei Töne, die jeden Akkord bilden, werden addiert. Der Akkord, dessen Additionsergebnis am größten ist, wird als der erste Akkordkandidat M1 festgelegt, und der Akkord mit dem zweitgrößten Additionsergebnis wird als der zweite Akkordkandidat M2 festgelegt.
  • Wenn die Tonkomponenten der Banddaten F'(T) für zwölf Töne Intensitätspegel wie in 5 aufweisen, werden im Schritt S29 sechs Töne, A, E, C, G, B und D ausgewählt. Dreiklänge, die jeweils drei Töne aus diesen sechs Tönen A, E, C, G, B und D aufweisen, sind der Akkord Am (aus den Tönen A, C und E), der Akkord C (aus den Tönen C, E und G), der Akkord Ein (aus den Tönen E, B und G), der Akkord G (aus den Tönen G, B und D) ... Die Gesamtintensitätspegel von Akkord Am (A, C, E), Akkord C (C, E, G), Akkord Ein (E, B, G) und Akkord G (G, B, D) sind 12, 9, 7 bzw. 4. Demzufolge wird im Schritt S30 der Akkord Am, dessen Gesamtintensitätspegel mit dem Wert 12 der größte ist, als der erste Akkordkandidat M1 festgelegt. Der Akkord C, dessen Gesamtintensitätspegel mit dem Wert 7 der zweitgrößte ist, wird als der zweite Akkordkandidat M2 festgelegt.
  • Wenn die Tonkomponenten in den Banddaten F'(T) für die zwölf Töne Intensitätspegel wie in 6 aufweisen, werden im Schritt S29 sechs Töne, C, G, A, E, B und D ausgewählt. Dreiklänge, die aus drei Tönen erzeugt werden, die aus diesen sechs Tönen C, G, A, E, H und D ausgewählt wurden, sind der Akkord C (aus den Tönen C, E und G), der Akkord Am (aus den Tönen A, C und E), der Akkord Ein (aus den Tönen E, B und G), der Akkord G (aus den Tönen G, B und D)... Die Gesamtintensitätspegel von Akkord C (C, E, G), Akkord Am (A, C, E), Akkord Ein (E, B, G), Akkord G (G, B, D) sind 11, 10, 7 bzw. 6. Demzufolge wird im Schritt S30 der Akkord C, dessen Gesamtintensitätspegel mit dem Wert 11 der größte ist, als der erste Akkordkandidat M1 festgelegt. Der Akkord Am, dessen Gesamtintensitätspegel mit dem Wert 10 der zweitgrößte ist, wird als der zweite Akkordkandidat M2 festgelegt.
  • Die Anzahl von Tönen, die einen Akkord bilden, muss nicht drei betragen und es gibt z. B. einen Akkord mit vier Tönen, wie etwa die Septime und die verminderte Septime. Akkorde mit vier Tönen werden in zwei oder mehr Akkorde unterteilt, die jeweils drei Töne haben, wie in 7 gezeigt ist. Deswegen können ähnlich wie bei den obigen Akkorden aus drei Tönen entsprechend den Intensitätspegeln der Tonkomponenten in den Banddaten F'(T) zwei Akkordkandidaten für diese Akkorde aus vier Tönen festgelegt werden.
  • Nach dem Schritt S30 wird festgestellt, ob so viele Akkorde vorhanden sind, wie die im Schritt S30 festgelegte Zahl angibt (Schritt S31). Wenn die Differenz des Intensitätspegels nicht ausreichend groß ist, um im Schritt S30 wenigstens drei Töne auszuwählen, wird kein Kandidatenakkord festgelegt. Deswegen wird der Schritt S31 ausgeführt. Wenn die Anzahl von Akkordkandidaten > 0, wird festgestellt, ob die Anzahl von Akkordkandidaten größer eins ist (Schritt S32).
  • Wenn im Schritt S31 festgestellt wird, dass die Anzahl von Akkordkandidaten = 0, werden die Akkordkandidaten M1 und M2, die in dem vorherigen Hauptprozess bei T – 1 (vor etwa 0,2 s) festgelegt wurden, als die aktuellen Akkordkandidaten M1 und M2 festgelegt (Schritt S33). Wenn die Anzahl von Akkordkandidaten im Schritt S32 = 1, bedeutet das, dass im aktuellen Schritt S30 lediglich der erste Kandidat M1 festgelegt wurde und deswegen wird der zweite Akkordkandidat M2 als der gleiche Akkord wie der erste Akkordkandidat M1 festgelegt (Schritt S34). Diese Schritte S29 bis S34 entsprechen dem Akkordkandidatendetektionsmittel.
  • Wenn im Schritt S32 festgestellt wird, dass die Anzahl von Akkordkandidaten > 1, bedeutet das, dass sowohl der erste als auch der zweite Akkordkandidat M1 und M2 in dem aktuellen Schritt S30 festgelegt wurden und deswegen wird die Zeit, der erste und der zweite Akkordkandidat M1 und M2 in dem temporären Speicher 6 gespeichert (Schritt S35). Die Zeit, der erste und der zweite Akkordkandidat M1 und M2 werden als ein Satz in dem temporären Speicher 6 gespeichert, wie in 8 gezeigt ist. Die Zeit entspricht der Anzahl, wie oft der Hauptprozess ausgeführt wird und wird durch T dargestellt, das jeweils um 0,2 s inkrementiert wird. Der erste und der zweite Akkordkandidat M1 und M2 werden in der zeitlichen Reihenfolge von T gespeichert.
  • Im Einzelnen wird eine Kombination aus einem grundlegenden Ton (Grundton) und seiner Eigenschaft verwendet, um jeden Akkordkandidaten als 1 Byte in dem temporären Speicher 6 zu speichern, wie in 8 gezeigt ist. Der Grundton gibt einen der temperierten zwölf Töne an und die Eigenschaft gibt einen Typ des Akkord an, wie etwa dur {4, 3}, moll {3, 4}, Septime-Kandidat {4, 6} und Kandidat der verminderten Septime (dim7) {3, 3}. Die Zahlen in den Klammern {} geben die Differenz zwischen den drei Tönen an, wenn ein Halbton 1 ist. Ein typischer Kandidat der Septime ist {4, 3, 3} und ein typischer Kandidat der verminderten Septime (dim7) ist {3, 3, 3}, wobei der oben genannte Ausdruck verwendet wird, um sie mit drei Tönen auszudrücken.
  • Wie in 9A gezeigt ist, werden die 12 Grundtöne jeweils mit einer 16 Bit-Basis ausgedrückt (in hexadezimaler Schreibweise). Wie in 9B gezeigt ist, wird jede Eigenschaft, die einen Akkordtyp angibt, mit einer 16 Bit-Basis ausgedrückt (in hexadezimaler Schreibweise). Die vier niederwertigen Bits eines Grundtons und die vier niederwertigen Bits seiner Eigenschaft werden in dieser Reihenfolge kombiniert und als ein Akkordkandidat in der Form von acht Bits (1 Byte) verwendet, wie in 9C gezeigt ist.
  • Der Schritt S35 wird außerdem ausgeführt, unmittelbar nachdem der Schritt S33 oder der Schritt S34 ausgeführt wurden.
  • Nachdem der Schritt S35 ausgeführt wurde, wird festgestellt, ob die Musik beendet ist (Schritt S36). Wenn z. B. kein analoges Eingangsaudiosignal mehr vorhanden ist oder wenn eine Eingabeoperation vorhanden ist, die das Ende der Musik von der Eingabeoperationsvorrichtung 2 angibt, wird festgestellt, dass die Musik beendet ist. Demzufolge endet der Hauptprozess.
  • Bis das Ende der Musik festgestellt wird, wird zu der Variablen T eins addiert (Schritt S37) und der Schritt S21 wird erneut ausgeführt. Der Schritt S21 wird in Intervallen von 0,2 s ausgeführt, mit anderen Worten, der Prozess wird 0,2 s nach der vorherigen Ausführung des Prozesses erneut ausgeführt.
  • Wie in 10 gezeigt ist, werden in dem Nachbearbeitungsprozess alle ersten und zweiten Akkordkandidaten M1(0) bis M1(R) und M2(0) bis M2(R) aus dem temporären Speicher 6 ausgelesen (Schritt S41). Null stellt den Startpunkt dar und der erste und der zweite Akkordkandidat am Startpunkt sind M1(0) bzw. M2(0). Der Buchstabe R stellt den Endpunkt dar und der erste und der zweite Akkordkandidat am Endpunkt sind M1(R) bzw. M2(R). Diese ersten Akkordkandidaten M1(0) bis M1(R) und die zweiten Akkordkandidaten M2(0) bis M2(R), die auf diese Weise ausgelesen werden, werden einem Glätten unterzogen (Schritt S42). Das Glätten wird ausgeführt, um Fehler zu löschen, die durch Rauschen erzeugt werden, das in den Akkordkandidaten eingeführt wird, wenn die Kandidaten unabhängig von Wechselstellen der Akkorde in den Intervallen von 0,2 s detektiert werden. Als ein spezielles Verfahren zum Glätten wird festgestellt, ob eine Relation, die durch M1(t – 1) ≠ M1(t) und M1(t) ≠ M1(t + 1) dargestellt wird, für drei aufeinanderfolgende erste Akkordkandidaten M1(t – 1), M1(t) und M1(t + 1) gilt. Wenn die Relation gilt, wird M1(t) an M1(t + 1) angeglichen. Der Bestimmungsprozess wird für jeden der ersten Akkordkandidaten ausgeführt. Das Glätten wird in der gleichen Weise an den zweiten Akkordkandidaten ausgeführt. Es wird angemerkt, dass anstelle der Angleichung von M1(t) an M1(t + 1) M1(t + 1) an M1(t) angeglichen werden kann.
  • Nach dem Glätten werden der erste und der zweite Akkordkandidat vertauscht (Schritt S43). Es besteht eine geringe Wahrscheinlichkeit, dass sich ein Akkord in einer kurzen Periode von 0,6 s ändert. Die Frequenzcharakteristiken der Signaleingangsstufe und Rauschen zum Zeitpunkt der Signaleingabe können jedoch bewirken, dass die Frequenz von jeder Tonkomponente in den Banddaten F'(T) schwankt, so dass der erste und der zweite Akkordkandidat innerhalb von 0,6 s vertauscht werden können. Der Schritt S43 wird als eine Gegenmaßnahme in Bezug auf diese Möglichkeit ausgeführt. Als ein spezielles Verfahren zum Vertauschen des ersten und des zweiten Akkordkandidaten wird die folgende Feststellung für fünf aufeinanderfolgende erste Akkordkandidaten M1(t – 2), M1(t – 1), M1(t), M1(t + 1) und M1(t + 2) und fünf aufeinanderfolgende zweite Akkordkandidaten M2(t – 2), M2(t – 1), M2(t), M2(t + 1) und M2(t + 2), die jeweils den ersten Kandidaten entsprechen, getroffen. Im Einzelnen wird festgestellt, ob eine Relation, die durch M1(t – 2) = M1(t + 2), M2(t – 2) = M2(t + 2), M1(t – 1) = M1(t) = M1(t + 1) = M2(t – 2) und M2(t – 1) = M2(t) = M2(t + 1) = M1(t – 2) dargestellt wird, gilt. Wenn die Relation gilt, werden M1(t – 1) = M1(t) = M1(t + 1) = M2(t – 2) und M2(t – 1) = M2(t) = M2(t + 1) = M1(t – 2) ermittelt und die Akkorde werden zwischen M1(t – 2) und M2(t – 2) vertauscht. Es wird angemerkt, dass Akkorde anstelle der Vertauschung zwischen M1(t – 2) und M2(t – 2) zwischen M1(t + 2) und M2(t + 2) vertauscht werden können. Es wird außerdem festgestellt, ob eine Relation, die durch M1(t – 2) = M1(t + 1), M2(t – 2) = M2(t + 1), M1(t – 1) = M(t) = M1(t + 1) = M2(t – 2) und M2(t – 1) = M2(t) = M2(t + 1) = M1(t – 2) dargestellt wird, gilt. Wenn die Relation gilt, werden M1(t – 1) = M(t) = M1(t – 2) und M2(t – 1) = M2(t) = M2(t – 2) ermittelt und die Akkorde werden zwischen M1(t – 2) und M2(t – 2) vertauscht. Die Akkorde können anstelle der Vertauschung zwischen M1(t – 2) und M2 (t – 2) zwischen M1(t + 1) und M2(t + 1) vertauscht werden.
  • Die ersten Akkordkandidaten M1(0) bis M1(R) und die zweiten Akkordkandidaten M2(0) bis M2(R), die im Schritt S41 ausgelesen werden, ändern sich z. B. zeitlich in der in 11 gezeigten Weise, wobei die Mittelwertbildung im Schritt S42 ausgeführt wird, um ein korrigiertes Ergebnis zu erhalten, wie im Schritt 12 gezeigt ist. Außerdem korrigiert der Akkordaustausch im Schritt S43 Schwankungen der ersten und der zweiten Akkordkandidaten, wie in 13 gezeigt ist. Es wird angemerkt, dass die 11 bis 13 Änderungen der Akkorde durch eine Liniendarstellung zeigen, in der Positionen an der vertikalen Linie den Arten von Akkorden entsprechen.
  • Der Kandidat M1(t) an einer Akkordwechselstelle t der ersten Akkordkandidaten M1(0) bis M1(R) und der Kandidat M2(t) an einer Akkordwechselstelle t der zweiten Akkordkandidaten M2(0) bis M2(R) werden nach dem Akkordwechsel im Schritt S43 detektiert (Schritt S44) und die Detektionsstelle t (4 Bytes) und der Akkord (4 Bytes) werden für jeden der ersten und zweiten Akkordkandidaten in der Datenspeichervorrichtung 5 gespeichert (Schritt S45). Daten für ein Musikstück, die im Schritt S45 gespeichert werden, sind Akkordabfolgemusikdaten. Diese Schritte S41 bis S45 entsprechen dem Glättungsmittel.
  • Wenn die ersten und die zweiten Akkordkandidaten M1(0) bis M1(R) und M2(0) bis M2(R) nach dem Vertauschen der Akkorde im Schritt S43 zeitlich schwanken, wie in 14 gezeigt ist, werden die Zeit und die Akkorde an Wechselstellen als Daten extrahiert. 14B zeigt den Inhalt der Daten an Wechselstellen zwischen den ersten Akkordkandidaten F, G, D, Bb (b) und F, die als hexadezimale Daten 0x08, 0x0A, 0x05, 0x01 bzw. 0x08 ausgedrückt werden. Die Wechselstellen t sind T1(0), T1(1), T1(2), T1(3) und T1(4). 14C zeigt Dateninhalte an Wechselstellen zwischen den zweiten Akkordkandidaten B, Bb, F#m, Bb und C, die als hexadezimale Daten 0x03, 0x01, 0x29, 0x01 bzw. 0x03 ausgedrückt werden. Die Wechselstellen t sind T2(0), T2(1), T2(2), T2(3) und T2(4). Die in den 14b und 14C gezeigten Dateninhalte werden zusammen mit Identifikationsin formationen des Musikstücks im Schritt S45 in der Datenspeichervorrichtung 5 als eine Datei in der in 14D gezeigten Form gespeichert.
  • Die oben beschriebene Akkordanalyseoperation wird für Audiosignale, die Klänge von unterschiedlichen Musikstücken darstellen, wiederholt ausgeführt, so dass Akkordabfolgemusikdaten in der Datenspeichervorrichtung 5 als Dateien für mehrere Musikstücke gespeichert werden. Es wird angemerkt, dass Musikdaten von PCM-Signalen, die den Akkordabfolgemusikdaten in der Datenspeichervorrichtung 5 entsprechen, in der Datenspeichervorrichtung 4 gespeichert werden.
  • Ein erster Akkordkandidat an einer Akkordwechselstelle von den ersten Akkordkandidaten und ein zweiter Akkordkandidat an einer Akkordwechselstelle von den zweiten Akkordkandidaten werden im Schritt S44 detektiert, wobei sie endgültige Akkordabfolgemusikdaten sind. Deswegen kann die Kapazität pro Musikstück verringert werden, selbst im Vergleich zu Kompressionsdaten, wie etwa MP3-formatierte Daten, und Daten für alle Musikstücke können schnell verarbeitet werden.
  • Die Akkordabfolgemusikdaten, die in die Datenspeichervorrichtung 5 geschrieben wurden, sind Akkorddaten, die sich vorübergehend in Synchronisation mit der aktuellen Musik befinden. Wenn die Akkorde durch die Musikwiedergabevorrichtung 10 unter Verwendung von lediglich des ersten Akkordkandidaten oder des Ausgangs der logischen Summe der ersten und zweiten Akkordkandidaten tatsächlich wiedergegeben werden, kann deswegen die Begleitung zur Musik gespielt werden.
  • Nun wird die Operation zum Detektieren der Struktur eines Musikstücks, das in der Datenspeichervorrichtung 5 als Akkordabfolgemusikdaten gespeichert ist, beschrieben. Die Musikstrukturdetektionsoperation wird durch die Akkordabfolgevergleichsvorrichtung 7 und die Wiederholungsstrukturdetektionsvorrichtung 8 ausgeführt.
  • Wie in 15 gezeigt ist, werden bei der Musikstrukturdetektionsoperation erste Akkordkandidaten M1(0) bis M1(a – 1) und zweite Akkordkandidaten M2(0) bis M2(b – 1) für ein Musikstück, dessen Struktur detektiert werden soll, aus der Datenspeichervorrichtung 5, die als Speichermittel dient, ausgelesen (Schritt S51). Das Musikstück, dessen Struktur detektiert werden soll, wird z. B. durch Betätigung der Eingabeoperationsvorrichtung 2 bezeichnet. Der Buchstabe a stellt die Gesamtzahl der ersten Akkordkandidaten dar und b stellt die Gesamtzahl der zweiten Akkordkandidaten dar. Die ersten Akkordkandidaten M1(a) bis M1(a + K – 1) und die zweiten Akkordkandidaten M2(b) bis M2(b + K – 1), die jeweils eine Anzahl K haben, werden als temporäre Daten bereitgestellt (Schritt S52). Wenn dabei a < b, ist die Gesamtzahl P der ersten und zweiten Akkordkandidaten in den temporären Daten jeweils gleich a, und wenn a ≥ b, ist die Gesamtzahl von Akkorden gleich b. Die temporären Daten werden nach den ersten Akkordkandidaten M1(0) bis M1(a – 1) und den zweiten Akkordkandidaten M2(0) bis M2(b – 1) angefügt.
  • Erste Akkorddifferenzwerte MR1(0) bis MR1(P – 2) werden für die ausgelesenen ersten Akkordkandidaten M1(0) bis M1(P – 1) berechnet (Schritt S53). Die ersten Akkorddifferenzwerte werden berechnet als MR1(0) = M1(1) – M1(0), MR1(1) = M1(2) – M1(1), ... und MR1(P – 2) = M1(P – 1) – M1(P – 2). Bei der Berechnung wird festgestellt, ob die ersten Akkorddifferenzwerte MR1(0) bis MR1(P – 2) jeweils kleiner als null sind und zu den ersten Akkorddifferenzwerten, die kleiner als null sind, wird 12 addiert. Akkordeigenschaften MA1(0) bis MA1(P – 2) nach dem Akkordwechsel werden jeweils zu den ersten Akkorddifferenzwerten MR1(0) bis MR1(P – 2) addiert. Zweite Akkorddifferenzwerte MR2(0) bis MR2(P – 2) werden für die ausgelesenen zweiten Akkordkandidaten M2(0) bis M2(P – 1) berechnet (Schritt S54). Die zweiten Akkorddifferenzwerte werden berechnet als MR2(0) = M2(1) – M2(0), MR2(1) = M2(2) – M2(1), ... und MR2(P – 2) = M2(P – 1) – M2(P – 2). Bei der Berechnung wird festgestellt, ob die zweiten Akkorddifferenzwerte MR2(0) bis MR2(P – 2) jeweils kleiner als null sind und zu den zweiten Akkorddifferenzwerten, die kleiner als null sind, wird 12 addiert. Akkordeigenschaften MA2(0) bis MA2(P – 2) nach dem Akkordwechsel werden jeweils zu den zweiten Akkorddifferenzwerten MR2(0) bis MR2(P – 2) addiert. Es wird angemerkt, dass die in 9B gezeigten Werte für die Akkordeigenschaften MA1(0) bis MA1(P – 2) und MR2(0) bis MR2(P – 2) verwendet werden.
  • 16 zeigt ein Beispiel der Operation in den Schritten S53 und S54. Wenn die Akkordkandidaten im Einzelnen nacheinander Am7, Dm, C, F, Em, und Bb# (b erhöht) lauten, sind die Akkorddifferenzwerte 5, 10, 5, 11, 1 und 5 und die Akkordeigenschaften nach dem Wechsel sind 0x02, 0x00, 0x00, 0x02, 0x00 und 0x00. Es wird angemerkt, dass dann, wenn die Akkordeigenschaft nach dem Wechsel die Septime ist, wird statt dessen dur verwendet. Das dient der Verringerung des Operationsumfangs, da die Verwendung der Septime ein Ergebnis der Vergleichsoperation kaum beeinflusst.
  • Nach dem Schritt S54 wird der Zählerwert c auf null initialisiert (Schritt S55). Akkordkandidaten (Teilmusikdatenstücke) mit der Anzahl K (z. B. 20), beginnend bei dem c-ten Kandidaten, werden jeweils aus den ersten Akkordkandidaten M1(0) bis M1(P – 1) und den zweiten Akkordkandidaten extrahiert (Schritt S56). Im Einzelnen werden die ersten Akkordkandidaten M1(c) bis M1(c + K – 1) und die zweiten Akkordkandidaten M2 (c) bis M2(c + K – 1) extrahiert. Dabei gilt M1(c) bis M1(c + K – 1) = U1(0) bis U1(K – 1) und M2(c) bis M2(c + K – 1) = U2(0) bis U2(K – 1). 17 zeigt, welche Beziehungen zwischen U1(0) bis U1(K – 1) und U2(0) bis U2(K – 1) und den Akkordabfolgemusikdaten M1(0) bis M1(P – 1) und M2(0) bis M2(P – 1), die verarbeitet werden sollen, und den hinzugefügten temporären Daten bestehen.
  • Nach dem Schritt S56 werden erste Akkorddifferenzwerte UR1(0) bis UR1(K – 2) für die ersten Akkordkandidaten U1(0) bis U1(K – 1) für das Teilmusikdatenstück berechnet (Schritt S57). Die ersten Akkorddifferenzwerte werden im Schritt S57 als UR1(0) = U1(1) – U1(0), UR1(1) = U1(2) – U1(1), ... und UR1(K – 2) = U1(K – 1) – U1(K – 2) berechnet. Bei der Berechnung wird festgestellt, ob die ersten Akkorddifferenzwerte UR1(0) bis UR1(K – 2) jeweils kleiner als null sind, wobei zu den ersten Akkorddifferenzwerten, die kleiner als null sind, 12 addiert wird. Akkordeigenschaften UA1(0) bis UA1(K – 2) nach dem Akkordwechsel werden jeweils zu den ersten Akkorddifferenzwerten UR1(0) bis UR1(K – 2) addiert. Die zweiten Akkorddifferenzwerte UR2(0) bis UR2(K – 2) werden jeweils für die zweiten Akkordkandidaten U2(0) bis U2(K – 1) für das Teilmusikdatenstück berechnet (Schritt S58). Die zweiten Akkorddifferenzwerte werden als UR2(0) = U2(1) – U2(0), UR2(1) = U2(2) – U2(1), ... und UR2(K – 2) = U2(K – 1) – U2(K – 2) berechnet. Bei der Berechnung wird ebenfalls festgestellt, ob die zweiten Akkorddifferenzwerte UR2(0) bis UR2(K – 2) jeweils kleiner als null sind, wobei zu den zweiten Akkorddifferenzwerten, die kleiner als null sind, 12 addiert wird. Akkordeigenschaften UA2(0) bis UA2(K – 2) nach dem Akkordwechsel werden jeweils zu den zweiten Akkorddifferenzwerten UR2(0) bis UR2(K – 2) addiert.
  • Eine Kreuzkorrelationsoperation wird anhand der ersten Akkorddifferenzwerte MR1(0) bis MR1(K – 2) und der Akkordeigenschaften MA1(0) bis MA1(K – 2), die im Schritt S53 erhalten wurden, von K ersten Akkordkandidaten UR1(0) bis UR1(K – 2), beginnend beim c-ten Kandidaten, und der Akkordeigenschaften UA1(0) bis UA1(K – 2), die im Schritt S57 erhalten wurden, und von K zweiten Akkordkandidaten UR2(0) bis UR2(K – 2), beginnend beim c-ten Kandidaten, und der Akkordeigenschaften UA2(0) bis UA2(K – 2), die im Schritt S58 erhalten wurden, ausgeführt (Schritt S59). Bei der Kreuzkorrelationsoperation wird der Korrelationskoeffizient COR(t) aus dem folgenden Ausdruck (3) erzeugt. Je kleiner der Korrelationskoeffizient COR(t) ist, desto größer ist die Ähnlichkeit. COR(t) = Σ10 (|MR1(t + k) – UR1(k')| + |MA1(t + k) – UA1(k')| + |WM1(t + k + 1)/WM1(t + k) – WU1(k' + 1)/WU1(k')|) + Σ10 (|MR1(t + k) – UR2(k')| + |MA1(t + k) – UA2(k')| + |WM1(t + k + 1)/WM1(t + k) – WU2(k' + 1)/WU2(k')|) (3)wobei WU1(), WM1() und WU2() die Zeitspannen sind, für die die Akkorde aufrechterhalten werden, t = 0 bis P – 1 und Σ -Operationen für k = 0 bis K – 2 und k' = 0 bis K – 2 ausgeführt werden.
  • Der Korrelationskoeffizient COR(t) wird im Schritt S59 erzeugt, wenn t im Bereich von 0 bis P – 1 ist. Bei der Operation des Korrelationskoeffizienten COR(t) im Schritt S59 wird ein Sprungprozess ausgeführt. In dem Sprungprozess wird der minimale Wert für MR1(t + k + k 1) – UR1(k' + K2) oder MR1(t + k + k 1) – UR2(k' + K2) detektiert. Die Werte k 1 und k2 sind jeweils eine ganze Zahl im Bereich von 0 bis 2. Im Einzelnen wird dann, wenn k 1 und k2 im Bereich von 0 bis 2 geändert werden, die Stelle, an der MR1(t + k + k1) – UR1(k' + K2) oder MR1(t + k + k1) – UR2(k' + K2) minimal ist, detektiert. Der Wert k + k1 an der Stelle wird als neuer Wert k gesetzt und k' + k2 wird als neuer Wert k' gesetzt. Anschließend wird der Korrelationskoeffizient COR(t) nach Ausdruck (3) berechnet.
  • Wenn Akkorde nach entsprechenden Akkordwechseln an der gleichen Stelle sowohl in den Akkordabfolgemusikdaten, die verarbeitet werden sollen, als auch in K Teilmusikdatenstücken von dem c-ten Stück der Akkordabfolgemusikdaten entweder C oder Am oder entweder Cm oder Eb (E vermindert) sind, werden die Akkorde als gleich betrachtet. Genauer gesagt, solange die Akkorde nach den Wechseln Akkorde einer verwandten Tonart sind, gilt in dem obigen Ausdruck
    |MR1(t + k) – UR1(k')| + |MA1(t + k) – UA1(k')| = 0 oder
    |MR1(t + k) – UR2(k')| + |MA1(t + k) – UA2(k')| = 0. Zum Beispiel werden die Transformation der Daten vom Akkord F nach dur um eine Differenz von sieben Grad und die Transformation der anderen Daten nach moll um eine Differenz von vier Grad als gleich betrachtet. Gleichfalls werden die Transformation von Daten vom Akkord F nach moll um eine Differenz von sieben Grad und die Transformation der anderen Daten nach dur um eine Differenz von zehn Grad als gleich behandelt.
  • Die Kreuzkorrelationsoperation wird anhand der zweiten Akkorddifferenzwerte MR2(0) bis MR2(K – 2) und der Akkordeigenschaften MA2(0) bis MA2(K – 2), die im Schritt S54 erhalten wurden, von K ersten Akkordkandidaten UR1(0) bis UR1(K – 2), beginnend beim c-ten Kandidaten, und der Akkordeigenschaften UA1(0) bis UA1(K – 2), die im Schritt S57 erhalten wurden, und von K zweiten Akkordkandidaten UR2(0) bis UR2(K – 2), beginnend beim c-ten Kandidaten, und der Akkordeigenschaften UA2(0) bis UA2(K – 2), die im Schritt S58 erhalten wurden, ausgeführt (Schritt S60). Bei der Kreuzkorrelationsoperation wird der Korrelationskoeffizient COR'(t) aus dem folgenden Ausdruck (4) berechnet. Je kleiner der Korrelationskoeffizient COR'(t) ist, desto größer ist die Ähnlichkeit. COR'(t) = Σ10 (|MR2(t + k) – UR1(k')| + |MA2(t + k) – UA1(k')| + |WM2(t + k + 1)/WM2(t + k) – WU1(k' + 1)/WU1(k')|) + Σ10 (|MR2(t + k) – UR2(k')| + |MA2(t + k) – UA2(k')| + |WM2(t + k + 1)/WM2(t + k) – WU2(k' + 1)/WU2(k')|) (4)wobei WU1(), WM2() und WU2() die Zeitspannen sind, für die die Akkorde aufrechterhalten werden, t = 0 bis P – 1 und Σ -Operationen für k = 0 bis K – 2 und k' = 0 bis K – 2 ausgeführt werden.
  • Der Korrelationskoeffizient COR'(t) vom Schritt S60 wird erzeugt, wenn sich t im Bereich von 0 bis P – 1 ändert. In der Operation des Korrelationskoeffizienten COR'(t) im Schritt S60 wird ähnlich wie im Schritt S59, der oben beschrieben wurde, ein Sprungprozess ausgeführt. Bei dem Sprungprozess wird der minimale Wert für MR2(t + k + k1) – UR1(k' + K2) oder MR2(t + k + k1) – UR2(k' + K2) detektiert. Im Einzelnen wird dann, wenn k1 und k2 im Bereich von 0 bis 2 geändert werden, die Stelle, an der MR2(t + k + k1) – UR1(k' + K2) oder MR2(t + k + k1) – UR2(k' + K2) minimal ist, detektiert. Der Wert k + k 1 an der Stelle wird als neuer Wert k gesetzt und k' + k2 wird als neuer Wert k' gesetzt. Anschließend wird der Korrelationskoeffizient COR'(t) nach Ausdruck (4) berechnet.
  • Wenn Akkorde nach entsprechenden Akkordwechseln an der gleichen Stelle sowohl in den Akkordabfolgemusikdaten, die verarbeitet werden sollen, als auch in K Teilmusikdatenstücken entweder C oder Am oder entweder Cm oder Eb sind, werden die Akkorde als gleich betrachtet. Genauer gesagt, solange die Akkorde nach den Wechseln Akkorde einer verwandten Tonart sind, gilt in dem obigen Ausdruck
    |MR2(t + k) – UR1(k')| + |MA2(t + k) – UA1(k')| = 0 oder
    |MR2(t + k) – UR2(k')| + |MA2(t + k) – UA2(k')| = 0.
  • 18 zeigt die Beziehung zwischen den Akkordabfolgemusikdaten, die verarbeitet werden sollen, und ihren Teilmusikdatenstücken. In den Teilmusikdatenstücken ändert sich der Teil, der mit den Akkordabfolgemusikdaten verglichen werden soll, wenn t fortschreitet. 18B zeigt Änderungen des Korrelationskoeffizienten COR(t) oder COR'(t). Die Ähnlichkeit ist bei Spitzenwerten in der Signalform groß.
  • 18C zeigt Zeitspannen WU(1) bis WU(5), während denen die Akkorde aufrechterhalten werden, einen Abschnitt eines Sprungprozesses und einen Abschnitt der verwandten Tonart in einer Kreuzkorrelationsoperation zwischen den Akkordabfolgemusikdaten, die verarbeitet werden sollen, und ihren Teilmusikdatenstücken. Die Linien mit beidseitigen Pfeilspitzen zwischen den Akkordabfolgemusikdaten und den Teilmusikdatenstücken zeigen auf die gleichen Akkorde. Die Akkorde, die durch die geneigten Pfeillinien zwischen ihnen verbunden sind und nicht in der gleichen Zeitperiode liegen, stellen Akkorde dar, die durch den Sprungprozess detektiert werden. Die gestrichelten Linien mit beidseitigen Pfeilspitzen zeigen auf Akkorde verwandter Tonarten.
  • Die Kreuzkorrelationskoeffizienten COR(t) und COR'(t), die in den Schritt S59 und S60 berechnet werden, werden addiert, um einen Gesamtkreuzkorrelationskoeffizienten COR(c, t) zu erzeugen (Schritt S61). COR(c, t) wird im Einzelnen durch den folgenden Ausdruck (5) berechnet: COR(c, t) = COR(t) + COR'(t), wobei t = 0 bis P – 1 (5)
  • Die 19A bis 19F zeigen die Beziehung zwischen Phrasen (Akkordabfolgezeile) in einem Musikstück, das durch Akkordabfolgemusikdaten, die zu verarbeiten sind, dargestellt wird, einer Phrase, die durch ein Teilmusikdatenstück dargestellt wird, und dem Gesamtkreuzkorrelationskoeffi zienten COR(c, t). Die Phrasen in dem Musikstück, das durch die Akkordabfolgemusikdaten dargestellt wird, sind angeordnet wie A, B, C, A', C', D und C'' in der Reihenfolge des Ablaufs, wie die Musik nach der Einleitung I, die nicht gezeigt ist, abläuft. Die Phrasen A und A' sind gleich und die Phrasen C, C' und C'' sind gleich. In 19A ist die Phrase A am Beginn des Teilmusikdatenstücks positioniert und COR(c, t) erzeugt Spitzenwerte, die an den Stellen, die den Phrasen A und A' in den Akkordabfolgemusikdaten entsprechen, mit angegeben sind. In 19B ist die Phrase B am Beginn des Teilmusikdatenstücks positioniert und COR(c, t) erzeugt einen Spitzenwert, der an der Stelle, die der Phrase B in den Akkordabfolgemusikdaten entspricht, mit X angegeben ist. In 19C ist die Phrase C am Beginn des Teilmusikdatenstücks positioniert und COR(c, t) erzeugt Spitzenwerte, die an den Stellen, die den Phrasen C, C' und C'' in den Akkordabfolgemusikdaten entsprechen, mit
    Figure 00280001
    angegeben sind. In 19D ist die Phrase A' am Beginn des Teilmusikdatenstücks positioniert und COR(c, t) erzeugt Spitzenwerte, die an den Stellen, die den Phrasen A und A' in den Akkordabfolgemusikdaten entsprechen, mit angegeben sind. In 19E ist die Phrase C' am Beginn des Teilmusikdatenstücks positioniert und COR(c, t) erzeugt Spitzenwerte, die an den Stellen, die den Phrasen C, C' und C'' in den Akkordabfolgemusikdaten entsprechen, mit
    Figure 00280002
    angegeben sind. In 19F ist die Phrase C'' am Beginn des Teilmusikdatenstücks positioniert und COR(c, t) erzeugt Spitzenwerte, die an den Stellen, die den Phrasen C, C' und C'' in den Akkordabfolgemusikdaten entsprechen, mit
    Figure 00280003
    angegeben sind.
  • Nach dem Schritt S61 wird der Zählerwert c um eins inkrementiert (Schritt S62) und es wird festgestellt, ob der Zählerwert größer als P – 1 ist (Schritt S62). Wenn c ≤ P – 1, wurde der Kreuzkorrelationskoeffizient COR(c, t) nicht für die gesamten Akkordabfolgemusikdaten, die zu verar beiten sind, berechnet. Deswegen geht die Steuerung zurück zum Schritt S56 und die Operation der Schritte S56 bis S63 wird wiederholt.
  • Wenn c > P – 1, wird COR(c, t) detektiert, d. h. die Spitzenwerte für COR(0, 0) bis COR(P – 1, P – 1) werden detektiert und COR_PEAK(c, t) = 1 wird für c und t gesetzt, wenn der Spitzenwert detektiert wird, während COR_PEAK(c, t) = 0 für c und t gesetzt wird, wenn der Wert kein Spitzenwert ist (Schritt S64). Der höchste Wert in dem Teil über einem vorbestimmten Wert für COR(c, t) ist der Spitzenwert. Durch diese Operation im Schritt S64 wird die Zeile von COR_PEAK(c, t) gebildet. Dann wird in der Zeile COR_PEAK(c, t) der Gesamtwert der Werte für COR_PEAK(c, t) bei der Änderung von t von 0 bis P – 1 als Spitzenzahl PK(t) berechnet (Schritt S65). PK(0) = COR_PEAK(0, 0) + COR_PEAK(1, 0) + ... COR_PEAK(P – 1, 0), PK(1) = COR_PEAK(0, 1) + COR_PEAK(1, 1) + ... COR_PEAK(P – 1, 1), ..., PK(P – 1) = COR_PEAK(0, P – 1) + COR_PEAK(1, P – 1) + ... COR_PEAK(P – 1, P – 1). Von den Spitzenzahlen PK(0) bis PK(P – 1) werden mindestens zwei aufeinanderfolgende identische Zahlenbereiche als identische Phrasenbereiche getrennt und Musikstrukturdaten werden dementsprechend in der Datenspeichervorrichtung 5 gespeichert (Schritt S66). Wenn die Spitzenzahl PK(t) z. B. 2 ist, bedeutet das, dass die Phrase in dem Musikstück zweimal wiederholt wird, und wenn die Spitzenzahl PK(t) 3 ist, wird die Phrase in dem Musikstück dreimal wiederholt. Die Spitzenzahlen PK(t) in einem identischen Phrasenbereich sind gleich. Wenn die Spitzenzahl PK(t) 1 ist, wird die Phrase in dem Musikstück nicht wiederholt.
  • 20 zeigt Spitzenzahlen PK(t) für ein Musikstück mit den Phrasen I, A, B, C, A', C', D und C'', die in den 19A bis 19F gezeigt sind, und Positionen COR_PEAK(c, t), an denen Spitzenwerte anhand des Berechnungsergebnisses des Kreuzkorrelationskoeffizienten COR(C, t) erhalten werden.
  • COR_PEAK(c, t) wird in einer Matrix dargestellt, wobei die Abszisse die Anzahl von Akkorden t = 0 bis P – 1 und die Ordinate die Anfangspositionen c = 0 bis P – 1 für Teilmusikdatenstücke darstellen. Der gestrichelte Teil stellt die Position dar, die COR_PEAK(c, t) = 1 entspricht, an der COR(c, t) einen Spitzenwert erreicht. Eine diagonale Linie stellt eine Selbstkorrelation zwischen den gleichen Daten dar und ist deswegen als eine Linie aus Punkten dargestellt. Eine Punktlinie in dem Teil außerhalb der diagonalen Linien entspricht Phrasen entsprechend einer wiederholten Akkordabfolge. In den 19A bis 19F entspricht X Phrasen I, B und D, die nur einmal ausgeführt werden,
    Figure 00300001
    stellt dreimal wiederholte Phrasen C, C' und C'' dar und entspricht zweimal wiederholte Phrasen A und A' dar. Die Spitzenzahl PK(t) lautet 1, 2, 1, 3, 2, 3, 1 und 3 für die Phrasen I, A, B, C, A', C' D bzw. C''. Dies stellt als Ergebnis die Musikstückstruktur dar.
  • Die Musikstrukturdaten besitzen ein Format, das in 21 gezeigt ist. Akkordabfolgemusikdaten T(t), die in 14C gezeigt sind, werden für die Startzeit- und Endezeitinformationen für jede Phrase verwendet.
  • Das Musikstrukturdetektionsergebnis wird an der Anzeigevorrichtung 9 angezeigt (Schritt 67). Das Musikstrukturdetektionsergebnis wird in der in 22 gezeigten Weise angezeigt, so dass jeder wiederholte Phrasenteil in dem Musikstück ausgewählt werden kann. Musikdaten für den wiederholten Phrasenteil, der unter Verwendung des Anzeigebildschirms ausgewählt wird, oder der am häufigsten wiederholte Phrasenteil wird aus der Musikdatenspeichervorrichtung 4 ausgelesen und an die Musikwiedergabevorrichtung 10 geliefert (Schritt S68). Auf diese Weise gibt die Musikwiedergabevorrichtung 10 nacheinander die gelieferten Musikdaten wieder, wobei die wiedergegebenen Daten als digitales Signal an den Digi tal/Analog-Umsetzer 11 geliefert werden. Das Signal wird durch den Digital/Analog-Umsetzer 11 in ein analoges Audiosignal umgesetzt und anschließend wird der wiedergegebene Klang des wiederholten Phrasenteils vom Lautsprecher 12 ausgegeben.
  • Der Benutzer kann demzufolge vom Anzeigebildschirm über die Struktur des Musikstücks informiert werden und kann einfach eine ausgewählte wiederholte Phrase oder die am häufigsten wiederholte Phrase des bearbeiteten Objekts hören.
  • Der Schritt S56 in der obigen Musikstrukturdetektionsoperation entspricht dem Teilmusikdatenerzeugungsmittel. Die Schritte S57 bis S63 entsprechen dem Vergleichsmittel für berechnete Ähnlichkeiten (Kreuzkorrelationskoeffizient COR(c, t)), der Schritt S64 entspricht dem Akkordpositionsdetektionsmittel und die Schritte S65 bis S68 entsprechen dem Ausgabemittel.
  • Der Sprungprozess und der Prozess der verwandten Tonart, die oben beschrieben wurden, werden ausgeführt, um die Wirkung von externem Rauschen oder die Frequenzcharakteristik einer Eingabevorrichtung zu eliminieren, wenn Akkordabfolgemusikdaten, die zu verarbeiten sind, anhand eines analogen Signals während der Operation des Differenzwertes vor und nach dem Akkordwechsel erzeugt werden. Wenn Rhythmen und Melodien zwischen dem ersten und dem zweiten Teil der Texte unterschiedlich sind oder wenn sogar ein modulierter Teil für die gleiche Phrase vorhanden ist, stimmen Datenstücke in der Position von Akkorden und ihren Eigenschaften nicht vollständig überein. Deswegen werden der Sprungprozess und der Prozess der verwandten Tonart ebenfalls ausgeführt, um die Situation zu klären. Wenn im Einzelnen die Akkordabfolge vorübergehend anders ist, können Ähnlichkeiten in der Tendenz der Ak kordabfolge innerhalb einer vorbestimmten Zeitdauer detektiert werden und deswegen kann genau festgestellt werden, ob die Musikdaten zu der gleichen Phrase gehören, selbst wenn die Datenstücke unterschiedliche Rhythmen oder Melodien haben oder moduliert wurden. Des Weiteren können durch den Sprungprozess und den Prozess der verwandten Tonart Ähnlichkeiten in Kreuzkorrelationsoperationen für den Teil erhalten werden, der von dem Teil verschieden ist, der diesen Prozessen unterzogen wird.
  • Es wird angemerkt, dass die Erfindung in der obigen Ausführungsform auf Musikdaten in der Form von PCM-Daten angewendet wird, wenn jedoch eine Notenzeile, die in einem Musikstück enthalten ist, bei der Verarbeitung im Schritt S28 bekannt ist, können MIDI-Daten als die Musikdaten verwendet werden. Das System gemäß der oben beschriebenen Ausführungsform kann ferner angewendet werden, um nacheinander lediglich die Phrasenteile wiederzugeben, die sich in dem Musikstück viele Male wiederholen. Mit anderen Worten, ein System zum Wiedergeben von herausragenden Elementen kann einfach realisiert werden.
  • 23 zeigt eine weitere Ausführungsform der Erfindung. In dem Musikverarbeitungssystem von 23 werden die Akkordanalysevorrichtung 3, der temporäre Speicher 6, die Akkordabfolgevergleichsvorrichtung 7 und die Wiederholungsstrukturdetektionsvorrichtung 8, die in dem System von 1 vorhanden sind, durch den Computer 21 gebildet. Der Computer 21 führt die Akkordanalyseoperation und die Musikstrukturdetektionsoperation, die oben genannt wurden, in Reaktion auf ein Programm aus, das in der Speichervorrichtung 22 gespeichert ist. Die Speichervorrichtung 22 muss kein Festplattenlaufwerk sein und kann ein Laufwerk für ein Speichermedium sein. In diesem Fall können Akkordabfolgemusikdaten in das Speichermedium geschrieben sein.
  • Wie oben beschrieben wurde, kann gemäß der Erfindung die Struktur eines Musikstücks, das sich wiederholende Teile enthält, mit einem einfachen Aufbau in geeigneter Weise detektiert werden.

Claims (10)

  1. Musikstrukturdetektionsvorrichtung, die eine Struktur eines Musikstücks entsprechend Akkordabfolgemusikdaten, die chronologische Änderungen von Akkorden in dem Musikstück darstellen, detektiert, umfassend: ein Teilmusikdatenerzeugungsmittel zum Erzeugen von Teilmusikdatenstücken, wobei jedes eine vorbestimmte Anzahl an aufeinander folgenden Akkorden, beginnend von einer Position von jedem Akkord in den Akkordabfolgemusikdaten, umfasst; ein Vergleichsmittel (7) zum Vergleichen von jedem der Teilmusikdatenstücke mit den Akkordabfolgemusikdaten von jeder der Startakkordpositionen in den Akkordabfolgemusikdaten aus auf der Grundlage eines Änderungsumfangs eines Grundtons eines Akkords bei jedem Akkordwechsel und einer Eigenschaft des Akkords nach dem Wechsel, wobei Ähnlichkeitsgrade für jedes der Teilmusikdatenstücke berechnet werden; ein Akkordpositionsdetektionsmittel (8) zum Detektieren einer Position eines Akkords in den Akkordabfolgemusikdaten, bei der der berechnete Ähnlichkeitsgrad für jedes der Teilmusikdatenstücke einen Spitzenwert anzeigt, der größer als ein vorbestimmter Wert ist; und ein Ausgabemittel zum Berechnen der Anzahl an Malen, die der berechnete Ähnlichkeitsgrad einen Spitzenwert anzeigt, der größer als der vorbestimmte Wert ist, für alle Teilmusikdatenstücke für jede Akkordposition in den Akkordabfolgemusikdaten, wodurch eine Detektionsausgabe erzeugt wird, die die Struktur des Musikstücks entsprechend der berechneten Anzahl an Malen für jede Akkordposition darstellt.
  2. Musikstrukturdetektionsvorrichtung nach Anspruch 1, wobei das Vergleichsmittel jedes der Teilmusikdatenstücke mit den Akkordabfolgemusikdaten auf der Grundlage des Änderungsumfangs des Grundtons eines Akkords bei einem Akkordwechsel von jeder Akkordposition in den Akkordabfolgemusikdaten aus, der Eigenschaft des Akkords nach dem Wechsel und eines Verhältnisses von Zeitlängen des Akkords vor und nach dem Wechsel vergleicht, um die Ähnlichkeitsgrade für jedes der Teilmusikdatenstücke zu berechnen.
  3. Musikstrukturdetektionsvorrichtung nach Anspruch 1, wobei das Vergleichsmittel jedes der Teilmusikdatenstücke mit den Akkordabfolgemusikdaten durch zeitliches Zurück- und Vorspringen vergleicht.
  4. Musikstrukturdetektionsvorrichtung nach Anspruch 1, wobei, wenn ein Akkord nach einem Wechsel, der durch jedes der Teilmusikdatenstücke dargestellt ist, und ein Akkord nach einem Wechsel, der durch die Akkordabfolgemusikdaten dargestellt ist, eine verwandte Tonart aufweisen, das Vergleichsmittel diese Akkorde nach den Wechseln als den gleichen Akkord betrachtet.
  5. Musikstrukturdetektionsvorrichtung nach Anspruch 1, wobei jedes der Teilmusikdatenstücke und die Akkordabfolgemusikdaten jeweils zwei Akkorde als erste und zweite Akkordkandidaten für jede Akkordwechselstelle aufweisen, und das Vergleichsmittel wechselseitig die ersten und zweiten Akkordkandidaten von jedem der Teilmusikdatenstücke und die ersten und zweiten Akkordkandidaten der Akkordabfolgemusikdaten vergleicht.
  6. Musikstrukturdetektionsvorrichtung nach Anspruch 5, des Weiteren umfassend: ein Frequenzumwandlungsmittel zum Umwandeln eines Eingangsaudiosignals, das ein Musikstück darstellt, in ein Frequenzsignal, das eine Ebene einer Frequenzkomponente darstellt, in vorbestimmten Zeitintervallen; ein Komponentenextraktionsmittel zum Extrahieren einer Frequenzkomponente entsprechend jedem temperierten Ton aus dem Frequenzsignal, das durch das Frequenzumwandlungsmittel in den vorbestimmten Zeitintervallen erhalten wird; ein Akkordkandidatendetektionsmittel zum Detektieren von zwei Akkorden, die jeweils durch einen Satz von drei Frequenzkomponenten gebildet sind, als die ersten und zweiten Akkordkandidaten, wobei die drei Frequenzkomponenten eine große Gesamtebene der Frequenzkomponenten entsprechend den Tönen, die durch das Komponentenextraktionsmittel extrahiert werden, aufweisen; und ein Glättungsmittel zum Glätten von Zügen der ersten und zweiten Akkordkandidaten, die durch das Akkordkandidatendetektionsmittel wiederholt detektiert werden, um die Akkordabfolgemusikdaten zu erzeugen.
  7. Musikstrukturdetektionsvorrichtung nach Anspruch 1, wobei das Vergleichsmittel an das Ende der Akkordabfolgemusikdaten temporäre Daten, die nur die vorbestimmte Anzahl an temporären Akkorden anzeigen, hinzufügt, um sie mit jedem der Teilmusikdatenstücke zu vergleichen.
  8. Musikstrukturdetektionsvorrichtung nach Anspruch 1, wobei das Ausgabemittel einen Musikklang eines Teils, für den die größte Anzahl an Malen für jede Akkordposition in den Akkordabfolgemu sikdaten berechnet wurde, wiedergibt, um den Musikklang auszugeben.
  9. Verfahren zum Detektieren einer Struktur eines Musikstücks entsprechend Akkordabfolgemusikdaten, die chronologische Änderungen von Akkorden in dem Musikstück darstellen, wobei das Verfahren die Schritte umfasst: Erzeugen von Teilmusikdatenstücken, wobei jedes eine vorbestimmte Anzahl an aufeinander folgenden Akkorden, beginnend von einer Position von jedem Akkord in den Akkordabfolgemusikdaten, umfasst; Vergleichen von jedem der Teilmusikdatenstücke mit den Akkordabfolgemusikdaten von jeder der Startakkordpositionen in den Akkordabfolgemusikdaten aus auf der Grundlage eines Änderungsumfangs eines Grundtons eines Akkords bei jedem Akkordwechsel und einer Eigenschaft des Akkords nach dem Wechsel, wobei Ähnlichkeitsgrade für jedes der Teilmusikdatenstücke berechnet werden; Detektieren einer Position eines Akkords in den Akkordabfolgemusikdaten, bei der der berechnete Ähnlichkeitsgrad für jedes der Teilmusikdatenstücke einen Spitzenwert anzeigt, der größer als ein vorbestimmter Wert ist; und Berechnen der Anzahl an Malen, die der berechnete Ähnlichkeitsgrad einen Spitzenwert anzeigt, der größer als der vorbestimmte Wert ist, für alle Teilmusikdatenstücke für jede Akkordposition in den Akkordabfolgemusikdaten, wodurch eine Detektionsausgabe erzeugt wird, die die Struktur des Musikstücks entsprechend der berechneten Anzahl an Malen für jede Akkordposition darstellt.
  10. Ein Computerprogrammprodukt, das ein Programm zum Detektieren einer Struktur eines Musikstücks umfasst, wobei das Detektieren die Schritte umfasst: Erzeugen von Teilmusikdatenstücken, wobei jedes eine vorbestimmte Anzahl an aufeinander folgenden Akkorden, beginnend von einer Position von jedem Akkord in den Akkordabfolgemusikdaten, umfasst; Vergleichen von jedem der Teilmusikdatenstücke mit den Akkordabfolgemusikdaten von jeder der Startakkordpositionen in den Akkordabfolgemusikdaten aus auf der Grundlage eines Änderungsumfangs eines Grundtons eines Akkords bei jedem Akkordwechsel und einer Eigenschaft des Akkords nach dem Wechsel, wobei Ähnlichkeitsgrade für jedes der Teilmusikdatenstücke berechnet werden; Detektieren einer Position eines Akkords in den Akkordabfolgemusikdaten, bei der der berechnete Ähnlichkeitsgrad für jedes der Teilmusikdatenstücke einen Spitzenwert anzeigt, der größer als ein vorbestimmter Wert ist; und Berechnen der Anzahl an Malen, die der berechnete Ähnlichkeitsgrad einen Spitzenwert anzeigt, der größer als der vorbestimmte Wert ist, für alle Teilmusikdatenstücke für jede Akkordposition in den Akkordabfolgemusikdaten, wodurch eine Detektionsausgabe erzeugt wird, die die Struktur des Musikstücks entsprechend der berechneten Anzahl an Malen für jede Akkordposition darstellt.
DE60303993T 2002-12-04 2003-12-01 Musikstrukturerkennungsgerät und -verfahren Expired - Lifetime DE60303993T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2002352865 2002-12-04
JP2002352865A JP4203308B2 (ja) 2002-12-04 2002-12-04 楽曲構造検出装置及び方法

Publications (2)

Publication Number Publication Date
DE60303993D1 DE60303993D1 (de) 2006-05-11
DE60303993T2 true DE60303993T2 (de) 2006-11-16

Family

ID=32500756

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60303993T Expired - Lifetime DE60303993T2 (de) 2002-12-04 2003-12-01 Musikstrukturerkennungsgerät und -verfahren

Country Status (4)

Country Link
US (1) US7179981B2 (de)
EP (1) EP1435604B1 (de)
JP (1) JP4203308B2 (de)
DE (1) DE60303993T2 (de)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4302967B2 (ja) * 2002-11-18 2009-07-29 パイオニア株式会社 楽曲検索方法、楽曲検索装置及び楽曲検索プログラム
JP4244133B2 (ja) * 2002-11-29 2009-03-25 パイオニア株式会社 楽曲データ作成装置及び方法
DE102004047068A1 (de) * 2004-09-28 2006-04-06 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum Gruppieren von zeitlichen Segmenten eines Musikstücks
JP4650270B2 (ja) * 2006-01-06 2011-03-16 ソニー株式会社 情報処理装置および方法、並びにプログラム
DE102006008298B4 (de) * 2006-02-22 2010-01-14 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum Erzeugen eines Notensignals
DE102006008260B3 (de) * 2006-02-22 2007-07-05 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zur Analyse eines Audiodatums
US7942237B2 (en) 2006-04-12 2011-05-17 Ocv Intellectual Capital, Llc Long fiber thermoplastic composite muffler system with integrated reflective chamber
US7934580B2 (en) 2006-04-12 2011-05-03 Ocv Intellectual Capital, Llc Long fiber thermoplastic composite muffler system
JP4489058B2 (ja) * 2006-07-13 2010-06-23 アルパイン株式会社 和音判定方法および装置
JP4301270B2 (ja) * 2006-09-07 2009-07-22 ヤマハ株式会社 オーディオ再生装置およびオーディオ再生方法
US7541534B2 (en) * 2006-10-23 2009-06-02 Adobe Systems Incorporated Methods and apparatus for rendering audio data
US8473283B2 (en) * 2007-11-02 2013-06-25 Soundhound, Inc. Pitch selection modules in a system for automatic transcription of sung or hummed melodies
US20110000359A1 (en) * 2008-02-15 2011-01-06 Pioneer Corporation Music composition data analyzing device, musical instrument type detection device, music composition data analyzing method, musical instrument type detection device, music composition data analyzing program, and musical instrument type detection program
JP4973537B2 (ja) * 2008-02-19 2012-07-11 ヤマハ株式会社 音響処理装置およびプログラム
US8779268B2 (en) * 2009-06-01 2014-07-15 Music Mastermind, Inc. System and method for producing a more harmonious musical accompaniment
US9177540B2 (en) 2009-06-01 2015-11-03 Music Mastermind, Inc. System and method for conforming an audio input to a musical key
US9251776B2 (en) 2009-06-01 2016-02-02 Zya, Inc. System and method creating harmonizing tracks for an audio input
US9257053B2 (en) 2009-06-01 2016-02-09 Zya, Inc. System and method for providing audio for a requested note using a render cache
US9310959B2 (en) 2009-06-01 2016-04-12 Zya, Inc. System and method for enhancing audio
US8785760B2 (en) 2009-06-01 2014-07-22 Music Mastermind, Inc. System and method for applying a chain of effects to a musical composition
US8492634B2 (en) 2009-06-01 2013-07-23 Music Mastermind, Inc. System and method for generating a musical compilation track from multiple takes
JP5659648B2 (ja) * 2010-09-15 2015-01-28 ヤマハ株式会社 コード検出装置およびコード検出方法を実現するためのプログラム
US9613605B2 (en) * 2013-11-14 2017-04-04 Tunesplice, Llc Method, device and system for automatically adjusting a duration of a song
US20180158469A1 (en) * 2015-05-25 2018-06-07 Guangzhou Kugou Computer Technology Co., Ltd. Audio processing method and apparatus, and terminal
JP6500869B2 (ja) * 2016-09-28 2019-04-17 カシオ計算機株式会社 コード解析装置、方法、及びプログラム
JP6500870B2 (ja) * 2016-09-28 2019-04-17 カシオ計算機株式会社 コード解析装置、方法、及びプログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5440756A (en) * 1992-09-28 1995-08-08 Larson; Bruce E. Apparatus and method for real-time extraction and display of musical chord sequences from an audio signal
US5760325A (en) * 1995-06-15 1998-06-02 Yamaha Corporation Chord detection method and apparatus for detecting a chord progression of an input melody
JP3196604B2 (ja) * 1995-09-27 2001-08-06 ヤマハ株式会社 和音分析装置
US6057502A (en) * 1999-03-30 2000-05-02 Yamaha Corporation Apparatus and method for recognizing musical chords

Also Published As

Publication number Publication date
US20040255759A1 (en) 2004-12-23
JP2004184769A (ja) 2004-07-02
EP1435604B1 (de) 2006-03-15
JP4203308B2 (ja) 2008-12-24
US7179981B2 (en) 2007-02-20
EP1435604A1 (de) 2004-07-07
DE60303993D1 (de) 2006-05-11

Similar Documents

Publication Publication Date Title
DE60303993T2 (de) Musikstrukturerkennungsgerät und -verfahren
DE60302420T2 (de) Musiksuchgerät und -verfahren
DE69124360T2 (de) Vorrichtung zur Anzeige von Gesangseigenschaften
DE60315880T2 (de) Datenerzeugungseinrichtung und verfahren für musikkompositionen
DE602004011305T2 (de) Vorrichtung und Verfahren zur automatischen Klassifikation von musikalischen Kompositionen
EP1797552B1 (de) Verfahren und vorrichtung zur extraktion einer einem audiosignal zu grunde liegenden melodie
DE69608826T2 (de) Vorrichtung zur Verarbeitung von Audiosignalen, wobei eine harmonische Stimme von polyphonischen Stimmen abgeleitet wird
EP2099024B1 (de) Verfahren zur klangobjektorientierten Analyse und zur notenobjektorientierten Bearbeitung polyphoner Klangaufnahmen
DE102007034774A1 (de) Vorrichtung zur Bestimmung von Akkordnamen und Programm zur Bestimmung von Akkordnamen
DE112013005807B4 (de) Vorrichtung und Verfahren zur Erzeugung einer Echtzeitmusikbegleitung
DE69732311T2 (de) Verfahren zur Erzeugung von Musiktönen
DE102007034356A1 (de) Vorrichtung zur Tempobestimmung und Computerprogramm zur Tempobestimmung
DE60026189T2 (de) Verfahren und Vorrichtung zur Wellenformkomprimierung und Erzeugung
EP2351017B1 (de) Verfahren zur erkennung von notenmustern in musikstücken
WO2006039995A1 (de) Verfahren und vorrichtung zur harmonischen aufbereitung einer melodielinie
DE2920298A1 (de) Binaere interpolatorschaltung fuer ein elektronisches musikinstrument
EP1787283A1 (de) Extraktion einer einem audiosignal zu grunde liegenden melodie
DE102004028693B4 (de) Vorrichtung und Verfahren zum Bestimmen eines Akkordtyps, der einem Testsignal zugrunde liegt
DE2836738C3 (de) Verfahren zur Aufzeichnung von beim Spielen eines tastenbetätigten Musikinstruments entstehenden Tonsignalen und den damit verbundenen Spielausdrücken, insbesondere der Lautstärke, entsprechenden Datensignalfolgen auf einem Aufzeichnungsträger und Vorrichtungen zur Durchführung des Verfahrens
DE69018858T2 (de) Vorrichtung zum Erzeugen eines Musiktonsignals.
DE60033098T2 (de) Verfahren und Vorrichtung zur Aufnahme/Wiedergabe oder Erzeugung von Wellenformen mittels Zeitlageinformation
DE102004028694B3 (de) Vorrichtung und Verfahren zum Umsetzen eines Informationssignals in eine Spektraldarstellung mit variabler Auflösung
DE2836736B2 (de) Verfahren zur Aufzeichnung von beim Spielen eines tastenbetätigten Musikinstruments entstehenden Tonsignalen und den damit verbundenen Spielausdrücken, insbesondere der Lautstärke, entsprechenden Datensignalfolgen auf einem Aufzeichnungsträger und Vorrichtung zur Durchführung des Verfahrens
EP1758096A1 (de) Verfahren und Vorrichtung zur Mustererkennung in akustischen Aufnahmen
DE2854601C2 (de) Verfahren zur Tonaufbereitung und Ton-Synthesator zu seiner Durchführung

Legal Events

Date Code Title Description
8320 Willingness to grant licences declared (paragraph 23)
8364 No opposition during term of opposition