DE4430628A1 - Intelligent music accompaniment synthesis method with learning capability - Google Patents

Intelligent music accompaniment synthesis method with learning capability

Info

Publication number
DE4430628A1
DE4430628A1 DE19944430628 DE4430628A DE4430628A1 DE 4430628 A1 DE4430628 A1 DE 4430628A1 DE 19944430628 DE19944430628 DE 19944430628 DE 4430628 A DE4430628 A DE 4430628A DE 4430628 A1 DE4430628 A1 DE 4430628A1
Authority
DE
Germany
Prior art keywords
data stream
midi
digital
neural network
melody
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.)
Granted
Application number
DE19944430628
Other languages
German (de)
Other versions
DE4430628C2 (en
Inventor
Marcus Hoehn
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.)
HOEHN MARCUS DIPL WIRTSCH ING
Original Assignee
HOEHN MARCUS DIPL WIRTSCH ING
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 HOEHN MARCUS DIPL WIRTSCH ING filed Critical HOEHN MARCUS DIPL WIRTSCH ING
Priority to DE9420431U priority Critical patent/DE9420431U1/en
Priority to DE19944430628 priority patent/DE4430628C2/en
Publication of DE4430628A1 publication Critical patent/DE4430628A1/en
Application granted granted Critical
Publication of DE4430628C2 publication Critical patent/DE4430628C2/en
Anticipated expiration legal-status Critical
Expired - Fee Related 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
    • 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
    • G10H2250/00Aspects of algorithms or signal processing methods without intrinsic musical character, yet specifically adapted for or used in electrophonic musical processing
    • G10H2250/311Neural networks for electrophonic musical instruments or musical processing, e.g. for musical recognition or control, automatic composition or improvisation

Landscapes

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

Abstract

The method involves feeding keyboard note information (DS) to an interface (MIF) and then to a filter (NF) that generates a melody data stream (MDS) and an accompaniment data stream (BDS). The melody data stream is received by a FIFO (first in first out) memory and provides a parallel output (PTS) that is used as input to a neural network (NN). The accompaniment data is converted (CW) into a keyboard code (TC) that is buffered (P2) before being entered into the network. The values made available to the network for training purposes in creating the knowledge base. This is accessed at a later point to generate the accompaniment data stream (GBDS) fed to the output stage (KE) via the interface.

Description

Die Erfindung bezieht sich auf ein Verfahren zur Generierung einer automatischen Musikbegleitung für elektronische Klang­ erzeuger anhand elektronischer Noteninformationen, insbeson­ dere für Musiksynthesizer und Digital-Pianos.The invention relates to a method for generation an automatic music accompaniment for electronic sound producer based on electronic note information, in particular for music synthesizers and digital pianos.

Moderne elektronische Klangerzeuger, insbesondere Musik­ synthesizer, Keyboards und Digital-Pianos, die mit dem Musi­ cal-Instruments-Digital-Interface, kurz MIDI-Standard ausge­ rüstet sind, beinhalten häufig eine Begleitautomatik, die es der musizierenden Person ermöglicht, zusätzlich zu der von ihr gespielten Musik eine simultan automatisch erzeugte musikalische Begleitung zu aktivieren. Dazu muß die musizie­ rende Person einen gewünschten musikalischen Begleitungsstil, z. B. Blues- oder Samba-Rhythmus, aus einer fest vorgegebenen Anzahl von Begleitungsrhythmen auswählen.Modern electronic sound generators, especially music synthesizers, keyboards and digital pianos made with the musi cal instruments digital interface, short MIDI standard are often equipped with an automatic accompaniment function the musician, in addition to that of your played music automatically generated simultaneously activate musical accompaniment. To do this, the music person a desired musical accompaniment style, e.g. B. blues or samba rhythm, from a predetermined Select the number of accompaniment rhythms.

Es ist bekannt, daß bei solchen herkömmlichen Verfahren zur automatischen Begleitung von auf elektronischen Klangerzeu­ gern gespielter Musik ein programmierter Grundrhythmus fest vorgegeben ist, welcher im Rahmen der gespielten, d. h. steu­ ernden Musik ständig an die Tonlage angepaßt wird, um die Harmonie von gespielter Musik und automatischer Begleitung zu gewährleisten. Dabei ist der Musizierende jedoch ständig auf den zu Beginn gewählten Rhythmus festgelegt, der nach immer gleichen starren Formen abläuft. Spielt er erneut dieselbe Melodie, so wird auch exakt dieselbe automatische Begleitung generiert. Strebt der Musizierende nach Abwechslung und möchte er zu seiner gespielten Melodie eine abgeänderte automatische Begleitung erhalten, so muß er den vorhandenen Begleitrhythmus entweder mühsam per Hand erweitern oder einen vollständig neuen Begleitrhythmus programmieren (vgl. z. B. Nathorst-Böös, E.; übersetzt von Post, M.: Handbuch zum Musiksoftwareprodukt "MusicStation for Windows", Steinberg Soft- und Hardware GmbH 1994, S. 111 ff.).It is known that in such conventional methods for automatic accompaniment of electronic sound liked to play music a programmed basic rhythm is specified, which in the context of the played, d. H. tax ering music is constantly adjusted to the pitch Harmony of played music and automatic accompaniment guarantee. However, the musician is constantly on the rhythm chosen at the beginning, which is always same rigid forms. He plays the same again Melody, this is exactly the same automatic accompaniment generated. Does the musician strive for variety and he would like a modified one for his played melody receive automatic accompaniment, he must the existing Accompany the rhythm either by hand or one program a completely new accompaniment rhythm (see e.g.  Nathorst-Böös, E .; translated by Post, M .: Handbook on Music software product "MusicStation for Windows", Steinberg Soft- und Hardware GmbH 1994, p. 111 ff.).

Bei oben beschriebenen herkömmlichen Verfahren müssen dement­ sprechend folgende Nachteile in Kauf genommen werden. Die musizierende Person ist auf eine fest vorgegebene Anzahl von Begleitrhythmen beschränkt, die nach den immer selben starren Formen ablaufen. Will man diese begrenzten Möglichkeiten erweitern, so werden umfangreiche Programmiertätigkeiten erforderlich.In the conventional methods described above, dementia speaking the following disadvantages are accepted. The musician is limited to a predetermined number of Accompanying rhythms that stare at the same always Forms expire. Do you want these limited options extensive programming activities required.

Der Erfindung liegt daher die Aufgabe zugrunde, ein Verfahren sowie eine Einrichtung der eingangs genannten Art so auszu­ bilden, daß eine automatische Begleitung zu gespielter Musik generiert wird, die nicht nur auf einem einzelnen vorgegebe­ nen Rhythmus basiert, sondern die sich allein an der vorgege­ benen, steuernden Musik, im speziellen der Melodie, orien­ tiert und anhand eines im Vorfeld trainierten "Repertoires", unter technischen Gesichtspunkten auch als musikalische Wissensbasis bezeichnet, an die Informationen des Repertoires angelehnte Begleitmuster erzeugt. Diese Begleitung soll nicht nur stur immer ein- und dieselben Rhythmen generieren, son­ dern sie soll gewissermaßen "improvisieren", indem sie aus dem Fundus des Repertoires Begleitelemente mit eigener künst­ licher Intelligenz auswählt und angepaßt an die steuernde Musik wiedergibt.The invention is therefore based on the object of a method as well as a facility of the type mentioned above form an automatic accompaniment to played music is generated, which is not predetermined only on a single based on a rhythm, but based solely on the level, controlling music, especially the melody, orien animals and based on a "repertoire" trained in advance, from a technical point of view also as musical Knowledge base referred to the information of the repertoire based on accompanying patterns. This accompaniment should not just stubbornly always generate the same rhythms, son because it is supposed to "improvise" to some extent by moving out the repertoire of accompanying elements with their own art selects intelligence and adapts to the controlling Plays music.

Gemäß der Erfindung wird diese Aufgabe dadurch gelöst, daßAccording to the invention, this object is achieved in that

  • 1.1 die Begleitautomatik ein lernfähiges Neuronales Netz einsetzt,1.1 the automatic accompaniment an adaptive neural network begins,
  • 1.2 die Wissensbasis des Neuronalen Netzes in einer Trai­ ningsphase anhand von elektronischen Musiknoteninforma­ tionen einer bestimmten Musikstilrichtung oder eines be­ stimmten Musikers bzw. Komponisten berechnet wird, 1.2 the knowledge base of the neural network in a trai ningsphase based on electronic sheet music information tions of a certain musical style or a be agreed musician or composer,  
  • 1.3 zur Berechnung der Wissensbasis des Neuronalen Netzes die elektronischen Noteninformationen von zweckmäßigerweise komplett mit Melodie und Begleitung vorliegenden Musikin­ formationen in einen Melodiedatenstrom und einen Beglei­ tungsdatenstrom getrennt werden,1.3 to calculate the knowledge base of the neural network electronic note information from expedient complete with melody and accompaniment of the present music formations into a melody data stream and an accompaniment data stream are separated,
  • 1.4 der Melodiedatenstrom an die Eingangsschicht und der Begleitungsdatenstrom an die Ausgangsschicht des Neurona­ len Netzes geführt wird zwecks der Berechnung der Wis­ sensbasis,1.4 the melody data stream to the input layer and the Accompanying data stream to the output layer of the neurona len network is carried out for the purpose of calculating the wis base,
  • 1.5 die Begleitautomatik in einer späteren Wiedergabephase zu einem aus den elektronischen Noteninformationen einer Me­ lodie gewonnenen Melodiedatenstrom, welcher wiederum an die Eingangsschicht des Neuronalen Netzes geführt wird, mit Hilfe der erlernten Wissensbasis des Neuronalen Net­ zes an dessen Ausgangsschicht einen an die in der Trai­ ningsphase zugrunde gelegte Musik angelehnten Beglei­ tungsdatenstrom generiert,1.5 the automatic accompaniment in a later playback phase one from the electronic note information of a me lodie won melody data stream, which in turn to the input layer of the neural network is managed, with the help of the learned knowledge base of the Neural Net zes on its starting layer one on the one in the trai music based on the accompanying phase generated data stream,
  • 1.6 der in der Wiedergabephase steuernde Melodiedatenstrom zusammen mit dem automatisch generierten Begleitungsda­ tenstrom hörbar gemacht wird.1.6 the melody data stream controlling the playback phase together with the automatically generated escort data is made audible.

Um eine solche Begleitautomatik der oben dargestellten Art mit elektronischen Musikinstrumenten, die den internationalen MIDI-Standard (Musical-Instruments-Digital-Interface) unter­ stützen, besonders effektiv zu realisieren, ist eine erste vorteilhafte Ausgestaltung der Erfindung dadurch gekennzeich­ net, daßFor such an automatic accompaniment of the type shown above with electronic musical instruments that the international MIDI standard (Musical Instruments Digital Interface) under support, particularly effective realization is a first Characterized advantageous embodiment of the invention net that

  • 2.1 als elektronische Noteninformationen die digitalen Noten­ werte des MIDI-Standards eines MIDI-fähigen Musikinstru­ mentes eingesetzt werden,2.1 the digital notes as electronic note information values of the MIDI standard of a MIDI-capable musical instru mentes are used
  • 2.2 die Trennung der digitalen Noteninformationen durch einen Notenfilter erfolgt, der anhand der Tonhöhe entsprechend der musikalischen Harmonielehre den MIDI-Datenstrom eines Musikstückes mit einem digitalen Hochpaß-Filter in einen Melodiedatenstrom und mit einem digitalen Tiefpaß-Filter in einen Begleitungsdatenstrom aufteilt, 2.2 the separation of the digital note information by one Note filter takes place, which corresponds to the pitch the musical harmony teaches the MIDI data stream of a Music piece with a digital high-pass filter in one Melody data stream and with a digital low-pass filter divided into an accompanying data stream,  
  • 2.3 die seriell anfallenden digitalen MIDI-Notenwerte des Melodiedatenstromes in Form von parallelen Teilsequenzen, die die sich fortentwickelnde Melodie repräsentieren, an die Eingangsschicht des Neuronalen Netzes gelangen,2.3 the serial MIDI note values of the Melody data stream in the form of parallel partial sequences, that represent the evolving melody enter the input layer of the neural network,
  • 2.4 die digitalen MIDI-Notenwerte des Begleitungsdatenstromes in der Trainingsphase über einen Codewandler in einen bi­ nären Tastaturcode umgewandelt werden, wobei jedes ein­ zelne Bit des entstehenden binären Codes einer Taste ei­ ner virtuellen Klaviatur im unteren Oktavbereich zugeord­ net ist, und an die Ausgangsschicht des Neuronalen Netzes geführt wird,2.4 the digital MIDI note values of the accompanying data stream in the training phase via a code converter into a bi nary keyboard code are converted, each one individual bits of the resulting binary code of a key assigned to a virtual keyboard in the lower octave range net, and to the output layer of the neural network to be led,
  • 2.5 die Wissensbasis des Neuronalen Netzes in der Trainings­ phase mittels eines rekursiven Fehler-Rückwärtskorrektur- Verfahrens berechnet wird,2.5 the knowledge base of the neural network in training phase using a recursive error backward correction Procedure is calculated
  • 2.6 die in der Wiedergabephase vom Neuronalen Netz generier­ ten Begleitungsdaten, die ebenfalls die Form des Tasta­ turcodes aufweisen, über einen Coderückwandler in seriel­ le digitale MIDI-Notenwerte umgesetzt und dem steuernden MIDI-Melodiedatenstrom zugemischt werden.2.6 generated by the neural network in the playback phase th accompanying data, which is also the form of the key have turcodes via a code converter in series le digital MIDI note values implemented and the controlling MIDI melody data stream can be mixed.

