-
Die
vorliegende Erfindung bezieht sich allgemein auf Vorrichtungen und
Verfahren zum Erzeugen von Wellenformen von Musiktönen, Stimmen
oder anderen Klängen
auf der Grundlage von Wellenformdaten, die von einem Speicher oder
dergleichen geliefert werden, und insbesondere auf eine verbesserte
Wellenformerzeugungsvorrichtung und ein entsprechendes Verfahren,
die zum Erzeugen von Wellenformen fähig sind, die Tonklangfarbenvariationen, die
von einem Spieler unter der Verwendung verschiedener Vortragsstile
(d.h. Spieltechniken) ausgeführt
werden, oder verschiedene Arten von Artikulationen, die für ein natürliches
Musikinstrument einzigartig sind, getreulich wiedergeben. Es sollte
dabei berücksichtigt
werden, dass die Grundprinzipien der vorliegenden Erfindung sehr
allgemein auf jedes Gerät,
jede Vorrichtung und jedes Verfahren anwendbar sind, die bzw. das
die Funktion zum Erzeugen von Musiktönen, Stimmen oder beliebiger
anderer Klänge
hat, wie zum Beispiel automatische Spielgeräte, Computer, elektronische
Spielgeräte
oder Multimedia-Geräte,
ganz zu schweigen von elektronischen Musikinstrumenten. Außerdem sei
angenommen, dass der Begriff "Tonwellenform" in der vorliegenden Beschreibung
nicht notwendigerweise auf eine Wellenform eines Musiktons allein
eingeschränkt
ist, sondern in einem viel weiteren Sinn gebraucht wird, der auch
eine Wellenform einer Stimme oder einen beliebigen anderen Typ eines
Klangs umfassen kann.
-
Die
sogenannte "Wellenformspeicherauslese"-Technik ist schon
sehr wohl bekannt, bei der Wellenformdaten (d.h. Wellenformabtastungsdaten)
gespeichert sind, die nach einem bestimmten Codierungsprinzip codiert
sind, wie zum Beispiel PCM (Pulse Code Modulation), DPCM (Differential
Pulse Code Modulation) oder ADPCM (Adaptive Differential Pulse Code
Modulation), und bei der die auf diese Weise gespeicherten Wellenformdaten
mit einer Rate ausgelesen werden, die einer gewünschten Tonhöhe entspricht,
um dadurch eine Tonwellenform zu erzeugen. Bisher wurden verschiedene
Typen von "Wellenformspeicherauslese"-Techniken vorgeschlagen und
sind auf diesem Gebiet bekannt, von denen die meisten auf das Erzeugen
einer Wellenform gerichtet sind, die sich vom Start bis zum Ende
eines Tons erstreckt. Als ein spezifisches Beispiel für eine Wellenformspeicherauslesetechnik
ist ein Prinzip bekannt zum Speichern von Wellenformdaten einer
vollständigen
Wellenform eines Tons im Voraus, die sich von dessen Start bis zu
dessen Ende erstreckt. Als ein weiteres Beispiel für die Wellenformspeicherauslesetechnik
ist ein Prinzip zum Speichern von Wellenformdaten einer vollständigen Wellenform
nur für
einen bestimmten Teil im Voraus, wie zum Beispiel einen Attack-Teil,
eines Tons bekannt, der relativ komplexe Variationen aufweist, sowie
zum Speichern einer vorbestimmten Schleifenwellenform im Voraus für einen
ausgehaltenen Teil und dergleichen, der geringere Variationen aufweist.
In der vorliegenden Patentbeschreibung wird der Begriff "Schleifenwellenform" dazu verwendet,
sich auf eine Wellenform zu beziehen, die wiederholt, d.h. in einer
geschleiften Art und Weise, ausgelesen wird.
-
Beim
herkömmlichen
Wellenformspeicherausleseprinzip zum Speichern von Wellenformdaten einer
vollständigen
Wellenform eines Tons im Voraus, die sich von dessen Start zu dessen
Ende erstreckt, oder zum Speichern von Wellenformdaten einer vollständigen Wellenform
nur für
einen bestimmten Teil, wie zum Beispiel einen Attack-Teil eines Tons,
war es jedoch notwendig, eine große Anzahl verschiedener Wellenformdaten
im Voraus zu speichern, die einer Vielzahl von Vortragsstilen (bzw.
verschiedenen Arten von Artikulationen) entspricht, was in unerwünschter
Weise eine große
Speicherkapazität
erforderlich machen würde.
-
Ferner
kann zwar das oben erwähnte
Verfahren zum Speichern von Wellenformdaten einer vollständigen Wellenform
eines Tons im Voraus zwar Tonklangfarbenvariationen getreulich ausdrücken, die
unter der Verwendung von verschiedenen Vortragsstilen (bzw. verschiedenen
Arten von Artikulationen) ausgeführt
werden, die für
ein natürliches
Musikinstrument einzigartig sind, doch kann es den Ton nur in derselben
Weise wie die im Voraus gespeicherten Wellenformdaten wiedergeben
und würde daher
eine sehr schlechte Steuerbarkeit und Editierbarkeit ergeben. Zum
Beispiel ist es bei diesem Wellenformspeicherausleseprinzip äußerst schwierig, zeitaxiale
und andere Charakteristiken der Wellenformdaten, die einem gewünschten
Vortragsstil (oder einer Art der Artikulation) gemäß den Spieldaten
entsprechen, zu steuern.
-
Eine
flexiblere Weise zum Erzeugen von Wellenformen, die einer Vielzahl
von Vorragsstilen entsprechen, ist in EP-A-0 907 160 offenbart.
-
Es
ist daher eine Aufgabe der vorliegenden Erfindung, eine Wellenformerzeugungstechnik
bereitzustellen, die in einer vereinfachten Art und Weise mit einer
erheblich verbesserten Handhabbarkeit und Steuerbarkeit qualitativ
hochwertige Wellenformdaten erzeugen kann, die einer Vielzahl von
Vortragsstilen (oder verschiedenen Arten der Artikulation) entsprechen.
insbesondere hat die vorliegende Erfindung das Ziel, ein Verfahren
und eine Vorrichtung zur Wellenformaufzeichnung, -wiedergabe und
-erzeugung bereitzustellen, die eine Speicherkapazität einsparen
kann, die zum Speichern von Wellenformdaten nötig ist, und eine präzise Wellenformreproduzierbarkeit
mit einer gesteigerten Steuerbarkeit erzielen kann, indem anstelle
der Speicherung vollständiger
oder voller Wellenformdaten, die einer gewünschten qualitativ hochwertigen
Wellenform (d.h. einer Wellenform, die einen gewünschten Vortragsstil oder eine
gewünschte
Artikulation repräsentieren) entsprechen,
lediglich Teilwellenformdaten gespeichert werden, die in einer solchen
Weise gezielt aus den vollständigen
Wellenformdaten extrahiert wurden, dass sie immer noch eine charakteristische
Wellenform-Form-Variation
ausdrücken
können,
und dann unter der Verwendung der auf diese Weise gespeicherten
Teilwellenformdaten eine Wellenform zu erzeugen.
-
Zum
Erfüllen
der oben erwähnten
Aufgabe sieht die vorliegende Erfindung ein Wellenformaufzeichnungsverfahren
vor, das die folgenden Schritte aufweist: Liefern von Wellenformdaten;
Extrahieren von Teilwellenformdaten, die für eine Wellenform-Form-Variation repräsentativ
sind, aus den gelieferten Wellenformdaten; und Speichern der extrahierten
Teilwellenformdaten zusammen mit ihre entsprechenden Zeitpositionen
angebender Information in einem Speicher. Dadurch dass in dieser
Weise lediglich Teilwellenformdaten, welche für eine Wellenform-Form-Variation
repräsentativ
sind, extrahiert und gespeichert werden, können Wellenformdaten, die zum
Ausdrücken
der Wellenform-Form-Variation nötig
sind, in einer komprimierten Form gespeichert werden, wodurch eine
Wellenformdatenspeicherkapazität
wirksam eingespart bzw. die Menge der zu speichernden Wellenformdaten
minimiert werden kann. Ferner erzielt die vorliegende Erfindung
durch Speichern der extrahierten Teilwellenformdaten zusammen mit
der ihre entsprechenden Zeitpositionen angebenden Information eine
präzise
Wellenform-Reproduzierbarkeit.
-
Die
vorliegende Erfindung sieht auch ein Verfahren zum Reproduzieren
einer Wellenform unter der Verwendung von in einem Speicher abgelegten Daten
vor, wobei in dem Speicher Teilwellenformdaten, die für eine Wellenform-Form-Variation
repräsentativ
sind, und deren Zeitpositionen angebende Information paarweise gespeichert
sind, wobei das Verfahren die folgenden Schritte aufweist: Geben
eines Wellenformreproduktionsbefehls; Auslesen der Teilwellenformdaten,
die für
eine Wellenform-Form-Variation repräsentativ sind, aus dem Speicher
zusammen mit der deren Zeitpositionen angebenden Information in
Reaktion auf den Wellenformreproduktionsbefehl; Anordnen der Teilwellenformdaten
auf einer Zeitachse gemäß der die
Zeitpositionen angebenden, aus dem Speicher ausgelesenen Information;
und Synthetisieren vollständiger Wellenformdaten,
die Wellenformdaten enthalten, die zwischen aneinander Angrenzenden
der Teilwellenformdaten einzufügen
sind, auf der Grundlage der auf der Zeitachse angeordneten Teilwellenformdaten.
Weil die Teilwellenformdaten, die für eine Wellenform-Form-Variation
repräsentativ
sind, an entsprechenden Zeitpositionen in Zuordnung mit dieser ausgelesenen
Zeitpositionsinformation angeordnet sind, können sie an angemessenen Zeitpositionen
im Verhältnis
zu wichtigen Abschnitten einer Tonwellenform, d.h. Wellenformabschnitten,
die für
die Wellenform-Form-Variation
repräsentativ
sind, reproduziert werden, wodurch eine präzise Wellenformreproduzierbarkeiterzielt
wird.
-
Die
vorliegende Erfindung sieht auch ein Wellenformerzeugungsverfahren
vor, welches die folgenden Schritte aufweist: sequentielles Empfangen
mehrerer Sätze
an Sample-Identifikationsinformation und Zeitpositionsinformation,
Beschaffen von Sample-Daten durch Zugreifen auf eine Datenbank gemäß der empfangenen
Sample-Identifikationsinformation, und Anordnen der beschafften
Sample-Daten gemäß der empfangenen
Zeitpositionsinformation auf einer Zeitachse, so dass eine Wellenform auf
der Grundlage der auf der Zeitachse angeordneten Sample-Daten erzeugt
wird. In diesem Fall handelt es sich bei dem, was hier mit der Zeitpositionsinformation
gepaart ist, nicht um Sample-Daten selbst, sondern Sample-Identifkationsinformation
(ID) (d.h. Daten, welche die Sample-Daten bezeichnen). Die Sample-Daten
werden auf Grundlage der Sample-Identifikationsinformation von der
Datenbank beschafft und dann gemäß der Zeitpositionsinformation an
passenden Zeitpositionen angeordnet. Daher ist es auch in diesem
Fall möglich,
die Wellenformdatenspeicherkapazität wirksam einzusparen und eine präzise Wellenformreproduzierbarkeit
zu erzielen.
-
Bei
den oben erwähnten
Sample-Daten handelt es sich um Sample-Daten, die sich auf beliebige Wellenformfaktoren
beziehen, unter anderem die Wellenform-Form, Amplitude, Tonhöhe und Zeitachsensteuerung.
In noch zu beschreibenden bevorzugten Ausführungsformen werden solche
Sample-Daten, die sich auf einen beliebigen Wellenformfaktor beziehen,
auch als Vektordaten bezeichnet; das heißt, dass sich "Vektoren" auf verschiedene
grundlegende Wellenformfaktoren zum Erzeugen einer Wellenform bezieht.
Beispiele für
diese grundlegenden Wellenformfaktoren sind unter anderem eine Wellenform-Form
(welche die Klangfarbe bzw. das Timbre bestimmt), Tonhöhenvariation über die
Zeit und Amplitudenvariation über
die Zeit, und die Vektordaten dieser Wellenformfaktoren werden als
ein Wellenform-Form-Vektor, Tonhöhenvektor
bzw. Amplitudenvektor bezeichnet. Ein Zeitvektor zum Durchführen einer
Dehnungs-/Komprimierungs-Steuerung an
einem zeitaxialen Fortschreiten der Wellenform kann ebenfalls verwendet
werden. Die entsprechenden Zeitachsen des Wellenform-Form-Vektors,
Tonhöhenvektors,
Amplitudenvektors usw. können
gemäß dem Zeitvektor
gesteuert werden.
-
Das
Wellenformerzeugungsverfahren der vorliegenden Erfindung kann ferner
einen Schritt zum Empfangen von Abstimmungsinformation enthalten, und
die zum Erzeugen der Wellenform verwendeten Abtastdaten können gemäß der empfangenen
Abstimmungsinformation modifiziert bzw. abgestimmt werden. So können in
einer Situation, in der Sample-Daten, genauso wie sie von der Sample-Identifikationsinformation
bezeichnet werden, nicht im Voraus vorgesehen (vorgespeichert) sind,
die gewünschten Sample-Daten
dadurch beschafft werden, dass zuerst von der Datenbank Sample-Daten
empfangen werden, die annähernd
diejenigen sind, die von der Sample-Identifikationsinformation bezeichnet
werden, und dann die annähernden
Sample-Daten gemäß der empfangenen
Abstimmungsinformation eingestellt werden. Diese Anordnung kann
die Konstruktion zum Vorspeichern der Sample-Daten beträchtlich
vereinfachen und daher auch die Speicherkapazität einsparen. Ferner können, selbst
wenn Sample-Daten, so wie sie von der Sample-Identifikationsinformation
bezeichnet wird, schon vorgespeichert sind, die Sample-Daten durch
die Abstimmungsinformation frei modifiziert werden, wodurch eine
verbesserte Steuerbarkeit entsteht.
-
Die
vorliegende Erfindung sieht auch ein Wellenformerzeugungsverfahren
vor, das die folgenden Schritte aufweist: Empfangen von Spieldaten, Beschaffen
von Sätzen
an Sample-Identifikationsinformation und Zeitpositionsinformation
durch Zugreifen auf eine vorbestimmte Tabelle auf Grundlage der empfangenen
Spieldaten; Abstimmen der beschafften Zeitpositionsinformation gemäß den Spieldaten; Beschaffen
von Sample-Daten durch Zugreifen auf eine Datenbank auf Grundlage
der empfangenen Sample-Identifikationsinformation; Anordnen der
beschafften Daten auf einer Zeitachse gemäß der abgestimmten Zeitpositionsinformation;
Erzeugen eine Wellenform auf Grundlage der auf der Zeitachse angeordneten
Sample-Daten. In diesem Fall werden Sätze an Sample-Identifikationsinformation
und Zeitpositionsinformation auf Grundlage der empfangenen Spieldaten
von der Tabelle beschafft. Es kann dabei eine Situation entstehen,
in der sich kein Satz an Sample-Identifikationsinformation und Zeitpositionsinformation,
der für
einen von den Spieldaten beabsichtigten Spielton optimal wäre, unter
einer Anzahl zuvor vorgesehener (z.B. vorgespeicherter) Sätze an Sample-Identifikationsinformation
und Zeitpositionsinformation befindet. Doch kann die vorliegende
Erfindung auch in einer solchen Situation die Zeitpositionsinformation,
wie sie von den Spieldaten beabsichtigt ist, dadurch beschaffen,
dass zuerst einer der vorgespeicherten Sätze an Sample-Identifikationsinformation
und Zeitpositionsinformation ausgewählt wird, der dem von der Spielinformation
beabsichtigten nahe kommt, und dann die auf diese Weise beschaffte
Zeitpositionsinformation gemäß den Spieldaten
eingestellt wird. Wenn die Spieldaten einen variablen Steuerungsfaktor,
wie zum Beispiel Anschlag oder Geschwindigkeit, enthalten, kann
die beschaffte Zeitpositionsinformation gemäß den Spieldaten variabel gesteuert
werden. Diese Anordnung kann die Konstruktion zum im Voraus Vorsehen (Vorspeichern)
der Zeitpositionsinformation beträchtlich vereinfachen und daher
Speicherkapazität
einsparen. Ferner erzielt, weil die Zeitposition der die Wellenform
charakterisierenden Sample-Daten variabel gesteuert werden kann,
die vorliegende Erfindung eine verbesserte Steuerbarkeit.
-
In
den später
beschriebenen Ausführungsformen
werden die Spieldaten in einer Form geliefert, die Vortragsstil-Identifizierungs-Information
(ID) enthält.
Zum Beispiel kann die Vortragsstil-Identifizierungs-Information
(ID) gemäß den Charakteristiken von
Vortragsstilen des Spieltons in Zuordnung zu einem Teiltonsegment,
wie zum Beispiel einem Teil Attack, Body oder Release, oder in Zuordnung
zu einem Verbindungs- oder Verknüpfungselement
zwischen aneinander angrenzenden Tönen, wie zum Beispiel einem
Bindebogen, oder in Zuordnung zu einem speziell gespielten Tonsegment,
wie zum Beispiel mit Vibrato, oder in Zuordnung zu mehreren Noten,
die eine Phrase bilden, geliefert werden. Eine bestimmte Vortragsstil-Identifizierungs-Information
(ID) wird nämlich
gemäß einem
zu reproduzierenden Spiel geliefert.
-
Die
vorliegende Erfindung kann nicht nur als die oben erwähnte Verfahrenserfindung,
sondern als auch eine Vorrichtungserfindung aufgebaut und implementiert
werden. Außerdem
kann die vorliegende Erfindung auch als ein Softwareprogramm zur
Ausführung
durch einen Prozessor, wie zum Beispiel einen Computer oder DSP,
sowie auch als ein Speichermedium angeordnet und implementiert werden, auf
dem ein derartiges Programm gespeichert ist. Außerdem kann der bei der vorliegenden
Erfindung verwendete Prozessor anstelle eines Allzweck-Prozessors,
der zum Ausführen
von Software fähig
ist, auch ein dedizierter Prozessor sein, der auf einer vorbestimmten
festen Hardwareschaltung basiert.
-
Zum
besseren Verständnis
der Aufgabe und anderer Merkmale der vorliegenden Erfindung werden
ihre bevorzugten Ausführungsformen
im Einzelnen nachfolgend anhand der beiliegenden Zeichnungen beschrieben.
Es zeigt:
-
1 ein
Blockdiagramm, das eine beispielhafte Hardwareorganisation einer
Wellenformerzeugungsvorrichtung gemäß einer bevorzugten Ausführungsform
der vorliegenden Erfindung zeigt;
-
2 ein
Fließdiagramm,
das eine beispielhafte Betriebsabfolge eines Wellenformdatenbankerstellungsvorgangs
zeigt, der in der Wellenformerzeugungsvorrichtung von 1 ausgeführt wird;
-
3 eine
schematische Darstellung, in der verschiedene Wellenformkomponenten
und -faktoren dargestellt sind, aus denen ein tatsächliches
Wellenformsegment besteht, das einem Vortragsstilmodul entspricht;
-
4A ein
Fließdiagramm,
das eine beispielhafte Betriebsabfolge eines datenbankbasierten Tonsynthetisierungsvorgangs
zeigt;
-
4B ein
Blockdiagramm, das ein Beispiel für eine dedizierte Hardwarevorrichtung
zeigt, die zum Ausführen
eines Tonsynthesevorgangs ähnlich demjenigen
von 4A, konstruiert ist;
-
5 ein
Fließdiagramm,
das eine beispielhafte Betriebsabfolge eines Vortragsstilsynthesevorgangs
zeigt, der von einem in 4B gezeigten
Vortragsstilsyntheseabschnitt ausgeführt wird;
-
6 ein
Fließdiagramm,
das im Einzelnen den Vortragsstilsynthesevorgang zeigt, der vom
Vortragsstilsyntheseabschnitt durchgeführt wird;
-
7 ein
Fließdiagramm,
das eine Beispielbetriebsabfolge eines Wellenformverbindungsvorgangs
im Hinblick auf einen Fall zeigt, bei dem die Vortragsstilmodule
jeweils einem Amplituden- oder Tonhöhenfaktor entsprechen;
-
8A ein
Konzeptdiagramm, das einen Wellenformausdünnungsvorgang erläutert, der durchgeführt wird,
wenn eine Attack-Teilwellenform und eine Body-Teilwellenform miteinander
verbunden werden;
-
8B ein
Konzeptdiagramm, das einen Wellenformausdünnungsvorgang erläutert, der durchgeführt wird,
wenn eine Body-Teilwellenform und eine Release-Teilwellenform miteinander
verbunden werden;
-
8C ein
Konzeptdiagramm, das einen Wellenformausdünnungsvorgang veranschaulicht, der
durchgeführt
wird, wenn eine BendAttack-Teilwellenform und eine Release-Teilwellenform
miteinander verbunden werden;
-
8D ein
Konzeptdiagramm, das einen Wellenformausdünnungsvorgang erläutert, der durchgeführt wird,
wenn eine NormalAttack-Teilwellenform und eine Release-Teilwellenform,
die einen Schleifenwellenformabschnitt aufweist, miteinander verbunden
werden;
-
9 ein
Konzeptdiagramm, das einen Wellenformverbindungsvorgang erläutert, der
in einer Situation ausgeführt
wird, bei der eine abgetastete Länge
eines Vortragsstilmoduls so kurz ist, dass es zu Ende wäre, bevor
ein ihm folgendes weiteres Vortragsstilmodul beginnt;
-
10 ein
Konzeptdiagramm, das beispielhafte Paketströme erläutert;
-
11 ein
konzeptuelles Blockdiagramm einer allgemeinen Organisation eines
Wellenformsyntheseabschnitts, das auch das Verhalten des Wellenformsyntheseabschnitts
erläutert;
-
12 ein
Blockdiagramm, das einen allgemeinen Betriebsablauf der Wellenformsynthese
darstellt;
-
13 ein
Blockdiagramm, das einen Vektorlader erläutert;
-
14 ein
Blockdiagramm, das einen Vektoroperator erläutert;
-
15 ein
Blockdiagramm, das einen Vektordecodierer erläutert; und
-
16 eine
schematische Darstellung, die konzeptuell eine beispielhafte Datenorganisation
von Vektordaten zeigt.
-
1 ist
ein Blockdiagramm, in dem eine beispielhafte Hardwareorganisation
einer Wellenformerzeugungsvorrichtung gemäß einer bevorzugten Ausführungsform
der vorliegenden Erfindung dargestellt ist. Die hier gezeigte Wellenformerzeugungsvorrichtung
ist unter der Verwendung eines Computers aufgebaut, und eine vorbestimmte
Wellenformerzeugungsverarbeitung wird vom Computer durchgeführt, der
vorbestimmte Wellenformerzeugungsprogramme (Software) ausführt. Natürlich kann
die Wellenformerzeugungsverarbeitung auch durch Mikroprogramme implementiert
werden, die dann von einem DSP (digitalen Signalprozessor) ausgeführt werden,
und nicht durch eine Computersoftware. Außerdem kann die Wellenformerzeugungsverarbeitung
der vorliegenden Erfindung auch durch eine dedizierte Hardwarevorrichtung
implementiert werden, welche diskrete Schaltungen oder integrierte
oder hochintegrierte Schaltungen aufweist. Ferner kann die Wellenformerzeugungsvorrichtung
der vorliegenden Erfindung auch als ein elektronisches Musikinstrument,
ein Karaoke-Gerät,
eine elektronische Spielevorrichtung, eine Multimediavorrichtung,
ein PC oder eine beliebige andere gewünschte Form eines Produktes
implementiert werden.
-
In 1 weist
die Wellenformerzeugungsvorrichtung gemäß der bevorzugten Ausführungsform
der vorliegenden Erfindung eine CPU (Zentraleinheit) 101 auf,
die als ein Hauptsteuerungsabschnitt des Computers fungiert, an
welche über
einen Bus (z.B. einen Daten- und Adressbus) BL, ein ROM (Read On
Memory) 102, ein RAM (Random Access Memory) 103,
eine Schaltkonsole 104, eine Konsolenanzeigeeinheit 105,
ein Laufwerk 106, ein Wellenformeingabeabschnitt 107,
ein Wellenformausgabeabschnitt 108, eine Festplatte 109 und
eine Kommunikationsschnittstelle 111 angeschlossen sind.
Die CPU 101 führt
verschiedene Prozesse aus, die auf "Wellenformdatenbankerstellung", "Tonsynthese auf der
Grundlage der erstellten Datenbank (Softwaretongenerator)" usw. auf der Grundlage
vorbestimmter Programme gerichtet sind, wie später im Einzelnen noch beschrieben
wird. Diese Programme werden zum Beispiel über die Kommunikationsschnittstelle 111 von
einem Netzwerk oder von einem externen Speichermedium 106A,
wie zum Beispiel einer CD oder MO (magnetooptischen Platte) geliefert,
die im Laufwerk 106 eingelegt ist, und dann auf der Festplatte 109 gespeichert.
Bei der Ausführung
eines Gewünschten
der Programme wird das gewünschte Programm
von der Festplatte 109 in den RAM 103 geladen;
die Programme können
jedoch auch im ROM 102 im Voraus gespeichert sein.
-
Das
ROM 102 speichert auf sich verschiedene Programme und Daten,
die von der CPU 101 ausgeführt werden, bzw. auf die von
ihr Bezug genommen wird. Der RAM 103 wird als ein Arbeitsspeicher zum
vorübergehenden
Speichern von verschiedenen sich auf das Spiel beziehenden Informationen
und verschiedener Daten verwendet, die erzeugt werden, während die
CPU 101 die Programme ausführt, oder als Speicher zum
Speichern eines derzeit ausgeführt werdenden
Programms und von Daten, die sich auf das Programm beziehen. Vorbestimmte
Adressbereiche des RAMs 903 werden verschiedenen Funktionen
zugewiesen und als verschiedene Register, Flags, Tabellen, Speicher
usw: verwendet. Die Schaltkonsole 104 weist verschiedene
Bedienelemente zum Befehlen einer Tonabtastung, eines Editierens
der abgetasteten Wellenformdaten, Eingebens verschiedener Informationen
usw. auf. Die Schaltkonsole 104 kann zum Beispiel in der
Form einer zehn Tasten aufweisenden Tastatur zum Eingeben numerischer
Datenwerte, einer Tastatur zum Eingeben von Schriftzeichendaten
oder Konsolenschaltern sein. Die Schaltkonsole 104 kann
auch andere Bedienelemente zum Auswählen, Einstellen und Steuern
einer Tonhöhe,
Klangfarbe, eines Effekts usw. für
jeden zu erzeugenden Ton aufweisen. Die Konsolenanzeigeeinheit 105 zeigt
verschiedene von der Schaltkonsole eingegebene Informationen, die
abgetasteten Wellenformdaten usw. an und weist zum Beispiel eine
Flüssigkristallanzeige
(LCD), eine Kathodenstrahlröhre
(CRT) und/oder dergleichen auf.
-
Der
Wellenformeingabeabschnitt 107 enthält einen A-D-Wandler zum Umwandeln
eines analogen Tonsignals, das über
eine externe Wellenformeingabevorrichtung, wie zum Beispiel ein
Mikrofon, eingegeben wurde, in digitale Daten (Wellenformdatenabtastung)
auf und gibt die auf diese Weise abgetasteten digitalen Wellenformdaten
in den RAM 103 oder die Festplatte 109 als Originalwellenformdaten
ein, aus denen gewünschte
Wellenformdaten zu erzeugen sind. Bei dem von der CPU 101 ausgeführten "Wellenformdatenbankerstellungs"-Prozess wird eine Wellenformdatenbank
der vorliegenden Erfindung auf der Grundlage der oben erwähnten Originalwellenformdaten
erstellt. Außerdem
werden bei dem von der CPU 101 ausgeführten "datenbankbasierten Tonsynthese"-Prozess unter der
Verwendung der oben erwähnten
Wellenformdatenbank Wellenformdaten für jedes der Spielinformation
entsprechende Tonsignal erzeugt. Natürlich können bei der vorliegenden Ausführungsform
auch mehrere Tonsignale gleichzeitig erzeugt werden. Die auf diese
Weise erzeugten Wellenformdaten für jedes Tonsignal werden über dem
Bus BL an den Wellenformausgabeabschnitt 108 weitergereicht
und dann gegebenenfalls in einem Puffer von ihm gespeichert. Der Wellenformausgabeabschnitt 108 liest
die gepufferten Wellenformdaten mit einer vorbestimmten Ausgabeabtastfrequenz
aus und sendet die Wellenformdaten nach einer D-A-Umwandlung der
Daten an ein Soundsystem 108A. Auf diese Weise wird jedes
vom Wellenformausgabeabschnitt 108 ausgegebene Tonsignal über das
Soundsystem 108A zum Erklingen gebracht oder hörbar reproduziert.
Hier ist die Festplatte 109 zum Speichern von Daten (verschiedener Daten
einer später beschriebenen
Vortragsstiltabelle, Codebuchs, usw.) zum Synthetisieren einer gewünschten
Wellenform, die Wellenformdaten und Vortragsstil entspricht, einer
Vielzahl von Arten von spielbezogenen Daten, wie zum Beispiel Klangfarbendaten,
die aus verschiedenen Klangfarbenparametem bestehen, sowie steuerungsbezogenen
Daten, wie zum Beispiel diejenigen von verschiedenen von der CPU 101 auszuführenden
Programmen, vorgesehen.
-
Das
Laufwerk 106 dient zum Antreiben einer austauschbaren Platte
(eines externen Speichermediums 106A) zum Speichern von
Daten (verschiedener Daten der später beschriebenen Vortragsstiltabelle,
Codebuch usw.) zum Synthetisieren einer gewünschten Wellenform, die Wellenformdaten
und Vortragsstil entspricht, einer Vielzahl von Arten von spielbezogenen
Daten, wie zum Beispiel Tonklangfarbendaten, die aus verschiedenen
Klangfarbenparametem bestehen, sowie steuerungsbezogenen Daten,
wie zum Beispiel diejenigen von verschiedenen Programmen, die von
der CPU 101 ausgeführt
werden. Das externe Speichermedium 106A, das vom Laufwerk 106 angetrieben
wird, kann ein beliebiges aus verschiedenen bekannten Wechselmedien
sein, wie zum Beispiel eine Diskette (Floppy Disk/FD), eine CD-ROM
oder CD-RAM (Compact Disc), eine magnetooptische Platte (MO) oder
eine DVD (Digital Versatile Disc). Gespeicherter Inhalt (Steuerungsprogramm)
des externen Speichermediums 106A, das in das Laufwerk 106 eingelegt
ist, kann direkt in den RAM 103 geladen werden, ohne dass
es zuerst auf die Festplatte 109 geladen wird. Die Möglichkeit
des Lieferns eines gewünschten
Programms über
das externe Speichermedium 106A oder über ein Kommunikationsnetz
ist dahingehend sehr vorteilhaft, dass es eine Versionsaktualisierung
des Steuerungsprogramms, eine Hinzufügung eines neuen Steuerungsprogramms
usw. erheblich vereinfachen kann.
-
Ferner
ist die Kommunikationsschnittstelle 111 mit einem Kommunikationsnetz,
wie zum Beispiel einem LAN (Lokales Netz/Lokal Area Network), dem
Internet oder Telefonleitungen, verbunden, über die sie mit einem gewünschten
Servercomputer oder dergleichen (die hier nicht weiter gezeigt sind)
verbunden werden kann, um auf diese Weise ein Steuerungsprogramm
und verschiedene Daten oder Spielinformation in die Wellenformerzeugungsvorrichtung einzugeben.
In einer Situation, bei der das Steuerungsprogramm und verschiedene
Daten nicht im ROM 102 oder der Festplatte 109 der Wellenformerzeugungsvorrichtung
vorhanden sind, können
dieses Steuerungsprogramm und die Daten nämlich über die Kommunikationsschnittstelle 111 vom
Servercomputer an die Vorrichtung heruntergeladen werden. In einem
derartigen Fall sendet die Wellenformerzeugungsvorrichtung der vorliegenden
Erfindung, die hier ein "Client" ist, einen Befehl,
um beim Servercomputer anzufordern, dass das Steuerungsprogramm
und verschiedene Daten über
die Kommunikationsschnittstelle 111 und das Kommunikationsnetz
heruntergeladen werden. In Reaktion auf den Befehl vom Client liefert
der Servercomputer das angeforderte Steuerungsprogramm und die Daten über das
Kommunikationsnetz an die Wellenformerzeugungsvorrichtung. Die Wellenformerzeugungsvorrichtung
empfängt
das Steuerungsprogramm und die Daten vom Servercomputer über das
Kommunikationsnetz und die Kommunikationsschnittstelle 111 und
speichert sie akkumulativ auf der Festplatte 109. Auf diese
Weise wird das notwendige Herunterladen des Steuerungsprogramms
und der verschiedenen Daten abgeschlossen. Es sollte hierbei offensichtlich sein,
dass die Wellenformerzeugungsvorrichtung ferner eine MIDI-Schnittstelle
enthalten kann, um auf diese Weise MIDI-Spielinformation zu empfangen. Ebenfalls
sollte es offensichtlich sein, dass eine Musikspieltastatur und
ein Musikbetreibergerät
an den Bus BL angeschlossen werden kann, so dass Spielinformation über ein
tatsächliches
Echtzeitspiel an die Wellenformerzeugungsvorrichtung geliefert werden
kann. Natürlich
kann auch das externe Speichermedium, das Spielinformation eines
gewünschten Musikstücks enthält, zum
Liefern der Spielinformation des gewünschten Musikstücks verwendet
werden.
-
2 ist
ein Fließdiagramm,
das eine beispielhafte Betriebsabfolge des Wellenformdatenbankerstellungsvorgangs
zeigt, der in erfindungsgemäßen oben
beschriebenen Wellenformerzeugungsvorrichtung ausgeführt wird,
der auf die Erzeugung von Vektordaten auf der Grundlage von Wellenformen von
Tönen gerichtet
ist, die tatsächlich
mit verschiedenen Vortragsstilen oder Aufführungstechniken (oder verschiedenen
Arten der Artikulation) in einer solchen Weise gespielt werden,
dass die erzeugten Vektordaten den verschiedenen Vortragsstilen
(Arten der Artikulation) entsprechen.
-
Zuerst
wird bei Schritt S1 ein Datenbankspeichermedium, wie zum Beispiel
eine Festplatte 109, zum Speichern von Daten der noch zu
beschreibenden Vortragsstiltabelle und des Codebuchs zur Verfügung gestellt.
Dann werden bei Schritt S2 Wellenformdaten beschafft, die Tönen entsprechen,
die auf verschiedenen natürlichen
Musikinstrumenten mit verschiedenen Vortragsstilen gespielt werden.
Bei diesem Schritt S2 werden nämlich
verschiedene Spieltöne,
die tatsächlich
auf verschiedenen natürlichen
Musikinstrumenten hervorgebracht werden, über eine externe Wellenformeingabevorrichtung, wie
zum Beispiel ein Mikrofon, vom Wellenformeingabeabschnitt 107 beschafft,
und Wellenformdaten dieser Spieltöne (d.h. Originalwellenformdaten)
werden in vorbestimmten Bereichen der Festplatte 109 gespeichert.
Zu dieser Zeit können
die Wellenformdaten entweder des gesamten Spiels oder nur eines Teil
des Spiels, wie zum Beispiel eine bestimmte Phrase, ein bestimmter
Ton oder Charakteristikteile, wie zum Beispiel Attack- und Release-Teile
eines bestimmten Tons, beschafft und gespeichert werden. Beim folgenden
Schritt S3 werden die auf diese Weise beschafften Wellenformdaten
eines jeden Spieltons, der den verschiedenen Spielstilen entspricht, die
für die
natürlichen
Musikinstrumente einzigartig sind, für jeden Charakteristikteil
segmentiert, und dann einem Abstimmvorgang unterzogen und mit Dateinamen
versehen. Die beschafften Originalwellenformdaten der jeweiligen
Spieltöne
werden nämlich
in Teilwellenformen segmentiert (Wellenformsegmentierung), von denen
jede eine charakteristische Wellenform-Formvariation, wie zum Beispiel
eine Attack-Teilwellenform,
Body-Teilwellenform, Release-Teilwellenform und Verbindungs-Teilwellenform repräsentiert,
und wird der Abstimmungsvorgang durchgeführt, um die entsprechenden
Tonhöhen
der einzelnen segmentierten Wellenformdaten oder Teilwellenformen
zu bestimmen, die einen oder zwei oder mehrere Zyklen des betreffenden
Tons abdecken, und dann werden eindeutige Dateinamen für diese
segmentierten Wellenformdaten vergeben. Es wird darauf hingewiesen,
dass in dem Fall, bei dem nur die Wellenformdaten eines Teils des
Spiels, wie zum Beispiel Attack-und Release-Teile, beschafft werden,
die oben erwähnte
Wellenformsegmentierung wegfallen kann.
-
Dann
werden bei Schritt S4 die bei Schritt S3 verarbeiteten Wellenformdaten über eine
Frequenzanalyse in Wellenformkomponenten aufgeteilt. An jeder der
segmentierten Teilwellenformen wird nämlich eine Fast-Fourier-Transformation
(FFT) zur Aufteilung in eine Vielzahl von Wellenformkomponenten (bei
der vorliegenden Ausführungsform
harmonische und nicht harmonische Komponenten) unterzogen.
-
Zusätzlich werden
Charakteristiken verschiedener Wellenformfaktoren, wie zum Beispiel Wellenform-Form,
Tonhöhe
und Amplitude, von jeder der Wellenformkomponenten (harmonischen
und nicht harmonischen Komponenten) extrahiert. In dem Fall, bei
dem jede der segmentierten Teilwellenformen in die harmonischen
und nicht harmonischen Komponenten aufgeteilt ist, kann jedoch die
Tonhöhenextraktion
aus den nicht harmonischen Komponenten weggelassen werden, weil
die nicht harmonische Komponente keine Tonhöhe aufweist. Zum Beispiel repräsentiert
der "Wellenform-Form"(Timbre)-Faktor extrahierte
Charakteristiken einer Wellenform-Form, die in der Tonhöhe und Amplitude
genormt ist, repräsentiert
der "Tonhöhen"-Faktor extrahierte
Charakteristiken einer Tonhöhenvariation
von einer vorbestimmten Referenztonhöhe und repräsentiert der "Amplituden-Faktor" extrahierte Charakteristiken
einer Amplitudenhüllkurve.
-
Beim
nächsten
Schritt S5 werden Vektordaten erzeugt. Für jeden der Wellenform-Form(Timbre)-,
Tonhöhen-
und Amplitudenfaktoren der aufgeteilten Wellenformkomponenten (d.h.
harmonischen und nicht harmonischen Komponenten) werden nämlich mehrere
Abtastwerte aufeinanderfolgender Abtastpunkte verteilt oder gegebenenfalls
aufeinanderfolgend extrahiert, und jede extrahierte Abtastungswertgruppe
aufeinanderfolgender Abtastungspunkte, die auf diese Weise erhalten
wird, wird mit einer anderen oder eindeutigen Vektor-ID (Identifikationsinformation)
versehen und im Codebuch zusammen mit Daten gespeichert, die dafür eine Zeitposition
angeben. Hiernach werden solche Abtastungsdaten als "Vektordaten" bezeichnet. Die
vorliegende Ausführungsform
erzeugt Vektordaten des Wellenform-Form(Timbre)-Faktors, Tonhöhenfaktors
und Amplitudenfaktors für
jede der harmonischen Komponenten sowie Vektordaten des Wellenform-Form(Timbre)-Faktors
und Amplitudenfaktors für
jede der nicht harmonischen Komponenten. Die Vektordaten eines jeden
der Wellenformfaktoren sind Daten, die gemäß dem Fortschreiten der Zeit
entlang der Zeitachse variabel sind. Dann werden, wie später noch
zu beschreiben ist, Daten von Vortragsstilmodulen erzeugt, um die
Vortragsstilmodule in der Vortragsstiltabelle zu speichern. Die
auf diese Weise erstellten Vortragsstilmodule und Vektordaten werden bei
Schritt S6 in die Vortragsstiltabelle und das Codebuch in der Datenbank
zum Sammeln von Daten in der Datenbank geschrieben. Wie oben erwähnt unterscheiden
sich die Vektordaten von den anfänglich in
die Wellenformerzeugungsvorrichtung der vorliegenden Erfindung eingeführten Originalwellenformdaten;
bei diesen handelt es sich um die Daten, die durch das Aufteilen
der eingeführten
Originalwellenform für
jeden der Wellenformfaktoren erhalten wurden. Bei den jeweiligen
Vektordaten handelt es sich um Daten, die dann letztendlich zu einer
kleinsten konstituierenden Einheit eines Vortragsstilmoduls werden.
Auf diese Weise werden die extrahierten Teilwellenformdaten, die
entsprechende Variationen in der Wellenform-Form repräsentieren,
in komprimierter Form im Codebuch gespeichert. In der Vortragsstiltabelle
werden auf der anderen Seite Daten verschiedener Vortragsstilmodule,
wie zum Beispiel verschiedene Daten, die zum Umwandeln der in komprimierter
Form gespeicherten Vektordaten nötig sind,
zurück
in die Wellenformdaten der Originalwellenform-Form und ID-Daten
zum Bezeichnen eines Gewünschten
der Vektordaten, die im Codebuch gespeichert sind, wie später noch
im Einzelnen beschrieben wird, gespeichert.
-
Während der
Extraktion der Charakterstiken der verschiedenen Wellenformfaktoren
bei Schritt S4 werden auch Charakteristiken eines Zeitfaktors zusätzlich zu
den oben erwähnten
Amplituden-, Tonhöhen-
und Wellenform-Form-Faktoren
extrahiert. Hiernach werden die auf diese Weise extrahierten Vektordaten
des Zeitfaktors als "Zeitvektordaten" bezeichnet. Die
Zeitlänge
eines Teils der Originalwellenformdaten, die den Zeitabschnitt der
extrahierten Teilwellenformdaten entspricht, wird direkt als der
Zeitfaktor verwendet. Wenn daher die Originalzeitlänge (Variablenwert)
des betreffenden Zeitabschnitts durch ein Verhältnis "1" repräsentiert
wird, so besteht keine Notwendigkeit, die Zeitlänge bei diesem Wellenformdatenbankerstellungsvorgang
zu analysieren und zu messen. Weil in diesem Fall die Daten des
Zeitfaktors, d.h. die Zeitvektordaten, in jedem der Zeitabschnitte
denselben Wert "1" haben, muss die
Zeitlänge
nicht notwendigerweise im Codebuch gespeichert werden. Die vorliegende
Erfindung ist natürlich
hierauf nicht eingeschränkt
und kann zum Analysieren und Messen der tatsächlichen Zeitlänge und
zum Speichern der auf diese Weise gemessenen Zeitlänge im Codebuch
als die Zeitvektordaten modifiziert werden.
-
Dann
wird bei Schritt S7 von 2 eine Feststellung getroffen,
ob die Datenbankerstellung zu einem ausreichenden Grad ausgeführt wurde,
d.h. ob eine ausreichende Menge von Vortragsstilmoduldaten und Vektordaten
erhalten wurden, indem eine ausreichende Menge von Originalwellenformdaten von
Tönen,
die auf verschiedenen natürlichen
Musikinstrumenten mit verschiedenen Vortragsstilen gespielt wurden, über die
externe Wellenformeingabevorrichtung beschafft wurden. Die Entscheidung
bei Schritt S7 ist nicht notwendigerweise auf eine automatische
Entscheidung eingeschränkt,
sondern kann auch auf einer manuellen Schaltereingabebetätigung eines
Benutzers basieren, der einen Befehl gibt, ob der Wellenformdatenbankerstellungsvorgang
fortgesetzt werden soll oder nicht. Wenn die Beschaffung der Originalwellenformdaten
und die Erstellung der Vektordaten, die darauf basiert, zu einem
ausreichenden Grad ausgeführt
wurde (Entscheidung JA bei Schritt S7), wird der vorliegende Wellenformdatenbankerstellungsvorgang
beendet. Wenn andererseits die Beschaffung der Originalwellenformdaten und
die Erstellung der Vektordaten, die darauf basieren, noch nicht
zu einem genügenden
Grad ausgeführt
wurde und daher weiter durchgeführt
werden muss (Entscheidung NEIN bei Schritt S7), schleift der Wellenformdatenbankerstellungsvorgang
zum Schritt S2 zurück,
um die oben beschriebenen Operationen der Schritte S2 – S7 zu
wiederholen. Die Entscheidung bei Schritt S7, ob die Datenbankerstellung
zu einem genügenden
Grad durchgeführt
wurde, kann tatsächlich
unter der Verwendung der erzeugten Vektordaten zum Erzeugen von
Tönen auf Versuchsbasis
erfolgen. Nachdem nämlich
die Abfolge des Wellenformdatenbankerstellungsvorgangs von 2 beendet
wurde, indem bei Schritt S7 die vorläufige Entscheidung getroffen
wurde, dass eine ausreichende Menge von Vektordaten erstellt wurde, kann
eine Operation eines tatsächlichen
Verwendens der erzeugten Vektordaten zum Erzeugen von Tönen auf
Versuchsbasis durchgeführt
werden, und wenn dann die auf diese Weise erzeugten Töne sich
als Ergebnis der versuchsweisen Tonerzeugung als nicht zufriedenstellend
herausstellen, die Operationen bei und nach Schritt S2 wiederholt
werden, um weitere Vektordaten zu erzeugen. Bei der vorliegenden
Ausführungsform
wird nämlich
die Operation des Erzeugens weiterer Vektordaten nach Bedarf durchgeführt.
-
Es
versteht sich hier, dass der oben beschriebene Wellenformdatenbankerstellungsvorgang dazu
ausgelegt sein kann, jedes gewünschte
Vortragsstilmodul hinzuzufügen
bzw. zu löschen
oder die Daten eines gewünschten
Vortragsstilmoduls zu editieren.
-
In
den folgenden Absätzen
folgt eine Beschreibung der Vortragsstilmoduldaten im Einzelnen.
-
Jedes
der Vortragsstilmodule ist in der Vortragsstiltabelle gespeichert,
die auf der Festplatte 109 als Datenbank angeordnet ist
und kann durch eine Kombination von "Vortragsstil-ID" und "Vortragsstilparameter" bezeichnet werden.
Die Vortragsstil-ID enthält Musikinstrumenttypinformation
und Modulteilnamen und kann zum Beispiel wie folgt definiert werden:
Angenommen, jede Vortragsstil-ID besteht aus 32 Bit (Otes bis 31tes
Bit), dann werden sechs Bits der 32 Bits für die Musikinstrumententypinformation verwendet.
Wenn bei der vorliegenden Ausführungsform
zum Beispiel die 6-Bit-Folge, aus der die Musikinstrumententypinformation
besteht, "000000" besteht, dann wird
dadurch "AltoSax" (ein Altsaxophon) bezeichnet,
und wenn die Sechs-Bit-Folge, aus der die Musikinstrumententypinformation
besteht, aus "001000" besteht, dann zeigt
dies "Violin" (eine Geige) an;
es wird darauf hingewiesen, dass die höherwertigen drei Bits der Sechs-Bit-Folge
zum Repräsentieren
einer übergeordneten
Klasse von Musikinstrumenten verwendet werden können, während die niederwertigen drei
Bits zum Repräsentieren
einer Unterklasse der Musikinstrumente verwendet werden können. Ferner
werden weitere sechs Bits der 32 Bits für den Modulteilnamen verwendet.
Wenn die Sechs-Bit-Folge, aus der der Modulteilname besteht, "000000" ist, dann zeigt
dies einen Modulteilnamen "Normal
Attack" an, wenn
die Sechs-Bit-Folge "000001" ist, dann zeigt
dies "BendAttack" an, wenn die Sechs-Bit-Folge "000010" ist, dann zeigt
dies "Grace Note
Attack" an, wenn
die Sechs-Bit-Folge "001000" ist, dann zeigt
dies "Normal Short
Body" an, wenn die
Sechs-Bit-Folge "001001" ist, dann zeigt dies "Vib Body" an, wenn die Sechs-Bit-Folge "001010" ist, dann zeigt
dies "Normal Long
Body" an, wenn die
Sechs-Bit-Folge "010000" ist, dann zeigt dies "Normal Release" an, wenn die Sechs-Bit-Folge "011000" ist, dann zeigt
dies "Normal Joint" an, und wenn die
Sechs-Bit-Folge "011001" ist, dann zeigt dies "Grace Note Joint" an. Die vorliegende
Erfindung ist natürlich
nicht auf die oben angegebenen Anordnungen eingeschränkt.
-
Wie
oben angegeben, wird jedes einzelne Vortragsstilmodul durch eine
Kombination der "Vortragsstil-ID" und "Vortragsstil-Parameter" spezifiziert; das
bedeutet, dass ein vorbestimmtes Vortragsstilmodul gemäß der Vortragsstil-ID
spezifiziert werden und sein Inhalt gemäß den Vortragsstilparametem variabel
gesteuert werden kann. Die Vortragsstilparameter sind Parameter
zum Charakterisieren oder Steuern der Wellenformdaten, die dem Vortragsstilmodul entsprechen,
und sind für
jedes Vortragsstilmodul vorbestimmte Arten von Vortragsstilparametern vorgesehen.
Zum Beispiel können
für das
Modul "Alto Sax
[Normal Attack]" Vortagsstilparameter
vorgesehen sein, die sich auf eine absolute Tonhöhe und ein Tonvolumen unmittelbar
nach dem Attack usw. beziehen. Für
das Modul "Alto
Sax [Bend Up Attack]" können Vortragsstilparameter
vorgesehen sein, die sich auf eine absolute Tonhöhe und das Ende des Bend Up
Attack, einen Anfangswert einer Bend-Tiefe zur Zeit des Bend Up
Attack, eine Zeitlänge
vom Beginn (Note-Ein-Zeit) zum Ende des Bend Up Attack, das Tonvolumen
unmittelbar nach dem Attack, eine Zeit-Dehnung/Kontraktion einer
standardmäßigen Kurve
während
des Bend Up Attack usw. beziehen. Für das Modul "Alto Sax [Normal
Short Body]" können Vortragsstilparameter
vorgesehen sein, die sich auf eine absolute Tonhöhe des Vortragsstilmoduls, eine
Ende- und Startzeit des Normal Short Body, eine Dynamik am Start
und am Ende des Normal Short Body usw. beziehen. Es wird darauf
hingewiesen, dass das Vortragsstilmodul nicht notwendigerweise Daten
(noch zu beschreibende Wellenformfaktordaten) enthält, die
sich auf alle Werte beziehen, welche die Vortragsstilparameter annehmen
können;
vielmehr kann das Vortragsstilmodul Daten enthalten, die lediglich
einigen diskreten (nicht aufeinanderfolgenden) Werten der Vortragsstilparameter
entsprechen. Das heißt,
dass zum Beispiel für
das Modul "Alto
Sax [Normal Attack]" Daten
gespeichert sein können,
die lediglich einigen und nicht allen Werten entsprechen, die für die absoluten
Tonhöhe
und das Tonvolumen unmittelbar nach dem Attack repräsentativ
sind.
-
Indem
auf diese Weise ermöglicht
wird, dass jedes Vortragsstilmodul durch eine Kombination aus der
Vortragsstil-ID und den Vortragsstilparametern spezifiziert wird,
ist es möglich,
Daten, die einer gewünschten
Menge von Vortragsstilparametern entsprechen, aus einer Vielzahl
von Daten (Wellenform-Faktordaten)
zu bezeichnen, die zum Beispiel im Fall des Moduls "Alto Sax [Normal
Attack]" den Normal-Attack-Teil
eines Altsaxophontons angeben. In dem Fall des Moduls "Violin [Bend Attack]" ist es möglich, Daten,
die einer gewünschten
Menge von Vortragsstilparametern entsprechen, aus einer Vielzahl
von Daten (Wellenformfaktordaten) zu bezeichnen, die den Bend Attack – Teil eines
Geigentons angeben.
-
In
der Vortragsstiltabelle sind für
jedes einzelne Vortragsstilmodul die folgenden Daten gespeichert:
Daten, die zum Erzeugen einer Wellenform nötig sind, die dem Vortragsstilmodul
entsprechen, wie zum Beispiel Vektor-IDs, die Vektordaten der einzelnen
Wellenformfaktoren (z.B. Wellenform-Formfaktor, Tonhöhenfaktor
(Tonhöhenhüllkurve)
und Amplitudenfaktor (Amplitudenhüllkurve)) bezeichnen, Wertefolgen
an repräsentativen
Punkten (d.h. Daten, die repräsentative
Abtastungspunkte angeben, die in einer Abfolge einer Vielzahl von
Abtastungen zu modifizieren sind), sowie entsprechende Start- und
Endzeitpositionen der Vektordaten der einzelnen Wellenformfaktoren
(z.B. Wellenform-Formfaktor, Tonhöhenfaktor (Tonhöhenhüllkurve)
und Amplitudenfaktor (Amplitudenhüllkurve)). In der Vortragsstiltabelle
sind nämlich
verschiedene Daten gespeichert, die zum Reproduzieren einer Wellenform
einer normalen Form aus einer Wellenform notwendig sind, die in
der Form komprimierter Vektordaten in der Datenbank gespeichert
ist; hiernach werden solche Daten auch als "Wellenformfaktordaten" bezeichnet. Im Folgenden
werden Einzelheiten einer der Datengruppen erklärt, die in der Vortragsstiltabelle
in Zuordnung mit verschiedenen Vortragsstilmodulen gespeichert sind, und
es folgt insbesondere eine Erläuterung
der Datengruppe, die für
das Modul "Alto
Sax [Normal Attack]" gespeichert
sind:
- Daten 1: abgetastete Länge des Vortragsstilmoduls;
- Daten 2: Position der Note-Ein-Zeit;
- Daten 3: Vektor-ID des Amplitudenfaktors der harmonischen Komponente
und Abfolge der repräsentativen
Punktwerte;
- Daten 4: Vektor-ID des Tonhöhenfaktors
der harmonischen Komponente und Abfolge der repräsentativen Punktwerte;
- Daten 5: Vektor-ID des Wellenform-Form(Timbre)-Faktors der harmonischen
Komponente;
- Daten 6: Vektor-ID des Amplitudenfaktors der nicht harmonischen
Komponente und Abfolge der repräsentativen
Punktwerte;
- Daten 7: Vektor-ID des Wellenform-Form(Timbre)-Faktors der nicht
harmonischen Komponente;
- Daten 8: Startposition eines Wellenformblocks des Wellenform-Form(Timbre)-Faktors der harmonischen Komponente;
- Daten 9: Endposition eines Wellenformblocks des Wellenform-Form(Timbre)-Faktors der harmonischen Komponente
(d.h. Startposition eines Schleifenteils des Wellenform-Form(Timbre)-Faktors
der harmonischen Komponente;
- Daten 10: Startposition eines Wellenformblocks des Wellenform-Form(Timbre)-Faktors
der nicht harmonischen Komponente;
- Daten 11: Endposition eines Wellenformblocks des Wellenform-Form(Timbre)-Faktors der nicht
harmonischen Komponente (d.h. Startposition eines Schleifenteils
des Wellenform-Form(Timbre)-Faktors der nicht harmonischen Komponente);
und
- Daten 12: Endposition eines Schleifenteils des Wellenform-Form(Timbre)-Faktors der nicht
harmonischen Komponente.
-
Die
oben angegebenen Daten 1 – 12
werden im Folgenden anhand von 3 näher beschrieben.
-
3 ist
eine schematische Darstellung verschiedener Wellenformkomponenten
und Wellenformfaktoren, die einen tatsächlichen Wellenformabschnitt
bilden, der dem betreffenden Vortragsstilmodul entspricht. In 3 sind
von oben nach unten der Amplitudenfaktor, der Tonhöhenfaktor
und der Wellenform-Form(Timbre)-Faktor der harmonischen Komponente
sowie der Amplitudenfaktor und der Wellenform-Form(Timbre)-Faktor
der nicht harmonischen Komponente gezeigt, die im Wellenformabschnitt
erfasst wurden. Es wird darauf hingewiesen, dass numerische Werte
die entsprechenden Nummern der oben erwähnten Daten (Daten 1 – 12) repräsentieren.
-
Genauer
repräsentiert
der numerische Wert 1 die abgetastete Länge des Wellenformabschnitts (Länge des
Wellenformabschnitts), die dem Vortragsstilmodul entspricht, die
zum Beispiel der Gesamtzeitlänge
der Originalwellenformdaten entspricht, von dem das Vortragsstilmodul
abgeleitet wird. Der numerische Wert 2 repräsentiert die Position der Note-Ein-Zeit,
die zu einer beliebigen Zeitposition des Vortragsstilmoduls gesetzt
werden kann. Auch wenn prinzipiell das Erklingen des auf der Wellenform
basierenden Spieltons an der Position der Note-Ein-Zeit eingeleitet
wird, kann der Anstiegsstartpunkt der Wellenformkomponente der Note-Ein-Zeit
in dem Fall eines bestimmten Vortragstils, wie zum Beispiel Bend-Attack,
auch vorausgehen. Der numerische Wert 3 repräsentiert die Vektor-ID, welche
die Vektordaten des Amplitudenfaktors der harmonischen Komponente
und die Folge der repräsentativen Punktwerte,
die im Codebuch gespeichert sind, repräsentiert; in der Figur geben
zwei schwarz gefüllte quadratische
Markierungen diese repräsentativen Punkte
an. Der numerische Wert 4 repräsentiert
die Vektor-ID, welche die Vektordaten des Tonhöhenfaktors der harmonischen
Komponente und die Abfolge der repräsentativen Punktwerte bezeichnet.
Der numerische Wert 6 repräsentiert
die Vektor-ID, welche die Vektordaten des Amplitudenfaktors der
nicht harmonischen Komponente und die Abfolge der repräsentativen
Punktwerte bezeichnet. Die repräsentativen
Punktwerte sind Daten, die zum Ändern/Steuern der
Vektordaten verwendet werden, die aus einer Abfolge einer Vielzahl
von Abtastungen bestehen, welche durch die Vektor-ID bezeichnet
werden, und bezeichnet einige der repräsentativen Abtastungspunkte.
Während
die entsprechenden Zeitpositionen (die auf der waagrechten Achse
in der Figur abgetragen sind) und Pegel (die auf der senkrechten
Achse der Figur abgetragen sind) der bezeichneten repräsentativen
Abtastungspunkte geändert
oder gesteuert werden, werden die anderen Abtastungspunkte ebenfalls
verändert,
so dass die Gesamtform des Vektors verändert werden kann. Zum Beispiel
repräsentieren die
repräsentativen
Punktwerte diskrete Abtastungen, deren Anzahl geringer als die Gesamtzahl
der Abtastungen ist; bei den repräsentativen Punktwerten kann
es sich jedoch um Werte an Zwischenpunkten zwischen den Abtastungen
oder Werten bei einer Vielzahl aufeinanderfolgender Abtastungen über einen
vorbestimmten Bereich handeln. Alternativ dazu können die repräsentativen
Punktwerte auch solche Werte, die Differenzen zwischen den Abtastungswerten,
Multiplikatoren, die auf die Abtastungswerte anzuwenden sind oder
dergleichen, und nicht die Abtastungswerte selbst sein. Die Form
der jeweiligen Vektordaten, d.h. die Form der Hüllkurvenwellenform, kann dadurch
geändert
werden, dass die repräsentativen
Punkte entlang der waagrechten Achse (der Zeitachse) und/oder der
senkrechten Achse (der Pegelachse) bewegt werden. Der numerische
Wert 5 repräsentiert
die Vektor-ID, welche die Vektordaten des Wellenform-Form(Timbre)-Faktors
der harmonischen Komponente bezeichnet.
-
Ferner
repräsentiert
in 3 der numerische Wert 7 die Vektor-ID, welche
die Vektordaten des Wellenform-Form(Timbre)-Faktors der nicht harmonischen
Komponente bezeichnet. Der numerische Wert 8 repräsentiert
die Startposition des Wellenformblocks des Wellenform-Form(Timbre)-Faktors der
harmonischen Komponente. Der numerische Wert 9 repräsentiert
die Endposition des Wellenformblocks des Wellenform-Form(Timbre)-Faktors
der harmonischen Komponente (d.h. die Startposition des Schleifenteils
des Wellenform-Form(Timbre)-Faktors
der harmonischen Komponente). Das bei einem mit "8" bezeichneten
Punkt beginnende Dreieck repräsentiert
nämlich
ein nicht geschleiftes Wellenformsegment, bei dem charakteristische
Wellenform-Formen in Abfolge gespeichert sind, und das bei einem
mit "9" bezeichneten Punkt
beginnende Rechteck repräsentiert
ein geschleiftes Wellenformsegment. Das nicht geschleifte Wellenformsegment repräsentiert
ein qualitativ hochwertiges Wellenformsegment, das für den Vortragsstil
(die Artikulation) usw. charakteristisch ist, während das geschleifte Wellenformsegment
eine Einheitswellenform eines relativ monotonen Tonsegments repräsentiert,
das einen einzigen oder eine entsprechende Vielzahl von Wellenzyklen
aufweist. Der numerische Wert 10 repräsentiert die Startposition
des Wellenformblocks des Wellenform-Form(Timbre)-Faktors der nicht
harmonischen Komponente. Der numerische Wert 11 repräsentiert
die Endposition des Wellenformblocks des Wellenform-Form(Timbre)-Faktors
der nicht harmonischen Komponente (d.h. den Startpunkt des geschleiften
Teils des Wellenform-Form(Timbre)-Faktors
der nicht harmonischen Komponente). Ferner repräsentiert der numerische Wert
12 die Endposition des geschleiften Wellenformsegments des Wellenform-Form(Timbre)-Faktors
in der nicht harmonischen Komponente. Die Daten 3 – 7 sind
ID-Daten, welche die im Codebuch für die einzelnen Wellenformfaktoren
gespeicherten Vektordaten anzeigen, und die Daten 2 und die Daten
8 – 12
sind Zeitdaten zum Wiederherstellen der Originalwellenform (d.h. der Wellenform
vor der Wellenformsegmentierung) auf der Grundlage der Vektordaten.
Die Daten für
die jeweiligen Vortragsstilmodule enthalten nämlich die Daten, welche die
Vektordaten und die Zeitdaten bezeichnen. Unter der Verwendung dieser
Vortragsstilmoduldaten, die in der Vortragsstiltabelle gespeichert sind,
und der wellenformerzeugenden Materialien (d.h. der Vektordaten)
kann nämlich
jede beliebige gewünschte
Wellenform frei konstruiert werden. Jedes der Vortragsstilmodule
enthält
nämlich
Daten, die ein Verhalten einer gemäß einem Vortragsstil oder einer
Artikulation zu erzeugenden Wellenform repräsentieren. Es wird darauf hingewiesen,
dass sich die Vortragsstilmodule in der Art und der Anzahl der darin
enthaltenen Daten voneinander unterscheiden können und auch andere Daten
als die oben Erwähnten
enthalten können.
Zum Beispiel können
die Vortragsstilmodule Daten enthalten, die zum Steuern der Zeitachse
der Wellenform zu ihrer Ausdehnung/Kontraktion (zeitaxialen Dehnungs/Komprimierungssteuerung)
zu verwenden sind.
-
Während die
vorhergehenden Absätze
den Fall beschrieben haben, bei dem jedes der Vortragsstilmodule
alle grundlegenden Wellenformfaktoren (Welleform-Form-, Tonhöhen- und Amplitudenfaktoren)
der harmonischen Komponente und die grundlegenden Wellenformfaktoren
(Wellenform-Form- und Amplitudenfaktoren) der nicht harmonischen
Komponente enthält,
ist die vorliegende Erfindung hierauf nicht eingeschränkt, sondern
können
natürlich
auch jedes oder einige der Vortragsstilmodule nur einen der Wellenformfaktoren
(Wellenform-Form, Tonhöhe und
Amplitude) der harmonischen Komponente und der Wellenformfaktoren
(Wellenform-Form und Amplitude) der nicht harmonischen Komponente
enthalten. Zum Beispiel kann jedes oder können einige der Vortragsstilmodule
einen ausgewählten
oder mehrere der Faktoren Wellenform-Form, Tonhöhe und Amplitude der harmonischen
Komponente und Wellenform-Form und Amplitude der nicht harmonischen Komponente
enthalten. Auf diese Weise können
die Vortragsstilmodule in jeder beliebigen gewünschten Kombination je nach
dem gewünschten
Wellenformfaktor frei verwendet werden, was äußerst vorteilhaft ist.
-
Mit
der oben beschriebenen Anordnung, bei der lediglich Wellenformdaten
von Teilwellenformen, die für
die Wellenform-Formvariationen nötig
sind (wie zum Beispiel Teilwellenformen der Teile Attack, Body,
Release, Joint) und nicht alle Wellenformdaten von auf verschiedenen
natürlichen
Musikinstrumenten mit verschiedenen Spielstilen gespielte Töne extrahiert
und auf der Festplatte 109 in einer Form gespeichert werden,
die mit einem Datenkomprimierungsverfahren unter der Verwendung
einer Hierarchie der Wellenformkomponenten, Wellenformfaktoren und
repräsentativen
Punkten komprimiert wurden, kann die vorliegende Ausführungsform
eine benötigte
Speicherkapazität
der Festplatte 109 zum Speichern der Wellenformdaten wirksam
verringern.
-
Bei
der in 1 gezeigten Wellenformerzeugungsvorrichtung wird
eine Wellenformsynthese vom Computer durchgeführt, der ein vorbestimmtes
Softwareprogramm für
den Wellenformsynthesevorgang ausführt. 4A ist
ein Fließdiagramm,
in dem eine beispielhafte Betriebsabfolge des Programms für den Wellenformsynthesevorgang
(datenbankbasierten Tonsynthesevorgang) gezeigt ist. Alternativ
dazu kann der Wellenformsynthesevorgang von einer dedizierten Hardwarevorrichtung
anstelle des Wellenformsyntheseprogramms ausgeführt werden. 4B ist
ein Blockdiagramm das ein Beispiel für eine solche dedizierte Hardwarevorrichtung
zum Ausführen
des Wellenformsynthesevorgangs zeigt. Der Wellenformsynthesevorgang
wird unten unter hauptsächlicher
Bezugnahme auf das Blockdiagramm von 4B beschrieben,
wobei die entsprechenden Verarbeitungsschritte von 4A in
der folgenden Beschreibung in Klammern angegeben sind; in 4A sind
die Hardwarekomponenten, die den Betriebsschritten entsprechen,
in Klammern angegeben.
-
Ein
Musikstückdatenreproduktionsabschnitt 101A von 4B reproduziert
Musikstückdaten
mit Vortragsstilmarkierungen (Schritt S11 von 4A). Zu
diesem Zweck empfängt
der Musikstückdatenreproduktionsabschnitt 101A die
Musikstückdaten
mit Vortragsstilmarkierungen (Spielinformation). Allgemein sind
auf einer normalen Musikpartitur oder in Notenschrift verschiedene
musikalische Markierungen, wie zum Beispiel dynamische Markierungen (Crescendo,
Decrescendo oder dergleichen), Tempomarkierungen (Allegro, Ritardando
oder dergleichen), Bindebogen, Tenutozeichen und Akzentuierungszeichen
angegeben, die ohne eine entsprechende Umwandlung keine MIDI-Daten
darstellen können.
Auf diese Weise werden musikalischen Markierungen in Vortragsstilmarkierungsdaten
umgewandelt, und MIDI-Musikstückdaten
mit diesen Vortragsstilmarkierungsdaten werden als die "Musikstückdaten
mit Vortragsstilmarkierungen" zur
Verfügung
gestellt. Alle Vortragsstilmarkierungsdaten enthalten eine Notenschrift-ID
und Notenschriftparameter. Die Notenschrift-ID ist eine ID, welche
die musikalische Markierung angibt, die auf den musikalischen Noten
angegeben ist, und die Notenschriftparameter geben einen Grad des
bestimmten Vortrags an, der von der musikalischen Markierung repräsentiert
wird, der von der Notenschrift-ID bezeichnet ist. In dem Fall, bei
dem die Notenschrift-ID ein "Vibrato" angibt, werden zum
Beispiel eine Geschwindigkeit, Tiefe usw. des Vibratos als die Notenschriftparameter gegeben,
und in dem Fall, in dem die Notenschrift-ID ein "Crescendo" angibt, werden Tonvolumenspegel am
Start und am Ende des Crescendos, die Länge des Zeitraums, über den
das Tonvolumen variiert, usw. als die Notenschriftparameter angegeben.
-
Ferner
führt in 4B ein
Musiknoteninterpretationsabschnitt (Spieler) 101B einen
Musiknoteninterpretationsvorgang (Schritt S12) aus. Insbesondere
werden die MIDI-Daten und die Vortragsstilmarkierungsdaten (die
jeweils die Notenschrift-ID und die Notenschriftparameter enthalten),
die in den Musikstückdaten
enthalten sind, in Vortragsstil bezeichnende Information umgewandelt,
die Vortragsstil-IDs und Vortragsstilparameter enthält, die
dann zusammen mit der Zeitinformation an den Vortragsstilsyntheseabschnitt
(Artikulator) 101C gesendet werden. Allgemein gilt, dass
sogar ein und dieselbe musikalische Markierung zwischen verschiedenen menschlichen
Spielern unterschiedlich interpretiert werden kann, so dass das
Spiel für
jeden der menschlichen Spieler in einer anderen Art und Weise (d.h.
mit einem anderen Vortragsstil bzw. einer anderen Artikulation)
ausgeführt
wird. Ferner kann je nach der Anordnung von Noten und dergleichen
das Spiel für
jeden der menschlichen Spieler in einer anderen Art und Weise ausgeführt werden.
Deshalb ist hier der Musiknoteninterpretationsabschnitt 101B als
ein Ergebnis des Umwandelns von Expertenwissen zum Interpretieren
der Markierungen (musikalischen Markierungen und Anordnung von Noten)
auf der Musikpartitur in einem Expertensystem vorgesehen. Im Folgenden
sind einige von vielen Kriterien für den Musiknoteninterpretationsabschnitt 101B zum
Interpretieren der Markierungen auf der Musikpartitur angegeben.
Zum Beispiel kann ein Vibrato nicht auf einer Note angebracht werden,
die kürzer
als ein Achtel ist. Mit einem Stakkato verstärkt sich spontan auch die Dynamik.
Eine Dämpfungsrate
einer Note hängt
von einem Grad eines Tenutos ab. Legato verursacht keine Dämpfung in
einem Ton. Die Geschwindigkeit eines Vibratos einer Achtelnote wird
im Wesentlichen durch einen Zeitwert bestimmt. Die Dynamik hängt von
einer Tonhöhe
ab. Ferner werden verschiedene andere Interpretationskriterien verwendet,
die sich zum Beispiel auf eine Variation in der Dynamik aufgrund
einer innerhalb einer Phrase ansteigenden und abfallenden Tonhöhe, Dämpfungsdynamik,
die linear proportional zu einer Klangintensität (in Dezibel) ist, eine Variation
in der Notenlänge
in Entsprechen auf ein Tenuto, Stakkato oder dergleichen, und eine
Bendup-Breite und -Kurve im Ansprechen auf eine Bendup-Markierung
im Attack-Teil beziehen. Der Musiknoteninterpretationsabschnitt 101B wandelt
die Musikpartitur in Klänge
um, indem die Musikpartitur gemäß diesen
Interpretationskriterien interpretiert wird. Ferner führt der
Musiknoteninterpretationsabschnitt 101B auch den Musiknoteninterpretationsvorgang
gemäß der vom
Nutzer vorgenommenen Spielerzuweisung durch, d.h. der Zuweisung
vom Benutzer eines gewünschten
menschlichen Spielers (Vortragsstils). Insbesondere interpretiert
der Musiknoteninterpretationsabschnitt 101B die Musikpartitur
gemäß einer
vorgegebenen Betriebsart, die dem betreffenden Spieler oder Vortragsstil entspricht,
d.h. in einer unterschiedlichen Weise für jeden bezeichneten Spieler
oder Vortragsstil. Zum Beispiel sind verschiedene unterschiedliche
Weisen zum Interpretieren einer Musikpartitur, die einer Vielzahl
von menschlichen Spielern entspricht, in der Datenbank gespeichert,
so dass der Musiknoteninterpretationsabschnitt 101B die
Musikpartitur unter der Verwendung eines der gespeicherten Musiknoteninterpretationsmodi
interpretiert, der dem vom Benutzer angegebenen Spieler entspricht.
-
Hierbei
versteht es sich, dass die Musikstückdaten (Spielinformation)
so aufgebaut sein können,
dass sie im Voraus Daten enthalten, die Interpretationsergebnisse
der Musikpartitur angeben. Wenn solche Musikstückdaten, die Daten enthalten, die
Interpretationsergebnisse angeben, in die Vorrichtung eingegeben
wurden, dann braucht der oben beschriebene Musiknoteninterpretationsvorgang
natürlich
nicht ausgeführt
zu werden. Ferner kann der vom Interpretationsabschnitt 101B ausgeführte Musiknoteninterpretationsvorgang
je nachdem vollautomatisch oder unter Eingreifen einiger vom Benutzer manuell
eingegebener Operationen durchgeführt werden.
-
Unter
Bezugnahme auf die Vortragsstiltabelle auf der Grundlage der umgewandelten
Vortragsstil anzeigenden Information (Vortragsstil-IDs und Parameter)
vom Interpretationsabschnitt 101B erzeugt der Vortragsstilsyntheseabschnitt
(Artikulator) 101C einen Paketstrom (der auch als Vektorstrom
bezeichnet wird), der der Vortragsstil bezeichnenden Information
entspricht und Vektorparameter für
den Paketstrom, die den Vortragsstilparametern entsprechen, und
liefert den auf diese Weise erzeugten Paketstrom und die Vektorparameter
an einen Wellenformsyntheseabschnitt 101D (Schritt S13).
Die als der Paketstrom an den Wellenformsyntheseabschnitt 101D gelieferten
Daten enthalten Zeitinformation, Vektor-IDs, repräsentative
Punktwerte usw. der Pakete im Fall der Tonhöhen- und Amplitudenfaktoren, und
Vektor-IDs, Zeitinformation usw. im Fall des Wellenform-Form(Timbre)-Faktors
wie im Einzelnen noch beschrieben wird.
-
Dann
ruft der Wellenformsyntheseabschnitt 101D die Vektordaten
gemäß dem gelieferten
Paketstrom vom Codebuch ab, ändert
oder modifiziert die abgerufenen Vektordaten gemäß den Vektorparametern und
synthetisiert eine Wellenform auf der Grundlage der auf diese Weise
geänderten
Vektordaten (Schritt S14). Hiernach führt der Wellenformsyntheseabschnitt 101D für eine weitere
Spielstimme einen Wellenformerzeugungsvorgang aus (Schritt S15). Die "weitere Spielstimme" bedeutet hier eine
von mehreren Spielstimmen, an denen der Vortragsstilsynthesevorgang
nicht durchgeführt
wird, an der jedoch ein normaler Tonwellenformsynthesevorgang durchgeführt wird.
Für die
andere Spielstimme wird die Tonerzeugung unter der Verwendung des
herkömmlichen
wellenformspeicherbasierten Tongeneratorverfahrens durchgeführt. Der
Wellenformerzeugungsvorgang für
die andere Spielstimme kann von einem dedizierten Hardwaretongenerator,
wie zum Beispiel einer externen Tongeneratoreinheit oder einer Tongeneratorkarte,
die lösbar
an einem Computer angebracht ist, durchgeführt werden. Zur Einfachheit
der Beschreibung wird hier jedoch davon ausgegangen, dass die vorliegende
Ausführungsform
die Tonerzeugung, die Vortragsstilen oder Artikulation entspricht,
nur für
eine Spielstimme ausgeführt
wird, auch wenn die Vortragsstilreproduktion natürlich auch für mehrere
Spielstimmen ausgeführt
werden kann.
-
5 ist
ein Fließdiagramm,
das eine beispielhafte Betriebsabfolge des Vortragsstilsynthesevorgangs
zeigt, der vom oben erwähnten
Vortragsstilsyntheseabschnitt 101C von 4B durchgeführt wird.
Auch wenn die Vortragsstilmodule und das Codebuch in 5 als
getrennt gespeichert gezeigt sind, so sind sie doch tatsächlich in
der Datenbank der Festplatte 109 gemeinsam gespeichert.
-
Der
Vortragsstilsyntheseabschnitt 101C erstellt mehrere Paketströme, die
an den Wellenformsyntheseabschnitt 101D zu liefern sind,
auf der Grundlage der Vortragsstil bezeichnenden Information (welche
die Vortragsstil-IDs und die Vortragsstilparameter enthält), sowie
Zeitinformation, die vom Musiknoteninterpretationsabschnitt 101B geliefert wird.
Die im Vortragsstilsyntheseabschnitt 101C für die einzelnen
Klangfarben verwendeten Vortragsstilmodule sind nicht notwendigerweise
fest; vielmehr kann der Benutzer zu den derzeit gespeicherten Modulen
beliebige neue Vortragsstilmodule hinzufügen und die derzeit gespeicherten
Module auch nicht mehr verwenden. Außerdem führt der Vortragsstilsyntheseabschnitt 101C einen
Vorgang zum Erzeugen von Information zum Kompensieren einer Differenz
oder Diskrepanz zwischen ausgewählten
Wellenformfaktordaten und Werten der Vortragsstilparameter sowie
einen Vorgang zum Glätten
einer Verbindung zwischen Wellenformcharakteristiken aufeinanderfolgender
Vortragsstilmodule durch, wie im Einzelnen noch beschrieben wird.
-
Während prinzipiell
die Daten vom Musiknoteninterpretationsabschnitt 101B an
den Vortragsstilsyntheseabschnitt 101C gegeben werden,
ist die vorliegende Erfindung hierauf nicht eingeschränkt. Es können nämlich Musikstückdaten
mit vortragsstilbezeichnenden Daten präpariert werden, die schon vom
Interpretationsabschnitt 101B, wie oben erwähnt, interpretiert
wurden, oder auch Musikstückdaten
mit vortragsstilbezeichnenden Daten, die Vortragsstil-IDs und Vortragsstilparameter
enthalten, die ihnen als ein Ergebnis einer Musiknoteninterpretation durch
einen menschlichen Operator verliehen wurden. Dann können die
durch Reproduzieren der auf diese Weise präparierten Musikstückdaten
erhaltenen Daten an den Vortragsstilsyntheseabschnitt 101C geliefert
werden.
-
6 ist
ein Fließdiagramm,
das eine beispielhafte Betriebsabfolge des Vortragsstilsynthesevorgangs
zeigt.
-
Der
Vortragsstilsyntheseabschnitt 101C wählt bei Schritt S21 gemäß der Vortragsstil-ID
und Vortragsstilparametern eines der in der Vortragsstiltabelle
gespeicherten Vortragsstilmodule aus; das heißt, dass eines der Vortragsstilmodule
gemäß der Vortragsstil-ID
(Musikinstrumententypinformation plus Modulteilnahme) und Vortragsstilparametern, die
vom Musiknoteninterpretationsabschnitt 101B gesendet wurden,
ausgewählt
wird. Zu dieser Zeit prüft
der Musiknoteninterpretationsabschnitt 101B, bevor er zur
Interpretation der Musikpartitur schreitet, die Datenbank, um zu
prüfen,
welche Arten von Modulteilen derzeit in der Vortragsstiltabelle
in Zuordnung zu der Klangfarbe gespeichert sind, die von der Musikinstrumententypinformation
repräsentiert
werden, und bezeichnet die Vortragsstil-ID innerhalb der Grenzen
der derzeit gespeicherten Modulteile. Wenn ein Modulteil, das derzeit
nicht in der Vortragsstiltabelle gespeichert ist, bezeichnet wurde,
dann kann ein anderer Modulteil, der ähnliche Charakteristiken wie
das bezeichnete Modulteil hat, aus der Vortragsstiltabelle ausgewählt werden.
Hiernach werden bei Schritt S22 gemäß der bezeichneten Vortragsstil-ID und
den Vortragsstilparametern mehrere Wellenformfaktordaten ausgewählt. Ein
bestimmtes Vortragsstilmodul ist nämlich unter Bezugnahme auf
die Vortragsstiltabelle auf der Grundlage der bezeichneten Vortragsstil-ID
und der Vortragsstilparameter spezifiziert, und mehrere Wellenformfaktordaten,
die den Vortragsstilparametern entsprechen, werden aus dem Vortragsstilmodul
ausgewählt.
Wenn das Vortragsstilmodul keine Wellenformfaktordaten enthält, die
vollständig
mit den Vortragsstilparametern übereinstimmen,
werden andere Wellenformfaktordaten ausgewählt, die den Werten der Vortragsstilparamter genügend nahe
kommen.
-
Dann
werden bei Schritt S23 gemäß der Zeitinformation
Zeitwerte ausgewählter
Positionen in den Wellenformfaktordaten berechnet; das heißt, dass
die einzelnen Wellenformfaktordaten auf der Grundlage der Zeitinformation
an ihren entsprechenden absoluten Zeitpositionen angeordnet werden. Insbesondere
werden entsprechende absolute Zeiten der einzelnen Wellenformfaktordaten,
die entsprechende relative Zeitpositionen repräsentieren, auf der Grundlage
der Zeitinformation berechnet. Auf diese Weise wird eine entsprechende
Zeitsteuerung der Wellenformfaktordaten bestimmt (siehe 3). Dann
werden bei Schritt S24 Werte der einzelnen Wellenformfaktordaten
gemäß den Vortragsstilparametern
eingestellt; das heißt,
dass an diesem Schritt Differenzen zwischen den ausgewählten Wellenformfaktordaten
und den Werten der Vortragsstilparameter kompensiert werden. Wenn
zum Beispiel das Tonvolumen (Vortragsstilparameter) unmittelbar
nach dem Attack-Teil des Moduls Altosax [Normal Attack], das vom
Musiknoteninterpretationsabschnitt 101b empfangen wurde,
auf einem Pegel "95" ist, während das
Tonvolumen unmittelbar nach dem Attack-Teil des Moduls AltoSax [Normal
Attack], das im Vortragsstil gespeichert ist, auf dem Pegel "100" ist, dann wählt der
Vortragsstilsyntheseabschnitt 101C die Wellenformfaktordaten
des letzteren Moduls Alto Sax [Normal Attack] aus, dessen Tonvolumenspegel unmittelbar
nach dem Attack-Teil "100" ist. Weil jedoch
der Tonvolumenspegel unmittelbar nach dem Attack-Teil immer noch "100" ist, werden an den
repräsentativen
Punkten der ausgewählten
Wellenformfaktordaten Einstellungen vorgenommen, um den Tonvolumenspegel
unmittelbar nach dem Attack-Teil auf "95" zu
modifizieren. Auf diese Weise werden die Werte der ausgewählten Wellenformfaktordaten
so eingestellt, dass sie sich Werten der empfangenen Vortragsstilparameter
nähern.
Ferner wird bei diesem Schritt eine Einstellung gemäß einem
aktuell eingestellten Mikrostimmwert zum Stimmen des Musikinstruments
sowie auch eine Tonvolumenseinstellung gemäß Tonvolumensvariationscharakteristiken
des Musikinstruments vorgenommen. Diese Einstellungen werden dadurch
vorgenommen, dass die repräsentativen
Punktwerte der einzelnen Wellenformfaktordaten manchmal erheblich
geändert
werden. Die repräsentativen
Punktwerte sind nämlich
notwendige und ausreichende Daten für die Einstellungen, und durch
Steuern der repräsentativen
Punktwerte in den Wellenformfaktordaten werden verschiedene Einstellungen
vorgenommen.
-
Es
wird darauf hingewiesen, dass bei Schritt 23 oben die Zeitpositionen,
die durch die Zeitinformation angegeben sind, durch Einstellungsinformation, wie
zum Beispiel die oben erwähnten
Vortragsstilparameter, eingestellt werden können. In einer Situation, bei
der eine Zeitposition basierend auf den Spieldaten und eine Zeitposition,
welche von der Zeitinformation angegeben wird, miteinander nicht übereinstimmen,
kann zum Beispiel andere Zeitinformation, die eine andere Zeitposition
angibt, die der Zeitposition näher
ist, basierend auf den Spieldaten ausgewählt werden, und kann die durch
die auf diese Weise ausgewählte
Zeitinformation angegebene Zeitposition gemäß den Spieldaten eingestellt
werden, so dass die Zeitpositionsinformation, die von den Spieldaten
beabsichtigt ist, erhalten werden kann. Ferner kann in einer Situation,
bei der die Spieldaten variable Steuerungsfaktoren, wie zum Beispiel
Anschlag und Geschwindigkeit, beinhalten, eine auf den Spieldaten
basierende Zeitpositionsinformation variabel dadurch gesteuert werden,
dass die Zeitpositionsinformation gemäß den variablen Steuerungsfaktoren verändert wird.
Die oben erwähnte
Einstellungsinformation enthält
Information zum Vornehmen einer derartigen Zeitpositionseinstellung.
-
Ferner
wird beim nächsten
Schritt S25 ein Wellenformverbindungsvorgang zum Glätten entsprechender
Verbindungsteile aneinander anschließender Vortragsstilmodule durch
Einstellen der einzelnen Wellenformfaktordaten durchgeführt. Die
repräsentativen
Punkte der entsprechenden Verbindungsteile aneinander anschließender Vortragsstilmodule
werden nämlich
einander näher
gebracht und miteinander verbunden, um so die Wellenformcharakteristiken
der aneinander anschließenden
Vortragsstilmodule zu glätten.
Ein derartiger Verbindungs- oder Wellenformverbindungsvorgang wird
für jeden
der Wellenformfaktoren, wie zum Beispiel die Wellenform-Form (Timbre),
Amplitude und Tonhöhe der
harmonischen Komponente oder auch für jeden der Wellenformfaktoren,
wie zum Beispiel die Wellenform (Timbre) und Amplitude der nicht
harmonischen Komponente durchgeführt.
-
Zu
dieser Zeit werden über
einen Bereich von einem Verbindungsstartpunkt des vorausgehenden
Vortragsstilmoduls zu einem Verbindungsendpunkt des nachfolgenden
Vortragsstilmoduls Einstellungen vorgenommen. Insbesondere werden
die repräsentativen
Punkte innerhalb des Bereichs vom Verbindungsstartpunkt zum Verbindungsendpunkt auf
der Grundlage einer "gegenseitigen
Näherungsrate" eingestellt. Die "gegenseitige Näherungsrate" ist hier ein Parameter
zum Durchführen
einer Steuerung zum Bestimmen eines Punkts, der vom vorausgehenden
und vom nachfolgenden Vortragsstilmodul zum jeweils anderen verschoben
ist und bei dem die aneinander anschließenden Vortragsstilmodule miteinander
zu verbinden sind, und dieser Parameter wird gemäß einer Kombination der aneinander
anschließenden
Vortragsstilmodule gesetzt. Wenn die aneinander anschließenden Vortragsstilmodule
nicht erfolgreich miteinander verbunden wurden, wird die Verbindung
durch Ausdünnen
der Vektor-IDs der Wellenformcharakteristiken eines der aneinander
anschließenden
Vortragsstilmodule geglättet.
Für das Ausdünnen der
Vektor-IDs sind bei der vorliegenden Ausführungsform eine "Vortragsstilmodulkombinationstabelle", "Ausdünnungsparameterbereichstabelle", auf die von der
Vortragsstilmodulkombinationstabelle Bezug genommen wird, und eine "Ausdünnungszeittabelle", auf die von der
Ausdünnungsparameterbereichstabelle
Bezug genommen wird, vorgesehen.
-
Die
Wellenformcharakteristiken können
auch durch einen Wellenformverbindungsvorgang glatt miteinander
verbunden werden, der vom Musiknoteninterpretationsabschnitt 101B anstelle
oder zusätzlich
zum oben erwähnten
Wellenformverbindungsvorgang durchgeführt wird, der vom Vortragsstilsyntheseabschnitt 101C durchgeführt wird.
Zum Beispiel werden diskrete Bereiche der Vortragsstilparameter
(Werte der Dynamik, Tonhöhenparameter usw.)
ohne Rücksicht
auf die Vortragsstilmodule glatt miteinander verbunden. Beim Übergang
von einem Vibrato zu einem Release-Teil können die Wellenformcharakteristiken
zum Beispiel dadurch glatt miteinander verbunden werden, dass der
Vibratoeffekt früher
nachgelassen wird.
-
Es
folgt nun eine Beschreibung des oben beschriebenen Wellenformverbindungsvorgangs,
d.h. Einstellungen der einzelnen Wellenformfaktordaten zum Glätten entsprechender
Verbindungsteile beieinanderliegender Vortragsstilmodule (siehe
Schritt 25) im Einzelnen. Zuerst folgt unter Bezugnahme auf 7 eine
Beschreibung über
den Wellenformverbindungsvorgang anhand eines Falles, bei dem die Vortragsstilmodule
jeweils dem Amplituden- oder Tonhöhenfaktor entsprechen.
-
Wenn
an einem Wellenformverbindungspunkt zwischen beieinanderliegenden
Vortragsstilmodulen aufgrund einer Diskretheit zwischen den repräsentativen
Punktwerten in den entsprechenden Verbindungsteilen der beiden Vortragsstilmodule eine
große
Wertdifferenz entsteht, wird zuerst eine "gegenseitige Näherungsrate" als ein Index dafür bestimmt, zu welchem der
Werte aus dem vorausgehenden und dem nachfolgenden Vortragsstilmodul der
Zielwert des Dynamikverbindungspunkts oder des Tonhöhenverbindungspunkts
nähergebracht werden
sollte. Es sei hier nun angenommen, dass bei der vorliegenden Ausführungsform
eine solche gegenseitige Näherungsrate
von einer Tabelle, wie sie in 7 dargestellt
ist, vorgegeben wird. Wenn zum Beispiel die Vektor-ID des vorausgehenden
Vortragsstilmoduls "3" und die Vektor-ID
des nachfolgenden Vortragsstilmoduls "7" ist,
dann wird über
die Tabelle eine gegenseitige Näherungsrate
von "30" bestimmt. Dann werden
die Hüllkurvenformen
der Vortragsstilmodule progressiv vom Verbindungsstartpunkt des vorausgehenden
Vortragsstilmoduls bis zum Verbindungsendpunkt des nachfolgenden
Vortragsstilmoduls modifiziert, um sich den entsprechenden Zielwerten
zu nähern.
Außerdem
werden auch die Hüllkurvenformen
der Vortragsstilmodule progressiv in der Rückrichtung, d.h. vom Verbindungsendpunkt des
nachfolgenden Vortragsstilmoduls zum Verbindungsstartpunkt des vorausgehenden
Vortragsstilmoduls, modifiziert. Insbesondere ist, wenn die gegenseitige
Näherungsrate
auf "30" gesetzt wurde, der Zielwert
für das
vorausgehende Vortragsstilmodul "30", so dass das vorausgehende
Vortragsstilmodul so eingestellt wird, dass es dem nachfolgenden
Vortragsstilmodul um 30% näher
kommt; bei der vorliegenden Ausführungsform
wird der letzte der repräsentativen
Punkte im vorausgehenden Vortragsstilmodul um 30% nach unten gebracht.
Gleichzeitig wird das nachfolgende Vortragsstilmodul so eingestellt, dass
es sich dem vorausgehenden Vortragsstilmodul um 70 (d.h. 100 – 30)% nähert; in
der vorliegenden Ausführungsform
wird der Führende
der repräsentativen
Punkte im nachfolgenden Vortragsstilmodul um 70% nach oben gebracht.
Außerdem
werden gemäß den oben
erwähnten
Einstellungen des führenden und
des letzten repräsentativen
Punktes auch mehrere andere repräsentativen
Punkte der beieinanderliegenden Vortragsstilmodule, die zwischen
dem Verbindungsstartpunkt und dem Verbindungsendpunkt liegen, nach
oben und nach unten verstellt, um sich den entsprechenden Zielwerten
anzunähern.
Wie oben dargelegt, wird die gegenseitige Annäherung an einer Vielzahl repräsentativer
Punkte des vorausgehenden und des nachfolgenden Vortragsstilmoduls
durchgeführt.
Es ist dabei zu bemerken, dass es, auch wenn der oben erwähnte Verbindungsstartpunkt
und Verbindungsendpunkt wie gewünscht
eingestellt werden können,
wünschenswert
ist, diesen Verbindungsstartpunkt und den Verbindungsendpunkt so
zu setzen, dass er exakt mit den gewünschten der repräsentativen
Punkte zusammenfällt,
so dass ungewünschte
Knicke in der Hüllkurvenform, die
am Verbindungsstartpunkt und am Verbindungsendpunkt auftreten, wie
in der Figur dargestellt, vermieden werden können. Außerdem sollte es offensichtlich
sein, dass, auch wenn der Verbindungsstartpunkt und der Verbindungsendpunkt
nicht so gesetzt werden, dass sie mit den gewünschten repräsentativen
Punkten zusammenfallen, die gegenseitige Annäherung immer noch in einer
solchen Weise durchgeführt
werden kann, dass die unerwünschten
Knicke in der Hüllkurvenform
vermieden werden.
-
Außerdem versteht
es sich, dass die gegenseitige Näherungsrate
auch in einer beliebigen anderen Weise als der oben erwähnten bestimmt
werden kann. Zum Beispiel kann die gegenseitige Näherungsrate
auf der Grundlage der Vortragsstilparameter, die vor und nach dem
Wellenformverbindungspunkt bezeichnet sind, oder aufgrund von Spieldaten, bevor
sie in die Vortragsstil-ID und – parameterumgewandelt
werden, oder auch einer Kombination dieser Daten bestimmt werden.
Ferner wurde die vorliegende Ausführungsform zwar unter Bezugnahme
auf den Fall beschrieben, bei dem lediglich ein repräsentativer
Punkt gemäß der gegenseitigen
Näherungsrate
eingestellt wird und andere repräsentative
Punkte um entsprechende Mengen in Reaktion auf die Einstellung des
einen repräsentativen
Punktes eingestellt werden, so kann die Ausführungsform jedoch auch so modifiziert
werden, dass für
jeden der mehreren repräsentativen
Punkte eine eigene gegenseitige Näherungsrate bestimmt wird,
so dass jeder der repräsentativen
Punkte um einen Grad verstellt wird, der von der getrennten Näherungsrate
spezifiziert wird.
-
Als
Nächstes
folgt eine Beschreibung des Wellenformverbindungsvorgangs anhand
eines Falles, bei dem die Vortragsstilmodule jeweils dem Wellenform(Timbre)-Faktor
entsprechen, anhand der 8A – 8D.
Insbesondere ist 8A ein konzeptuelles Diagramm,
das einen Wellenformausdünnungsvorgang
erläutert,
der durchgeführt
wird, wenn eine Attack-Teilwellenform und eine Body-Teilwellenform miteinander
verbunden werden, und ist 8B ein
Konzeptdiagramm, das einen Wellenformausdünnungsvorgang erläutert, der
durchgeführt
wird, wenn eine Body-Teilwellenform und eine Release-Teilwellenform
miteinander verbunden werden. Bei dem in 8A gezeigten
Beispiel besteht die Body-Teilwellenform aus fünf Schleifenwellenformsegmenten
L1 – L5,
von denen jedes in einer wiederholten bzw. geschleiften Art und
Weise reproduziert wird. In ähnlicher
Weise besteht bei dem in 8B gezeigten
Beispiel die Körper-Teilwellenform
aus sechs geschleiften Wellenformsegmenten L1' – L6'.
-
Es
gibt verschiedene Verfahren zum Einstellen der Wellenformfaktordaten
(nämlich
Verfahren zum Durchführen
des Wellenformverbindungsvorgangs). Als ein Beispiel schlägt der Rechtsnachfolger der
vorliegenden Patentanmeldung ein Verfahren vor, das durch teilweise
Ausdünnen
der Wellenformen eine glatte Verbindung zum Beispiel zwischen einem
Vortragsstilmodul eines Attack- oder Joint-Teils und einem Vortragsstilmodul eines
Body-Teils (oder zwischen einem Vortragsstilmoduls eines Body-Teils
und einem Vortragsstilmoduls eines Release- oder Joint-Teils) erlaubt. Beim miteinander Verbinden
von Wellenformen ist es wohl bekannt, eine Kreuzüberblendungssynthese zu verwenden. Wo
jedoch wie beim in 8A gezeigten Beispiel nur eine
kurze Zeit t zwischen dem Wellenformverbindungspunkt und dem Startpunkt
des ersten geschleiften Wellenformsegments L1 ist, so entsteht eine
Notwendigkeit zum Durchführen
einer schnellen Kreuzüberblendungssynthese
innerhalb dieses kurzen Zeitraums t. Wenn eine solche schnelle Kreuzüberblendungswellenformsynthese
innerhalb des sehr kurzen Zeitraums zwischen den zu verbindenden beieinander
liegenden Wellenformen durchgeführt wird,
so würde
eine Wellenform mit einem unerwünscht
lauten Geräusch
erzeugt. Deshalb ist die vorliegende Ausführungsform der Erfindung dazu ausgelegt,
einen Teil der Wellenformen auszudünnen (zu löschen), um so das Zeitintervall
zwischen den beiden zu verbindenden Wellenformen zu vergrößern. Weil
die Wellenformen des Attack-, Release- und Joint-Teils jeweils ein
einzelner integraler Block sind, der nicht ausgedünnt werden
kann, dünnt
die vorliegende Ausführungsform
ein ausgewähltes
der geschleiften Wellenformsegmente des Body-Teils aus; das führende geschleifte Wellenformsegment
L1 wird im Beispiel 8A ausgedünnt, und das letzte geschleifte
Wellenformsegment L6' wird
im Beispiel von 8B ausgedünnt, wie durch die schwarz
gefüllten
rechteckigen Markierungen bezeichnet. Im Beispiel von 8A wird
zum Beispiel die Kreuzüberblendungssynthese
zwischen dem zweiten geschleiften Wellenformsegment L2, das ein
relativ langes Zeitintervall vom Wellenformverbindungspunkt aufweist,
und dem hinteren Wellenformsegment des Attack-Teils durchgeführt, und
das führende
geschleifte Wellenformsegment L1 wird nicht für die Kreuzüberblendungssynthese verwendet.
In ähnlicher
Weise wird im Beispiel von 8B eine
Kreuzüberblendungssynthese
zwischen dem fünften
geschleiften Wellenformsegment L5', das ein relativ langes Zeitintervall
vom Wellenformverbindungspunkt hat, und der Release-Teilwellenform
durchgeführt, und das
sechste geschleifte Wellenformsegment L6' wird nicht für die Kreuzüberblendungssynthese verwendet.
-
Es
wird darauf hingewiesen, dass der Joint-Teil, auf den hier Bezug
genommen wird, ein Wellenformabschnitt zum Verbinden beieinanderliegender
Töne (oder
Tonsegmente) durch einen gewünschten
Vortragsstil ist.
-
Ferner
erlaubt die vorliegende Ausführungsform
eine glatte Verbindung zwischen einem Vortragsstilmodul eines Attack-Teils
und einem Vortragsstilmodul eines Release- oder Joint-Teils. Die 8C und 8D sind
Konzeptdiagramme, die einen Wellenformausdünnungsvorgang erläutern, der
durchgeführt
wird, wenn die Attack-Teilwellenform und Release-Teilwellenform
miteinander verbunden werden.
-
In
diesem Fall ist ein Wellenformausdünnen des Vortragsstilmoduls
des Attack-Teils, Release-Teils oder dergleichen manchmal möglich, jedoch
manchmal auch unmöglich.
Beispiele des Attack-Teils, dessen Vortragsstilmodul einem Wellenformausdünnungsvorgang
unterzogen werden kann, sind zum Beispiel ein Bendup-Attack-Teil,
der in seiner hinteren Hälfte
mehrere geschleifte Wellenformsegmente aufweist. Ein Release-Teil,
der mehrere geschleifte Wellenformsegmente in seiner vorderen Hälfte hat,
kann ebenfalls dem Wellenformausdünnungsvorgang unterzogen werden.
Auf diese Weise dünnt
die vorliegende Ausführungsform
nur die Wellenform eines solchen Vortragsstilmoduls aus, das dem
Wellenformausdünnungsvorgang
unterzogen werden kann. Wenn zum Beispiel der Bend-Attack-Teil und
Release-Teil miteinander verbunden werden, werden eines oder mehrere
der geschleiften Wellenformsegmente des Bend-Attack-Teils ausgedünnt (im
in 8C gezeigten Beispiel wird nur eines der geschleiften
Wellenformsegmente ausgedünnt, wie
durch eine schwarz gefüllte
rechteckige Markierung bezeichnet). Wenn der Normal-Attack-Teil
und der geschleifte Wellenformsegmente aufweisende Release-Teil
miteinander verbunden werden, werden eines oder mehrere der geschleiften
Wellenformsegmente des Release-Teils ausgedünnt (im in 8D gezeigten
Beispiel wird lediglich eines der geschleiften Wellenformsegmente
ausgedünnt,
wie durch eine schwarz gefüllte
rechteckige Markierung angegeben).
-
Es
versteht sich, dass das bei der vorliegenden Ausführungsform
auszudünnende
geschleifte Wellenformsegment nicht notwendigerweise dasjenige zu
sein braucht, das dem Wellenformverbindungspunkt am nächsten liegt
(wie zum Beispiel das führende
oder das letzte geschleifte Wellenformsegment), sondern dass ein
solches auszudünnendes geschleiftes
Wellenformsegment auch aus einer Vielzahl geschleifter Wellenformsegmente
gemäß einer vorbestimmten
Prioritätsreihenfolge
bezeichnet werden kann.
-
Wie
oben beschrieben, ist die vorliegende Ausführungsform so konstruiert,
dass sie den Wellenformausdünnungsvorgang
ausführt,
wenn beieinanderliegende Vortragsstilmodule innerhalb der Grenzen
bestimmter Vortragsstilparameter nicht richtig miteinander verbunden
werden können.
Zu diesem Zweck sind bei der vorliegenden Ausführungsform eine "Vortragsstilmodulkombinationstabelle", eine "Ausdünnungsparamterbereichstabelle", auf die von der
Vortragsstilmodulkombinationstabelle Bezug genommen wird, und eine "Ausdünnungszeittabelle", auf die ferner
von der Ausdünnungsparameterbereichstabelle
Bezug genommen wird, vorgesehen. Bei der Vortragsstilmodulkombinationstabelle
handelt es sich um eine Tabelle, die zum Bestimmen vorbestimmter
Parameter gemäß einer
Kombination miteinander zu verbindender beieinanderliegender Vortragsstilmodule
zu verwenden ist. Die Ausdünnungsparameterbereichstabelle
ist eine Tabelle, die zum Bestimmen eines Zeitbereichs zu verwenden
ist, innerhalb dessen der Wellenformausdünnungsvorgang für den jeweiligen
Parameter auszuführen
ist. Ferner ist die Ausdünnungszeittabelle
eine Tabelle, die zum Bestimmen einer Zeitlänge des Wellenformausdünnens zu
verwenden ist. Wenn eine Zeitdifferenz zwischen dem Wellenformverbindungspunkt und
dem führenden
oder letzten geschleiften Wellenformsegment L1 (oder L6') (d.h. die Zeit
t, die in den 8A – 8D gezeigt
ist) kürzer
als eine vorbestimmte Referenz-Ausdünnungszeitlänge ist, dann wird bei der
vorliegenden Ausführungsform
das führende
oder letzte geschleifte Wellenformsegment ausgedünnt.
-
Ferner
wird in den folgenden Absätzen
anhand von 9 der Wellenformverbindungsvorgang beschrieben,
der in einer Situation durchgeführt
wird, bei der die abgetastete Länge
eines Vortragsstilmoduls so kurz ist, dass es enden würde, bevor
ein weiteres Vortragsstilmodul, das diesem folgt, beginnt. Die Beschreibung
erfolgt hier anhand eines Wellenform-Form(Timbre)-Faktor-Paketstroms, der
in der Richtung von links nach rechts (in einer zeitseriellen Weise)
aus vier Vortragsstilmodulen besteht: A.Sax [Bendup Attack]; A.Sax
[Normal Short Body]; A.Sax [Vibrato Body]; und A.Sax [Normal Release].
Die abgetasteten Längen
der einzelnen der vier Vortragsstilmodule (Wellenformabschnittslängen) sind
in der Figur jeweils mit "Länge" bezeichnet. "Note-Ein" und "Note-Aus" in der obersten
Zeile von 9 repräsentieren jeweils eine Ereigniszeit
von MIDI-Daten, "A.Sax
(Bendup Attack]" usw.
auf der mittleren Zeile repräsentieren
jeweils die Erzeugungszeit einer entsprechenden Vortragsstil-ID
und "Note", "Dynamik", "Tiefe" usw. auf der mittleren
Zeile repräsentieren
jeweils die Erzeugungszeit der entsprechenden Vortragsstilparameter.
-
Das
Modul A.Sax [Bendup Attack] wird veranlasst, am Zeitpunkt t0 zu
starten. Der Zeitpunkt t1 repräsentiert
eine Note-Ein-Zeit innerhalb des Vortragsstilmoduls und wird mit
der befohlenen Note-Ein-Zeit in Übereinstimmung
gebracht. Der Inhalt des Moduls im Paketstrom wird auf der Grundlage der
Vortragsstilparameter, wie zum Beispiel Note, Dynamik und Tiefe,
gesteuert. Das Modul A.Sax [Normal Short Body] wird dazu veranlasst,
am Zeitpunkt t2 zu starten. Der Zeitpunkt t3 repräsentiert eine
Zeit, bei der ein Vibratovortrag an einem Punkt auf der Hälfte im
Wellenformverbindungsbereich startet, und diese Zeit wird zum Beispiel
auf der Grundlage der Startzeit einer Vibratomarkierung bestimmt,
die den Musikstückdaten
verliehen wurde. Der Zeitpunkt t5 repräsentiert eine Note-Aus-Zeit
im Modul A.Sax (Normal Release] und wird mit der befohlenen Note-Aus-Zeit
in Übereinstimmung
gebracht. Der Startzeitpunkt t4 des Moduls A.Sax [Normal Release]
wird gemäß der Note-Aus-Zeit
des Moduls A.Sax [Normal Release] bestimmt. Weil nämlich die
Note-Ein-Zeit am
Zeitpunkt t1 und die entsprechende Note-Aus-Zeit am Zeitpunkt t5
eintritt, so findet eine tatsächliche
Erzeugung eines Tons gemäß einer
Wellenform, die vom Paketstrom erzeugt wurde, über einen Zeitraum zum Zeitpunkt
t1 bis zum Zeitpunkt t5 statt. In dem Fall dieses Paketstroms stimmen
die Zeitlänge
vom Zeitpunkt t2 zum Zeitpunkt t4 und die Gesamtlänge der
entsprechenden abgetasteten Zeiten der Module A.Sax [Normal Release]
und A.Sax [Vibrato Body], die zwischen dem Zeitpunkt t2 und dem
Zeitpunkt t4 auftreten, oft nicht miteinander überein, was entsprechend zu
bewältigen
ist. Zu diesem Zweck wird die Gesamtzeit der entsprechenden abgetasteten
Zeitlängen
der Module A.Sax [Normal Release] und A.Sax [Vibrato Body] mit der
Zeitlänge
vom Zeitpunkt t2 zum Zeitpunkt t4 dadurch, dass eines der Module
wiederholt wird, wodurch die abgetastete Länge des Moduls bzw. der Module
verändert
wird, oder durch die Verwendung einer entsprechenden Kombination
von Teilen der beiden Module in Übereinstimmung
gebracht. Die vorliegende Ausführungsform
der vorliegenden Erfindung ist nämlich
so ausgelegt, dass sie den Wellenformverbindungsvorgang gegebenenfalls
mit den entsprechenden Einstellungen zwischen den Modulen durchführt. Insbesondere
wird im gezeigten Beispiel der Wellenformverbindungsvorgang zwischen den
Modulen A.Sax [Normal Short Body] und A.Sax [Vibrato Body] durchgeführt, indem
das vorausgehende Modul A.Sax [Normal Short Body] wiederholt wird,
und in ähnlicher
Weise wird der Wellenformverbindungsvorgang zwischen den Modulen
A.Sax [Vibrato Body] und A.Sax [Normal Release] dadurch durchgeführt, dass
das vorausgehende Modul A.Sax [Vibrato Body] wiederholt wird.
-
In
dem Fall, bei dem, wie oben beschrieben, der Wellenformverbindungsvorgang
zwischen beieinanderliegenden Vortragsstilmodulen dadurch durchgeführt wird,
dass eines der Module wiederholt wird, wird die Zeitlänge des
wiederholten Moduls variabel gesteuert. Die variable Steuerung der
Modulzeitlänge
wird im gezeigten Beispiel dadurch ausgeführt, dass die repräsentativen
Punkte des Moduls A.Sax [Normal Short Body] oder des Moduls A.Sax [Vibrato
Body] bewegt werden; das bedeutet, dass die Modulzeitlänge in einer
entsprechenden Weise gesteuert wird, zum Beispiel indem eine Zeitlänge einer
Kreuzüberblendungsverbindung
zwischen mehreren geschleiften Wellenformsegmenten, aus denen das
Modul besteht, verändert
wird. In dem Fall des geschleiften Wellenformsegments kann die Zeitlänge der
gesamten geschleiften Reproduktion relativ leicht variabel gesteuert
werden, indem die Anzahl von Schleifen oder die Zeit, über welche
die Schleifen dauern, variiert wird. In dem Fall des nicht geschleiften
Wellenformsegments kann jedoch die Länge entlang der Zeitachse nicht
so einfach variabel gesteuert werden. Daher ist ein Verfahren zum
variablen Steuern der Erklingenszeitlänge der gesamten Wellenform
eines Tons, der nicht geschleifte und geschleifte Wellenformsegmente
aufweist, dahingehend sehr vorteilhaft, dass es die Zeit-Ausdehnungs/Komprimierungs-Steuerung
erheblich vereinfacht. Zu diesem Zweck ist es dann vorteilhaft,
die schon vorher vom Rechtsnachfolger der vorliegenden Patentanmeldung
in der japanischen Patentanmeldungsoffenlegungsschrift Nr. HEI-10-307586
vorgeschlagene "Zeit-Dehnungs/Komprimierungs-Steuerung" (abgekürzt "TSC") anzuwenden; die
vorgeschlagene Dehnungs/Komprimierungs-Steuerung kann in vorteilhafter
Weise zum variablen Steuern der zeitaxialen Länge einer nicht geschleiften
Wellenform, die einem bestimmten Vortragsstil entspricht, angewendet
werden.
-
10 ist
eine schematische Darstellung, die konzeptuell beispielhafte Paketströme zeigt,
die in der oben beschriebenen Weise erzeugt wurden. In der Reihenfolge
von oben nach unten sind in 10 Paketströme der Amplituden-,
Wellenform-Form(Timbre)- und Tonhöhenfaktoren einer harmonischen
Komponente und Amplituden- und Wellenform-Form(Timbre)-Faktoren
einer nicht harmonischen Komponente dargestellt. Ferner repräsentieren
in 10 schwarz gefüllte
quadratische Markierungen die repräsentativen Punkte in den Amplituden,
Wellenform-Form(Timbre)- und Tonhöhenfaktoren der harmonischen
Komponente und der Amplituden- und Wellenform-Form(Timbre)-Faktoren
der nicht harmonischen Komponente. Diese die repräsentativen
Punkte verbindenden Kurven repräsentieren
jeweils eine Form eines Vektors, der von einer Vektor-ID bezeichnet
wird, die in einem der Pakete im Paketstrom enthalten ist. Ferner
repräsentieren
im Wellenform-Form(Timbre)-Faktor
jeweils der harmonischen und der nicht harmonischen Komponente schwarze
rechteckige Blöcke
L jeweils ein geschleiftes Wellenformsegment und repräsentieren
andere rechteckige Blöcke
NL jeweils ein nicht geschleiftes Wellenformsegment. Von den nicht
geschleiften Wellenformsegmenten sind diejenigen, die durch schraffierte
rechteckige Blöcke
bezeichnet sind, ganz besonders charakteristische nicht geschleifte
Wellenformsegmente. Ferner umfasst der Wellenform-Form(Timbre)-Faktor
jeweils der harmonischen und der nicht harmonischen Komponente im
in 10 gezeigten Beispiel zwei Vektoren und umfasst
jeweils der Amplituden- und der Tonhöhenfaktor der harmonischen
Komponente und der Amplitudenfaktor der nicht harmonischen Komponente
einen einzigen Vektor. Darüber
hinaus haben für
jeweils die harmonische und die nicht harmonische Komponente im
in 10 gezeigten Beispiel die Amplituden- und Tonhöhenfaktoren
keinen Vektor in ihren Bereichen, die der Position nach dem nicht
geschleiften Wellenformsegment des Wellenform-Form(Timbre)-Faktors entsprechen. Selbst
in den Bereichen, die ihrer Position nach dem nicht geschleiften
Wellenformsegment des Wellenform-Form(Timbre)-Faktors entsprechen,
können
jeweils die Amplituden- und Tonhöhenfaktoren
jedoch einen Vektor haben, so dass die zu produzierende Wellenform
in Übereinstimmung
mit dem Vektor gesteuert wird. Im Vibrato-Body-Modul umfasst der
Wellenform-Form(Timbre)-Faktor
der harmonischen Komponente fünf
Vektoren und umfasst der Amplituden- und der Tonhöhenfaktor
der harmonischen Komponente und der Wellenform-Form(Timbre)- und
der Amplitudenfaktor der nicht harmonischen Komponente jeweils einen einzigen
Vektor. Hier ist zu bemerken, dass, auch wenn das Vibrato-Body-Modul
als drei Mal wiederholt gezeigt ist, die Vektorform für jedes
Auftreten des Moduls jedes Mal anders ist; dies deshalb, weil für jedes
Auftreten des Moduls unterschiedliche Vortragsstilparameter bezeichnet
sind. Bei der vorliegenden Ausführungsform
werden in Übereinstimmung
mit den unterschiedlichen Vortragsstilparametern jeweils andere
Wellenformfaktordaten ausgewählt
oder wird eine unterschiedliche Pegelsteuerung oder zeitaxiale Steuerung
durchgeführt.
Ferner umfassen im Normal Joint – Modul die Wellenform-Form(Timbre)-Faktoren der
harmonischen Komponente und der nicht harmonischen Komponente jeweils
drei Vektoren, und umfasst der Amplituden- und der Tonhöhenfaktor
der harmonischen Komponente und der Amplitudenfaktor der nicht harmonischen
Komponente jeweils zwei Vektoren. Eine Beschreibung des Normal Body – Moduls
wird hier weggelassen.
-
In
der oben beschriebenen Art und Weise erzeugt ein Vortragsstilsyntheseabschnitt 101C für jede der
Wellenformkomponenten (d.h. harmonische und nicht harmonische Komponente)
einen Paketstrom. Jeder dieser Paketströme umfasst eine Vielzahl von Paketen,
die jeweils eine Vektor-ID und eine Zeitinformation des Pakets enthalten.
Zusätzlich
weist der Amplituden- und der Tonhöhenfaktor der harmonischen
Komponente und der Amplituden-Faktor der nicht harmonischen Komponente
jeweils bestimmte Werte der einzelnen repräsentativen Werte auf. Natürlich ist
die vorliegende Erfindung hierauf nicht eingeschränkt, sondern
kann jedes der Pakete zusätzlich
zur Vektor-ID und der Zeitinformation des Pakets auch beliebige
andere Information enthalten. Auf diese Weise wird gemäß dem Inhalt
der einzelnen Pakete für
jeden der Wellenformfaktoren ein Paketstrom konstruiert.
-
Es
versteht sich, dass sich die Anzahl der Paketströme je nach dem Typ des Musikinstruments oder
dergleichen unterscheiden kann.
-
Der
Wellenformsyntheseabschnitt 101D synthetisiert eine Wellenform
auf der Grundlage der Paketströme
(d.h. Ströme
von Paketen, die jeweils eine Vektor-ID, Zeitinformation, Einstellungsinformation usw.
enthalten) für
jeden der Wellenformfaktoren, die vom Vortragsstilsyntheseabschnitt 101C geliefert werden. 11 ist
ein konzeptuelles Blockdiagramm einer allgemeinen Organisation des
Wellenformsyntheseabschnitts 101D, die ein Verhalten des
Syntheseabschnitts 101D erläutert. Die 12 – 15 sind
Blockdiagramme, die Einzelheiten einzelner Operationen zeigen, die
vom Wellenformsyntheseabschnitt 101D ausgeführt werden,
wobei 12 ein Blockdiagramm ist, das
einen allgemeinen Betriebsfluss der Wellenformsynthese zeigt, 13 ein Blockdiagramm
ist, das einen Vektorlader erläutert, 14 ein
Blockdiagramm ist, das einen Vektoroperator erläutert, und 15 ein
Blockdiagramm ist, das einen Vektordecodierer erläutert.
-
Für die einzelnen
Wellenformfaktoren der harmonischen und der nicht harmonischen Komponente
vom Vortragsstilsyntheseabschnitt (Artikulator) 101C erzeugte
Paketströme
werden sequentiell, Paket für
Paket, in vorbestimmte Paketqueuepuffer 21 – 25 eingegeben,
die im Wellenformsyntheseabschnitt 101D in Entsprechung
zu den Wellenformfaktoren der harmonischen und der nicht harmonischen
Komponente vorgesehen sind. Nachdem sie in den entsprechenden Paketqueuepuffern 21 – 25 angesammelt
wurden, werden die Pakete in vorbestimmter Reihenfolge an den Vektorlader 20 gesendet,
und der Vektorlader 20 bezieht sich auf die Vektor-ID eines
jeden Pakets, um aus dem Codebuch 26 die der Vektor-ID
entsprechenden Originalvektordaten auszulesen (Originalvektordaten
zu laden). Die ausgelesenen Vektordaten werden dann an die Vektordecodierer 31 – 35 geliefert,
die in Entsprechung zu den Wellenformfaktoren der harmonischen und
der nicht harmonischen Komponente vorgesehen sind, wobei hierüber Wellenformen
für die
einzelnen Wellenformfaktoren in einem vorbestimmten synchronisierten Verhältnis zueinander
erzeugt werden. Die auf diese Weise erzeugten Wellenformen für die einzelnen Wellenformfaktoren
werden dann an einen Mischer 38 weitergeleitet. Zusätzlich zum
Eingeben der Pakete in die Paketqueuepuffer 21 – 25 führt der
Vortragsstilsyntheseabschnitt (Artikulator) 101C verschiedene
Steuerungen für
den Wellenformsyntheseabschnitt 101D, wie zum Beispiel
Paketstrommanagement (d.h. Management bezüglich der Erzeugung oder des
Löschens
der einzelnen Vektordaten oder der Verbindung zwischen den Vektordaten)
und Reproduktionssteuerung (d.h. Steuerung bezüglich einer Produktion einer
gewünschten
Wellenform oder der Reproduktion/dem Stoppen der erzeugten gewünschten
Wellenform) aus.
-
Wie
oben erwähnt,
werden die Pakete, aus denen die Paketströme bestehen, die im Paketqueuepuffer 21 angesammelt
wurden, nacheinander an den Vektorlader 20 gesendet, und
der Vektorlader 20 liest aus dem Codebuch 26 die
Originalvektordaten aus, die der Vektor-ID des jeweiligen Pakets
entsprechen, und liefert die ausgelesenen Vektordaten an den Vektordecodierer 21 (siehe 12).
In einigen der ausgelesenen Vektordaten können Einstellungsinformationen
(z.B. Einstellungsinformation, die sich auf die repräsentativen
Punkte bezieht) enthalten sein. In einem solchen Fall modifiziert
der Vektorlader 20 die ausgelesenen Originalvektordaten
gemäß der Einstellungsinformation
und gibt dann die Pakete mit den modifizierten Vektordaten (die
hiernach in Unterscheidung zu den "Originalvektordaten" als "Vektorinformationsdaten" bezeichnet werden)
an die Vektordecodierer 31 – 35 aus. Der Vektorlader 20 liest
nämlich
aus dem Codebuch 26 die Originalvektordaten auf der Grundlage
der Vektor-IDs der Pakete aus, die aus dem Vortragsstilsyntheseabschnitt (Artikulator) 101C eingegeben
wurden, modifiziert gegebenenfalls die Vektordaten gemäß der Einstellungsinformation
und gibt dann die Vektorpakete an die entsprechenden Vektordecodierer 31 – 35 weiter (siehe 13).
Beispiele für
die Einstellungsinformation, die sich auf die repräsentativen
Punkte der oben erwähnten
Vektordaten bezieht, enthält
verschiedenste Information, wie zum Beispiel solche zum Verändern der
Zeitinformation, zum Beispiel auf der Grundlage einer Zufallszahl.
-
Ferner
erzeugt, wie in 14 gezeigt, jeder der Vektordecodierer 31 – 35 einen
Vektoroperator oder löscht
ihn zum Verarbeiten des eingegebenen Vektorpakets und führt eine
verschiedenartige Verwaltung bezüglich
dem Betrieb des Vektoroperators durch, wie zum Beispiel eine Verbindung/Synchronisation
zwischen den Vektoroperationen, ein Zeitmanagement und eine Umwandlung
in Parameter in Vektoroperatoren, die von einem anderen Vektor-ID-Strom
eingegeben wurden. Die Vektoroperatoren 36 und 37 lesen
die Vektorinformationsdaten aus und führen eine Steuerung von Auslesepositionen (Geschwindigkeitseingaben)
und Verstärkungen (Verstärkungseingaben)
der Vektorinformationsdaten aus. In den Vektoroperatoren 36 und 37 eingestellte
verschiedene Parameter werden von den entsprechenden Vektordecodierern 31 – 35 verwaltet. Die
Vektordecodierer 31 – 35,
die in Entsprechung zu den Wellenformfaktoren vorgesehen sind, lesen
jeweils die Vektorinformationsdaten aus und erzeugen eine gewünschte Wellenform
in zeitserieller Weise. Wie in 15 veranschaulichend
gezeigt, erzeugt der Vektordecodierer 31 eine Hüllkurvenwellenform des
Amplitudenfaktors der harmonischen Komponente, erzeugt der Vektordecodierer 32 eine
Hüllkurvenwellenform
des Tonhöhenfaktors
der harmonischen Komponente und erzeugt der Vektordecodierer 33 eine
Wellenform des Wellenform-Form(Timbre)-Faktors der harmonischen Komponente.
Ferner erzeugt der Vektordecodierer 34 eine Hüllkurvenwellenform
des Amplitudenfaktors der nicht harmonischen Komponente und erzeugt
der Vektordecodierer 35 eine Hüllkurvenwellenform des Wellenform-Form(Timbre)-Faktors
der nicht harmonischen Komponente. Der Vektordecodierer 33 erzeugt
eine Wellenform der harmonischen Komponente, der die Hüllkurvenwellenform
des Amplitudenfaktors der harmonischen Komponente, die vom Vektordecodierer 31 erzeugt
wurde, und die Hüllkurvenwellenform
des Tonhöhenfaktors
der harmonischen Komponente, die vom Vektordecodierer 32 erzeugt
wurde, verliehen wurde, und gibt dann die auf diese Weise erzeugte Wellenform
an den Mischer 38 aus. Für die Wellenformreproduktion
wird dem Vektordecodierer 33 nämlich die oben erwähnte Hüllkurvenwellenform des
Amplitudenfaktors der harmonischen Komponente als der Vektoroperator
zum Durchführen
der Verstärkungssteuerung
(Verstärkungseingabe)
und die oben erwähnte
Hüllkurvenwellenform
des Tonhöhenfaktors
der harmonischen Komponente als der Vektoroperator zum Durchführen der
Auslesepositionssteuerung (Geschwindigkeitseingabesteuerung) der
Vektorinformationsdaten geliefert. In ähnlicher Weise erzeugt der
Vektordecodierer 35 eine Wellenform der nicht harmonischen
Komponente, der die Hüllkurvenwellenform
des Amplitudenfaktors der nicht harmonischen Komponente, die vom
Vektordecodierer 34 erzeugt wurde, verliehen wurde, und
gibt dann die auf diese Weise erzeugte Wellenform an den Mischer 38 aus.
Für die
Wellenformproduktion wird dem Vektordecodierer 35 nämlich die
oben erwähnte
Hüllkurvenwellenform
des Amplitudenfaktors der nicht harmonischen Komponente als ein
Steuerbefehl zum Durchführen
der Verstärkungssteuerung (Verstärkungseingabe)
geliefert.
-
Ferner
wird bei der vorliegenden Ausführungsform
der Erfindung die zeitserielle Wellenformproduktion für die einzelnen
Wellenformfaktoren der harmonischen und der nicht harmonischen Komponente
durchgeführt,
während
eine Wellenformsynchronisation zwischen den Vektordecodierern 31 – 35 aufrechterhalten
wird. Wenn Vektorpakete des Wellenform-Form(Timbre)- und des Amplitudenfaktors
eingegeben wurden, wird eine Amplitudenwellenform basierend auf
dem Vektorpaket des Amplitudenfaktors synchron mit einer Wellenformproduktionszeit
basierend auf dem Wellenform-Form(Timbre)-Faktorvektorpaket produziert.
Die Amplitude der auf der Grundlage des Wellenform-Form(Timbre)-Faktorvektorpakets
erzeugten Wellenform wird durch die auf diese Weise erzeugte Amplitudenwellenform
gesteuert. Wenn ferner Vektorpakete des Wellenform-Form(Timbre)-
und des Tonhöhenfaktors eingegeben
wurden, wird eine auf dem Tonhöhenfaktorvektorpaket
basierende Tonhöhenwellenform
synchron mit einer Wellenformerzeugungszeit basierend auf dem Wellenform-Form(Timbre)-Faktorvektorpaket
erzeugt, und die Tonhöhe
der auf der Grundlage des Wellenform-Form(Timbre)-Faktorvektorpakets erzeugten
Wellenform wird durch die auf diese Weise synthetisierte Tonhöhenwellenform
gesteuert. Wenn ferner ein Vektorpaket der Wellenform-Form (Timbre) der
harmonischen Komponente und ein Vektorpakete der Wellenform-Form
(Timbre) der nicht harmonischen Komponente eingegeben wurden, wird
eine nicht harmonische Komponente auf der Grundlage des Wellenform-Form(Timbre)-Vektorpakets der nicht
harmonischen Komponente synchron mit einer Synthetisierungszeit
der harmonischen Komponente auf der Grundlage des Wellenform-Form(Timbre)-Faktorvektorpakets
der harmonischen Komponente erzeugt. Dann wird durch Mischen der
synthetisierten Wellenformen der harmonischen und der nicht harmonischen
Komponente eine gewünschte Tonwellenform
erzeugt.
-
Es
wird darauf hingewiesen, dass die vorliegende Ausführungsform
auch so ausgelegt sein kann, dass eine Auswahl darüber erlaubt
wird, ob die harmonische und die nicht harmonische Komponente synchronisiert
werden sollten oder nicht. In diesem Fall kann nur dann, wenn die
Synchronisation zwischen der harmonischen und der nicht harmonischen Komponente
ausgewählt
wurde, eine auf dem Wellenform-Form(Timbre)-Vektorpaket der nicht
harmonischen Komponente basierende nichtharmonische Komponente synchron
mit der Synthetisierungszeit der harmonischen Komponente basierend
auf dem Wellenform-Form(Timbre)-Faktorvektorpaket
der harmonischen Komponente synthetisiert werden.
-
Wie
oben erwähnt,
besteht jeder der Paketströme
aus einer Vielzahl von Paketen. In dem Fall des Paketstroms von
Vektorpaketen enthält
zum Beispiel jedes der Vektorpakete Vektordaten; der Paketstrom
umfasst nämlich
eine Zeitserie der Vektordaten. Auch wenn sie sich in der Datenorganisation
und der Bedeutung unterscheiden, so scheinen die Vektordaten des
Amplitudenfaktors, des Tonhöhenfaktors
und des Wellenform-Form(Timbre)-Faktors grundlegend im Prinzip gleich
zu sein, wie aus den Vektoroperatoren 36 und 37 hervorgeht.
-
Schließlich ist 16 eine
schematische Darstellung, die konzeptuell eine beispielhafte Datenorganisation
in den Vektordaten zeigt. Im in 16 gezeigten
Beispiel ist die Auslesezeitposition der Vektordaten in Sekunden
angegeben, und angenommen, dass die Datenauslesegeschwindigkeit überall gleich
ist, entspricht jede Abtastung der Vektordaten einer Abtastung einer
ausgegebenen Wellenform. Ferner ist bei der vorliegenden Ausführungsform
die minimale Einheit der Datenausleserate 1/1200 Cents (= 2n); wenn daher der Exponent n "0" ist, wird die Datenausleserate gleich
gehalten, wenn der Exponent n "1,0" ist, dann wird die
Datenausleserate um einen Faktor 2 angehoben (in dem Fall des Wellenform-Form(Timbre)-Faktors,
um eine Oktave angehoben), oder, wenn der Exponent n "-1,0" ist, wird
die Datenausleserate um einen Faktor 0,5 abgesenkt (im Fall des
Wellenform-Form(Timbre)-Faktors, um eine Oktave abgesenkt) (siehe
die obere Spalte von 16). Ferner sind im Codebuch 26 tatsächliche
Vektordaten gespeichert. Zum Beispiel umfassen die Vektordaten des
Amplitudenfaktors oder des Tonhöhenfaktors
eine Reihe von Vektorpunktstrukturen und Daten von repräsentativen
Punkten. Die Reihe von Vektorpunktstrukturen umfasst eine Abfolge von
Sätzen
von Abtastungspositionen und Werten an den einzelnen Punkten. Zum
Beispiel sind die Werte der Amplitudenfaktorvektordaten in Dezibel
ausgedrückt
und sind die Werte der Tonhöhenfaktorvektordaten
in 1/1200 Cents ausgedrückt,
basierend auf der Annahme, dass die MIDI-Notenzahl "0" einen Wert "0,0" hat.
Ferner sind die Daten der repräsentativen
Punkte in einer dword-Anordnung (Doppelwortanordnung), in der Indexzahlen
der Vektorpunktstrukturen als die repräsentativen Punkte gespeichert
sind (siehe untere Spalte von 16). Natürlich soll
die vorliegende Erfindung nicht so interpretiert werden, dass sie
auf die oben angegebene Vektordatenorganisation eingeschränkt ist,
sondern kann auf verschiedenste Weise modifiziert werden.
-
Es
wird darauf hingewiesen, dass in dem Fall, bei dem die oben beschriebene
Wellenformerzeugungsvorrichtung auf ein elektronisches Musikinstrument
angewendet wird, das elektronische Musikinstrument auch ein beliebiger
anderer Typ als ein auf einer Tastatur basierendes Instrument, wie
zum Beispiel ein Saiten-, Blas- oder Schlaginstrument sein kann.
In diesem Fall ist die vorliegende Erfindung natürlich nicht nur auf ein solches
elektronisches Musikinstrument anwendbar, bei dem der Musikstückdatenreproduktionsabschnitt 101A,
der Musiknoteninterpretationsabschnitt 101B, der Vortragsstilsyntheseabschnitt 101C,
der Wellenformsyntheseabschnitt 101D und dergleichen alle
in eine Einheit integriert sind, sondern auch auf einen anderen
Typ eines elektronischen Musikinstruments, bei dem die oben erwähnten Abschnitte
getrennt vorgesehen sind und über
Kommunikationseinrichtungen, wie zum Beispiel eine MIDI-Schnittstelle,
verschiedene Netzwerke und dergleichen miteinander verbunden sind.
Ferner kann die Wellenformerzeugungsvorrichtung der vorliegenden
Erfindung eine Kombination eines PCs und einer Anwendungssoftware
aufweisen, wobei in diesem Fall verschiedene Verarbeitungsprogramme von
einem Speichermedium, wie zum Beispiel einer Magnetplatte, einer
optischen Platte oder einem Halbleiterspeicher oder über ein
Kommunikationsnetz an die Wellenformerzeugungsvorrichtung geliefert
werden können.
Ferner kann die erfindungsgemäße Wellenformerzeugungsvorrichtung
auch auf automatische Spielgeräte,
wie zum Beispiel ein automatisches Piano angewendet werden.
-
Zusammenfassend
ist die bisher beschriebene vorliegende Erfindung dadurch gekennzeichnet, dass
nur Teilwellenformdaten, die für
eine Wellenform-Form-Variation
charakteristisch sind, extrahiert und gespeichert werden. Auf diese
Weise können Wellenformdaten,
die zum Ausdrücken
der Wellenform-Form-Variation nötig
sind, in komprimierter Form gespeichert werden, so dass die vorliegende Erfindung
die Wellenformdatenspeicherkapazität wirkungsvoll einsparen bzw.
die Menge an zu speicherten Wellenformdaten minimieren kann. Ferner
erzielt die vorliegende Erfindung durch Speichern der extrahierten
Teilwellenformdaten zusammen mit Information, welche ihre entsprechenden
Zeitpositionen angibt, eine präzise
Wellenformreproduzierbarkeit. Weil ferner die Teilwellenformdaten,
die für
eine Wellenform-Form-Variation repräsentativ sind, an entsprechenden
Zeitpositionen in Zuordnung zu ihnen ausgelesenen Zeitpositionsinformation
angeordnet sind, können
sie an entsprechenden Zeitpositionen in Zuordnung zu wichtigen Abschnitten
einer Tonwellenform, d.h. von Wellenformsegmenten, die für die Wellenform-Form-Variation repräsentativ
sind, reproduziert werden, wodurch eine präzise Wellenformreproduzierbarkeiterzielt
wird. Ferner ist es mit der Vorkehrung, dass Sätze an Sample-Identifikationsinformation
und Zeitpositionsinformation empfangen werden und Sample-Daten an
entsprechenden Zeitpositionen gemäß der empfangenen Zeitpositionsinformation
angeordnet werden, möglich,
die Wellenformspeicherkapazität
wirkungsvoll einzusparen und eine präzise Wellenformreproduzierbarkeit
zu erzielen. Außerdem
kann die vorliegende Erfindung mit der Vorkehrung, dass Sätze an Sample-Identifikationsinformation
und Zeitpositionsinformation auf der Grundlage von Spieldaten beschafft
werden, und die auf diese Weise beschaffte Zeitpositionsinformation
gemäß den Spieldaten
eingestellt wird, Zeitpositionsinformation genau so vorsehen, wie
sie von den Spieldaten beabsichtigt ist. Weil außerdem die beschaffte Zeitpositionsinformation
gemäß den Spieldaten
variabel gesteuert werden kann, kann die vorliegende Erfindung die
Speicherkapazität
wirkungsvoll einsparen und eine Wellenformreproduktion mit einer
gesteigerten Steuerbarkeit erzielen. Hieraus ergibt sich, dass die
vorliegende Erfindung in vereinfachter Weise mit einer beträchtlich
verbesserten Steuerbarkeit qualitativ hochwertige Wellenformen in
einer vorteilhaften Weise erzeugen kann, wobei Vortragsstile bzw.
Artikulationsarten berücksichtigt
werden.