Um die Trenngrenze zwischen Melodie und Begleitung möglichst variabel und das Verfahren damit besonders flexibel zu ge­ stalten, ist eine weitere vorteilhafte Ausgestaltung der Erfindung dadurch gekennzeichnet, daßAround the dividing line between melody and accompaniment if possible variable, making the process particularly flexible stalten is a further advantageous embodiment of the Invention characterized in that

  • 3.1 die Grenzfrequenzen des digitalen Hochpaß-Filters und des Tiefpaß-Filters variabel einstellbar sind.3.1 the cut-off frequencies of the digital high-pass filter and Low-pass filters are variably adjustable.

Damit der Einsatzbereich der vorliegenden Erfindung möglichst groß gestaltet werden kann, ist eine weitere vorteilhafte Ausgestaltung der Erfindung dadurch gekennzeichnet, daßSo that the field of application of the present invention is as possible can be made large is another advantageous one Embodiment of the invention, characterized in that

  • 4.1 die digitalen MIDI-Noteninformationen sowohl direkt auf der Klaviatur beispielsweise eines elektronischen Mu­ siksynthesizers oder Digital-Pianos in die Begleitautoma­ tik eingespielt werden können, als auch vorab in einem Notensequenzer aufgezeichnet werden können, um die Be­ gleitautomatik im nachhinein durch diesen anzusteuern.4.1 the digital MIDI note information both directly on the keyboard of, for example, an electronic Mu siksynthesizers or digital pianos in the accompanying auto tik can be imported, as well as in advance in one Note sequencer can be recorded to the Be automatic slide control can be controlled afterwards.

Da das oben dargestellte Verfahren gemäß der vorliegenden Erfindung nicht nur für den Zweck der Generierung einer automatischen Begleitung geeignet ist, sondern weitere Ein­ satzmöglichkeiten beinhaltet, ist eine weitere vorteilhafte Ausgestaltung der Erfindung dadurch gekennzeichnet, daßSince the above method according to the present Invention not only for the purpose of generating one automatic accompaniment is suitable, but more on includes possible options, is another advantageous Embodiment of the invention, characterized in that

  • 5.1 auch ein umgekehrter Betrieb zur Generierung einer Melo­ die zu einer vorgegebenen Begleitung bzw. Baßfiguren mög­ lich ist, indem der Melodiedatenstrom an die Ausgangs­ schicht und der nunmehr steuernde Begleitungsdatenstrom an die Eingangsschicht des Neuronalen Netzes geführt wird.5.1 also a reverse operation to generate a Melo which is possible for a given accompaniment or bass figure is by adding the melody data stream to the output layer and the now accompanying data stream led to the input layer of the neural network becomes.

Gemäß der Erfindung wird ferner eine Einrichtung zur Verfah­ rensdurchführung geschaffen, die besonders einfach realisiert werden kann und effektiv ist. Diese Einrichtung ist dadurch gekennzeichnet, daßAccording to the invention, a device is also available Reensführung created that is particularly easy to implement can be and is effective. This facility is thereby characterized in that

  • 6.1 die Klaviatur eines MIDI-fähigen elektronischen Musikin­ strumentes über ein MIDI-Interface mit einem elektroni­ schen Schaltwerk verbunden ist, welches die Funktion ei­ nes Notenfilters besitzt und einen digitalen Hochpaß-Fil­ ter sowie einen digitalen Tiefpaß-Filter zur Trennung der Musiknoteninformationen in einen Melodiedatenstrom und einen Begleitungsdatenstrom beinhaltet,6.1 the keyboard of a MIDI-capable electronic music strumentes via a MIDI interface with an electroni the rear derailleur is connected, which function ei nes note filter and a digital high-pass fil ter and a digital low-pass filter to separate the Music note information into a melody data stream and contains an accompanying data stream,
  • 6.2 der serielle Melodiedatenstrom einem First-In-First-Out- Shift-Register mit einstellbarer Registerlänge zugeführt und parallelisiert wird, die parallele Teilsequenz abge­ griffen und über einen Puffer an den Eingang der Schal­ tung eines Neuronalen Netzes geführt wird,6.2 the serial melody data stream a first-in-first-out Shift register supplied with adjustable register length and parallelized, the parallel partial sequence abge reached and a buffer to the entrance of the scarf a neural network is managed,
  • 6.3 der serielle Begleitungsdatenstrom in einem Codewandler in einen parallelen binären Tastaturcode umgewandelt wird und über einen Puffer an den Ausgang der Schaltung eines Neuronalen Netzes geführt wird,6.3 the serial accompanying data stream in a code converter is converted into a parallel binary keyboard code and via a buffer to the output of the circuit one Neural network is managed
  • 6.4 über zwei digitale Schalter dem Ausgang des Neuronalen Netzes entweder in der Trainingsphase der vom Notenfilter ausgehende Begleitungsdatenstrom als Eingangswert aufge­ schaltet wird oder in der Wiedergabephase die vom Ausgang ausgehenden generierten Begleitungsdaten durchgeschaltet werden,6.4 via two digital switches the output of the neural Network either in the training phase of the grade filter outgoing accompanying data stream as input value  is switched or in the playback phase from the output outgoing generated accompanying data become,
  • 6.5 über ein Taktsignal, welches vom Neuronalen Netz erzeugt wird und dessen Frequenz sich nach der Verarbeitungsge­ schwindigkeit richtet, jeweils ein neuer Eingangswert und in der Trainingsphase auch ein neuer Ausgangswert vom Neuronalen Netz übernommen wird,6.5 via a clock signal generated by the neural network and its frequency will vary according to the processing ge speed, a new input value and in the training phase also a new baseline from Neural network is taken over
  • 6.6 der Ausgang des Neuronalen Netzes in der Wiedergabephase die generierten Begleitungsdaten in Form des parallelen Tastaturcodes führt und mit einem Coderückwandler verbun­ den ist, der die parallelen Begleitungsdaten wieder in einen seriellen Begleitungsdatenstrom in Form von MIDI- Notenwerten umsetzt,6.6 the output of the neural network in the playback phase the accompanying data generated in the form of parallel Keyboard codes and connected with a code converter is that which the parallel accompanying data back in a serial accompaniment data stream in the form of MIDI Implements note values,
  • 6.7 die steuernden digitalen MIDI-Musikdaten in der Trai­ ningsphase über das MIDI-Interface direkt an einen elek­ tronischen MIDI-Klangerzeuger durchgeschleift werden,6.7 the controlling digital MIDI music data in the trai ning phase via the MIDI interface directly to an elec tronic MIDI sound generator are looped through,
  • 6.8 der steuernde Melodiedatenstrom und der generierte Be­ gleitungsdatenstrom in der Wiedergabephase einem Notenmi­ scher zur Kombination der beiden Musikdatenströme zuge­ führt werden,6.8 the controlling melody data stream and the generated Be slide data stream in the playback phase of a note medium shear to the combination of the two music data streams be led
  • 6.9 der Ausgang des Notenmischers die kompletten digitalen MIDI-Musikinformationen von Melodie und generierter Be­ gleitung über das MIDI-Interface einem elektronischen MIDI-Klangerzeuger zuführt und dort hörbar macht.6.9 the output of the note mixer the complete digital MIDI music information from melody and generated Be sliding over the MIDI interface of an electronic MIDI sound generator and makes it audible.

Die mit der vorliegenden Erfindung erzielten Vorteile beste­ hen insbesondere darin, daß die so erzeugte Begleitautomatik lernfähig ist, indem sie anhand von beispielhafter einge­ spielter Musik wesentliche Begleitelemente selbständig erkennt und herausfiltert, so daß keine mühsame Programmie­ rung per Hand notwendig ist. Das bedeutet neben der erweiter­ ten Funktionalität eine wesentliche Erleichterung und Zeiter­ sparnis für die musizierende Person, die darüber hinaus nicht mehr über spezielle Programmierkenntnisse verfügen muß. The advantages achieved with the present invention are the best hen especially in that the automatic accompaniment generated in this way is capable of learning by using examples played accompanying music independently recognizes and filters out, so that no tedious programming by hand. In addition to the extended functionality a significant relief and time savings for the musician who does not go beyond must have more special programming knowledge.  

Des weiteren muß das trainierte Repertoire nicht unbedingt auf einer bestimmten Musikstilrichtung oder einem bestimmten Rhythmus beruhen, sondern es kann auch der Stil eines be­ stimmten Musikers bzw. Komponisten trainiert werden, so daß die automatische Begleitung auf eine Art und Weise erfolgt, wie dieser gespielt haben würde.Furthermore, the trained repertoire does not necessarily have to a certain style of music or a certain one Rhythm based, but it can also be the style of a be agreed musicians or composers are trained so that the automatic accompaniment is done in a way how that would have played.

Ausführungsbeispiele der Erfindung sind in den Zeichnungen dargestellt und werden im folgenden näher erläutert. Dabei zeigen:Embodiments of the invention are in the drawings shown and are explained in more detail below. Here demonstrate:

Fig. 1 Blockschaltbild einer intelligenten, lernfähigen Musik­ begleitautomatik mit der Klaviatur eines MIDI-fähigen Keyboards zur Erzeugung der digitalen MIDI-Noteninfor­ mationen und einem elektronischen MIDI-Musiksynthesi­ zer als Klangerzeuger, Fig. 1 block diagram of an intelligent, adaptive music accompaniment with the keyboard of a MIDI-compatible keyboard for generating the digital MIDI Noteninfor mation and an electronic MIDI Musiksynthesi zer as a tone generator,

Fig. 2 Schaltung des Notenfilters mit einer Filterkaskade bestehend aus digitalem Hochpaß- und Tiefpaß-Filter zur Trennung der MIDI-Notendaten in einen Melodieda­ tenstrom und einen Begleitungsdatenstrom, Fig. 2 circuit of the touch-filter with a filter cascade consisting of a digital high-pass and low-pass filter for separating the MIDI note data in a data stream Melodieda and an accompaniment data stream,

Fig. 3 Schaltung eines First-In-First-Out-Shift-Registers zur Parallelisierung sequentieller digitaler MIDI-Notenda­ ten im Rahmen der Erzeugung einer parallelen Teilse­ quenz aus einem Melodiedatenstrom, Fig. 3 circuit of a first-in-first-out shift register for parallel sequential digital MIDI Notenda th in the context of generating a parallel Teilse frequency from a melody data stream,

Fig. 4 Prinzipskizze des Codewandlers zur Umsetzung sequenti­ eller digitaler MIDI-Notendaten eines Begleitungsda­ tenstroms in einen parallelen binären Tastaturcode, Fig. 4 schematic diagram of the code converter for implementing sequenti eller digital MIDI note data of a Begleitungsda tenstroms into a parallel binary code keyboard,

Fig. 5 Prinzipskizze eines Neuronalen Netzes zur Realisierung der musikalischen Wissensbasis während einer Trai­ ningsphase. Fig. 5 schematic diagram of a neural network for realizing the musical knowledge base during a training phase.

In der Darstellung gemäß Fig. 1 ist ein Blockschaltbild für eine lernfähige, intelligente Musikbegleitautomatik gezeigt, in der die Klaviatur eines MIDI-fähigen Keyboards KB bzw. eines Digital-Pianos zur Erzeugung der digitalen MIDI-Noten­ informationen DS und ein elektronischer MIDI-Musiksynthesizer als Klangerzeuger KE eingesetzt werden. Das Keyboard KB ist an den Eingang und der Klangerzeuger KE an den Ausgang eines MIDI-Interfaces MIF angeschlossen. Ein digitaler Schalter S3 ist Bestandteil des MIDI-Interfaces MIF. Über diesen Schalter S3 können die digitalen MIDI-Noteninformationen DS direkt vom Keyboard KB zum elektronischen Klangerzeuger KE durchge­ schleift werden. Gesteuert wird der digitale Schalter S3 über ein Signal M, welches zur Auswahl des Modus Trainingsphase oder Wiedergabephase dient. Außerdem ist das MIDI-Keyboard KB mit einem Notensequenzer SQ verbunden, der die gespielten MIDI-Noteninformationen DS aufzeichnen und später jederzeit wiedergeben kann. Über das MIDI-Interface werden die auf der Klaviatur des Keyboards KB gespielten Noten in Form eines digitalen Datenstroms DS an einen Notenfilter NF geführt. Dort erfolgt eine Aufteilung des Datenstromes DS mit den digitalen Noteninformationen in einen Melodiedatenstrom MDS und einen Begleitungsdatenstrom BDS. Der Melodiedatenstrom MDS wird an einen First-In-First-Out-Shift-Register FIFO geführt und dort in eine parallele Teilsequenz PTS der Melo­ diedaten umgesetzt. Die parallele Teilsequenz PTS der Melo­ diedaten wird über einen Puffer P1 an den Eingang eines Neuronalen Netzes NN geführt. Der vom Notenfilter NF abge­ hende Begleitungsdatenstrom BDS gelangt an einen Codewandler CW, wo er in einen parallelen binären Tastaturcode TC umge­ setzt wird. Dieser Tastaturcode TC wird über einen digitalen Schalter S1 zu einem zweiten Puffer P2 und von dort für die Trainingsphase an den Ausgang des Neuronalen Netzes NN ge­ führt. Vom Neuronalen Netz NN geht ein Taktsignal T aus, welches zu den beiden Puffern P1 und P2 geleitet wird. Des weiteren ist das Neuronale Netz NN mit einem Massenspeicher MSP verbunden. Der Ausgang des Neuronalen Netzes NN wird für die Wiedergabephase außerdem über einen zweiten digitalen Schalter S2 an einen Code-Rückwandler CRW geleitet. Der dort geführte generierte Tastaturcode GTC wird im Code-Rückwandler CRW in einen seriellen digitalen generierten Begleitungsda­ tenstrom GBDS umgesetzt. Die beiden digitalen Schalter S1 und S2 werden über das Signal M angesteuert, welches darüber entscheidet, ob es sich um die Trainingsphase oder die Wie­ dergabephase handelt. Dazu wird das Signal M direkt an Schal­ ter S1 geführt, während es negiert an den Schalter S2 ge­ langt, indem es über einen Inverter 1 geführt wird. Der vom Code-Rückwandler CRW ausgehende generierte Begleitungsdaten­ strom GBDS und der vom Notenfilter NF abgegriffene Melodieda­ tenstrom MDS werden einem Notenmischer NM zugeführt, wo sie zu einem gemeinsamen Melodie-Begleitungsdatenstrom MBDS zusammengemischt und zum MIDI-Interface MIF geleitet werden. Vom MIDI-Interface MIF aus gelangt der Melodie-Begleitungsda­ tenstrom MBDS zum Klangerzeuger KE, wo die digitalen Notenin­ formationen in akustische Signale umgewandelt werden.In the illustration of FIG. 1 is a block diagram for an adaptive, intelligent music accompaniment is shown in which the keyboard of a MIDI-compatible keyboard KB or a digital piano to produce the digital MIDI notes information DS and an electronic MIDI music synthesizer as KE sound generator can be used. The keyboard KB is connected to the input and the sound generator KE to the output of a MIDI interface MIF. A digital switch S3 is part of the MIDI interface MIF. Via this switch S3, the digital MIDI note information DS can be looped through directly from the keyboard KB to the electronic sound generator KE. The digital switch S3 is controlled via a signal M, which is used to select the training phase or playback phase mode. In addition, the MIDI keyboard KB is connected to a note sequencer SQ, which can record the played MIDI note information DS and play it back later at any time. The notes played on the keyboard of the keyboard KB are fed in the form of a digital data stream DS to a note filter NF via the MIDI interface. There, the data stream DS with the digital note information is divided into a melody data stream MDS and an accompanying data stream BDS. The melody data stream MDS is fed to a first-in-first-out shift register FIFO and is converted there into a parallel partial sequence PTS of the melody data. The parallel partial sequence PTS of the melody data is fed via a buffer P1 to the input of a neural network NN. The accompanying data stream BDS from the note filter NF arrives at a code converter CW, where it is converted into a parallel binary keyboard code TC. This keyboard code TC is led via a digital switch S1 to a second buffer P2 and from there for the training phase to the output of the neural network NN. A clock signal T emanates from the neural network NN and is passed to the two buffers P1 and P2. Furthermore, the neural network NN is connected to a mass storage MSP. The output of the neural network NN is also passed to a code back converter CRW via a second digital switch S2 for the playback phase. The generated keyboard code GTC there is converted in the code back converter CRW into a serial digital generated accompanying data stream GBDS. The two digital switches S1 and S2 are controlled via the signal M, which decides whether it is the training phase or the playback phase. For this purpose, the signal M is passed directly to switch S1, while it reaches the switch S2 negated by being passed through an inverter 1 . The generated accompaniment data stream GBDS from the code re-converter CRW and the melody data stream MDS tapped off by the note filter NF are fed to a note mixer NM, where they are mixed together to form a common melody accompaniment data stream MBDS and passed to the MIDI interface MIF. From the MIDI interface MIF, the melody accompanying data stream MBDS arrives at the KE sound generator, where the digital note information is converted into acoustic signals.

In der Darstellung gemäß Fig. 2 ist die technische Realisie­ rung des Notenmischers NF gezeigt. Dabei wird dargestellt, daß die digitalen Noteninformationen in Form des Datenstromes DS, der die kompletten Musiknoteninformationen von Melodie und Begleitung enthält, zu einem digitalen Hochpaß-Filter HPF gelangen. Dort werden die digitalen Notenwerte, deren Tonhöhe über der unteren Grenzfrequenz des Hochpaß-Filters HPF liegt, aus dem Datenstrom DS herausgefiltert. Diese bilden den Melodiedatenstrom MDS, welcher vom Hochpaß-Filter HPF abge­ griffen wird. Anschließend durchläuft der Datenstrom DS ein digitales Tiefpaß-Filter TPF, wo die Noteninformationen herausgefiltert werden, deren Tonhöhe unter der oberen Grenz­ frequenz des Tiefpaß-Filters TPF liegt. Diese herausgefilter­ ten Notenwerte bilden den Begleitungsdatenstrom BDS und werden vom Tiefpaß-Filter TPF abgegriffen.In the illustration according to FIG. 2, the technical Realisie is tion of the note mixer NF shown. It is shown that the digital note information in the form of the data stream DS, which contains the complete musical note information of melody and accompaniment, reaches a digital high-pass filter HPF. There, the digital note values, the pitch of which lies above the lower cut-off frequency of the high-pass filter HPF, are filtered out of the data stream DS. These form the melody data stream MDS, which is tapped by the high-pass filter HPF. The data stream DS then runs through a digital low-pass filter TPF, where the note information is filtered out, the pitch of which lies below the upper limit frequency of the low-pass filter TPF. These filtered out note values form the accompanying data stream BDS and are tapped by the low-pass filter TPF.

In der Darstellung gemäß Fig. 3 wird die Beschaltung des First-In-First-Out-Shift-Registers FIFO zur Parallelisierung des sequentiellen Melodiedatenstroms MDS dargestellt. Der First-In-First-Out-Shift-Register FIFO besteht aus n Spei­ cherzellen. An die erste Speicherzelle wird der Melodie­ datenstrom MDS geleitet, der Sequentielle Melodiedatenwerte MD1 . . .MDn führt. Mit jedem Eintreffen eines neuen Melodie­ datenwertes MD1 werden die vorhandenen Melodiedatenwerte um eine Speicherzelle nach rechts verschoben, der Melodiedaten wert MDn geht dabei verloren und der neue Melodiedatenwert wird als MD1 in die erste Speicherzelle aufgenommen. Alle Melodiedatenwerte MD1 . . . MDn werden parallel abgegriffen, in Fig. 3 angedeutet durch eine geschweifte Klammer, woraus eine parallele Teilsequenz PTS zur weiteren Verarbeitung resul­ tiert. Desweiteren wird der Melodiedatenstrom MDS direkt und separat von der ersten Speicherzelle mit dem jeweils aktuel­ len Melodiedatenwert MD1 abgegriffen.In the illustration according to FIG. 3, the wiring of the shift register First-In-First-Out-FIFO shown for the parallelization of the sequential data stream MDS melody. The first-in-first-out shift register FIFO consists of n memory cells. The melody data stream MDS, the sequential melody data values MD1, is passed to the first memory cell. . .MDn leads. With each arrival of a new melody data value MD1, the existing melody data values are shifted to the right by one memory cell, the melody data value MDn is lost and the new melody data value is recorded as MD1 in the first memory cell. All melody data values MD1. . . MDn are tapped in parallel, indicated in FIG. 3 by a brace, from which a parallel partial sequence PTS results for further processing. Furthermore, the melody data stream MDS is tapped directly and separately from the first memory cell with the current melody data value MD1.

In der Darstellung gemäß Fig. 4 wird das Prinzip der Umsetzung des digitalen Begleitungsdatenstromes BDS in einen parallelen binären Tastaturcode dargestellt, so wie dies im Codewandler CW erfolgt. Ähnlich wie unter Fig. 3 gezeigt, wird der Beglei­ tungsdatenstrom einem First-In-First-Out-Shift-Register mit m Speicherzellen zugeführt. Dabei durchlaufen die Begleitungs­ datenwerte des Begleitungsdatenstromes BDS die Speicherzellen von links nach rechts, so daß immer m Begleitungsdatenwerte BD1 . . . BDm parallel abgegriffen werden können. Die Beglei­ tungsdatenwerte BD1 . . .BDm werden einer virtuellen Klaviatur zugeordnet und zwar derart, daß jeder mögliche digitale Begleitungsdatenwert mit einer Taste dieser Virtuellen Kla­ viatur verknüpft wird. Die einzelnen Tasten der Klaviatur werden durch einen binären Code repräsentiert, in der Fig. 4 dargestellt durch den Binär- bzw. Null-Eins-Code, welcher unterhalb der Klaviatur abgebildet ist. Für jeden Beglei­ tungsdatenwert, der das First-In-First-Out-Shift-Register durchläuft, wird nun das Bit der entsprechenden Taste der virtuellen Klaviatur gesetzt. In der Fig. 4 ist dies verdeut­ licht durch die Linien, welche den jeweiligen Begleitungs­ datenwert mit der diesem zugeordneten Taste verbinden. Auf diese Art und Weise ergibt sich ein paralleler binärer Tasta­ turcode TC, welcher für die weitere Verarbeitung abgegriffen wird. Dieser Sachverhalt wird durch die geschweifte Klammer verdeutlicht.In the representation of FIG. 4 is presented the principle of the implementation of the digital accompaniment data stream BDS into a parallel binary code keyboard, so as in the code converter CW is done. Similar to that shown in FIG. 3, the accompanying data stream is fed to a first-in-first-out shift register with m memory cells. The accompanying data values of the accompanying data stream BDS pass through the memory cells from left to right, so that always m accompanying data values BD1. . . BDm can be tapped in parallel. The accompanying data values BD1. . .BDm are assigned to a virtual keyboard in such a way that every possible digital accompaniment data value is linked to a key of this virtual keyboard. The individual keys of the keyboard are represented by a binary code, shown in FIG. 4 by the binary or zero-one code, which is shown below the keyboard. The bit of the corresponding key of the virtual keyboard is now set for each accompaniment data value that passes through the first-in-first-out shift register. In Fig. 4, this is illustrated by the lines which connect the respective accompanying data value with the key assigned to it. This results in a parallel binary keyboard code TC, which is tapped for further processing. This fact is illustrated by the curly bracket.

In der Darstellung gemäß Fig. 5 wird eine Prinzipskizze eines Neuronalen Netzes NN gezeigt, mit welchem die musikalische Wissensbasis erzeugt wird. Es besteht aus mehreren Schichten von Neuronen, von denen der Übersichtlichkeit halber nur eines mit N bezeichnet ist. Die Schichten unterteilen sich in eine Eingangsschicht ES, eine Zwischenschicht ZS und eine Ausgangsschicht AS. Aufgrund der besseren Übersichtlichkeit sind in Fig. 5 nur drei Schichten von Neuronen N dargestellt. Es sei jedoch bereits an dieser Stelle darauf hingewiesen, daß die Anzahl der Zwischenschichten varieren kann und nur aufgrund der Darstellung des Prinzips in Fig. 5 lediglich eine Zwischenschicht ZS abgebildet ist. Jedes Neuron N einer Schicht ist mit allen Neuronen der nachfolgenden bzw. rechts davon liegenden Schicht von Neuronen verbunden, was in der Darstellung durch die Linien zwischen den einzelnen Neuronen illustriert ist. Von außen gelangen nur über die Eingangs­ schicht ES und die Ausgangsschicht AS Daten zum Neuronalen Netz NN. Über den Eingang E werden die Eingangsdaten an die Eingangsschicht ES des Neuronalen Netzes NN geführt, über den bidirektionalen Ausgang A werden zum einen in der Trainings­ phase Daten von außen an des Neuronale Netz NN geführt, zum anderen werden die in der Wiedergabephase erzeugten Ausgangs­ werte vom Ausgang A abgegriffen.In the illustration of FIG. 5 is a schematic diagram of a neural network NN is shown with which the musical knowledge base is generated. It consists of several layers of neurons, of which only one is labeled N for the sake of clarity. The layers are subdivided into an input layer ES, an intermediate layer ZS and an output layer AS. For better clarity, only three layers of neurons N are shown in FIG. 5. However, it should be pointed out at this point that the number of intermediate layers can vary and only one intermediate layer ZS is shown only on the basis of the principle shown in FIG. 5. Each neuron N of a layer is connected to all neurons of the subsequent or to the right of it layer of neurons, which is illustrated in the illustration by the lines between the individual neurons. From the outside, data only reach the neural network NN via the input layer ES and the output layer AS. Via the input E, the input data are routed to the input layer ES of the neural network NN, via the bidirectional output A, data are passed from the outside to the neural network NN in the training phase, on the other hand, the output values generated in the playback phase are from Output A tapped.

Im folgenden soll die detaillierte Wirkungsweise einer lern­ fähigen, intelligenten Musikbegleitautomatik für elektroni­ sche Klangerzeuger gemäß der Erfindung anhand eines konkreten Ausführungsbeispiels mit Einsatz des Musical-Instruments- Digital-Interface, kurz MIDI-Standards erläutert werden. Da in der Begleitautomatik ein Neuronales Netz NN als zentra­ les Element der Schaltung zum Einsatz kommt, muß der Betrieb in zwei Phasen eingeteilt werden. Zu Beginn steht eine Trai­ ningsphase, in der die Wissensbasis des Neuronalen Netzes NN, welche Grundlage für die künstliche Intelligenz der vorlie­ genden Begleitautomatik ist, erzeugt wird. Diese Trainings­ phase muß mindestens einmal durchgeführt werden, kann jedoch später zur Erweiterung oder zur Berechnung einer neuen Wis­ sensbasis wiederholt werden. In der Trainingsphase werden somit alle Schritte durchgeführt, welche die Lernfähigkeit der vorliegenden Begleitautomatik gemäß der Erfindung bewir­ ken. Der eigentliche Betrieb der Begleitautomatik findet in der Wiedergabephase statt. Dabei generiert das Neuronale Netz NN anhand der in der Trainingsphase berechneten Wissensbasis, die im folgenden auch als musikalisches Repertoire bezeichnet werden soll, die musikalische Begleitung. Zur Darstellung der Wirkungsweise soll zunächst das Verfahren während der Trai­ ningsphase beschrieben werden.In the following, the detailed mode of action of a learn capable, intelligent automatic music accompaniment for electronics cal sound generator according to the invention based on a concrete Exemplary embodiment using the musical instrument Digital interface, short MIDI standards are explained. Since in the automatic accompaniment a neural network NN as a central les element of the circuit is used, the operation can be divided into two phases. At the beginning there is a trai ning phase, in which the knowledge base of the neural network NN,  what basis for the artificial intelligence of the present automatic accompaniment is generated. These trainings phase must be carried out at least once, but can later to expand or calculate a new wis be repeated. Be in the training phase thus carried out all the steps that affect learning ability the present automatic accompaniment according to the invention ken. The actual operation of the automatic accompaniment takes place in the playback phase. The neural network generates NN based on the knowledge base calculated in the training phase, hereinafter also referred to as the musical repertoire to be the musical accompaniment. To represent the The method should initially work during the trai ning phase are described.

Auf der Klaviatur eines MIDI-fähigen elektronischen Keyboards KB oder auch eines Synthesizers oder eines Digital-Pianos wird ein komplettes Musikstück mit Melodie und Begleitung gespielt. Die gespielten Noten werden in digitale elektroni­ sche Musiknoteninformationen umgesetzt und in Form eines seriellen Datenstromes DS zu einer Schnittstelle, einem MIDI- Interface MIF geführt. Übertragen werden somit nicht die Klänge an sich, sondern Steuerungsdaten, die die Noteninfor­ mationen als digitale Zahlenwerte enthalten. Von dort wird der Datenstrom DS an einen Notenfilter NF weitergeleitet. In dem Notenfilter NF wird der Datenstrom DS, der Melodie- und Begleitungsdaten enthält, in einen Melodiedatenstrom MDS und einen Begleitungsdatenstrom BDS aufgeteilt. Dazu werden die digitalen MIDI-Notenwerte des Datenstromes DS zuerst auf einen digitalen Hochpaß-Filter HPF gegeben, wo die digitalen Notenwerte herausgefiltert werden, welche über einer bestimm­ ten Tonhöhe liegen. Die herausgefilterten Notenwerte bilden den Melodiedatenstrom MDS. Die Tonhöhe, welche variabel ist, entspricht der unteren Grenzfrequenz des Hochpaß-Filters HPF und liegt sinnvollerweise in einem Oktavbereich, in welchem die Noten niedrigerer Tonhöhe der Begleitung und die Noten der Melodie mit im Vergleich zur Begleitung höherer Tonhöhe aneinandergrenzen. Leichte Überschneidungen der beiden Berei­ che sind unproblematisch. Eine vorteilhafte Grenzfrequenz stellt der Notenwert des "Eingestrichen C" dar. Anschließend wird der Datenstrom DS an ein digitales Tiefpaß-Filter TPF weitergeführt, wo die digitalen Notenwerte herausgefiltert werden, welche unter der oben beschriebenen Tonhöhe liegen. Auch hier entspricht die Tonhöhe der Grenzfrequenz des Tief­ paß-Filters TPF, jedoch nun der oberen Grenzfrequenz. Die so vom Tiefpaß-Filter TPF herausgefilterten Notenwerte bilden den Begleitungsdatenstrom BDS.On the keyboard of a MIDI-capable electronic keyboard KB or a synthesizer or a digital piano becomes a complete piece of music with melody and accompaniment played. The played notes are in digital electronics musical note information implemented and in the form of a serial data stream DS to an interface, a MIDI Interface MIF managed. The are therefore not transmitted Sounds in themselves, but control data that the note information included as digital numerical values. From there the data stream DS is forwarded to a note filter NF. In the note filter NF is the data stream DS, the melody and Accompanying data contains, in a melody data stream MDS and split an accompanying data stream BDS. To do this, the digital MIDI note values of the data stream DS first given a digital high pass filter HPF where the digital Note values are filtered out, which over a certain th pitch. Form the filtered note values the melody data stream MDS. The pitch, which is variable, corresponds to the lower cut-off frequency of the high-pass filter HPF and lies in an octave range, in which the notes of the lower pitch of the accompaniment and the notes  the melody with a higher pitch compared to the accompaniment adjoin. Slight overlaps between the two areas che are unproblematic. An advantageous cut-off frequency represents the note value of the "dash C". Then the data stream DS to a digital low-pass filter TPF continued where the digital note values are filtered out which are below the pitch described above. Here, too, the pitch corresponds to the cutoff frequency of the low pass filter TPF, but now the upper limit frequency. The so form note values filtered out by the low-pass filter TPF the accompanying data stream BDS.

Der Melodiedatenstrom MDS wird an den Eingang eines First-In- First-Out-Shift-Registers FIFO geleitet, wo die seriellen digitalen Melodiedatenwerte MD1 . . . MDn des Melodiedatenstromes MDS in eine parallele Teilsequenz PTS umgesetzt werden. Dies ist erforderlich, da eine Melodie nicht anhand eines einzel­ nen Notenwertes repräsentiert werden kann, sondern nur eine Abfolge von Notenwerten eine Melodie ergibt. Und nur zu einer solchen Melodie kann auch eine sinnvolle musikalische Beglei­ tung erzeugt werden. Dabei kann die Anzahl der einzelnen Melodiedatenwerte MD1 . . . .MDn je nach Musikmaterial varieren und ist aus diesem Grunde in der vorliegenden Schaltung variabel gehalten. Der First-In-First-Out-Shift-Register FIFO besitzt daher n Speicherzellen zur Aufnahme von n Melodieda­ tenwerte MD1 . . . MDn. Mit jedem Eintreffen eines weiteren Melodiedatenwertes werden die in den n Speicherzellen des First-In-First-Out-Shift-Registers FIFO befindlichen Melodie­ datenwerte MS1 . . . .MDn um eine Position nach rechts geshiftet, also verschoben, der letzte Melodiedatenwert MDn geht dabei verloren und der neue Melodiedatenwert nimmt die Position des vorherigen Melodiedatenwertes MD1 ein. Auf diese Weise befin­ den sich ständig n Melodiedatenwerte im First-In-First-Out- Shift-Register FIFO, die als parallele Teilsequenz PTS abge­ griffen werden können und die die sich fortentwickelnde Melodie repräsentieren. Eine größere Anzahl an n Melodieda­ tenwerten MD1 . . . MDn bewirkt einen höheren Detaillierungsgrad der Melodie. Ein für vorliegenden Anwendungsfall gemäß der Erfindung sinnvoller Bereich liegt zwischen n=10 und n=50. Zu Beginn, wenn die Speicherzellen des First-In-First-Out- Shift-Registers FIFO noch leer sind, wartet die Begleitauto­ matik solange, bis n Melodiedatenwerte vorliegen und die erste parallele Teilsequenz PTS gefüllt ist, ehe die Berech­ nungen im Neuronalen Netz NN angestellt werden.The melody data stream MDS is sent to the input of a first-in First-out shift registers FIFO passed where the serial digital melody data values MD1. . . MDn of the melody data stream MDS can be implemented in a parallel partial sequence PTS. This is required because a melody is not based on a single a note value can be represented, but only one Sequence of note values results in a melody. And only one such melody can also be a useful musical accompaniment tion are generated. The number of each can Melody data values MD1. . . .MDn vary depending on the music material and is for this reason in the present circuit kept variable. The first-in-first-out shift register FIFO therefore has n memory cells to hold n melody MD1. . . MDn. With each arrival of another Melody data values are stored in the n memory cells of the First-In-First-Out-Shift-Register FIFO located tune data values MS1. . . .MDn shifted one position to the right, so shifted, the last melody data value MDn goes lost and the new melody data takes the position of the previous melody data value MD1. This way the constantly changing melody data values in the first-in-first-out Shift register FIFO, the abge as a parallel partial sequence PTS can be grasped and that the evolving Represent melody. A larger number of n Melodieda MD1. . . MDn results in a higher level of detail  the melody. A for the present application according to the Invention meaningful range is between n = 10 and n = 50. At the beginning when the memory cells of the first-in-first-out Shift registers FIFO are still empty, the companion waits matics until n melody data values are available and the first parallel partial sequence PTS is filled before the comp in the neural network NN.

Die auf diese Art und Weise erzeugten Daten der parallelen Teilsequenz PTS werden über einen Puffer P1 an den Eingang E des Neuronalen Netzes NN geführt. Der Puffer P1 wird über ein Taktsignal T gesteuert, welches vom Neuronalen Netz NN er­ zeugt wird und das sich nach dessen Verarbeitungsgeschwindig­ keit richtet. Mit jedem Takt des Taktsignals T werden die sich ständig mit der sich fortentwickelnden Melodie ändernden Daten der parallelen Teilsequenz PTS in den Puffer P1 über­ nommen und dort aktualisiert. Dort stehen sie dann definiert mit konstantem Pegel zur Verarbeitung im Neuronalen Netz NN zur Verfügung.The data of the parallel generated in this way Partial sequence PTS are transferred to input E via a buffer P1 of the neural network NN. The buffer P1 is over a Clock signal T controlled, which he from the neural network NN is produced and that after its processing speed judges. With each clock of the clock signal T, the constantly changing with the evolving melody Data of the parallel partial sequence PTS in the buffer P1 via taken and updated there. They are then defined there with constant level for processing in the neural network NN to disposal.

Der vom Notenfilter NF ausgehende Begleitungsdatenstrom BDS wird an einen Codewandler CW weitergeleitet. Dort werden die seriellen Begleitungsdatenwerte BD1 . . .BDm in einen parallelen binären Tastaturcode TC umgesetzt. Dazu wird wiederum ein First-In-First-Out-Shift-Register eingesetzt, welches von den seriellen Begleitungsdatenwerten BD1 . . . . . .BDm des Begleitungsda­ tenstromes BDS nach dem oben dargestellten Prinzip durchlau­ fen wird. Jedem möglichen Notenwert der Begleitungsdatenwerte ist nun eine Taste einer virtuelle Klaviatur zugeordnet. Jede Taste der virtuellen Klaviatur wird durch ein eigenes Bit repräsentiert. Tritt ein bestimmter Notenwert in Form des entsprechenden digitalen MIDI-Begleitungsdatenwertes im First-In-First-Out-Shift-Register auf, so wird die diesem Notenwert entsprechende Taste der virtuellen Klaviatur ange­ schlagen, was durch das Setzen des dieser Taste zugeordneten Bits von "Null" auf "Eins" entspricht. Hat dieser spezielle Begleitungsdatenwert den First-In-First-Out-Shift-Register durchlaufen und ist am rechten Ende herausgefallen, so wird das Bit der entsprechenden Taste wieder gelöscht. Die Bits des so erzeugten binären Tastaturcodes TC entsprechen den Tasten des für die Begleitung verwendeten und durch die Grenzfrequenzen im Notenfilter NF festgelegten unteren Oktav­ bereiches. Ein für den vorliegenden Anwendungsfall sinnvoller Kompromiß zwischen Tonumfang der Begleitung und der dadurch bedingten Bitbreite des Tastaturcodes TC, welche die Verar­ beitungsgeschwindigkeit entscheidend beeinflußt, liegt zwi­ schen 2 und 4 Oktaven. Der binäre Tastaturcode TC wird paral­ lel abgegriffen, um ihn dem Ausgang des Neuronalen Netzes NN zuzuführen. Diese Codewandlung ist notwendig, weil der Aus­ gang eines Neuronalen Netzes stabiler arbeitet, wenn er ledigliche binäre "Null-Eins-Ausgangssignale" generieren muß und keine kontinuierlichen diskreten digitalen Werte, was für die Erzeugung von Musik ungeeignet ist. Der binäre Tasta­ turcode TC gelangt über einen digitalen Schalter S1 und einen weiteren Puffer P2 an den Ausgang A des Neuronalen Netzes NN. Der digitale Schalter S1 dient zur Beschaltung des bidirek­ tionalen Ausgangs A des Neuronalen Netzes NN entweder für die Trainingsphase oder für die Wiedergabephase und arbeitet im Zusammenhang mit einem zweiten digitalen Schalter S2 als Auswahlschaltung. Angesteuert werden die beiden digitalen Schalter S1 und S2 von einem Signal M, welches zur Wahl des Betriebsmodus dient. Das Signal M wird direkt an Schalter S1 und über einen Inverter I in invertierter Form zum Schalter S2 geführt. Führt das Signal M High-Potential bzw. einen logischen Eins-Pegel, so wird Schalter S1 durchge­ schaltet, während Schalter S2 sperrt, da an diesen das inver­ tierte Signal M, in diesem Fall also Low-Potential bzw. Null- Pegel gelangt. Für M = 1 ist somit die eben behandelte Trai­ ningsphase gewählt. Der Puffer P2 besitzt die gleiche Funkti­ on wie Puffer P1 und wird ebenfalls vom Taktsignal T ange­ steuert, nur daß nun die Daten des binären Tastaturcodes TC übernommen und aktualisiert werden. Aufgrund des gemeinsam verwendeten Taktsignals T erfolgt eine Übernahme neuer Werte in beide Puffer P1 und P2 synchron. The accompanying data stream BDS originating from the note filter NF is forwarded to a code converter CW. There are the accompanying serial data values BD1. . .BDm in a parallel binary keyboard code TC implemented. To do this, in turn First-In-First-Out-Shift-Register used by the accompanying serial data values BD1. . . . . .BDm of the escort tenstromes BDS according to the principle outlined above will. Any possible note value of the accompanying data values a key is now assigned to a virtual keyboard. Each The key of the virtual keyboard is a separate bit represents. Occurs a certain note value in the form of the corresponding digital MIDI accompaniment data value in First-In-First-Out-Shift-Register, so this will Corresponding key of the virtual keyboard hit what is assigned by setting the button assigned to this Bits from "zero" to "one". Has this special one Accompanying data value the first-in-first-out shift register go through and has fallen out at the right end, so  the bit of the corresponding key is deleted again. The bits of the binary keyboard code TC thus generated correspond to Keys used for accompaniment and by the Cutoff frequencies in the note filter NF specified lower octave area. This makes more sense for the present application Compromise between the range of the accompaniment and that conditional bit width of the keyboard code TC, which the process processing speed is crucially influenced, is between between 2 and 4 octaves. The binary keyboard code TC becomes parallel lel tapped to him the output of the neural network NN feed. This code conversion is necessary because of the out a neural network works more stable if it must generate only binary "zero-one output signals" and no continuous discrete digital values, what the generation of music is unsuitable. The binary tasta turcode TC passes through a digital switch S1 and another buffer P2 to the output A of the neural network NN. The digital switch S1 is used to connect the bidirek tional output A of the neural network NN either for the Training phase or for the playback phase and works in Connection with a second digital switch S2 as Selection circuit. The two are controlled digitally Switches S1 and S2 from a signal M which is used to select the Operating mode. The signal M is sent directly to switch S1 and via an inverter I in inverted form led to switch S2. Carries the signal M high potential or a logic one level, switch S1 is switched through switches while switch S2 blocks, because the inv tated signal M, in this case thus low potential or zero Level reached. For M = 1 the trai just treated is selected phase. The buffer P2 has the same function on as buffer P1 and is also indicated by the clock signal T. controls, only that now the data of the binary keyboard code TC be adopted and updated. Because of the common used clock signal T takes over new values in both buffers P1 and P2 synchronously.  

Dem Neuronalen Netz NN stehen somit ständig aktualisierte Melodiewerte in Form der parallelen Teilsequenz PTS und Begleitungsdaten in Form des parallelen binären Tastaturcodes TC zur Verfügung. Mit Hilfe dieser Werte kann die Wissensba­ sis, welche das musikalische Repertoire darstellt, berechnet werden. Zum Einsatz eignen sich unterschiedliche Formen von Neuronalen Netzen, so z. B. Backpropagation Network, Cohonen Feature-Map und Hopfield-Netzwerk (siehe dazu Ritter, H: Neuronale Netze: eine Einführung in die Neuroinformatik selbstorganisierender Netzwerke, Bonn; München; Reading, Mass (u. a.): Addison-Wesley, 1991). Das vorliegende vorteilhafte Ausführungsbeispiel soll anhand eines Backpropagation Net­ works mit Generalized Delta-Rule erläutert werden. Dieses besteht aus mehreren Netzwerkschichten, nämlich einer Ein­ gangsschicht ES, einer oder mehrerer Zwischenschichten ZS und einer Ausgangsschicht AS. Jede Schicht enthält eine bestimmte Anzahl Neuronen N, wobei jedes Neuron N mit jedem Neuron der darauffolgenden Schicht verbunden ist. Ein Neuron N kann vereinfacht mit einer komplex vernetzten Speicherzelle ver­ gleichen werden. Über den Eingang E werden Daten an die Eingangsschicht ES geführt. Der Ausgang A ist bidirektional ausgebildet, so daß er sowohl als Ausgang, als auch als Eingang geschaltet werden kann. Über den Ausgang A werden Daten entweder an die Ausgangsschicht AS geleitet oder von der Ausgangsschicht AS am Ausgang A zur weiteren Verarbeitung zur Verfügung gestellt. Dieser Sachverhalt liegt in dem speziellen Vorgehen während der Trainingsphase begründet, wo Relationen zwischen Eingangsdaten und Ausgangsdaten berechnet und in den Neuronen N abgespeichert werden. Dazu werden die Neuronen N des Neuronalen Netzes NN zu Beginn mit Zufalls­ werten initialisiert. Mit dem sogenannten Backpropagation- Algorithmus, einem rekursiven Fehler-Rückwärts-Korrektur­ verfahren, wird dann anhand der an den Eingang E geführten Melodiedatenwerte in Form der parallelen Teilsequenz PTS und der an den als Eingang geschalteten Ausgang A geführten Begleitungsdatenwerte in Form des binären Tastaturcodes TC die Wissensbasis bestimmt, indem sukzessive die bei der Initialisierung eingespeicherten Werte in solche umgerechnet werden, die den Informationsgehalt und die Relationen zwi­ schen Melodie am Eingang E und Begleitung am Ausgang A reprä­ sentieren. Ein sinnvolles Ende dieses Vorgehens ist dann erreicht, wenn sich mit den in die Neuronen N eingespeicher­ ten Informationen, mithin der Wissensbasis, anhand der Melo­ diedaten am Eingang E solche Begleitungsdaten am Ausgang A berechnen lassen, die nur noch minimal von den originalen Begleitungsdaten, anhand derer die Wissensbasis gewonnen wurde, abweichen. Ein ausreichend minimaler Abweichungsfeh­ ler, das sogenannte Delta, liegt für den vorliegenden Anwen­ dungsfall etwa zwischen 10% und 0,01%. Dabei steigt die erforderliche Rechenzeit je kleiner das Delta angesetzt wird. Jedoch steigt damit auch die Genauigkeit und Akkuratesse der Begleitung. Die Berechnungsgrundlagen des Backpropagation- Algorithmus sind jedoch nicht Bestandteil der vorliegenden Erfindung, sondern diese setzt den Algorithmus lediglich als Hilfsmittel ein. Entscheidend ist vielmehr die Signalvorver­ arbeitung, die Erzeugung geeigneter Eingangs- und Ausgangssi­ gnale, wie sie weiter oben bereits beschrieben wurden. Des­ halb soll diese grobe Skizzierung der Berechnungsgrundlagen an dieser Stelle genügen (für weitere Details siehe bspw. Kirchner, W.: Fehlerkorrektur im Rückwärtsgang, c′t (Computer-Technologie), Heise-Verlag 1990, Ausgabe Nr. 11, S. 248ff.).The neural network NN is therefore constantly updated Melody values in the form of the parallel partial sequence PTS and Accompanying data in the form of the parallel binary keyboard code TC available. With the help of these values, the Wissensba sis, which represents the musical repertoire will. Different forms of are suitable for use Neural networks, e.g. B. Backpropagation Network, Cohonen Feature map and Hopfield network (see also Ritter, H: Neural networks: an introduction to neuroinformatics self-organizing networks, Bonn; Munich; Reading, Mass (et al.): Addison-Wesley, 1991). The present advantageous Embodiment should use a backpropagation net works with Generalized Delta Rule. This consists of several network layers, namely an on transition layer ES, one or more intermediate layers ZS and an output layer AS. Each layer contains a certain one Number of neurons N, each neuron N with each neuron subsequent layer is connected. A neuron N can simplified with a complex networked memory cell will be the same. Data is sent to the Entry layer ES led. Output A is bidirectional trained so that it as both an exit, and as Input can be switched. Be through output A. Data either passed to the output layer AS or from the output layer AS at output A for further processing made available. This fact lies in the special procedure during the training phase justifies where Relations between input data and output data are calculated and stored in the neurons N. To do this, the Neurons N of the neural network NN at the beginning with random values initialized. With the so-called back propagation Algorithm, a recursive error backward correction process, is then based on the input E Melody data values in the form of the parallel partial sequence PTS and the led to the output A connected as input Accompanying data values in the form of the binary keyboard code TC  determines the knowledge base by successively developing the Initialization of stored values converted into such the information content and the relations between Represent the melody at input E and accompaniment at output A submit. A sensible end to this procedure is then reached when the N is stored in the neurons information, hence the knowledge base, based on the Melo the data at input E such accompanying data at output A Calculate that only minimally from the original Accompanying data, on the basis of which the knowledge base is obtained was deviate. A sufficiently minimal deviation error ler, the so-called delta, is for the present user case between 10% and 0.01%. The increases required computing time the smaller the delta is set. However, this increases the accuracy and accuracy of the Escort. The basis of calculation for back propagation However, algorithms are not part of the present Invention, but this only sets the algorithm as Aids. The decisive factor is rather the signal advance work, the generation of suitable input and output si signals as already described above. Des half of this rough outline of the calculation bases suffice at this point (for further details see e.g. Kirchner, W .: Error correction in reverse gear, c′t (Computer Technology), Heise-Verlag 1990, Issue No. 11, p. 248ff.).

Bezüglich der Dimensionierung der Netzwerktopologie erweist sich für den vorliegenden Anwendungsfall ein weiter Bereich als sinnvoll. Die Anzahl der Neuronen N in der Ausgangs­ schicht AS entspricht der Anzahl der für die Begleitung verwendeten Tasten im unteren Oktavbereich auf der virtuellen Klaviatur des Codewandlers CW und damit der Anzahl an Bit­ stellen des binären Tastaturcodes TC. Die Anzahl der Neuronen N der Eingangsschicht entspricht der Anzahl an Speicherzellen n und damit der Breite des First-In-First-Out-Shift-Registers FIFO, in dem die parallele Teilsequenz PTS aus den einzelnen seriellen Meldiedatenwerten MD1 . . . MDn gebildet wird. Für die variable Anzahl an Zwischenschichten ZS empfiehlt sich ein Wert zwischen einer und drei Schichten. Die Anzahl der Neuro­ nen N innerhalb dieser Zwischenschichten ZS ist in weiten Bereichen variabel und richtet sich im wesentlichen nach der Art des zum Training verwendeten Musikmaterials. Eine genaue Bereichsangabe ist daher weder möglich noch sinnvoll. Als Richtwert kann hier ein Wert angegeben werden, der zwischen dem 0,5fachen und dem 1,5fachen der Anzahl der Neuronen N der Eingangsschicht ES liegt.Proven with regard to the dimensioning of the network topology a wide range for the present application as meaningful. The number of neurons N in the output layer AS corresponds to the number of for the accompaniment buttons used in the lower octave range on the virtual Keyboard of the code converter CW and thus the number of bits set the binary keyboard code TC. The number of neurons N of the input layer corresponds to the number of memory cells n and thus the width of the first-in-first-out shift register FIFO, in which the parallel partial sequence PTS consists of the individual  serial reporting data values MD1. . . MDn is formed. For the variable number of intermediate layers ZS is recommended Value between one and three layers. The number of neuros NEN within these intermediate layers ZS is broad Variable and depends essentially on the Type of music material used for training. An exact Range specification is therefore neither possible nor sensible. As As a guideline, you can enter a value between 0.5 times and 1.5 times the number of neurons N the Input layer ES lies.

Ist die Trainingsphase mit der Berechnung der musikalischen Wissenbasis, dem Repertoire, abgeschlossen, so können die gelernten Werte der einzelnen Neuronen N, die die Wissensba­ sis bilden, auf einen Massenspeicher MSP, z. B. eine Diskette oder eine Festplatte, gesichert werden, um sie später jeder­ zeit wiederverwenden zu können.Is the training phase with the calculation of the musical Knowledge base, the repertoire, so they can learned values of the individual neurons N, which the Wissensba sis form, on a mass storage MSP, z. B. a floppy disk or a hard drive, backed up to everyone later time to be able to reuse.

Während der Trainingsphase werden die digitalen MIDI-Notenin­ formationen des Datenstromes DS vorteilhafterweise im MIDI- Interface MIF zum elektronischen Klangerzeuger, z. B. einem MIDI-fähigen Musiksynthesizer, durchgeschleift, um sie auch während der umfangreichen Berechnungen der Trainingsphase hörbar zu machen. Dazu schaltet ein digitalen Schalter S3, der durch das Signal M zur Einstellung des Modus angesteuert wird, den Datenstrom DS durch.During the training phase, the digital MIDI notes become formations of the data stream DS advantageously in the MIDI Interface MIF to the electronic sound generator, e.g. B. one MIDI-enabled music synthesizer, looped through to it too during the extensive calculations of the training phase to make it audible. A digital switch S3 switches which is controlled by the signal M to set the mode the data stream DS through.

Für die Fälle, in denen die Verarbeitungsgeschwindigkeit der vorliegenden Begleitautomatik gemäß der Erfindung für einen Echtzeitbetrieb in der Trainingsphase nicht ausreicht, können die auf dem MIDI-Keyboard KB gespielten und erzeugten digita­ len MIDI-Noteninformationen in Form des Datenstromes DS mit einem Notensequenzer SQ aufgezeichnet werden. Diese Vorge­ hensweise beinhaltet den Vorteil, daß die Musikinformationen jederzeit wiedergegeben werden können, so daß die Möglichkeit besteht, das Neuronale Netz NN in der Trainingsphase mehrmals mit ein und demselben Musikmaterial in mehreren Durchgängen, sogenannten Lernepochen, zu trainieren. Auf diese Weise können die Informationen des zugrundegelegten Musikmaterials exakter gelernt werden.In cases where the processing speed of the present automatic accompaniment according to the invention for a Real-time operation in the training phase is not sufficient the digita played and generated on the MIDI keyboard KB len MIDI note information in the form of the data stream DS with a note sequencer SQ can be recorded. This Vorge hens contains the advantage that the music information can be played back at any time so that the possibility exists, the neural network NN several times in the training phase with one and the same music material in several passes, so-called learning epochs to train. In this way  can use the information of the underlying music material can be learned more precisely.

In der späteren Wiedergabephase erfolgt kein Durchschleifen der MIDI-Notenwerte des Datenstromes DS zum elektronischen Klangerzeuger KE, da das Signal M zur Moduswahl auf "Null"- Pegel geschaltet wird und der Schalter S3 nunmehr sperrt. Alle digitalen Noteninformationen laufen durch die Schaltung der Begleitautomatik. Wiederum werden auf dem elektronischen MIDI-fähigen Keyboard KB digitale Notenwerte erzeugt. Da die Begleitung automatisch hinzugeneriert werden soll, wird man sinnvollerweise nur eine Melodie spielen, so daß der Daten­ strom DS nunmehr nur noch Melodiedatenwerte enthält. Ist dies nicht der Fall, so werden eventuell vorhandene Begleitungsda­ tenwerte im Notenfilter NF entsprechend dem oben dargestellten Verfahren mit dem digitalem Tiefpaß-Filter herausgefil­ tert. Diese bilden dann zwar einen Begleitungsdatenstrom BDS, der im Codewandler CW wie oben beschrieben in einen Tasta­ turcode TC umgesetzt wird, jedoch ist der digitale Schalter S1 nun gesperrt, da das Signal M zur Moduswahl auf "Null"- Pegel liegt. Ein solcher Begleitungsdatenstrom BDS gelangt somit nicht mehr an den Ausgang des Neuronalen Netzes NN. Anders hingegen sieht es mit den Melodiedaten aus. Da im Notenfilter NF die Melodiedatenwerte MD1 . . . MDn aus dem Daten­ strom DS durch das digitale Hochpaß-Filter herausgefiltert werden, wird erneut ein Melodiedatenstrom MDS gebildet, der über den First-In-First-Out-Shift-Register FIFO wie oben beschrieben in eine parallele Teilsequenz PTS umgesetzt wird und über den Puffer P1 an den Eingang des Neuronalen Netzes NN geführt wird. Bezüglich der Melodiedaten besteht somit kein Unterschied zur Trainingsphase.No looping occurs in the later playback phase the MIDI note values of the data stream DS to the electronic Tone generator KE, because the signal M for mode selection to "zero" - Level is switched and the switch S3 now blocks. All digital note information runs through the circuit the automatic accompaniment. Again, be on the electronic MIDI-enabled Keyboard KB generates digital note values. Since the Accompaniment should be automatically added, you will sensibly just play a melody so that the data stream DS now only contains melody data values. Is this If this is not the case, any accompanying data ten values in the note filter NF corresponding to that shown above Filed out the procedure with the digital low-pass filter tert. These then form an accompanying data stream BDS, that in the code converter CW into a keyboard as described above turcode TC is implemented, however, is the digital switch S1 now blocked because the signal M for mode selection to "zero" - Level lies. Such an accompanying data stream BDS arrives thus no longer at the output of the neural network NN. The situation is different with the melody data. Since in Note filter NF the melody data values MD1. . . MDn from the data current DS filtered out by the digital high-pass filter a melody data stream MDS is formed again via the first-in-first-out shift register FIFO as above described is converted into a parallel partial sequence PTS and via the buffer P1 to the input of the neural network NN is performed. So there is with regard to the melody data no difference to the training phase.

In der Wiedergabephase ist der bidirektionale Ausgang A des Neuronalen Netzes NN als Ausgang geschaltet, über den die vom Neuronalen Netz NN anhand seiner musikalischen Wissensbasis, dem Repertoire, generierten Begleitungsdaten zur Verfügung stehen. Anhand der am Eingang E des Neuronalen Netzes NN anliegenden Melodiedaten in Form der Parallelen Teilsequenz PTS berechnet das Neuronale Netz NN mit Hilfe der in den einzelnen Neuronen N eingespeicherten Werte der Wissensbasis Begleitungsdaten, die der in der Trainingsphase zugrunde gelegten Musikstilrichtung ähnlich sind. Die Begleitautomatik generiert somit Begleitelemente, die sie mit eigener künstli­ cher Intelligenz anhand der vorliegenden Melodie aufgrund von Ähnlichkeiten mit vorherigen Melodieelementen der Trainings­ phase aus dem Fundus des Repertoires auswählt und angepaßt auf die in der Wiedergabephase steuernde Musik wiedergibt. Da der Ausgang bereits in der Trainingsphase mit Begleitungsdaten in Form des binären Tastaturcodes TC angesteuert wurde, erzeugt das Neuronale Netz NN nun ebenfalls Ausgangswerte als binären Tastaturcode, den generierten Tastaturcode GTC. Dieser ge­ langt über den digitalen Schalter S2, welcher mit dem inver­ tierten Signal M zur Moduswahl, also nun mit "Eins"-Pegel, angesteuert und durchgeschaltet wird, an den Code-Rückwandler CRW. Im Code-Rückwandler CRW findet nun exakt der umgekehrte Vorgang wie im Codewandler CW statt, indem der generierte binäre Tastaturcode GTC in einen der Taste bzw. der durch sie repräsentierten Note entsprechenden digitalen MIDI-Notenwert umsetzt wird. Daraus resultiert wieder ein serieller Beglei­ tungsdatenstrom im MIDI-Format, der generierte Begleitungsda­ tenstrom GBDS. Dieser wird gemeinsam mit dem steuernden Melodiedatenstrom MDS, welcher vom Notenfilter NF abgezweigt wird, einem Notenmischer NM zugeführt, in dem die beiden separaten seriellen Datenströme zu einem gemeinsamen Melodie- und Begleitungsdatenstrom MBDS zusammengemischt werden. Der Notenmischer NM funktioniert gewissermaßen wie eine MIDI- Merge-Box. Der gemeinsame Melodie- und Begleitungsdatenstrom MBDS wird nun vom Ausgang des Notenmischers NM zum MIDI- Interface MIF geleitet und von dort an den elektronischen MIDI-Klangerzeuger KE weitergeleitet, wo steuernde Melodieda­ ten und automatisch hinzugenerierte Begleitung hörbar gemacht werden.The bidirectional output A is in the playback phase Neural network NN switched as an output, through which the from Neural network NN based on its musical knowledge base, the repertoire, generated accompanying data stand. Using the at the input E of the neural network NN  melody data in the form of the parallel partial sequence PTS calculates the neural network NN using the in the individual neurons N stored values of the knowledge base Accompanying data that underlies the training phase laid style of music are similar. The automatic accompaniment thus generates accompanying elements that you can create with your own art intelligence based on the present melody due to Similarities to previous melody elements of the training phase selected from the repertoire and adapted to plays the music controlling the playback phase. Since the Exit already in the training phase with accompanying data in Form of the binary keyboard code TC was generated the neural network NN now also outputs as binary Keyboard code, the generated GTC keyboard code. This ge reaches over the digital switch S2, which with the inver signal M for mode selection, now with "one" level, is controlled and switched through to the code converter CRW. The reverse is now found in the code back converter CRW Process as in the code converter CW instead of the generated binary keyboard code GTC into one of the key or through it represents the corresponding digital MIDI note value is implemented. This again results in a serial companion data stream in MIDI format, the generated accompaniment data tenstrom GBDS. This is shared with the controlling Melody data stream MDS, which branches off from the note filter NF is fed to a note mixer NM in which the two separate serial data streams to a common melody and Accompanying data stream MBDS are mixed together. Of the Music mixer NM works like a MIDI Merge box. The common melody and accompaniment data stream MBDS is now converted from the output of the note mixer NM to the MIDI Interface MIF directed and from there to the electronic MIDI sound generator KE forwarded to where controlling Melodieda and automatically added accompaniment made audible will.

BezugszeichenlisteReference list

A Ausgang
AS Ausgangsschicht
BD1 . . . BDm Begleitungsdatenwerte
BDS Begleitungsdatenstrom
CRW Code-Rückwandler
CW Codewandler
DS digitaler Notendatenstrom
E Eingang
ES Eingangsschicht
FIFO First-In-First-Out-Shift-Register
GBDS generierter Begleitungsdatenstrom
GTC generierter binärer Tastaturcode
HPF digitaler Hochpaß-Filter
I Inverter
KB Keyboard
KE elektronischer Klangerzeuger
m Registerlänge des Codewandlers CW
M Signal zur Moduswahl
MBDS Melodie- und Begleitungsdatenstrom
MD1 . . . Mdn Melodiedatenwerte
MDS Melodiedatenstrom
MIF MIDI-Interface
MSP Massenspeicher
N Neuron
n Registerlänge des FIFO
NF Notenfilter
NM Notenmischer
NN Neuronales Netz
P1 Puffer 1
P2 Puffer 2
PTS parallele Teilsequenz
S1 digitaler Schalter 1
S2 digitaler Schalter 2
S3 digitaler Schalter 3
SQ Notensequenzer
T Taktsignal
TC paralleler binärer Tastaturcode
TPF digitaler Tiefpaß-Filter
ZS Zwischenschicht
A exit
AS starting layer
BD1. . . BDm accompanying data values
BDS escort data stream
CRW code back converter
CW code converter
DS digital music data stream
E entrance
ES input layer
FIFO first-in-first-out shift register
GBDS generated escort data stream
GTC generated binary keyboard code
HPF digital high-pass filter
I inverter
KB Keyboard
KE electronic sound generator
m register length of the code converter CW
M Mode selection signal
MBDS melody and accompaniment data stream
MD1. . . Mdn melody data values
MDS melody data stream
MIF MIDI interface
MSP mass storage
N neuron
n Register length of the FIFO
NF note filter
NM note mixer
NN neural network
P1 buffer 1
P2 buffer 2
PTS parallel partial sequence
S1 digital switch 1
S2 digital switch 2
S3 digital switch 3
SQ note sequencer
T clock signal
TC parallel binary keyboard code
TPF digital low pass filter
ZS intermediate layer

Claims (6)

1. Verfahren zur Generierung einer automatischen Musikbe­ gleitung für elektronische Klangerzeuger anhand elektro­ nischer Noteninformationen,
dadurch gekennzeichnet, daß
  • 1.1 die Begleitautomatik ein lernfähiges Neuronales Netz (NN) einsetzt,
  • 1.2 die Wissensbasis des Neuronalen Netzes (NN) in einer Trainingsphase anhand von elektronischen Musiknoteninfor­ mationen (DS) einer bestimmten Musikstilrichtung oder ei­ nes bestimmten Musikers bzw. Komponisten berechnet wird,
  • 1.3 zur Berechnung der Wissensbasis des Neuronalen Netzes (NN) die elektronischen Noteninformationen von zweckmäßi­ gerweise komplett mit Melodie und Begleitung vorliegenden Musikinformationen (DS) in einen Melodiedatenstrom (MDS) und einen Begleitungsdatenstrom (BDS) getrennt werden,
  • 1.4 der Melodiedatenstrom (MDS) an die Eingangsschicht (ES) und der Begleitungsdatenstrom (BDS) an die Ausgangs­ schicht (AS) des Neuronalen Netzes (NN) geführt wird zwecks der Berechnung der Wissensbasis,
  • 1.5 die Begleitautomatik in einer späteren Wiedergabephase zu einem aus den elektronischen Noteninformationen (DS) ei­ ner Melodie gewonnenen Melodiedatenstrom (MDS), welcher wiederum an die Eingangsschicht (ES) des Neuronalen Net­ zes (NN) geführt wird, mit Hilfe der erlernten Wissensba­ sis des Neuronalen Netzes (NN) an dessen Ausgangsschicht (AS) einen an die in der Trainingsphase zugrunde gelegte Musik angelehnten Begleitungsdatenstrom (GBDS) generiert,
  • 1.6 der in der Wiedergabephase steuernde Melodiedatenstrom (MDS) zusammen mit dem automatisch generierten Beglei­ tungsdatenstrom (GBDS) hörbar gemacht wird.
1. Method for generating an automatic music accompaniment for electronic sound generators based on electronic note information,
characterized in that
  • 1.1 the automatic accompaniment uses a learnable neural network (NN),
  • 1.2 the knowledge base of the neural network (NN) is calculated in a training phase on the basis of electronic music note information (DS) of a specific musical style or a specific musician or composer,
  • 1.3 to calculate the knowledge base of the neural network (NN), the electronic note information is expediently separated from music information (DS), complete with melody and accompaniment, into a melody data stream (MDS) and an accompaniment data stream (BDS),
  • 1.4 the melody data stream (MDS) is led to the input layer (ES) and the accompanying data stream (BDS) to the output layer (AS) of the neural network (NN) in order to calculate the knowledge base,
  • 1.5 the automatic accompaniment in a later playback phase to a melody data stream (MDS) obtained from the electronic note information (DS) of a melody, which in turn is led to the input layer (ES) of the neural network (NN), with the aid of the knowledge base learned Neural network (NN) generates at its output layer (AS) an accompanying data stream (GBDS) based on the music used in the training phase,
  • 1.6 the melody data stream (MDS) controlling in the playback phase is made audible together with the automatically generated accompaniment data stream (GBDS).
2. Verfahren nach Anspruch 1,
dadurch gekennzeichnet, daß
  • 2.1 als elektronische Noteninformationen (DS) die digitalen Notenwerte des MIDI-Standards eines MIDI-fähigen Musikin­ strumentes eingesetzt werden,
  • 2.2 die Trennung der digitalen Noteninformationen (DS) durch einen Notenfilter (NF) erfolgt, der anhand der Tonhöhe entsprechend der musikalischen Harmonielehre den MIDI-Da­ tenstrom (DS) eines Musikstückes mit einem digitalen Hochpaß-Filter (HPF) in einen Melodiedatenstrom (MDS) und mit einem digitalen Tiefpaß-Filter (TPF) in einen Beglei­ tungsdatenstrom (BDS) aufteilt,
  • 2.3 die seriell anfallenden digitalen MIDI-Notenwerte des Melodiedatenstromes (MDS) in Form von parallelen Teilse­ quenzen (PTS), die die sich fortentwickelnde Melodie re­ präsentieren, an die Eingangsschicht (ES) des Neuronalen Netzes (NN) gelangen,
  • 2.4 die digitalen MIDI-Notenwerte des Begleitungsdatenstromes (BDS) in der Trainingsphase über einen Codewandler (CW) in einen binären Tastaturcode (TC) umgewandelt werden, wobei jedes einzelne Bit des entstehenden binären Codes (TC) einer Taste einer virtuellen Klaviatur im unteren Oktavbereich zugeordnet ist, und an die Ausgangsschicht (AS) des Neuronalen Netzes (NN) geführt wird,
  • 2.5 die Wissensbasis des Neuronalen Netzes (NN) in der Trai­ ningsphase mittels eines rekursiven Fehler-Rückwärtskor­ rektur-Verfahrens berechnet wird,
  • 2.6 die in der Wiedergabephase vom Neuronalen Netz (NN) generierten Begleitungsdaten (GTC), die ebenfalls die Form des Tastaturcodes aufweisen, über einen Coderück­ wandler (CRW) in serielle digitale MIDI-Notenwerte (GBDS) umgesetzt und dem steuernden MIDI-Melodiedatenstrom (MDS) zugemischt werden.
2. The method according to claim 1,
characterized in that
  • 2.1 the digital note values of the MIDI standard of a MIDI-capable musical instrument are used as electronic note information (DS),
  • 2.2 The digital note information (DS) is separated by a note filter (NF), which uses the pitch to match the MIDI data stream (DS) of a piece of music with a digital high-pass filter (HPF) into a melody data stream (MDS) according to the musical harmony theory. and divides it into an accompanying data stream (BDS) with a digital low-pass filter (TPF),
  • 2.3 the serial MIDI digital note values of the melody data stream (MDS) in the form of parallel partial sequences (PTS), which present the developing melody re, reach the input layer (ES) of the neural network (NN),
  • 2.4 the digital MIDI note values of the accompaniment data stream (BDS) are converted into a binary keyboard code (TC) in the training phase via a code converter (CW), whereby each individual bit of the resulting binary code (TC) is assigned to a key of a virtual keyboard in the lower octave range and is led to the output layer (AS) of the neural network (NN),
  • 2.5 the knowledge base of the neural network (NN) is calculated in the training phase using a recursive error-backward correction procedure,
  • 2.6 the accompaniment data (GTC) generated in the playback phase by the neural network (NN), which also have the form of the keyboard code, is converted into serial digital MIDI note values (GBDS) via a code converter (CRW) and the controlling MIDI melody data stream (MDS ) are added.
3. Verfahren nach Anspruch 2,
dadurch gekennzeichnet, daß
  • 3.1 die Grenzfrequenzen des digitalen Hochpaß-Filters (HPF) und des digitalen Tiefpaß-Filters (TPF) variabel ein­ stellbar sind.
3. The method according to claim 2,
characterized in that
  • 3.1 the limit frequencies of the digital high-pass filter (HPF) and the digital low-pass filter (TPF) are variably adjustable.
4. Verfahren nach Anspruch 2,
dadurch gekennzeichnet, daß
  • 4.1 die digitalen MIDI-Noteninformationen (DS) sowohl direkt auf der Klaviatur (KB) beispielsweise eines elektroni­ schen Musiksynthesizers oder Digital-Pianos in die Be­ gleitautomatik eingespielt werden können, als auch vorab in einem Notensequenzer (SQ) aufgezeichnet werden können, um die Begleitautomatik im nachhinein durch diesen anzu­ steuern.
4. The method according to claim 2,
characterized in that
  • 4.1 the digital MIDI note information (DS) can be played directly on the keyboard (KB), for example, of an electronic music synthesizer or digital piano in the automatic accompaniment system, and can be recorded in advance in a note sequencer (SQ) in order to use the automatic accompaniment system subsequently controlled by this.
5. Verfahren nach Anspruch 1,
dadurch gekennzeichnet, daß
  • 5.1 auch ein umgekehrter Betrieb zur Generierung einer Melo­ die zu einer vorgegebenen Begleitung bzw. Baßfiguren mög­ lich ist, indem der Melodiedatenstrom (MDS) an die Aus­ gangsschicht (AS) und der nunmehr steuernde Begleitungs­ datenstrom (BDS) an die Eingangsschicht (ES) des Neurona­ len Netzes (NN) geführt wird.
5. The method according to claim 1,
characterized in that
  • 5.1 also a reverse operation for generating a melo which is possible for a given accompaniment or bass figure by the melody data stream (MDS) to the output layer (AS) and the now controlling accompanying data stream (BDS) to the input layer (ES) of the Neuronal network (NN) is performed.
6. Einrichtung zur Durchführung des Verfahrens nach Anspruch 1 und 2, dadurch gekennzeichnet, daß
  • 6.1 die Klaviatur eines MIDI-fähigen elektronischen Musikin­ strumentes (KB) über ein MIDI-Interface (MIF) mit einem elektronischen Schaltwerk verbunden ist, welches die Funktion eines Notenfilters (NF) besitzt und einen digi­ talen Hochpaß-Filter (HPF) sowie einen digitalen Tiefpaß- Filter (TPF) zur Trennung der Musiknoteninformationen (DS) in einen Melodiedatenstrom (MDS) und einen Beglei­ tungsdatenstrom (BDS) beinhaltet,
  • 6.2 der serielle Melodiedatenstrom (MDS) einem First-In- First-Out-Shift-Register (FIFO) mit einstellbarer Regi­ sterlänge zugeführt und parallelisiert wird, die paral­ lele Teilsequenz (PTS) abgegriffen und über einen Puffer (P1) an den Eingang (E) der Schaltung eines Neuronalen Netzes (NN) geführt wird,
  • 6.3 der serielle Begleitungsdatenstrom (BDS) in einem Code­ wandler (CW) in einen parallelen binären Tastaturcode (TC) umgewandelt wird und über einen Puffer (P2) an den Ausgang (A) der Schaltung eines Neuronalen Netzes (NN) geführt wird,
  • 6.4 über zwei digitale Schalter (S1, S2) dem Ausgang (A) des Neuronalen Netzes (NN) entweder in der Trainingsphase der vom Notenfilter (NF) ausgehende Begleitungsdatenstrom (BDS) als Eingangswert aufgeschaltet wird oder in der Wiedergabephase die vom Ausgang (A) ausgehenden generier­ ten Begleitungsdaten (GTC) durchgeschaltet werden,
  • 6.5 über ein Taktsignal (T), welches vom Neuronalen Netz (NN) erzeugt wird und dessen Frequenz sich nach der Verarbei­ tungsgeschwindigkeit richtet, jeweils ein neuer Eingangs­ wert (PTS) und in der Trainingsphase auch ein neuer Aus­ gangswert (TC) vom Neuronalen Netz (NN) übernommen wird,
  • 6.6 der Ausgang (A) des Neuronalen Netzes (NN) in der Wieder­ gabephase die generierten Begleitungsdaten in Form des parallelen Tastaturcodes (GTC) führt und mit einem Code­ rückwandler (CRW) verbunden ist, der die parallelen Be­ gleitungsdaten (GTC) wieder in einen seriellen Beglei­ tungsdatenstrom (GBDS) in Form von MIDI-Notenwerten um­ setzt,
  • 6.7 die steuernden digitalen MIDI-Musikdaten (DS) in der Trainingsphase über das MIDI-Interface (MIF) direkt an einen elektronischen MIDI-Klangerzeuger (KE) durchge­ schleift werden,
  • 6.8 der steuernde Melodiedatenstrom (MDS) und der generierte Begleitungsdatenstrom (GBDS) in der Wiedergabephase einem Notenmischer (NM) zur Kombination der beiden Musikdaten­ ströme zugeführt werden,
  • 6.9 der Ausgang des Notenmischers (NM) die kompletten digita­ len MIDI-Musikinformationen von Melodie und generierter Begleitung (MBDS) über das MIDI-Interface (MIF) einem elektronischen MIDI-Klangerzeuger (KE) zuführt und dort hörbar macht.
6. Device for performing the method according to claim 1 and 2, characterized in that
  • 6.1 the keyboard of a MIDI-capable electronic music instrument (KB) is connected via a MIDI interface (MIF) to an electronic switching device, which has the function of a note filter (NF) and a digital high-pass filter (HPF) and a digital one Low-pass filter (TPF) for separating the musical note information (DS) into a melody data stream (MDS) and an accompaniment data stream (BDS),
  • 6.2 the serial melody data stream (MDS) is fed to a first-in-first-out shift register (FIFO) with an adjustable register length and parallelized, the parallel partial sequence (PTS) is picked up and sent via a buffer (P1) to the input ( E) the switching of a neural network (NN) is carried out,
  • 6.3 the serial accompanying data stream (BDS) is converted in a code converter (CW) into a parallel binary keyboard code (TC) and is fed via a buffer (P2) to the output (A) of the circuit of a neural network (NN),
  • 6.4 via two digital switches (S1, S2) the output (A) of the neural network (NN) either in the training phase the accompanying data stream (BDS) coming from the note filter (NF) is applied as an input value or in the playback phase that from the output (A) outgoing generated accompanying data (GTC) are switched through,
  • 6.5 via a clock signal (T), which is generated by the neural network (NN) and whose frequency depends on the processing speed, a new input value (PTS) and in the training phase also a new output value (TC) from the neural network (NN) is taken over,
  • 6.6 the output (A) of the neural network (NN) in the playback phase carries the generated accompaniment data in the form of the parallel keyboard code (GTC) and is connected to a code converter (CRW) which converts the parallel accompaniment data (GTC) back into one serial accompaniment data stream (GBDS) in the form of MIDI note values,
  • 6.7 the controlling digital MIDI music data (DS) are looped through directly to an electronic MIDI sound generator (KE) in the training phase via the MIDI interface (MIF),
  • 6.8 the controlling melody data stream (MDS) and the generated accompaniment data stream (GBDS) are fed to a note mixer (NM) for combining the two music data streams in the playback phase,
  • 6.9 the output of the note mixer (NM) supplies the complete digital MIDI music information of melody and generated accompaniment (MBDS) via the MIDI interface (MIF) to an electronic MIDI sound generator (KE) and makes it audible there.
DE19944430628 1994-08-29 1994-08-29 Process and setup of an intelligent, adaptable music accompaniment for electronic sound generators Expired - Fee Related DE4430628C2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE9420431U DE9420431U1 (en) 1994-08-29 1994-08-29 Establishment of an intelligent, adaptable music accompaniment for electronic sound generators
DE19944430628 DE4430628C2 (en) 1994-08-29 1994-08-29 Process and setup of an intelligent, adaptable music accompaniment for electronic sound generators

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19944430628 DE4430628C2 (en) 1994-08-29 1994-08-29 Process and setup of an intelligent, adaptable music accompaniment for electronic sound generators

Publications (2)

Publication Number Publication Date
DE4430628A1 true DE4430628A1 (en) 1996-03-14
DE4430628C2 DE4430628C2 (en) 1998-01-08

Family

ID=6526827

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19944430628 Expired - Fee Related DE4430628C2 (en) 1994-08-29 1994-08-29 Process and setup of an intelligent, adaptable music accompaniment for electronic sound generators

Country Status (1)

Country Link
DE (1) DE4430628C2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110047514A (en) * 2019-05-30 2019-07-23 腾讯音乐娱乐科技(深圳)有限公司 A kind of accompaniment degree of purity appraisal procedure and relevant device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4941387A (en) * 1988-01-19 1990-07-17 Gulbransen, Incorporated Method and apparatus for intelligent chord accompaniment
US5033006A (en) * 1989-03-13 1991-07-16 Sharp Kabushiki Kaisha Self-extending neural-network
US5138924A (en) * 1989-08-10 1992-08-18 Yamaha Corporation Electronic musical instrument utilizing a neural network
US5308915A (en) * 1990-10-19 1994-05-03 Yamaha Corporation Electronic musical instrument utilizing neural net

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4941387A (en) * 1988-01-19 1990-07-17 Gulbransen, Incorporated Method and apparatus for intelligent chord accompaniment
US5033006A (en) * 1989-03-13 1991-07-16 Sharp Kabushiki Kaisha Self-extending neural-network
US5138924A (en) * 1989-08-10 1992-08-18 Yamaha Corporation Electronic musical instrument utilizing a neural network
US5308915A (en) * 1990-10-19 1994-05-03 Yamaha Corporation Electronic musical instrument utilizing neural net

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JP-Z.: N. Shibata: a neural network-based method for chord/note scale association with melodies, NEC Research and Development, Japan, Vol. 32, No. 3, July 1991, S. 453-459 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110047514A (en) * 2019-05-30 2019-07-23 腾讯音乐娱乐科技(深圳)有限公司 A kind of accompaniment degree of purity appraisal procedure and relevant device
CN110047514B (en) * 2019-05-30 2021-05-28 腾讯音乐娱乐科技(深圳)有限公司 Method for evaluating purity of accompaniment and related equipment

Also Published As

Publication number Publication date
DE4430628C2 (en) 1998-01-08

Similar Documents

Publication Publication Date Title
DE3032609C2 (en) Electronic keyboard musical instrument with multiple tone generation channels.
DE69629486T2 (en) CONTROL STRUCTURE FOR SOUND SYNTHESIS
DE2362050C3 (en) Electronic musical instrument
DE202020005830U1 (en) Device for splitting, recombining and playing back audio data
DE112013005807T5 (en) Apparatus and method for generating real-time music accompaniment
DE3221447A1 (en) Method and device for automatic sound underscoring
DE2526458A1 (en) ELECTRONIC MUSICAL INSTRUMENT WITH ACCORDING
DE2808285A1 (en) ELECTRONIC MUSICAL INSTRUMENT
DE2518561A1 (en) EQUIPMENT FOR AN ELECTRONIC MUSICAL INSTRUMENT
DE60024157T2 (en) Device and method for entering a style of a presentation
DE2920298A1 (en) BINARY INTERPOLATOR CIRCUIT FOR AN ELECTRONIC MUSICAL INSTRUMENT
DE3023559C2 (en) Electronic musical instrument
DE3448198C2 (en)
DE3013250A1 (en) DIGITAL SIGNAL GENERATOR
DE2500720C3 (en) Electronic musical instrument
DE2828919A1 (en) POLYPHONE SYNTHESIS CIRCUIT FOR PERIODIC SIGNALS AND ELECTRONIC MUSICAL INSTRUMENT EQUIPPED WITH IT
DE1949313C3 (en) Electronic organ
DE4430628C2 (en) Process and setup of an intelligent, adaptable music accompaniment for electronic sound generators
DE2748422C2 (en) Polyphonic electronic musical instrument
DE102004033829B4 (en) Method and apparatus for generating a polyphonic melody
EP1758096A1 (en) Method and Apparatus for Pattern Recognition in Acoustic Recordings
DE2800858A1 (en) DIGITAL-CODED FREQUENCY GENERATOR
DE3100934A1 (en) METHOD FOR GENERATING SERIAL KEY PULSE INFORMATION WITH A FIRST SCAN REPEAT FREQUENCY DEPENDING ON AN ASYNCHRONOUSLY GENERATED SERIAL MULTIPLEX KEY IN-DIRECT INSTRUMENT DIRECT IMPULSATION INSTRUMENT
DE3604686A1 (en) ELECTRONIC MUSIC INSTRUMENT
DE3130380C2 (en)

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8122 Nonbinding interest in granting licenses declared
8120 Willingness to grant licenses paragraph 23
D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee