DE10056980A1 - Verfahren und Gerät zum Verarbeiten einer Audiowellenform - Google Patents

Verfahren und Gerät zum Verarbeiten einer Audiowellenform

Info

Publication number
DE10056980A1
DE10056980A1 DE2000156980 DE10056980A DE10056980A1 DE 10056980 A1 DE10056980 A1 DE 10056980A1 DE 2000156980 DE2000156980 DE 2000156980 DE 10056980 A DE10056980 A DE 10056980A DE 10056980 A1 DE10056980 A1 DE 10056980A1
Authority
DE
Germany
Prior art keywords
audio waveform
data
instruction
playback
playback speed
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
DE2000156980
Other languages
English (en)
Inventor
Tadao Kikumoto
Wataru Matsushima
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Roland Corp
Original Assignee
Roland Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Roland Corp filed Critical Roland Corp
Publication of DE10056980A1 publication Critical patent/DE10056980A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/02Analogue recording or reproducing
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H1/00Details of electrophonic musical instruments
    • G10H1/0008Associated control or indicating means
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H7/00Instruments in which the tones are synthesised from a data store, e.g. computer organs
    • G10H7/02Instruments in which the tones are synthesised from a data store, e.g. computer organs in which amplitudes at successive sample points of a tone waveform are stored in one or more memories
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/34Indicating arrangements 
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2220/00Input/output interfacing specifically adapted for electrophonic musical tools or instruments
    • G10H2220/091Graphical user interface [GUI] specifically adapted for electrophonic musical instruments, e.g. interactive musical displays, musical instrument icons or menus; Details of user interactions therewith
    • G10H2220/101Graphical user interface [GUI] specifically adapted for electrophonic musical instruments, e.g. interactive musical displays, musical instrument icons or menus; Details of user interactions therewith for graphical creation, edition or control of musical data or parameters
    • G10H2220/116Graphical user interface [GUI] specifically adapted for electrophonic musical instruments, e.g. interactive musical displays, musical instrument icons or menus; Details of user interactions therewith for graphical creation, edition or control of musical data or parameters for graphical editing of sound parameters or waveforms, e.g. by graphical interactive control of timbre, partials or envelope
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2240/00Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
    • G10H2240/011Files or data streams containing coded musical information, e.g. for transmission
    • G10H2240/046File format, i.e. specific or non-standard musical file format used in or adapted for electrophonic musical instruments, e.g. in wavetables
    • G10H2240/056MIDI or other note-oriented file format

Landscapes

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

Abstract

Die Erfindung zeigt eine Audiowellenform an, die wiedergegeben werden soll, und erleichtert dem Benutzer das Editieren von Informationen, die gewünschte Modifikationen bezüglich der Wiedergabe der Wellenform anzeigen. Ein Verfahren zum erfindungsgemäßen Verarbeiten einer Audiowellenform umfaßt einen ersten Schritt zum Speichern von Informationen, die anzeigen, wie sich ein bestimmtes Merkmal der im Soundmodul gespeicherten Audiowellenform zeitlich ändert; einen von einem Benutzer durchgeführten zweiten Schritt zur Eingabe einer Anweisung zu einer gewünschten relativen Modifikation des Merkmals der Audiowellenform an einer gewünschten Position auf der Zeitachse; einen dritten Schritt zum Speichern von Informationen, die anzeigen, wie das Merkmal der Audiowellenform zeitlich modifiziert wird, wenn die angewiesene relative Modifikaiton bei der angewiesenen Position auf der Zeitachse in Übereinstimmung mit der Anweisung im zweiten Schritt gültig wird; einen vierten Schritt zum Darstellen, wie sich das Merkmal der Audiowellenform zeitlich ändert, wenn es in Übereinstimmung mit der Anweisung des Benutzers zur relativen Modifikation im zweiten Schritt modifiziert wird, und zwar abhängig von den im ersten Schritt gespeicherten Informationen und der im zweiten Schritt eingegebenen Anweisung; einen fünften Schritt zur Ausgabe einer Anweisung zur Modifikation des Merkmals der Audiowellenform mit dem Verlauf der Zeit an das Soundmodul, und zwar abhängig von den im dritten Schritt ...

Description

Die vorliegende Erfindung bezieht sich auf ein Verfahren zum Verarbeiten einer Audiowellenform, einem Gerät zum Verarbeiten einer Audiowellenform, sowie ein computerlesbares Speichermedium, auf dem ein Programm für ein Verfahren zum Verarbeiten einer Audiowellenform gespeichert ist. Genauer gesagt, bezieht sich die vorliegende Erfindung auf ein Verfahren zum Verarbeiten einer Audiowellenform, einem Gerät zum Verarbeiten einer Audiowellenform, sowie ein computerlesbares Speichermedium, auf dem ein Programm für ein Verfahren zum Verarbeiten einer Audiowellenform gespeichert ist, wobei die Gestalt der Wellenform, die letztendlich in Übereinstimmung mit Abspieldaten, die die gewünschte Modifikation bezüglich der Wiedergabe der Audiowellenform anzeigen, wiedergegeben wird, so daß es für den Benutzer einfach ist, die Abspieldaten (die gewünschte Modifikation bezüglich der Wiedergabe der Audiowellenform anzeigen) zu editieren.
Üblicherweise speichern automatische Abspielgeräte verschiedene Arten von Abspieldaten, so zum Beispiel die Zeiten von Anfang und Ende einer Tonerzeugung, sowie Ausmaß und Zeit der Modifikation von Merkmalen, wie zum Beispeil der Tonhöhe, die die gewünschte Modifikation bezüglich der Wiedergabe der Audiowellenform anzeigen. Diese verschiedenen Arten von Abspieldaten werden in Abspieldaten-Ketten (Abspieldaten-Strings) gespeichert, und Anweisungen zum Beginn einer Tonerzeugung, Anweisungen zum Beenden einer Tonerzeugung und Änderungsanweisungen zum Ändern von Merkmalen, wie zum Beispiel die Tonhöhe der Audiowellenform, werden in ein Soundmodul gespeist, indem die Abspieldaten in diesen Abspieldaten-Ketten chronologisch wiedergegeben werden
Bei einer gesendeten Anweisung zum Beginn der Tonerzeugung beginnt das Soundmodul, in das diese verschiedenen Anweisungen gespeist wurden, mit der Wiedergabe einer vorgespeicherten Audiowellenform, und bei einer gesendeten Anweisung zum Beenden der Tonerzeugung beendet das Soundmodul die Wiedergabe der gegenwärtig wiedergegebenen Audiowellenform, bei Änderungsanweisungen zum Ändern von Merkmalen, wie zum Beispiel der Tonhöhe der Audiowellenform, ändert das Soundmodul die Merkmale, wie zum Beispiel die Tonhöhe der Audiowellenform, woraufhin die Audiowellenform als Audiosignal ausgegeben und automatisch abgespielt wird.
Wenn das automatische Abspielen wie oben beschrieben durchgeführt wird, dann wird, wenn der Benutzer die Abspieldaten bezüglich der Änderungsanweisungen zum Ändern von Merkmalen, wie zum Beispiel der Tonhöhe der Audiowellenform, setzt, das Ausmaß der Modifikation, das der Benutzer setzen möchte, auf einem Monitor des automatischen Abspielgerätes angezeigt, so daß der Benutzer die gewünschte Modifikation unter Beobachtung des auf dem Monitor dargestellten Modifikationsausmaßes einstellen kann.
Herkömmliche Soundmodule können normalerweise nur kurze Audiowellenformen, die für einen Ton (einen Note) stehen handhaben, aber da in den letzten Jahren Speichergeräte zum Speichern von Audiowellenformen billiger geworden sind, während ihre Kapazität anstieg, können neuere Soundmodule auch längere Audiowellenformen handhaben, die aus mehreren aufeinanderfolgenden Tönen (Noten) bestehen, so zum Beispiel auch Lieder wie das "Halleluja".
So wird beispielsweise in der Veröffentlichung der japanischen Patentanmeldung (Tokkai) H 10-260685 eine Technik für ein Soundmodul vorgestellt, mit der solch lange Audiowellenformen gehandhabt werden können, und mit welcher mit Anweisungen zum Beginn der Tonerzeugung, Anweisungen zum Beenden der Tonerzeugung, bzw. Anweisungen zum Ändern der Tonhöhe Audiowellenformen wiedergegeben werden, während die Tonhöhe verändert werden kann.
In einer langen Audiowellenform, wie zum Beispiel dem "Halleluja", unterscheiden sich die Töne des "hal", "le", "lu" und "ja" nicht in ihrer Tonhöhe und Lautstärke, sondern ein Vibrato und ein Portamento gelten für jeden Ton, und Tonhöhe und Lautstärke ändern sich meist für jeden Ton über den Verlauf der Zeit. Wenn Tonhöhenänderungen auf eine solche Audiowellenform angewendet werden, überlappen sich daher die ursprünglichen Tonhöhenänderungen der Audiowellenform mit dem Effekt der Tonhöhenänderung, der vom Soundmodul, das als Wiedergabegerät dient, verursacht wird.
Wenn nun die Abspieldaten, die Anweisungen z. B. zum Verändern der Tonhöhe darstellen, in einem solchen herkömmlichen automatischen Abspielgerät gesetzt werden, dann wird das Ausmaß der Modifikation von Merkmalen wie zum Beispiel der Tonhöhe dargestellt, aber aufgrund der Tatsache, daß sich der Effekt der Tonhöhenveränderungen mit den urprünglichen Tonhöhenveränderungen der Audiowellenform überlappt, kann nicht dargestellt werden, was für eine Audiowellenform letztendlich ausgegeben wird.
Daher muß der Benutzer von herkömmlichen automatischen Abspielgeräten die Abspieldaten setzen, während sich der Benutzer die Merkmale des Audiosignals, das letztendlich vom als Wiedergabegerät dienenden Soundmodul ausgegeben wird, im Geiste vorstellt. Dies ist jedoch ein sehr schwieriges Unterfangen, und es besteht daher ein Bedarf für eine Technik, die diese Schwierigkeiten lösen kann.
Mit anderen Worten, es besteht ein Bedarf für das automatische Abspielen von langen Audiowellenformen mit einem Soundmodul, das - wie oben beschrieben - auch lange Audiowellenform handhaben kann, indem Abspieldaten für die Wiedergabe einer langen Audiowellenformen zugeführt werden. Eine geignete Technologie zum automatischen Abspielen mit einem solchen Soundmodul ist jedoch bisher noch nicht vorgestellt worden, obwohl es einen dringenden Bedarf für eine solche Technik gibt.
Tokkai H 10-260685 schlägt eine Technik für eine Soundmodul zur Wiedergabe einer gespeicherten Wellenform unter Komprimierung bzw. Expandierung auf der Zeitachse in Echtzeit ohne Änderung der Tonhöhe der Audiowellenform vor, und zwar mit einer Anweisung über das Komprimierungs/Expandierungsverhältins auf der Zeitachse, die während des Abspielens gegeben wird.
Mit diesem in Tokkai H 10-260685 vorgeschlagenen Soundmodul ist es möglich, beispielsweise nur den Ton "hal" des "Halleluja" in Echtzeit zu komprimieren bzw. expandieren.
In herkömmlichen automatischen Abspielgeräten, werden das Timing des Beginns der Wiedergabe, das Timing des Endes der Wiedergabe, und die Wiedergabezeit jedes Tones der Audiowellenform auf Basis der Abspieldaten-Ketten dargestellt.
In solchen herkömmlichen automatischen Abspielgeräten scheint es zwar möglich zu sein, zusätzlich zu den Anweisungen zum Beginn bzw. Beenden einer Tonwiedergabe an das Soundmodul von Tokkai H 10-260685 noch Anweisungen über das Komprimierungs/Expandierungsverhältins auf der Zeitachse zu geben, aber allein mit dieser Maßnahme ist es nicht möglich, das Timing von Beginn bzw. Ende der Wiedergabe sowie die Wiedergabezeit der Töne der Audiowellenform korrekt anzuzeigen.
Das heißt, daß wenn eine Anweisungen über das Komprimierungs/Expandierungsverhältins auf der Zeitachse ausgeführt wird, dann ist es notwendig, das Timing von Beginn bzw. Ende der Wiedergabe sowie die Wiedergabezeit der Töne der Audiowellenform zu ändern, aber da herkömmliche automatische Abspielgeräte nicht für die Handhabung von solchen Anweisungen zum Komprimierungs/Expandierungsverhältins auf der Zeitachse vorgesehen sind, kann eine solche Veränderung nicht gemacht werden, und eine solche Veränderung kann demzufolge auch nicht dargestellt werden.
Ferner wird in der U.S.-Patentschrift 5,792,971 eine Technik vorgestellt, zum Ermitteln des Timings für den Beginn bzw. das Ende einer Tonwiedergabe sowie Tonhöhenänderungen von Tönen in einer langen, aus mehreren aufeinanderfolgenden Tönen bestehenden Audiowellenform, Erzeugen einer ersten Datengruppe, die aus Note-Ons (Anweisungen zum Beginn der Tonwiedergabe), Note-Offs (Anweisungen zum Beenden der Tonwiedergabe) und Pitch-Bends (Anweisungen zur Tonhöhenbeugung) inklusive Zeitinformationen besteht, Erzeugen einer zweiten Datengruppe als Zielwert, indem die erste Datengruppe vom Benutzer editiert wird, und Ändern der Tonhöhe der Audiowellenform und Komprimiern bzw. Expandieren der Audiowellenform auf der Zeitachse, basierend auf einem Vergleich zwischen der ersten Datengruppe und der zweiten Datengruppe, um ein Audiosignal mit der Tonhöhe und Dauer der zweiten Datengruppe auszugeben.
In der von der U.S.-Patentschrift 5,792,971 vorgestellten Technik werden jedoch die Daten der zweiten Gruppe auf die Daten der Zielwerte gesetzt.
Um beispielsweise die Länge eines bestimmten Tones auf eine Viertelnote festzulegen, wird schließlich die Zeitinformation in den Daten editiert, so daß das Zeitintervall zwischen dem entsprechenden Note-On und Note-Off die Länge einer Viertelnote hat. In diesem Fall kann der Benutzer die Zeitinformationen editieren, indem der Benuzter die Zeitinformationen einfach auf die Länge einer Viertelnote setzt, ohne die ursprüngliche Länge des Tons der Audiowellenform in Betracht zu ziehen.
Oft ist es jedoch für den Benutzer vorzuziehen, daß festgelegt werden kann, um wieviel eine ursprüngliche Wellenform verändert wird, so zum Beispiel, daß die Länge eines bestimmten Tones um einen Faktor 1.5 gestreckt wird.
Um jedoch mit der in U.S.-Patentschrift 5,792,971 vorgestellten Technik die Länge eines bestimmte Tones um einen Faktor 1.5 zu strecken, muß der Benutzer zunächst die ursprüngliche Länge diese Tones erkennen, dann muß der Benutzer die erkannte Länge mit 1.5 multiplizieren, und zusätlich müssen noch die Zeitinformationen editiert werden, so daß die Länge des Tones der berechneten Länge entspricht. Somit besteht das Problem, daß vom Benuzter verlangt wird, mehrere verschiedene komplizierte Operationen vorzunehmen.
Dasselbe Problem besteht übrigens bei der U.S.-Patentschrift 5,792,971 auch bezüglich der Tonhöhe.
In anderen Worten, wenn die Audiowellenform Tonhöhenvariationen (zum Beispiel ein Vibrato) enthält, und der Benuzter möchte mit der in U.S.- Patentschrift 5,792,971 vorgestellten Technik eine erste Gruppe von Pitch- Bend-Daten, die diesen Tonhöhenvariationen entsprechen, um eine bestimmte Tonhöhe ändern, dann muß der Benutzer erst eine entsprechende zweite Gruppe von Pitch-Bend-Daten erzeugen, und muß somit also eine komplizierte Operation vornehmen.
Die vorliegende Erfindung wurde mit Hinblick auf die Probleme im Stand der Technik entwickelt, und hat zur Aufgabe, ein Verfahren zum Verarbeiten einer Audiowellenform, ein Gerät zum Verarbeiten einer Audiowellenform, sowie ein computerlesbares Speichermedium, auf dem ein Programm für ein Verfahren zum Verarbeiten einer Audiowellenform gespeichert ist, zu entwickeln, wobei in einer automatischen Abspielvorrichtung (die beispielsweise durch ein separates Gerät oder durch einen Computer realisiert werden kann), die verschiedene Arten von Anweisungen, die auf den Abspieldaten beruhen, die als Informationen über die gewünschte Modifikation bezüglich der Wiedergabe der Audiowellenform dienen, an ein Soundmodul gibt, das eine Audiowellenform speichert (und welches beispielsweise durch ein separates Gerät oder durch einen Computer realisiert werden kann), ein vom Benutzer vorgenommenes Editieren von Informationen, die die gewünschten Modifikationen bezüglich der Wiedergabe der Abspieldaten (also der Audiowellenform) anzeigen, vereinfacht werden kann, indem dargestellt wird, wie die Audiowellenform vom Soundmodul wiedergegeben wird.
Um diese Aufgaben zu verwirklichen, wenn mit der vorliegenden Erfindungen Anweisungen ausgeführt werden, die beispielsweise die Tonhöhe zur Widergabe der Audiowellenform je nach den Informationen, die eine gewünschte Modifikation bezüglich der Wiedergabe der Abspieldaten (also der Audiowellenform) darstellen, modifizieren, dann werden zeitabhängige Merkmale der Audiowellenform, wie z. B. die Tonhöhe, zu Merkmalen der Audiowellenform addiert, die der Benutzer zeitlich verändert, wie z. B. die als Abspieldaten gesetzte Tonhöhe, und ein Merkmal wie z. B. die Tonhöhe einer Audiowellenform, deren Tonhöhe modifiziert worden ist, wird dargestellt.
Ferner, wenn mit der vorliegenden Erfindung Anweisungen ausgeführt werden, um beispielsweise die Tonhöhe für eine Wiedergabe der Audiowellenform zu modifizieren, und zwar auf Basis von Informationen, die eine gewünschte Modifikation bezüglich der Wiedergabe der Abspieldaten (also der Audiowellenform) anzeigen, dann wird das Timing der Wiedergabe der Audiowellenform (also die Position auf der Zeitachse) je nach Wiedergabegeschwindigkeit geändert, und das geänderte Wiedergabetiming (also die Position auf der Zeitachse) wird dargestellt.
Genauer gesagt ist nach Anspruch 1 ein Verfahren zum Verarbeiten einer Audiowellenform mit einer automatischen Abspielvorrichtung, die einem Soundmodul, in dem eine Audiowellenform gespeichert ist, Anweisungen gibt zur zeitlichen Modifikation bezüglich der Widergabe der Audiowellenform, gekennzeichnet durch:
einen ersten Schritt zum Speichern von Informationen, die anzeigen, wie sich ein bestimmtes Merkmal der im Soundmodul gespeicherten Audiowellenform zeitlich ändert;
einen von einem Benutzer durchgeführten zweiten Schritt zur Eingabe einer Anweisung zu einer gewünschten relativen Modifikation des Merkmals der Audiowellenform an einer gewünschten Position auf der Zeitachse;
einen dritten Schritt zum Speichern von Informationen, die anzeigen, wie das Merkmal der Audiowellenform zeitlich modifiziert wird, wenn die angewiesene relative Modifikation bei der angewiesenen Position der Audiowellenform auf der Zeitachse in Übereinstimmung mit der Anweisung des Benutzers zur gewünschten relativen Modifikation des Merkmals der Audiowellenform bei einer gewünschten Position auf der Zeitachse im zweiten Schritt gültig wird;
einen vierten Schritt zum Darstellen, wie sich das Merkmal der Audiowellenform zeitlich ändert, wenn es in Übereinstimmung mit der Anweisung des Benutzers zur relativen Modifikation im zweiten Schritt modifiziert wird, und zwar abhängig von (i) den im ersten Schritt gespeicherten Informationen, die anzeigen, wie sich das Merkmal der Audiowellenform zeitlich ändert, und (ii) der im zweiten Schritt eingegebenen Anweisung zur relativen Modifikation des Merkmals der Audiowellenform; und
einen fünften Schritt zur Ausgabe einer Anweisung zur Modifikation des Merkmals der Audiowellenform mit dem Verlauf der Zeit an das Soundmodul, und zwar abhängig von den im dritten Schritt gespeicherten Informationen, die anzeigen, wie das Merkmal der Audiowellenform zeitlich modifiziert wird.
Im dritten Schritt kann die im zweiten Schritt eingegebene Anweisung zur Modifikation selbst gespeichert werden, aber es ist auch möglich, das Ergebnis einer Rechnung zu speichern, in die die im zweiten Schritt eingegebene Anweisung zur Modifikation sowie andere Informationen eingehen, so zum Beispiel die Summe der im zweiten Schritt eingegebenen Anweisung zur Modifikation und der im ersten Schritt eingegebenen Informationen.
Wenn im dritten Schritt die im zweiten Schritt eingegebene Anweisung zur Modifikation selbst gespeichert wird, dann kann im vierten Schritt das Ergebnis einer Rechnung dargestellt werden, in die die im ersten Schritt gespeicherten Informationen sowie die im zweiten Schritt eingegebene Anweisung zur Modifikation eingehen, und wenn im dritten Schritt das Ergebnis einer Rechnung gespeichert wird, in die die im zweiten Schritt eingegebenen Anweisung zur Modifikation und die im ersten Schritt eingegebenen Informationen eingehen, dann können im vierten Schritt die im ersten Schritt gespeicherten Informationen dargestellt werden.
Weiterhin, wenn im vierten Schritt dargestellt wird, wie sich das bestimmte Merkmal der Audiowellenform zeitlich ändert, dann kann diese zeitliche Änderung mittels graphischer Symbole dargestellt werden. Das bedeutet, daß es möglich ist, die Werte, die anzeigen, wie sich die Audiowellenform zeitlich ändert, in Größe und Position von Symbolen umzuwandeln, und dann diese umgewandelten Symbole darzustellen.
Weiterhin ist es möglich, im fünften Schritt die im dritten Schritt gespeicherten Informationen selbst als Anweisung zur Modifikation auszugeben, oder aber auch das Ergebnis einer Rechnung, in die die im dritten Schritt gespeicherten Informationen sowie andere Informationen eingehen, als Anweisung zur Modifikation auszugeben.
Weiterhin kann die Anweisung zur Modifikation, die im fünften Schritt ausgegeben wird, das Ausmaß der Änderung relativ zu einem bestimmten Merkmal der Audiowellenform anzeigen, aber es ist auch möglich, daß diese Anweisung einen absoluten Wert eines bestimmten Merkmals der Audiowellenform anzeigt.
Das Verfahren zum Verarbeiten einer Audiowellenform nach Anspruch 2 entspricht dem Verfahren zum Verarbeiten einer Audiowellenform nach Anspruch 1, wobei
die Anweisung des Benutzers zur gewünschten relativen Modifikation des Merkmals der Audiowellenform an einer gewünschten Position auf der Zeitachse im zweiten Schritt einen gewünschten Bereich auf der Zeitachse sowie eine gewünschte Erhöhung bzw. Verminderung angibt; und
die im dritten Schritt gespeicherten Informationen, die anzeigen, wie das Merkmal der Audiowellenform zeitlich modifiziert wird, Informationswerte im Bereich, der von dieser Anweisung angegeben wird, abhängig von der Erhöhung bzw. Verminderung, die mit der Anweisung des Benutzers zur relativen Modifikation im zweiten Schritt angegeben wurde, erhöhen bzw. verringern, und zwar in Übereinstimmung mit einer bestimmten Änderungsform.
Hierbei bedeutet "eine bestimmte Änderungsform" zur Erhöhung bzw. Verminderung von Informationswerten im Bereich, der mit der Anweisung des Benutzers im zweiten Schritt angegeben wurde, zum Beispiel, die Form einer horizontalen Linie für gleichmäßige Veränderung, die Form einer Dreieckskurve für abschnittsweise lineare Veränderung, die Form einer Kosinuskurve für kosinusförmige Veränderung, und die Form einer Sinuskurve für sinusförmige Veränderung.
Nach Anspruch 3 ist ein Verfahren zum Verarbeiten einer Audiowellenform mit einer automatischen Abspielvorrichtung, die einem Soundmodul, in dem eine Audiowellenform gespeichert ist, Anweisungen gibt zur zeitlichen Modifikation bezüglich der Wiedergabe der Audiowellenform, gekennzeichnet durch:
einen ersten Schritt zum Speichern von Informationen, die Positionen auf der Zeitachse anzeigen, zu denen Töne der Audiowellenform, die mehrere Töne enthält, die im Soundmodul gespeichert sind, wiedergegeben werden;
einen von einem Benutzer durchgeführten zweiten Schritt zur Eingabe einer Anweisung zu einer gewünschten Modifikation einer Wiedergabegeschwindigkeit der Audiowellenform an einer gewünschten Position auf der Zeitachse;
einen dritten Schritt zum Speichern von Informationen, die anzeigen, wie die Wiedergabegeschwindigkeit der Audiowellenform zeitlich modifiziert wird, wenn die angewiesene Modifikation bei der angewiesenen Position der Audiowellenform auf der Zeitachse in Übereinstimmung mit der Anweisung des Benutzers zur gewünschten Modifikation der Wiedergabegeschwindigkeit der Audiowellenform an einer gewünschten Position auf der Zeitachse im zweiten Schritt gültig wird;
einen vierten Schritt zum Darstellen von Positionen auf der Zeitachse bei denen Töne der Audiowellenform wiedergegeben werden, wenn die Wiedergabegeschwindigkeit der Audiowellenform in Übereinstimmung mit der Anweisung des Benutzers zur Modifikation im zweiten Schritt modifiziert werden, und zwar abhängig von (i) den im ersten Schritt gespeicherten Informationen, die Positionen auf der Zeitachse anzeigen, zu denen Töne der Audiowellenform wiedergegeben werden, und (ii) der im zweiten Schritt eingegebenen Anweisung zur gewünschten Modifikation der Wiedergabegeschwindigkeit der Audiowellenform; und
einen fünfter Schritt zur Ausgabe einer Anweisung zur Modifikation der Wiedergabegeschwindigkeit der Audiowellenform mit dem Verlauf der Zeit an das Soundmodul, und zwar abhängig von den im dritten Schritt gespeicherten Informationen, die anzeigen, wie die Wiedergabegeschwindigkeit der Audiowellenform zeitlich modifiziert wird.
Hierbei zeigt die "Wiedergabegeschwindigkeit" das Ausmaß der Komprimierung bzw. Expandierung auf der Zeitachse an, wenn die Audiowellenform mit dem Soundmodul wiedergegeben wird.
Im dritten Schritt kann die im zweiten Schritt eingegebene Anweisung zur Modifikation selbst gespeichert werden, aber es ist auch möglich, das Ergebnis einer Rechnung zu speichern, in die die im zweiten Schritt eingegebene Anweisung zur Modifikation sowie andere Informationen eingehen, so zum Beispiel falls im Voraus eine Modifikation der Wiedergabegeschwindigkeit der Audiowellenform festgelegt wurde, dann kann das Produkt der im zweiten Schritt eingegebenen Anweisung zur Modifikation und der im Voraus festgelegten Wiedergabegeschwindigkeit gespeichert werden.
Falls die Anweisung zur Modifikation der Wiedergabegeschwindigkeit nur die im zweiten Schritt eingegeben Anweisung umfaßt, dann kann die Darstellung auf Basis der im ersten Schritt eingegebenen Informationen und der im zweiten Schritt eingegeben Anweisung zur Modifikation erfolgen, und falls die Anweisung zur Modifikation der Wiedergabegeschwindigkeit noch andere Anweisungen neben der im zweiten Schritt eingegeben Anweisung umfaßt, dann kann die Darstellung auf Basis der im ersten Schritt eingegebenen Informationen, der im zweiten Schritt eingegeben Anweisung zur Modifikation, sowie dieser weiteren Anweisungen erfolgen.
Weiterhin, wenn im vierten Schritt die Positionen auf der Zeitachse dargestellt werden, bei denen Töne der Audiowellenform wiedergegeben werden, dann können diese Positionen auf der Zeitachse mittels graphischer Symbole dargestellt werden. Das bedeutet, daß es möglich ist, die Werte diese Positionen auf der Zeitachse in Größe und Position von Symbolen umzuwandeln, und dann diese umgewandelten Symbole darzustellen.
Weiterhin ist es möglich, im fünften Schritt die im dritten Schritt gespeicherten Informationen selbst als Anweisung zur Modifikation auszugeben, oder aber auch das Ergebnis einer Rechnung, in die die im dritten Schritt gespeicherten Informationen sowie andere Informationen eingehen, als Anweisung zur Modifikation auszugeben.
Weiterhin kann die Anweisung zur Modifikation, die im fünften Schritt ausgegeben wird, das Ausmaß der Änderung relativ zur Wiedergabegeschwindigkeit der Audiowellenform anzeigen, aber es ist auch möglich, daß diese Anweisung einen absoluten Wert der Wiedergabegeschwindigkeit der Audiowellenform anzeigt.
Das Verfahren zum Verarbeiten einer Audiowellenform nach Anspruch 4 entspricht dem Verfahren zum Verarbeiten einer Audiowellenform nach Anspruch 3, und ist ferner gekennzeichnet durch:
einen sechsten Schritt zum Speichern einer Position auf der Zeitachse, zu der eine Anweisung zur Modifikation einer bestimmten Art der Wiedergabe der im Soundmodul gespeicherten Audiowellenform ausgegeben wird und
einen siebten Schritt zur Änderung der im sechsten Schritt gespeicherten Ausgabeposition auf der Zeitachse der Anweisung zur Modifikation einer bestimmten Art der Wiedergabe, und zwar abhängig von der Anweisung des Benutzers zur Modifikation im zweiten Schritt, sowie Ausgabe dieser Anweisung zur Modifikation an der geänderten Position auf der Zeitachse mit dem Verlauf der Zeit an das Soundmodul.
Hierbei umfaßt die Anweisung zur Modifikation einer bestimmten Art der Wiedergabe der im Soundmodul gespeicherten Audiowellenform Anweisungen zur Änderung der Tonhöhe sowie Anweisungen zur Wiedergabegeschwindigkeit.
Das Verfahren zum Verarbeiten einer Audiowellenform nach Anspruch 5 entspricht dem Verfahren zum Verarbeiten einer Audiowellenform nach Anspruch 3, wobei:
die Anweisung des Benutzers zur gewünschten Modifikation der Wiedergabegeschwindigkeit der Audiowellenform an einer gewünschten Position auf der Zeitachse im zweiten Schritt einen gewünschten Bereich auf der Zeitachse sowie eine gewünschte Erhöhung bzw. Verminderung angibt; und
die im dritten Schritt gespeicherten Informationen, die anzeigen, wie die Wiedergabegeschwindigkeit der Audiowellenform zeitlich modifiziert wird, Informationswerte im Bereich, der von dieser Anweisung angegeben wird, abhängig von der Erhöhung bzw. Verminderung, die mit der Anweisung des Benutzers zur Modifikation der Wiedergabegeschwindigkeit im zweiten Schritt angegeben wurde, erhöhen bzw. verringern, und zwar in Übereinstimmung mit einer bestimmten Änderungsform.
Hierbei bedeutet "eine bestimmte Änderungsform" zur Erhöhung bzw. Verminderung von Informationswerten im Bereich, der mit der Anweisung des Benutzers im zweiten Schritt angegeben wurde, zum Beispiel, die Form einer horizontalen Linie für gleichmäßige Veränderung, die Form einer Dreieckskurve für abschnittsweise lineare Veränderung, die Form einer Kosinuskurve für kosinusförmige Veränderung, und die Form einer Sinuskurve für sinusförmige Veränderung.
Nach Anspruch 6 ist ein Gerät zum Verarbeiten einer Audiowellenform mit einer automatischen Abspielvorrichtung, die einem Soundmodul, in dem eine Audiowellenform gespeichert ist, Anweisungen gibt zur zeitlichen Modifikation bezüglich der Wiedergabe der Audiowellenform, gekennzeichnet durch:
eine erste Speichervorrichtung zum Speichern von Informationen, die anzeigen, wie sich ein bestimmtes Merkmal der im Soundmodul gespeicherten Audiowellenform zeitlich ändert;
eine Eingabevorrichtung, mit der ein Benutzer eine Anweisung zu einer gewünschten relativen Modifikation des Merkmals der Audiowellenform an einer gewünschten Position auf der Zeitachse eingeben kann;
eine zweite Speichervorrichtung zum Speichern von Informationen, die anzeigen, wie das Merkmal der Audiowellenform zeitlich modifiziert wird, wenn die angewiesene relative Modifikation bei der angewiesenen Position der Audiowellenform auf der Zeitachse in Übereinstimmung mit den vom Benutzer in die Eingabevorrichtung eingegebenen Anweisungen zur gewünschten relativen Modifikation des Merkmals der Audiowellenform bei einer gewünschten Position auf der Zeitachse im zweiten Schritt gültig wird;
eine Anzeigevorrichtung zum Darstellen, wie sich das Merkmal der Audiowellenform zeitlich ändert, wenn es in Übereinstimmung mit den vom Benutzer in die Eingabevorrichtung eingegebenen Anweisungen zur relativen Modifikation modifiziert wird, und zwar abhängig von (i) den in der ersten Speichervorrichtung gespeicherten Informationen, die anzeigen, wie sich das Merkmal der Audiowellenform zeitlich ändert, und (ii) der in die Eingabevorrichtung eingegebenen Anweisung zur relativen Modifikation des Merkmals der Audiowellenform; und
eine Ausgabevorrichtung zur Ausgabe einer Anweisung zur Modifikation des Merkmals der Audiowellenform mit dem Verlauf der Zeit an das Soundmodul, und zwar abhängig von den in der zweiten Speichervorrichtung gespeicherten Informationen, die anzeigen, wie das Merkmal der Audiowellenform zeitlich modifiziert wird.
Es ist möglich, die mit der Eingabevorrichtung eingegebene Anweisung zur Modifikation selbst in der zweiten Speichervorrichtung zu speichern, aber es ist auch möglich, das Ergebnis einer Rechnung zu speichern, in die die mit der Eingabevorrichtung eingegebene Anweisung zur Modifikation sowie andere Informationen eingehen, so zum Beispiel die Summe der mit der Eingabevorrichtung eingegebenen Anweisung zur Modifikation und der in der ersten Speichervorrichtung gespeicherten Informationen.
Wenn in der zweiten Speichervorrichtung die mit der Eingabevorrichtung eingegebene Anweisung zur Modifikation selbst gespeichert wird, dann kann die Ausgabevorrichtung das Ergebnis einer Rechnung darstellen, in die die in der ersten Speichervorrichtung gespeicherten Informationen sowie die mit der Eingabevorrichtung eingegebene Anweisung zur Modifikation eingehen, und wenn in der zweiten Speichervorrichtung das Ergebnis einer Rechnung gespeichert wird, in die die mit der Eingabevorrichtung eingegebenen Anweisung zur Modifikation und die in der ersten Speichervorrichtung gespeicherten Informationen eingehen, dann kann die Darstellungsvorrichtung die in der ersten Speichervorrichtung gespeicherten Informationen darstellen.
Weiterhin, wenn die Darstellungsvorrichtung darstellt, wie sich das bestimmte Merkmal der Audiowellenform zeitlich ändert, dann kann diese zeitliche Änderung mittels graphischer Symbole dargestellt werden. Das bedeutet, daß es möglich ist, die Werte, die anzeigen, wie sich die Audiowellenform zeitlich ändert, in Größe und Position von Symbolen umzuwandeln, und dann diese umgewandelten Symbole darzustellen.
Weiterhin ist es möglich, mit der Ausgabevorrichtung die in der zweiten Speichervorrichtung gespeicherten Informationen selbst als Anweisung zur Modifikation auszugeben, oder aber auch das Ergebnis einer Rechnung, in die die in der zweiten Speichervorrichtung gespeicherten Informationen sowie andere Informationen eingehen, als Anweisung zur Modifikation auszugeben.
Weiterhin kann die Anweisung zur Modifikation, die mit der Ausgabevorrichtung ausgegeben wird, das Ausmaß der Änderung relativ zu einem bestimmten Merkmal der Audiowellenform anzeigen, aber es ist auch möglich, daß diese Anweisung einen absoluten Wert eines bestimmten Merkmals der Audiowellenform anzeigt.
Das Gerät zum Verarbeiten einer Audiowellenform nach Anspruch 7 entspricht dem Gerät zum Verarbeiten einer Audiowellenform nach Anspruch 6, wobei
die vom Benutzer in die Eingabevorrichtung eingegebene Anweisung zur gewünschten relativen Modifikation des Merkmals der Audiowellenform an einer gewünschten Position auf der Zeitachse einen gewünschten Bereich auf der Zeitachse sowie eine gewünschte Erhöhung bzw. Verminderung angibt; und
die in der zweiten Speichervorrichtung gespeicherten Informationen, die anzeigen, wie das Merkmal der Audiowellenform zeitlich modifiziert wird, Informationswerte im Bereich, der von dieser Anweisung angegeben wird, abhängig von der Erhöhung bzw. Verminderung, die mit der in die Eingabevorrichtung eingegebenen Anweisung des Benutzers zur relativen Modifikation angegeben wurde, erhöhen bzw. verringern, und zwar in Übereinstimmung mit einer bestimmten Änderungsform.
Hierbei bedeutet "eine bestimmte Änderungsform" zur Erhöhung bzw. Verminderung von Informationswerten im Bereich, der mit der Anweisung des Benutzers im zweiten Schritt angegeben wurde, zum Beispiel, die Form einer horizontalen Linie für gleichmäßige Veränderung, die Form einer Dreieckskurve für abschnittsweise lineare Veränderung, die Form einer Kosinuskurve für kosinusförmige Veränderung, und die Form einer Sinuskurve für sinusförmige Veränderung.
Nach Anspruch 8 ist ein Gerät zum Verarbeiten einer Audiowellenform mit einer automatischen Abspielvorrichtung, die einem Soundmodul, in dem eine Audiowellenform gespeichert ist, Anweisungen gibt zur zeitlichen Modifikation bezüglich der Wiedergabe der Audiowellenform, gekennzeichnet durch:
eine erste Speichervorrichtung zum Speichern von Informationen, die Positionen auf der Zeitachse anzeigen, zu denen Töne der Audiowellenform, die mehrere Töne enthält, die im Soundmodul gespeichert sind, wiedergegeben werden;
eine Eingabevorrichtung, mit der eine Anweisung zu einer gewünschten Modifikation einer Wiedergabegeschwindigkeit der Audiowellenform an einer gewünschten Position auf der Zeitachse eingegeben werden kann;
eine zweite Speichervorrichtung zum Speichern von Informationen, die anzeigen, wie die Wiedergabegeschwindigkeit der Audiowellenform zeitlich modifiziert wird, wenn die angewiesene Modifikation bei der angewiesenen Position der Audiowellenform auf der Zeitachse in Übereinstimmung mit der vom Benutzer in die Eingabevorrichtung eingegebene Anweisung zur gewünschten Modifikation der Wiedergabegeschwindigkeit der Audiowellenform an einer gewünschten Position auf der Zeitachse im zweiten Schritt gültig wird;
eine Anzeigevorrichtung zum Darstellen von Positionen auf der Zeitachse bei denen Töne der Audiowellenform wiedergegeben werden, wenn die Wiedergabegeschwindigkeit der Audiowellenform in Übereinstimmung mit den vom Benutzer in die Eingabevorrichtung eingegebenen Anweisungen zur Modifikation modifiziert werden, und zwar abhängig von (i) den in der ersten Speichervorrichtung gespeicherten Informationen, die Positionen auf der Zeitachse anzeigen, zu denen Töne der Audiowellenform wiedergegeben werden, und (ii) der in die Eingabevorrichtung eingegebenen Anweisung zur gewünschten Modifikation der Wiedergabegeschwindigkeit der Audiowellenform; und
eine Ausgabevorrichtung zur Ausgabe einer Anweisung zur Modifikation der Wiedergabegeschwindigkeit der Audiowellenform mit dem Verlauf der Zeit an das Soundmodul, und zwar abhängig von den in der zweiten Speichervorrichtung gespeicherten Informationen, die anzeigen, wie die Wiedergabegeschwindigkeit der Audiowellenform zeitlich modifiziert wird.
Hierbei zeigt die "Wiedergabegeschwindigkeit" das Ausmaß der Komprimierung bzw. Expandierung auf der Zeitachse an, wenn die Audiowellenform mit dem Soundmodul wiedergegeben wird.
Es ist möglich, die mit der Eingabevorrichtung eingegebene Anweisung zur Modifikation selbst in der zweiten Speichervorrichtung zu speichern, aber es ist auch möglich, das Ergebnis einer Rechnung zu speichern, in die die mit der Eingabevorrichtung eingegebene Anweisung zur Modifikation sowie andere Informationen eingehen, so zum Beispiel falls im Voraus eine Modifikation der Wiedergabegeschwindigkeit der Audiowellenform festgelegt wurde, dann kann das Produkt der mit der Eingabevorrichtung Anweisung zur Modifikation und der im Voraus festgelegten Wiedergabegeschwindigkeit gespeichert werden.
Falls die Anweisung zur Modifikation der Wiedergabegeschwindigkeit nur die mit der Eingabevorrichtung eingegeben Anweisung umfaßt, dann kann die Darstellungsvorrichtung die Darstellung auf Basis der in der ersten Speichervorrichtung gespeicherten Informationen und der mit der Eingabevorrichtung eingegebenen Anweisung zur Modifikation vollziehen, und falls die Anweisung zur Modifikation der Wiedergabegeschwindigkeit noch andere Anweisungen neben der mit der Eingabevorrichtung eingegeben Anweisung umfaßt, dann kann die Darstellungsvorrichtung die Darstellung auf Basis der in der ersten Speichervorrichtung gespeicherten Informationen, der mit der Eingabevorrichtung eingegeben Anweisung zur Modifikation, sowie dieser weiteren Anweisungen vollziehen.
Weiterhin, wenn die Darstellungsvorrichtung die Positionen auf der Zeitachse darstellt, bei denen Töne der Audiowellenform wiedergegeben werden, dann können diese Positionen auf der Zeitachse mittels graphischer Symbole dargestellt werden. Das bedeutet, daß es möglich ist, die Werte diese Positionen auf der Zeitachse in Größe und Position von Symbolen umzuwandeln, und dann diese umgewandelten Symbole darzustellen.
Weiterhin ist es möglich, mit der Ausgabevorrichtung die im dritten Schritt gespeicherten Informationen selbst als Anweisung zur Modifikation auszugeben, oder aber auch das Ergebnis einer Rechnung, in die die in der zweiten Speichervorrichtung gespeicherten Informationen sowie andere Informationen eingehen, als Anweisung zur Modifikation auszugeben.
Weiterhin kann die Anweisung zur Modifikation, die von dar Ausgabevorrichtung ausgegeben wird, das Ausmaß der Änderung relativ zur Wiedergabegeschwindigkeit der Audiowellenform anzeigen, aber es ist auch möglich, daß diese Anweisung einen absoluten Wert der Wiedergabegeschwindigkeit der Audiowellenform anzeigt.
Das Gerät zum Verarbeiten einer Audiowellenform nach Anspruch 9 entspricht dem Gerät zum Verarbeiten einer Audiowellenform nach Anspruch 8, und ist ferner gekennzeichnet durch:
eine dritte Speichervorrichtung zum Speichern einer Position auf der Zeitachse, zu der eine Anweisung zur Modifikation einer bestimmten Art der Wiedergabe der im Soundmodul gespeicherten Audiowellenform ausgegeben wird; und
eine zweite Ausgabevorrichtung zur Änderung der in der dritten Speichervorrichtung gespeicherten Ausgabeposition auf der Zeitachse der Anweisung zur Modifikation einer bestimmten Art der Wiedergabe, und zwar abhängig von der vom Benutzer in die Eingabevorrichtung eingegebenen Anweisung zur Modifikation, sowie Ausgabe dieser Anweisung zur Modifikation an der geänderten Position auf der Zeitachse mit dem Verlauf der Zeit an das Soundmodul.
Hierbei umfaßt die Anweisung zur Modifikation einer bestimmten Art der Wiedergabe der im Soundmodul gespeicherten Audiowellenform Anweisungen zur Änderung der Tonhöhe sowie Anweisungen zur Wiedergabegeschwindigkeit.
Das Gerät zum Verarbeiten einer Audiowellenform nach Anspruch 10 entspricht dem Gerät zum Verarbeiten einer Audiowellenform nach Anspruch 8, wobei:
die vom Benutzer in die Eingabevorrichtung eingegebenen Anweisung zur gewünschten Modifikation der Wiedergabegeschwindigkeit der Audiowellenform an einer gewünschten Position auf der Zeitachse einen gewünschten Bereich auf der Zeitachse sowie eine gewünschte Erhöhung bzw. Verminderung angibt; und
die in der zweiten Speichervorrichtung gespeicherten Informationen, die anzeigen, wie die Wiedergabegeschwindigkeit der Audiowellenform zeitlich modifiziert wird, Informationswerte im Bereich, der von dieser Anweisung angegeben wird, abhängig von der Erhöhung bzw. Verminderung, die mit der vom Benutzer in die Eingabevorrichtung eingegebenen Anweisung zur Modifikation der Wiedergabegeschwindigkeit angegeben wurde, erhöhen bzw. verringern, und zwar in Übereinstimmung mit einer bestimmten Änderungsform;
Hierbei bedeutet "eine bestimmte Änderungsform" zur Erhöhung bzw. Verminderung von Informationswerten im Bereich, der mit der Anweisung des Benutzers im zweiten Schritt angegeben wurde, zum Beispiel, die Form einer horizontalen Linie für gleichmäßige Veränderung, die Form einer Dreieckskurve für abschnittsweise lineare Veränderung, die Form einer Kosinuskurve für kosinusförmige Veränderung, und die Form einer Sinuskurve für sinusförmige Veränderung.
Ferner ist auf einem computerlesbares Speichermedium nach Anspruch 11, ein Programm für ein Verfahren zum Verarbeiten einer Audiowellenform nach einem der Ansprüche 1 bis 5 gespeichert.
Fig. 1 ist eine Zeichnung der grundlegenden Anordnung der Hardware um ein erfindungsgemäßes Verfahrens zur Verarbeitung von Wellenformen zu implementieren.
Fig. 2 zeigt ein Flußdiagramm der Prozess-Routine, die durchgeführt wird, wenn ein MIDI-Signal in das Soundmodul eingegeben wird.
Fig. 3 veranschaulicht schematisch die Abspieldaten in den Abspieldaten-Ketten für die vorliegenden Erfindung. Fig. 3(a) zeigt schematisch das Format der Abspieldaten. Fig. 3(b) zeigt schematisch das Format der Silbendaten, die eine Art von Abspieldaten darstellen. Fig. 3(c) zeigt schematisch das Format der Steuerdaten, die eine andere Art von Abspieldaten darstellen.
Fig. 4 ist ein Flußdiagramm der Prozess-Routine zur Wiedergabe der Abspieldaten.
Fig. 5 ist ein Flußdiagramm der Prozess-Routine zum Bestimmen der Wiedergabedauern.
Fig. 6 ist ein Flußdiagramm der Prozess-Routine zum Ändern der Wiedergabezeit (Clock) und der Wiedergabehaltedauer (Length) der Silben beim Editieren der Wiedergabegeschwindigkeit.
Fig. 7 veranschaulicht das Erneuern der Wiedergabehaltedauer der vorangehenden Silbendaten.
Fig. 8 ist ein Flußdiagramm der Prozess-Routine zur Erneuerung der Wiedergabehaltedauer der direkt vorausgehenden Silbendaten für den Fall, daß es sich bei den aktuellen Daten um Wiedergabe­ geschwindigkeitsdaten handelt.
Fig. 9 veranschaulicht das Messen der Dauer vor dem Editieren von den vorangehenden Silbendaten bis zu den aktuellen Abspieldaten.
Fig. 10 ist ein Flußdiagramm der Prozess-Routine zur Erneuerung der Wiedergabehaltedauer der direkt vorausgehenden Silbendaten für den Fall, daß es sich bei den aktuellen Daten um Silbendaten handelt.
Fig. 11 veranschaulicht, wie die Dauer der Wiedergabehaltedaten der vorangehenden Silbendaten nach dem Editieren bestimmt wird.
Fig. 12 zeigt den Editierbildschirm, der dargestellt wird, wenn die Dropdown-Liste 108 geöffnet ist, um die zu editieren Daten auszuwählen. Dabei sind die Anzeige des Silbenanzeigebereiches 120 und des Datenanzeigebereiches 122 dieselbe wie in Fig. 13.
Fig. 13 zeigt einen Editierbildschirm, auf dem die Werte der Steuerdaten (control) und die Werte des Resultats (result) des Editierens der Pitch-Bend-Daten im Datenanzeigebereich 122 dargestellt sind. Dabei, ist eine horizontale Line (constant) als Änderungsform für die Steuerdaten ausgewählt worden.
Fig. 14 zeigt den Editierbildschirm, wenn im Editierbildschirm von Fig. 13 mit der Maus ein Editierbereich markiert wurde, wobei der Editierbereich invers dargestellt ist.
Fig. 15 zeigt einen Editierbildschirm, wobei das Resultat (result) des Editierens auf dem Editierbildschirms in Fig. 14 nicht dargestellt ist, das heißt, nur die Werte der Steuerdaten (control) sind dargestellt.
Fig. 16 zeigt einen Editierbildschirm, wobei für die Pitch-Bend- Daten nur die Werte der Steuerdaten (control) dargestellt sind, im Editierbildschirm von Fig. 13 mit der Maus ein Editierbereich markiert und invers dargestellt ist, und die Werte der Steuerdaten mit der Änderungsform einer horizontalen Linie (constant) durch Ziehen mit der Maus verändert wurden (dabei zeigt Fig. 16 eine Situation während des Ziehen mit der Maus).
Fig. 17 zeigt einen Editierbildschirm, der die Werte der Steuerdaten (control) und des Resultat (result) des Editierens im Datenanzeigebereich 122 darstellt, nach dem Ziehen und Ablegen mit der Maus in der Situation von Fig. 16.
Fig. 18 zeigt einen Editierbildschirm, wobei für die Pitch-Bend- Daten nur die Werte der Steuerdaten (control) dargestellt sind, im Editierbildschirm mit der Maus ein Editierbereich markiert und invers dargestellt ist, und die Werte der Steuerdaten mit der Änderungsform einer Dreieckskurve (linear) durch Ziehen mit der Maus verändert wurden (dabei zeigt Fig. 18 eine Situation während des Ziehen mit der Maus).
Fig. 19 zeigt einen Editierbildschirm, wobei für die Pitch-Bend- Daten nur die Werte der Steuerdaten (control) dargestellt sind, im Editierbildschirm mit der Maus ein Editierbereich markiert und invers dargestellt ist, und die Werte der Steuerdaten mit der Änderungsform einer Kosinuskurve (linear) durch Ziehen mit der Maus verändert wurden (dabei zeigt Fig. 19 eine Situation während des Ziehen mit der Maus).
Fig. 20 zeigt einen Editierbildschirm, wobei die Werte der Transponierdaten (Transpose) (also die Silbentonhöhe) und die Steuerdaten (control) im Datenanzeigebereich 122 dargestellt sind, und mit der Maus ein Editierbereich markiert und invers dargestellt ist. Als Änderungsform für die Werte der Steuerdaten ist eine horizontale Linie (constant) ausgewählt.
Fig. 21 zeigt einen Editierbildschirm, wobei die Werte der Transponierdaten (Transpose), also der Silbentonhöhe, im Editierbildschirm von Fig. 20 nicht dargestellt sind, sondern nur die Werte der Steuerdaten (control), und die Werte der Steuerdaten sind mit der Änderungsform einer horizontalen Linie (constant) durch Ziehen mit der Maus geändert worden (dabei zeigt Fig. 21 eine Situation während des Ziehen mit der Maus).
Fig. 22 zeigt einen Editierbildschirm, wobei die Werte der Transponierdaten (control) und des Resultats (result) des Editierens im Datenanzeigebereich 122 dargestellt sind, nachdem das Ziehen und Ablegen mit der Maus in der Situation in Fig. 21 beendet wurde.
Fig. 23 zeigt einen Editierbildschirm, wobei für die Wiedergabegeschwindigkeitsdaten die Werte der Steuerdaten (control) im Datenanzeigebereich 122 dargestellt sind, und mit der Maus ein Editierbereich markiert und invers dargestellt ist. Als Änderungsform für die Werte der Steuerdaten ist eine horizontale Linie (constant) ausgewählt.
Fig. 24 zeigt einen Editierbildschirm, wobei die Werte der Steuerdaten im Editierbildschirm von Fig. 23 mit der Änderungsform einer horizontalen Linie (constant) durch Ziehen mit der Maus geändert worden sind (dabei zeigt Fig. 24 eine Situation während des Ziehen mit der Maus).
Fig. 25 zeigt einen Editierbildschirm, wobei die Werte der Steuerdaten (control) im Datenanzeigebereich 122 dargestellt sind, nachdem das Ziehen und Ablegen mit der Maus in der Situation in Fig. 24 beendet wurde.
Fig. 26 zeigt einen Editierbildschirm, wobei für die Wiedergabegeschwindigkeitsdaten die Werte der Steuerdaten (control) im Datenanzeigebereich 122 dargestellt sind, ein Editierbereich mit der Maus markiert und invers dargestellt ist, und die Werte der Steuerdaten mit der Änderungsform einer Dreieckskurve (linear) durch Ziehen mit der Maus verändert sind (dabei zeigt Fig. 26 eine Situation während des Ziehen mit der Maus).
Fig. 27 zeigt einen Editierbildschirm, wobei die Werte der Steuerdaten (control) im Datenanzeigebereich 122 dargestellt sind, nachdem das Ziehen und Ablegen mit der Maus in der Situation in Fig. 26 beendet wurde.
Fig. 28 zeigt einen Editierbildschirm, wobei für die Wiedergabegeschwindigkeitsdaten die Werte der Steuerdaten (control) im Datenanzeigebereich 122 dargestellt sind, ein Editierbereich mit der Maus markiert und invers dargestellt ist, und die Werte der Steuerdaten mit der Änderungsform einer Kosinuskurve (cosine) durch Ziehen mit der Maus verändert sind (dabei zeigt Fig. 28 eine Situation während des Ziehen mit der Maus).
Fig. 29 zeigt einen Editierbildschirm, wobei die Werte der Steuerdaten (control) im Datenanzeigebereich 122 dargestellt sind, nachdem das Ziehen und Ablegen mit der Maus in der Situation in Fig. 28 beendet wurde.
Fig. 30 zeigt einen Editierbildschirm, wobei für die Wiedergabegeschwindigkeitsdaten die Werte der Steuerdaten (control) im Datenanzeigebereich 122 dargestellt sind, und ein Editierbereich mit der Maus wie untenstehend erläutert markiert und invers dargestellt ist, nachdem auf ein "time keep"-Feld 200 geklickt wurde. Als Änderungsform für die Werte der Steuerdaten ist hierbei eine Dreieckskurve (linear) ausgewählt.
Fig. 31 zeigt einen Editierbildschirm, wobei die Werte der Steuerdaten mit der Änderungsform einer Dreieckwelle (linear) durch Ziehen mit der Maus verändert sind (dabei zeigt Fig. 31 eine Situation während des Ziehen mit der Maus).
Fig. 32 zeigt einen Editierbildschirm, wobei die Werte der Steuerdaten (control) im Datenanzeigebereich 122 dargestellt sind, nachdem das Ziehen und Ablegen mit der Maus in der Situation in Fig. 31 beendet wurde.
Es folgt eine detaillierte Beschreibung einer bevorzugten Ausführungsform eines erfindungsgemäßen Verfahrens zur Verarbeitung von Wellenformen, eines erfindungsgemäßen Gerätes zur Verarbeitung von Wellenformen sowie eines erfindungsgemäßen Speichermediums zum Speichern eines Programmes für ein Verfahren zur Verarbeitung von Wellenformen, unter Bezugnahme auf die beigefügten Zeichnungen.
Fig. 1 ist eine Darstellung der grundlegenden Anordnung der Hardware um ein erfindungsgemäßes Verfahren zur Verarbeitung von Wellenformen zu implementieren.
Die Hardware um ein erfindungsgemäßes Verfahrens zur Verarbeitung von Wellenformen zu implementieren besteht aus einem Computer 10 und einem Soundmodul 12. Zwischen dem Computer 10 und dem Soundmodul 12 werden MIDI-Signale übermittelt, und das Soundmodul 12 gibt Audio- Signale aus.
Der Computer 10 kann ein handelsüblicher Allzweck-Computer sein mit zentraler Prozessoreinheit (CPU), Random-Access-Speicher (RAM), Read- Only-Speicher (ROM), einem CD-ROM-Laufwerk, einer Festplatte, einer Tastatur, einer Maus, einem CRT- oder LCD-Monitor, sowie einer MIDI- Schnittstelle, und kann z. B. mit einem Windows®- oder Macintosh®- Betriebssystem betrieben werden.
Mit Tastatur oder Maus können vom Benutzer verschiedene Anweisungen in den Computer 10 eingegeben werden.
Um ein automatisches Abspiel-Anwendungsprogramm, welches die Software zur Realisierung des erfindungsgemäßen Verfahrens zur Verarbeitung von Wellenformen auf dem Computer 10 darstellt, auszuführen, wird das z. B. auf einer CD-ROM gespeicherte automatische Abspiel-Anwendungsprogramm mit dem CD-ROM-Laufwerk in Übereinstimmung mit vom Benutzer per Tastatur oder Maus eingegebenen Anweisungen auf die Festplatte installiert, und auf die Eingabe einer Anweisung, die das automatische Abspiel-Anwendungsprogramm startet, wird das automatische Abspiel-Anwendungsprogramm von der Festplatte in den RAM-Speicher geladen und von der CPU ausgeführt.
Als automatisches Abspiel-Anwendungsprogramm wird ein Programm gespeichert, das mehrere Prozeduren ausführt, zum Beispiel eine Prozedur zum Auslesen von wellenformbezogenen Daten aus dem Soundmodul 12, eine Prozedur zum Erzeugen von Abspieldaten-Ketten auf der Basis von wellenformbezogenen Daten, eine Prozedur zum Editieren von Abspieldaten-Ketten, und eine Prozedur zu Wiedergabe der Abspieldaten- Ketten. Die Details dieser Prozeduren werden unter Bezugnahme auf Flußdiagramme im Folgenden erläutert.
Wie bereits oben erläutert, werden zwischen dem Computer 10 und dem Soundmodul 12 MIDI-Signale übermittelt.
Das Soundmodul 12 speichert im Voraus Audiowellenformdaten und audiowellenformbezogenen Daten, liefert MIDI-Signale für die wellenformbezogenen Daten, an den Computer 10 als Antwort auf ein MIDI- Signal vom Computer 10, das eine Anfrage nach wellenformbezogenen Daten anzeigt, und gibt Audiowellenformdaten wieder um in Übereinstimmung mit den MIDI-Signalen vom Computer 10 ein Audiosignal auszugeben. Solche MIDI-Signale vom Computer 10 beinhalten zum Beispiel Note-Ons (Anweisungen zum Beginn einer Klangerzeugung), Note-Offs (Anweisungen zum Beenden einer Klangerzeugung), Silbennummern (Silbenspezifikationsanweisungen, die die Silbe zu Beginn der Reproduktion festlegen), Spezifizierungen der Wiedergabegeschwindigkeit (Anweisungen die Wiedergabegeschwindigkeit festlegen), oder Pitch-Bend-Events (Anweisung zur Tonhöhenbeugung). Die Einzelheiten dieser Prozeduren werden nachfolgend unter Bezugnahme auf die Flußdiagramme erläutert.
Die Anfrage nach wellenformbezogenen Daten, Silbennummer und Spezifizierungen der Wiedergabegeschwindigkeit werden als Control Changes und System Exclusive Messages übermittelt.
Es folgt eine Erläuterung der Terminologie bezüglich der verschiedenen Daten, wie in der vorliegenden Spezifikation verwendet.
(1) Audiowellenformdaten
"Audiowellenformdaten" sind Daten von Audiowellenformen, die mehrere aufeinanderfolgende Töne enthalten, wie zum Beispiel die Singstimme eines "Hal-le-lu-ja". Dabei ist anzumerken, daß sich die vorliegende Ausführungsform zwar auf eine Singstimme bezieht, die vorliegende Erfindung jedoch keineswegs auf Singstimmen beschränkt ist und sämtliche Arten von Audiowellenformen umfaßt, wie zum Beispiel auch den Klang von Instrumenten oder Soundeffekte.
Der Einfachheit halber wird in dieser Spezifikation eine Ansammlung mehrerer Töne oft auch als "Silbe" bezeichnet. Dies ist jedoch nicht unbedingt als "Silbe" im phonetischen Sinne zu verstehen, sondern bezieht sich allgemein auf Bruchstücke der Audiowellenform.
Ferner sind Tonhöhe und Lautstärke der Audiowellenform veränderlich, und jede Silbe kann ihre eigene Tonhöhe oder Lautstärke haben, unabhängig von denen der anderen Silben.
(2) Wellenformbezogene Daten
Die wellenformbezogenen Daten umfassen "Silbenadresse", "Ursprungstonart", "Ursprungssilbentonart", "Tonhöhenveränderung", "Tempo", sowie eine "Zeichenkette", die nachfolgend erläutert werden:
(2-1) Silbenadresse
"Silbenadresse" zeigt die Startadresse der Silben im RAM-Speicher an, der die Audiowellenformdaten speichert.
Angefangen mit der ersten Silbe der Audiowellenform ist jeder Silbe eine Silbennummer zugeordnet, und wenn dem Soundmodul 12 eine Silbennummer angegeben wird, so bestimmt dies die Silbenadresse der entsprechenden Silbe im Soundmodul 12.
Die Silbenadressen der Silben (das heißt, die Startadressen der Silben) sind gleichzeitig die Adressen des Endes der unmittelbar vorangehenden Silben. Folglich zeigt die Differenz zwischen der Silbenadresse einer ersten Silbe und der Silbenadresse einer zweiten Silbe, die unmittelbar der ersten Silbe folgt, die Länge der ersten Silbe an.
(2-2) Ursprungstonart
"Ursprungstonart" zeigt eine Referenztonhöhe im Format einer MIDI-Notenzahl an, wenn die Tonhöhe der Audiowellenform zur Wiedergabe verändert wurde. Folglich ändert das Soundmodul 12 die Tonhöhe der Audiowellenformdaten und führt eine Wiedergabe durch, die auf dem Intervall zwischen der durchs Note-On vom Soundmodul 12 angegebenen Notenzahl und der von der Ursprungstonart angezeigten Notenzahl beruht.
(2-3) Ursprungssilbentonart
"Ursprungssilbentonart" quantifiziert die Tonhöhe der Silben der Audiowellenform in Halbtonschritte, und drückt im Format einer MIDI- Notenzahl aus, welchem Ton auf der Tonleiter die Tonhöhe der Silben entspricht. Mit anderen Worten, die Ursprungssilbentonart zeigt die Tonhöhe der Audiowellenform für jede Silbe in Halbtonschritten an.
(2-4) Tonhöhenveränderung
"Tonhöhenveränderung" zeigt die Tonhöhenveränderung der Audiowellenform an. Es zeigt insbesondere die Differenz zwischen der Tonhöhe der Audiowellenform und der von der Ursprungssilbentonhöhe angezeigten Tonhöhe über eine bestimmte Zeit an (das heißt, die minimalen Tonhöhen, die weggeschnitten werden, wenn die Tonhöhe der Silben in Halbtonschritte quantisiert wird), und zwar zusammen mit der Addresse der Audiowellenform bei dieser Tonhöhe.
Die Tonhöhe der Wellenform kann sich innerhalb einer Silbe über mehr als einen Halbton verändern, und in diesem Falle zeigen auch die erzeugten Tonhöhenveränderungsdaten eine Tonhöhenveränderung von mehr als einem Halbton an.
(2-5) Tempo
"Tempo" zeigt das Abspieltempo der im Soundmodul 12 gespeicherten Audiowellenformdaten an. Wenn die Abspieldaten mit dem automatischen Abspiel-Anwendungsprogramm erzeugt werden, wird die Zeit je nach Tempo in Einheiten von sog. Ticks angefordert.
(2-6) Zeichenkette
Für jede Silbe wird eine "Zeichenkette" gespeichert, die den Inhalt der Silbe anzeigt.
Dabei kann die Zeichenkette alles sein, was den Inhalt der Silbe anzeigt. Wenn die Audiowellenform zum Beispiel die Singstimme "Hal-le-lu-ja" beinhaltet, dann kann der Text der Singstimme "Hal-le-lu-ja" als Zeichenkette genommen werden. Wenn sich die Audiowellenform auf den Abspielsound eines Schlagzeugs bezieht, dann können Daten wie z. B. "bass drum", "spare drum", "ride cymbal", usw., den die Namen der den Abspielsounds der Silben entsprechenden Instrumente zugeordnet sind, als Zeichenketten genommen werden. In diesem Fall ist es aber auch möglich, Worte, die den Abspielsound der Silben nachahmen, z. B. ("wumm", "zack", "dong") als Zeichenketten zu nehmen.
Im Einklang mit den vom Benutzer eingegebenen Anweisungen zur Erzeugung von Abspieldaten erzeugt das automatische Abspiel- Anwendungsprogramm den Silben zugeordnete Zeichenketten, basierend auf den Zeichenketten, die in den wellenformbezogenen Daten enthalten sind. Die Zeichenketten der entsprechenden Silben werden in die Mitte von Rechtecke geschrieben, die die Silben veranschaulichen, und so auf einem Abspieldaten-Editierbildschirm dargestellt (vgl. Fig. 12 bis 32), der auf einem Bildschirm des Monitors 12 dargestellt ist. Folglich kann der Benutzer während des Editierens der Abspieldaten unter Beobachtung des Editierbildschirms (vgl. Fig. 12 bis 32) anhand der dargestellten Zeichenkette überprüfen, mit welcher Silbe er sich gerade beschäftigt, was das Editieren vereinfacht.
Um in den nachfolgenden Erklärungen Verwirrung bezüglich der Bildschirmbereiche für die verschiedenen Datentypen auf dem Editierbildschirm zu vermeiden, werden nachfolgend diese Bildschirmbereiche anhand des Beispiels in den Fig. 12 und 13 erläutert.
In dieser Ausführungsform werden die Ursprungssilbentonart und die Zeichenketten für jede Silbe separat gesetzt, beginnend mit der Startsilbe. Folglich kann das automatische Abspiel-Anwendungsprogramm für jede beliebige Silbennummer, die ja einer bestimmten Ursprungssilbentonart und Zeichenkette zugeordnet ist, durch Abzählen bestimmen, der wievielten Ursprungssilbentonart und Zeichenkette vom Start aus gerechnet selbige entsprechen.
Um das Verständnis der vorliegenden Erfindung zu erleichtern, beziehen sich die folgenden Erklärungen auf Beispiele, in denen die Tonhöhe bzw. die Wiedergabegeschwindigkeit einer Audiowellenform modifiziert werden. Die vorliegende Erfindung ist jedoch nicht darauf beschränkt, und es ist ebenfalls möglich, mit derselben Technik beispielsweise die Lautstärke zu modifizieren.
Unter Bezugnahme auf Fig. 2, welche die Prozess-Routine zeigt, die durchgeführt wird, wenne ein MIDI-Signal in das Soundmodul eingegeben wird, folgt nun eine Erläuterung der Prozedur, die ausgeführt wird, wenn vom Computer 10 ein MIDI-Signal in das Soundmodul 12 eingegeben wird.
Wenn ein MIDI-Signal vom Computer 10 ins Soundmodul 12 gegeben wird, dann wird im Soundmodul 12 zunächst entschieden, welchem Datentyp das ins Soundmodul 12 eingegebene MIDI-Signal entspricht (Schritt S202), und führt je nach Datentyp des eingegebenen MIDI-Signals eine bestimmte Prozedur aus.
Im folgenden werden für jeden Datentyp die Prozeduren erläutert, die je nach Datentyp des eingegebenen MIDI-Signals durchgeführt werden.
(1) Datentyp: Anfrage nach wellenformbezogenen Daten (Schritt S202 → Schritt S204)
Falls in Schritt S202 entschieden wird, daß der Datentyp des in das Soundmodul 12 eingegebenen MIDI-Signals der einer Anfrage nach wellenformbezogenen Daten entspricht, dann werden die im Soundmodul 12 gespeicherten wellenformbezogenen Daten an den Computer 10 übermittelt (Schritt S204), und die Prozedur in diesem Flußdiagramm wird beendet.
(2) Datentyp: Silbennummer: (Schritt S202 → Schritt S206)
Falls in Schritt S202 entschieden wird, daß der Datentyp des in das Soundmodul 12 eingegebenen MIDI-Signals einer Silbennummer entspricht, die die Nummer der Silbe festlegt, ab der die Wiedergabe erfolgen soll, dann wird die festgelegte Silbennummer im Speicher des Soundmoduls 12 gespeichert (Schritt S206), und die Prozedur in diesem Flußdiagramm wird beendet.
(3) Datentyp: Spezifizierung der Wiedergabegeschwindigkeit (Schritt S202 → Schritt S208)
Falls in Schritt S202 entschieden wird, daß der Datentyp des in das Soundmodul 12 eingegebenen MIDI-Signals dem einer Spezifizierung der Wiedergabegeschwindigkeit entspricht, die die Geschwindigkeit festlegt, mit der die Wiedergabe erfolgen soll, dann wird die festgelegte Wiedergabegeschwindigkeit im Speicher des Soundmoduls 12 gespeichert, und die Geschwindigkeit, mit der die Audiowellenformdaten während der Wiedergabe ausgelesen werden, wird auf die Geschwindigkeit geändert, die von der Spezifizierung der Wiedergabegeschwindigkeit festgelegt wird (Schritt S208). Daraufhin wird die Prozedur in diesem Flußdiagramm beendet.
Der Kehrwert der Wiedergabegeschwindigkeit ist proportional zur Zeit, die für die eigentliche Wiedergabe geteilt durch die ursprüngliche Zeit der Audiowellenform benötigt wird. Daraus folgt, daß wenn die Wiedergabegeschwindigkeit "1" ist, dann werden die Audiowellenformdaten mit der ursprünglichen Zeit der Audiowellenform wiedergegeben, wenn die Wiedergabegeschwindigkeit "0.5" ist, dann werden die Audiowellenformdaten mit der doppelten ursprünglichen Zeit der Audiowellenform wiedergegeben, und wenn Wiedergabegeschwindigkeit "2" ist, dann werden die Audiowellenformdaten mit der halben ursprünglichen Zeit der Audiowellenform wiedergegeben. Somit zeigt die Wiedergabegeschwindigkeit den Grad der Komprimierung oder Expandierung auf der Zeitachse an, wenn die Audiowellenform mit dem Soundmodul 12 wiedergegeben wird.
(4) Datentyp: Note-On (Anweisung zum Beginn der Klangerzeugung), (Schritt S202 → Schritt S210 → Schritt S212 oder Schritt S202 → Schritt S210 → Schritt S214)
Falls in Schritt S202 entschieden wird, daß der Datentyp des in das Soundmodul 12 eingegebenen MIDI-Signals dem eines Note-Ons entspricht (also einer Anweisung zum Beginn der Klangerzeugung), das den Beginn der Wiedergabe einer Audiowellenform anweist, dann wird zunächst entschieden, ob momentan Audiowellenformdaten wiedergegeben werden (Schritt S210), und wenn in Schritt S210 entschieden wird, daß momentan keine Audiowellenformdaten wiedergegeben werden, dann beginnt die Wiedergabe der Audiowellenformdaten mit der gespeicherten Wiedergabegeschwindigkeit ab der Adresse, die von der gespeicherten Silbenadresse angezeigt wird, und mit der vom Note-On festgelegten Tonhöhe (Schritt S212). Daraufhin wird die Prozedur in diesem Flußdiagramm beendet.
Zur Wiedergabe der Audiowellenform wird die Tonhöhe der Audiowellenform je nach der Differenz zwischen der vom Note-On festgelegten Notennummer und der durch die Ursprungstonart angegebene Notennummer geändert. Wenn zum Beispiel die vom Note-On festgelegte Notennummer um einen Halbton höher ist als die von der Ursprungstonart angegebene Notennummer, dann wird auch die Wiedergabe einen Halbton höher sein als die Tonhöhe, die die Audiowellenform ursprunglich besaß.
Somit spiegelt die Wiedergabe auch die ursprünglichen Tonhöhenvariationen der Audiowellenform wieder, da die Tonhöhenmodifikationen relative durchgeführt werden.
Die Technik zur oben beschriebenen Modifikation der Wiedergabegeschwindigkeit und der Tonhöhe um die Wellenform wiederzugeben ist dieselbe wie die in der Veröffentlichung der japanischen Patentanmeldung (Tokkai) H 10-260685 beschriebene, auf welche hier statt einer detaillierten Diskussion Bezug genommen wird.
Falls andererseits in Schritt S210 entschieden wird, daß momentan keine Audiowellenformdaten wiedergegeben werden, dann wird die Tonhöhe der momentan wiedergegebenen Audiowellenform in Übereinstimmung mit der Differenz zwischen der vom Note-On festgelegten Notennummer und der von der Ursprungstonart angezeigten Notennummer geändert, und die Wiedergabe wird fortgesetzt (Schritt S214). Daraufhin wird die Prozedur in diesem Flußdiagramm beendet.
(5) Datentyp: Note-Off (Anweisung zum Beenden der Klangerzeugung) (Schritt S202 → Schritt S216 → Schritt S218 or Schritt S202 → Schritt S216)
Falls in Schritt S202 entschieden wird, daß der Datentyp des in das Soundmodul 12 eingegebenen MIDI-Signals dem eines Note-Offs entspricht (also einer Anweisung zum Beenden der Klangerzeugung), das das Ende der Wiedergabe einer Audiowellenform anweist, dann wird zunächst entschieden, ob die Notennummer für dieses Note-Off dieselbe ist wie die Notennummer für das letzte empfangene Note-On (Schritt S216). Falls in Schritt S216 entschieden wird, daß die Notennummer für dieses Note-Off dieselbe ist wie die Notennummer für das letzte empfangene Note-On, dann wird die Wiedergabe der Audiowellenform gestoppt (Schritt S218), und die Prozedur in diesem Flußdiagramm wird beendet.
Falls andererseits in Schritt S216 entschieden wird, daß die Notennummer für dieses Note-Off nicht dieselbe ist wie die Notennummer für das letzte empfangene Note-On, dann wird die Prozedur in diesem Flußdiagramm umgehend beendet.
(6) Datentyp: Keiner der obigen (1) bis (5) (Schritt S202 → Schritt S220)
Falls in Schritt S202 entschieden wird, daß der Datentyp des in das Soundmodul 12 eingegebenen MIDI-Signals keinem der oben genannten Fälle (1) bis (5) entspricht, dann wird eine andere Prozedur entsprechend dem Datentyp des empfangenen MIDI-Signals durchgeführt (Schritt S220), und die Prozedur in diesem Flußdiagramm wird beendet.
"Eine andere Prozedur entsprechend dem Datentyp des empfangenen MIDI- Signals" bedeutet, daß, falls der Datentyp des empfangenen MIDI-Signals z. B. ein Pitch-Bend anzeigt, dann wird die Tonhöhe der Audiowellenform um die vom Pitch-Bend angezeigte Tonhöhenweite verändert, und die Wiedergabe wird durchgeführt, wodurch sehr kleine Tonhöhenveränderungen kleiner als ein Halbton festgelegt werden können, so daß auch mit Audiowellenformen ohne Variationen in der ursprünglichen Tonhöhe ein Portamento oder Vibrato durchgeführt werden kann, und andere Tonhöhenvariationen als die ursprünglichen Tonhöhenvariationen auf Audiowellenformen mit Variationen in der ursprüngliche Tonhöhe angewendet werden können.
Der festgelegte Pitch-Bend-Wert wird gespeichert, und wenn die Tonhöne durch ein hiernach empfangenes Note-On modifiziert wird, dann wird die Tonhöhe, zusätzlich zur Modifikation der Tonhöhe durch die Notenzahl des Note-Ons, auch durch den gespeicherten Pitch-Bend-Wert modifiziert.
Wie aus der Prozedur klar wird, die durchgeführt wird wenn, wie oben mit Bezug auf Fig. 2 erläutert, ein MIDI-Signal in das Soundmodul 12 eingegeben wird, und dem Soundmodul 12 ein Note-On zugeführt wird, nachdem die Wiedergabegeschwindigkeit und die Silbennummer, ab der die Wiedergabe beginnen soll, festgelegt worden sind, können die Audiowellenformdaten mit der festgelegten gewünschten Wiedergabegeschwindigkeit wiedergegeben werden, und zwar ab der gewünschten Position, die von der Silbennummer festgelegt wird. Oder, wenn ein Note-On zugeführt wird während gerade Audiowellenformdaten wiedergegeben werden, dann kann die Tonhöhe verändert werden, während die Wiedergabe fortgesetzt wird.
Da die durch das Empfangen eines Note-Ons begonnene Wiedergabe der Audiowellenform fortgesetzt wird bis ein Note-Off empfangen wird, geht die Wiedergabe zur nächsten Silbe über, falls kein Note-Off empfangen wurde, wenn die Wiedergabe bis zum Ende einer Silbe durchgeführt worden ist.
Falls beispielsweise ein Note-On für eine erste Notenzahl, ein Note-On für eine zweite Notenzahl, ein Note-Off für die erste Notenzahl, und ein Note- Off für die zweite Notenzahl dem Soundmodul 12 in dieser Reihenfolge zugeführt werden (also Note-On für erste Notenzahl → Note-On für zweite Notenzahl → Note-Off für erste Notenzahl → Note-Off für zweite Notenzahl), dann beginnt die Wiedergabe der Audiowellenformdaten mit einer Tonhöhe, die der ersten Notenzahl entspricht, während der Wiedergabe verändert sich die Tonhöhe auf eine Tonhöhe, die der zweiten Notenzahl entspricht, das Note-Off für die erste Notenzahl wird ignoriert (d. h., die Wiedergabe der Audiowellenformdaten wird nicht gestoppt), und die Wiedergabe der Audiowellenformdaten wird erst gestoppt, nachdem das Note-off für die zweite Notenzahl empfangen wurde.
Ferner kann die Wiedergabegeschwindigkeit der Audiowellenformdaten während der Wiedergabe verändert werden, indem während der Wiedergabe der Audiowellenformdaten eine neue Wiedergabegeschwindigkeit festgelegt wird, und die Tonhöhe der Audiowellenformdaten kann während der Wiedergabe verändert werden, indem während der Wiedergabe der Audiowellenformdaten eine neue Tonhöhe festgelegt wird.
Nachfolgend wird der Betrieb des automatischen Abspiel- Anwendungsprogramms auf dem Computer 10 erläutert.
Zunächst werden unter Bezugnahme auf Fig. 3 die vom automatischen Abspiel-Anwendungsprogramm verwendeten Abspieldaten-Ketten erläutert.
In dieser Ausführungsform sind die Abspieldaten-Ketten im RAM-Speicher des Computers 10 gespeichert. Die Abspieldaten in den Abspieldaten-Ketten können dabei in Silbendaten und Steuerdaten eingeteilt werden.
Fig. 3(a) zeigt schematisch das Format der Abspieldaten. Fig. 3(b) zeigt schematisch das Format der Silbendaten, die eine Art von Abspieldaten darstellen. Fig. 3(c) zeigt schematisch das Format der Steuerdaten, die eine andere Art von Abspieldaten darstellen.
Wie aus den Fig. 3(a), (b) und (c) ersichtlich ist, enthält jede Art von Abspieldaten, also sowohl die Silbendaten als auch die Steuerdaten, "Clock", "DfltClock" und "Status" als Parameter, sowie "sonstige Parameter", die vom Datentyp abhängen. Genauer gesagt enthalten diese "sonstigen Parameter" neben "Syllable", "SylblOrigKey", "NoteOffset", "Length", "DfltLength" und "GateRate" im Falle von Silbendaten, bzw. die Parameter "Value", "DfltValue" und "Type" im Falle von Steuerdaten.
Die Abspieldaten werden chronologisch in der Reihenfolge der Werte für "DfltClock" gespeichert.
Nachfolgend werden die Parameter "Clock", "DfltClock" und "Status" etwas genauer erläutert.
(1) Clock
"Clock" ist ein Parameter, der die Zeit anzeigt, zu der die Abspieldaten wiedergegeben werden (also die Zeit, die seit dem Beginn des Wiedergabe der Abspieldaten-Kette abgelaufen ist).
(2) DfltClock
"DfltClock" ist ein Parameter, der die die Zeit anzeigt, zu der die Abspieldaten unter den Bedingungen vor dem Editieren wiedergegeben werden. Hierbei bedeutet "vor dem Editieren", daß alle Wiedergabegeschwindigkeiten der Audiowellenform "1" sind, und alle Pitch- Bends "0" sind. In der vorliegenden Spezifikation werden Situationen, in denen alle Wiedergabegeschwindigkeiten der Audiowellenformdaten "1" und alle Pitch-Bends "0" sind wo angebracht als "vor dem Editieren" (oder "noch nicht editiert") bezeichnet.
(3) Status
"Status" ist ein Parameter, der anzeigt, ob sich bei den diese Variable "Status" enthaltenden Abspieldaten um Silbendaten oder um Steuerdaten handelt.
Nachfolgend werden die Parameter "Syllable", "SylblOrigKey", "NoteOffset", "Length", "DfltLength" und "GateRate" der Silbendaten erläutert. Diese Silbendaten geben Anweisungen über die Wiedergabe von bestimmten Silben an.
(1) Syllable
"Syllable" ist ein Parameter, der die Silbe, die wiedergegeben wird, mit ihrer Silbennummer anzeigt.
(2) SylblOrigKey
"SylblOrigKey" ist ein Parameter, der die Ursprungssilbentonart der wiedergegebenen Silbe anzeigt. Das heißt, daß "SylblOrigKey" die Tonhöhe der Audiowellenform der entsprechenden Silbe in Halbtonschritten anzeigt. "SylblOrigKey" wird im Format einer MIDI-Notenzahl angegeben.
(3) NoteOffset
"NoteOffset" ist ein Parameter, der den Tonhöhenunterschied zwischen der Notenzahl von gesendeten Note-Ons und Note-Offs und der Ursprungstonart anzeigt, und zeigt an, wieviel die Tonhöhe der Audiowellenform der entsprechenden Silbe geändert wird um wiedergegeben zu werden. Auch "NoteOffset" wird im Format einer MIDI- Notenzahl angegeben.
(4) Length
"Length" ist ein Parameter, der die Wiedergabehaltedauer einer wiederzugebenen Silbe anzeigt. Das heißt, daß "Length" angibt, über welche Länge eine Silbe wiedergegeben wird.
(5) DfltLength
"DfltLength" ist ein Parameter, der die noch nicht editierte Wiedergabehaltedauer einer wiederzugebenden Silbe anzeigt. Das heißt, daß "DfltLength" die ursprüngliche Länge der entsprechenden Silbe anzeigt.
(6) GateRate
"GateRate" ist ein Parameter, der das Verhältnis der Netto-Wiedergabezeit zu "Length" anzeigt. Somit kann die Netto-Wiedergabezeit mit der Formel Netto-Wiedergabezeit = Length × GateRate ausgedrückt werden.
Im folgenden werden die Parameter "Value", "DfltValue" und "Type" der Steuerdaten etwas detaillierter erläutert. Als Beispiel für die verschiedenen Arten von Steuerdaten können die Wiedergabegeschwindigkeitsdaten genannt werden, die die Wiedergabegeschwindigkeit der Audiowellenform festlegen, oder auch die Pitch-Bend-Daten, die den Pitch-Bend festlegen.
(1) Value
"Value" ist ein Parameter, der den Steuerwert anzeigt. Das bedeutet, daß "Value" die Modifikation für die Audiowellenform beispielsweise in Bezug auf Tonhöhe oder Wiedergabegeschwindigkeit anzeigt. "Value" kann mit einem Mausklick auf das "control"-Feld 100 am unteren Ende der linken Spalte des Editierbildschirms in Fig. 12 ausgewählt werden.
(2) DfltValue
"DfltValue" ist ein Parameter, der die Werte anzeigt, den die Audiowellenform ursprünglich hatte. "DfltValue" kann mit einem Mausklick auf das "original"-Feld 100 am unteren Ende der linken Spalte des Editierbildschirms in Fig. 12 ausgewählt werden.
(3) Type
"Type" ist ein Parameter, der den Typ der Steuerdaten anzeigt, daß heißt, ob es sich bei den Steuerdaten um Wiedergabegeschwindigkeitsdaten oder um Pitch-Bend-Daten handelt.
Mit einem Mausklick auf den Schaltfläche 106 des "Type"-Feldes 104 in der Mitte der linken Spalte des Editierbildschirms in Fig. 12 kann eine Dropdown-Liste 108 geöffnet werden, und ein weiterer Mausklick auf das "Time"-Feld 108a invertiert die Anzeige des "Time"-Feldes 108a und zeigt "Time" im "Type"-Feld 104 an, wodurch die Wiedergabegeschwindigkeits­ daten ausgewählt werden (vgl. Fig. 23 bis 32).
Ferner kann mit einem Mausklick auf den Schaltfläche 106 des "Type"- Feldes 104 in der Mitte der linken Spalte des Editierbildschirms in Fig. 12 die Dropdown-Liste 108 geöffnet werden, und ein weiterer Mausklick auf das "Pitch"-Feld 108b invertiert die Anzeige des "Pitch"-Feldes 108b und zeigt "Pitch" im "Type"-Feld 104 an, wodurch die Pitch-Bend-Daten ausgewählt werden (vgl. Fig. 12 bis 19). Fig. 12 zeigt die Bildschirmanzeige wenn die Dropdown-Liste 108 mit einem Mausklick auf die Schaltfläche 106 des "Type"-Feldes 104 geöffnet worden ist, und die Anzeige des "Pitch"-Feldes 108b mit einem Mausklick invertiert worden ist.
Ferner kann mit einem Mausklick auf den Schaltfläche 106 des "Type"- Feldes 104 in der Mitte der linken Spalte des Editierbildschirms in Fig. 12 die Dropdown-Liste 108 geöffnet werden, und ein weiterer Mausklick auf das "Transpose"-Feld 108c invertiert die Anzeige des "Transpose"-Feldes 108c und zeigt "Transpose" im "Type"-Feld 104 an, wodurch die Transponierdaten ausgewählt werden (vgl. Fig. 20 bis 22). Dabei ist zu beachten, daß die Werte von "NoteOffset" in den Silbendaten als Transponierdaten angezeigt werden, aber das heißt nicht unbedingt, daß es tatsächlich einen Steuerdatentyp namens "Transponierdaten" gibt. In den folgenden Erklärungen bezüglich des Editierens in dieser Spezifikation werden jedoch der Einfachheit halber auch Transponierdaten als ein Typ von Steuerdaten betrachtet.
In dieser Ausführungsform wird die Zeit in "Ticks" gezählt. Die Länge eines Ticks ist 1/480 einer Viertelnote, und die physikalische Länge eines Ticks wird dabei vom Tempo bestimmt. Die vorgenannten Parameter "Clock", "DfltClock", "Length" und "DfltLength" zeigen alle die Zeit in Ticks an.
Wenn in dieser Ausführungsform der Benutzer die Anweisung eingibt, Abspieldaten herzustellen, und im Zuge dessen ein wellenformbezogene Daten anfragendes MIDI-Signal vom Computer 10 in das Soundmodul 12 gegeben wird, dann werden vom Soundmodul 12 wellenformbezogene Daten ausgegeben und an den Computer 10 übermittelt (vgl. Schritt S202 und Schritt S204 in Fig. 2). Die Erzeugung der Abspieldaten wird auf dem Computer 10 in Übereinstimmung mit den wellenformbezogenen Daten durchgeführt.
Auf Basis der wellenformbezogenen Daten der einzelnen Silben werden vom Computer 10 Silbendaten erzeugt. Das bedeutet, daß "Clock" und "DlftClock" auf die Werte der Silbenaddressen gesetzt werden, welche zuvor in Tickeinheiten umgewandelt worden sind, und "Syllable" auf die den Silben entsprechende Silbennummer gesetzt wird.
Ferner wird "SylblOrigKey" auf den Wert der Ursprungssilbentonart gesetzt, und "Length" und "DfltLength" werden auf die Differenz zwischen der Silbenaddresse und der Silbenaddresse der folgenden Silbe gesetzt.
Weiterhin wird "NoteOffset" auf den Anfangswert "0", und "GateRate" auf den Anfangswert "1" gesetzt.
Die Steuerdaten werden an der Startposition der Abspieldaten platziert, an Positionen, die direkt vor den Startpositionen der einzelnen Silben liegen, und an Positionen in 20-Tick-Intervallen (was einer 1/96-Note entspricht). In dieser Ausführungsform wird angenommen, daß die ersten Abspieldaten jedenfalls Wiedergabegeschwindigkeitsdaten, also Steuerdaten sind.
Die Parameter "Clock" und "DfltClock" der einzelnen Steuerdatensätze entsprechen der zeitlichen Position der der entsprechende Steuerdatensatz zugeordnet ist.
Der Parameter "Value" wird für alle Arten von Steuerdaten außer den Wiedergabegeschwindigkeitsdaten auf den Anfangswert "0" gesetzt, während für Wiedergabegeschwindigkeitsdaten "Value" auf den Anfangswert "1" gesetzt wird.
Der Parameter "DfltValue" der Pitch-Bend-Daten wird auf die Tonhöhenänderung bei der zeitlichen Position, die dem Parameter "DfltClock" der wellenformbezogenen Daten entspricht gesetzt.
Für Wiedergabegeschwindigkeitsdaten wird "DfltValue" auf "1" gesetzt.
Die Steuerdaten sind in Zeitabständen angeordnet, die kürzer sind als die Wiedergabehaltedauer der Silben, so daß es möglich ist, die Wiedergabegeschwindigkeit oder die Tonhöhe während einer Silbe mittels Editieren des Parameters "Value" der Steuerdaten zu ändern.
Unter Bezugnahme auf das Flußdiagramm in Fig. 4, welches die Prozess- Routine zur Wiedergabe der Abspieldaten zeigt, soll im Folgenden die Prozedur erläutert werden, mit der der Computer 10 die Abspieldaten als automatisches Abspielgerät (sog. Sequenzer), das als automatische Abspielvorrichtung dient, wiedergibt.
Diese Prozedur zur Wiedergabe der Abspieldaten benutzt den Parameter "NoteFLG", der anzeigt, ob für jedes Note-On, das an das Soundmodul 12 gesendet worden ist, auch ein entsprechendes Note-Off gesendet wurde. Wenn es ein Note-On gibt, für das noch kein Note-Off an das Soundmodul 12 gesendet worden ist, dann wird "NoteFLG" auf "NoteFLG = 1" gesetzt, und wenn bereits für jedes Note-On ein Note-Off an das Soundmodul 12 gesendet wurde, dann wird "NoteFLG" auf "NoteFLG = 0" gesetzt.
Wenn der Benutzer den Computer 10 angewiesen hat mit der Wiedergabe einer Abspieldaten-Kette zu beginnen, dann wird die Prozedur zur Wiedergabe der Abspieldaten in Abständen von einem Tick wiederholt. Wenn der Computer angewiesen wird, die Wiedergabe einer Abspieldaten- Kette zu beginnen, wird die laufende Zeit gelöscht und auf "0" gesetzt.
Wenn die Zeit eines Ticks abgelaufen ist, und die Prozedur zur Wiedergabe der Abspieldaten beginnt, wird zunächst die laufende Zeit ermittelt (Schritt S402), und dann wird entschieden, ob der Parameter "Clock" der als nächstes wiederzugebenden Abspieldaten mit der laufenden Zeit übereinstimmt, also ob es Zeit ist die nächsten Abspieldaten wiederzugeben (Schritt S404).
Wenn S404 ermittelt, daß der Parameter "Clock" der als nächstes wiederzugebenden Abspieldaten mit der laufenden Zeit übereinstimmt, daß es also Zeit ist, die nächsten Abspieldaten wiederzugeben, dann werden die nächsten Abspieldaten wiedergegeben, und die Prozedur geht weiter nach Schritt S406.
In Schritt S406 wird ermittelt, ob es sich bei den wiedergegebenen Abspieldaten um Silbendaten oder Steuerdaten handelt.
Falls Schritt S406 ermittelt, daß es sich bei den wiedergegebenen Abspieldaten um Silbendaten handelt, dann wird ermittelt, ob der Wert von "NoteFLG" gleich "0" oder gleich "1" ist (Schritt S408).
Falls Schritt S408 ermittelt, daß der Wert von "NoteFLG" gleich "0" ist (also "NoteFLG = 0"), dann wird "NoteFLG" auf "1" gesetzt (also "NoteFLG = 1") (Schritt S410), eine Spezifizierung der Silbe (Silbennummer), die die Silbendaten anzeigt, die als wiedergegebene Abspieldaten dienen, wird an das Soundmodul 12 gesendet (Schritt S412), wonach ein Note-On, das den Silbendaten entspricht, die als wiedergegebene Abspieldaten dienen, an das Soundmodul 12 gesendet wird (Schritt S414). Hierbei wird die Summe der Ursprungstonart aus den wellenformbezogenen Daten und des "NoteOffset" aus den als wiedergegebene Abspieldaten dienenden Silbendaten als Notennummer des ans Soundmodul 12 gesendete Note-Ons angenommen.
Nach Beenden von Schritt S414 geht die Prozedur weiter nach Schritt S416, und der Wert von "Clock + Length × GateRate" der als wiedergegebene Abspieldaten dienenden Silbendaten wird in einer Spalte der Note-Off- Tabelle mit derselben Notenzahl wie das gesendete Note-On gespeichert (Schritt S416), und dann werden die nächsten Abspieldaten ausgelesen (Schritt S418).
Danach springt die Prozedur zurück auf Schritt S404, in dem ermittelt wird, ob es an der Zeit ist, die nächsten Abspieldaten wiederzugeben, und die obige Prozedur wird wiederholt.
Dabei speichert die "Note-Off-Tabelle" für jede Notennummer die Zeit, wann ein Note-Off gesendet werden muß.
Falls andererseits in Schritt S408 ermittelt wird, daß der Wert von "NoteFLG" gleich "1" ist (d. h., "NoteFLG = 1"), dann wird als nächstes entschieden, ob der Parameter "NoteOffset" der als wiedergegebene Abspieldaten dienenden Silbendaten gleich dem "NoteOffset" der direkt vorangehenden Silbendaten (Schritt S420) ist.
Wenn in Schritt S420 ermittelt wird, daß der Parameter "NoteOffset" der als wiedergegebene Abspieldaten dienenden Silbendaten nicht gleich dem "NoteOffset" der direkt vorangehenden Silbendaten ist, dann wird, wie im oben beschriebenen Schritt S414, ein abhängig von den als wiedergegebene Abspieldaten dienenden Silbendaten ein Note-On an das Soundmodul 12 gesendet (Schritt S422), und, wie im oben beschriebenen Schritt S416, die Zeit zu der ein Note-Off abgeschickt werden soll wird in der Note-Off- Tabelle gespeichert (Schritt S424). In diesem Fall wird jedoch keine Silbenspezifikation geschickt.
Danach wird ein Note-Off an das Soundmodul 12 gesendet, das den Silbendaten entspricht, die den als wiedergegebene Abspieldaten dienenden Silbendaten direkt vorangehen (Schritt S426), die Spalte in der Note-Off- Tabelle, die derselben Notennummer wie die des abgesendeten Note-Offs entspricht wird gelöscht (Schritt S426), und dann werden die nächsten Abspieldaten ausgelesen (Schritt S418).
Dann springt die Prozedur zurück nach Schritt S404, wo ermittelt wird, ob es an der Zeit für die nächsten ausgelesenen Abspieldaten ist, wonach die obige Prozedur wiederholt wird.
Wenn in Schritt S420 ermittelt wird, daß der Parameter "NoteOffset" der als wiedergegebene Abspieldaten dienenden Silbendaten gleich dem "NoteOffset" der direkt vorangehenden Silbendaten ist, das heißt, wenn "NoteFLG = 1" und der "NoteOffset" der wiedergegebenen Silbendaten gleich dem "NoteOffset" der direkt vorangehenden Silbendaten ist 88206 00070 552 001000280000000200012000285918809500040 0002010056980 00004 88087, dann wird an das Soundmodul 12 kein Note-On für die als wiedergegebene Abspieldaten dienenden Silbendaten gesendet, die Zeit zum Senden eines Note-Offs wird in der Note-Off-Tabellenspalte der Notenzahl (gleich der Summe aus Ursprungstonart und "NoteOffset" der Silbendaten), die den als wiedergegebene Abspieldaten dienenden Silbendaten entspricht, wird gespeichert, die Note-Off-Tabellenspalte der Notenzahl (gleich der Summe aus Ursprungstonart und "NoteOffset" der Silbendaten), die dem Note-Off der direkt vorangehenden als wiedergegebene Abspieldaten dienenden Silbendaten entspricht, wird gelöscht (Schritt S420, wobei die Details dieser Prozedur hier nicht dargestellt sind), die Prozedur geht weiter nach Schritt S418, und die nächsten Abspieldaten werden ausgelesen (Schritt S418).
Dann springt die Prozedur zurück auf Schritt S404, wo ermittelt wird, ob es Zeit ist, die nächsten Abspieldaten, die ausgelesen worden sind, wiederzugeben, und die obige Prozedur wird wiederholt.
Falls in Schritt S406 ermittelt wird, daß es sich bei den wiedergegebenen Abspieldaten um Steuerdaten handelt, dann wird ein MIDI-Signal an das Soundmodul 12 gesendet, und zwar je nach der Art der Steuerdaten, wobei der Parameter "Value" der als wiedergegebene Abspieldaten dienenden Steuerdaten als Steuerwert genommen wird (Schritt S430). Dann springt die Prozedur auf Schritt S418, und die nächsten Abspieldaten werden ausgelesen (Schritt S418). Auf diese Weise werden die Spezifikation der Wiedergabegeschwindigkeit, der Pitch-Bend usw. ausgesendet.
Dann springt die Prozedur zurück auf Schritt S404, wo ermittelt wird, ob es Zeit ist, die nächsten Abspieldaten, die ausgelesen worden sind, wiederzugeben, und die obige Prozedur wird wiederholt.
Falls in Schritt S404 ermittelt wird, daß es noch nicht Zeit ist, die nächsten Abspieldaten wiederzugeben, dann wird ermittelt, ob es in der Note-Off Tabelle eine Notenzahl gibt, deren Zeit mit der laufenden Zeit übereinstimmt, das heißt, ob es Zeit ist, die Tonerzeugung zu stoppen (Schritt S432).
Falls in Schritt S432 entschieden wird, daß es in der Note-Off-Tabelle eine Notenzahl gibt, deren Zeit mit der laufenden Zeit übereinstimmt, das heißt, daß es Zeit ist, die Tonerzeugung zu stoppen, dann wird "NoteFLG" auf "0" gesetzt, d. h. "NoteFLG = 0" (Schritt S434), die Note-Off-Daten dieser Notennummer werden an das Soundmodul 12 gesendet (Schritt S436), die Note-Off-Tabellenspalte der Notenzahl, die dieser Notennummer entspricht, wird gelöscht (Schritt S438), und die Prozedur zur Wiedergabe von Abspieldaten wird beendet.
Falls in Schritt S432 entschieden wird, daß es in der Note-Off-Tabelle keine Notenzahl gibt, deren Zeit mit der laufenden Zeit übereinstimmt, das heißt, daß es noch nicht Zeit ist, die Tonerzeugung zu stoppen, dann wird die Prozedur zur Wiedergabe von Abspieldaten umgehend beendet.
Unter Bezugnahme auf die Editierbildschirme der Fig. 12 bis 32, die auf dem Monitor dargestellt werden, folgt nun eine Erläuterung der Prozedur zum Editieren der Abspieldaten.
In der vorliegenden Ausführungsform werden die wiedergegebenen Abspieldaten auf dem Bildschirm des Monitors dargestellt, und der Benutzer kann die auf dem Bildschirm dargestellten Abspieldaten mit Hilfe einer Maus oder einer Tastatur editieren. In dieser Ausführungsform wird der Bildschirm des Monitors, der die Abspieldaten darstellt, "Editierbildschirm" genannt.
Ein Silbenanzeigebereich 120 am oberen Ende der rechten Seite des Editierbildschirms und ein Datenanzeigebereich 122 unten auf der rechten Seite des Editierbildschirms stellen die Zeit auf der Abszisse dar, und die Werte der Abspieldaten auf der Ordinate dar.
Je nach Silbendaten, zeigt der Silbenanzeigebereich 120 die tatsächlich wiedergegebene Tonhöhe der Silben. Im Silbenanzeigebereich 120 werden die Silben as Rechtecke dargestellt, wobei die Position der linken Kante der Rechtecke auf der Abszisse von "Clock" bestimmt wird, und die Länge der Rechteck auf der Abszisse von "Length" bestimmt wird. Die Rechtecke sind farbig markiert, beginnend mit der linken Ecke, über eine Länge, die dem Produkt von "Length" und "GateRate" (Nettowiedergabezeit = "Length" × "GateRate") entspricht. Dabei ist zu beachten, daß die Zeichnungen den Fall darstellen, daß die gesamten Rechtecke farblich markiert sind, also "GateRate = 1". Die Position der Rechtecke auf der Ordinate wird von der Summe von "SylblOrigKey" und "NoteOffset" bestimmt. Ferner wird die Breite der Rechtecke in Richtung der Ordinate auf eine bestimmte Breite festgelegt.
Fig. 12 zeigt vier Rechtecke 124a, 124b, 124c und 124d, die vier Silben entsprechen.
Der Paramater "NoteOffset" vor dem Editieren wird auf "0" gesetzt, so daß der Silbenanzeigebereich 120 die Position der Rechtecke auf der Ordinate letztendlich in Übereinstimmung mit "SylblOrigKey", also der urprünglichen Tonhöhe der Silben darstellt.
Im Datenanzeigebereich 122 erfolgen die Anzeige der Steuerdaten sowie die Anzeige zum Editieren der Silbendaten.
Wie bereits mit Hinblick auf Fig. 12 erläutert wurde, öffnet ein Mausklick auf die Schaltfläche 106 des "Type"-Feldes 104 in der Mitte der linken Seite des Editierbildschirms die Dropdown-Liste 108, wodurch ein "Pitch"-Feld 108b angezeigt wird, das ausgewählt werden kann, um die Pitch-Bend- Daten anzuzeigen bzw. zu editieren, ein "Time"-Feld 108a, das ausgewählt werden kann, um die Wiedergabegeschwindigkeitsdaten anzuzeigen bzw. zu editieren, und ein "Transpose"-Feld 108c, das ausgewählt werden kann, um die Transponierdaten anzuzeigen bzw. zu editieren. Wenn der Benutzer mit der Maus auf das "Pitch"-Feld 108b klickt, werden die Pitch-Bend-Daten als anzuzeigende bzw. zu editierende Steuerdaten ausgewählt, wenn der Benutzer mit der Maus auf das "Time"-Feld 108a klickt, werden die Wiedergabegeschwindigkeitsdaten als anzuzeigende bzw. zu editierende Steuerdaten ausgewählt, Wenn der Benutzer mit der Maus auf das "Transpose"-Feld 108c klickt, werden die Transponierdaten als anzuzeigende bzw. zu editierende Steuerdaten ausgewählt.
Wenn der Benutzer auf das "constant"-Feld 130, das "linear"-Feld 132 oder das "cosine"-Feld 134 in der Mitte der linken Seite des Editierbildschirms in Fig. 13 klickt, werden bestimmte Änderungsformen ausgewählt, die zum editieren der Steuerdaten benutzt werden.
Hierbei deutet "bestimmte Änderungsformen" auf die Eigenschaften der Funktion mit der die Werte der Steuerdaten im vom Benutzer markierten Bereich erhöht bzw. vermindert werden. In dieser Ausführungsform deutet "bestimmte Änderungsformen" auf die Form einer horizontalen Linie für gleichmäßige Veränderung, die Form einer Dreieckskurve für abschnittsweise lineare Veränderung, und die Form einer Kosinuskurve für kosinusförmige Veränderung.
Wenn der Benutzer auf das "constant"-Feld 130 klickt, dann wird die Änderungsform "constant", die als horizontale Linie parallel zur Abszisse der Editierbildschirms ausgebildet ist, für gleichmäßige Veränderung ausgewählt, was bedeutet, daß diese Änderungsform zum Editieren der Steuerdaten verwendet wird.
Wenn der Benutzer auf das "linear"-Feld 132 klickt, dann wird die Änderungsform "linear", die als Dreieckskurve abschnittsweise linear in Richtung der Ordinate ausgebildet ist, was bedeutet, daß diese Änderungsform zum Editieren der Steuerdaten verwendet wird.
Wenn der Benutzer auf das "cosine"-Feld 134 klickt, dann wird die Änderungsform "cosine", die als Kosinuskurve gebogen in Richtung der Ordinate ausgebildet ist, was bedeutet, daß diese Änderungsform zum Editieren der Steuerdaten verwendet wird.
Wenn der Benutzer auf das "control"-Feld 100 unten auf der linken Seite des Editierbildschirms in Fig. 12 klickt, dann werden die Werte der Steuerdaten ausgewählt und im Datenanzeigebereich 122 unten auf der rechten Seite des Editierbildschirms dargestellt. Insbesondere werden die Werte des Parameters "Value" der Pitch-Bend-Daten oder die Wiedergabegeschwindigkeitsdaten dargestellt, falls die Pitch-Bend-Daten bzw. die Wiedergabegeschwindigkeitsdaten als darzustellende und zu editierende Daten ausgewählt wurden, und die Werte des Parameters "NoteOffset" werden dargestellt, falls die Transponierdaten als darzustellende und zu editierende Daten ausgewählt wurden.
Wenn der Benutzer auf das "original"-Feld 102 unten auf der linken Seite des Editierbildschirms in Fig. 12 klickt, dann werden die Werte des urprünglichen Verlaufs der Wellenform ausgewählt und im Datenanzeigebereich 122 unten auf der rechten Seite des Editierbildschirms dargestellt. Insbesondere werden die Werte des Parameters "DfltValue" der Pitch-Bend-Daten bzw. der Wiedergabegeschwindigkeitsdaten dargestellt, falls die Pitch-Bend-Daten bzw. die Wiedergabegeschwindigkeitsdaten als darzustellende und zu editierende Daten ausgewählt wurden, und die Werte des Parameters "SylblOrigKey" der Silbendaten werden dargestellt, falls die Transponierdaten als darzustellende und zu editierende Daten ausgewählt wurden.
Wenn der Benutzer auf das "result"-Feld 110 unten auf der linken Seite des Editierbildschirms in Fig. 12 klickt, dann wird das modifizierte Resultat des Editierens der Audiowellenform ausgewählt und im Datenanzeigebereich 122 dargestellt, das heißt also die Werte des Resultats wenn die Wiedergabeform der Audiowellenform modifiziert wurde. In diesem Falle werden die Werte der Parameter "Value" und "DfltValue" der Pitch-Bend- Daten bzw. der Wiedergabegeschwindigkeitsdaten summiert und als Summe dargestellt, falls die Pitch-Bend-Daten bzw. die Wiedergabegeschwindigkeitsdaten als darzustellende und zu editierende Daten ausgewählt wurden, und die Werte der Parameter "NoteOffset" und "SylblOrigKey" der Silbendaten werden summiert und als Summe dargestellt, falls die Transponierdaten als darzustellende und zu editierende Daten ausgewählt wurden. Mit anderen Worten, falls die Transponierdaten als darzustellende und zu editierende Daten ausgewählt worden sind, werden dieselben Informationen wie im Silbenanzeigebereich 120 als Resultat des Editierens dargestellt.
Wenn auf zwei oder mehr der Felder "control"-Feld 100, "original"-Feld 102 und "result"-Feld 110 geklickt wird, dann werden die Werte entsprechend den geklickten Feldern simultan dargestellt.
Um das Verständnis der folgenden Ausführungen zu erleichtern, werden die Anzeigen der in den Fig. 12 bis 32 Editierbildschirms im Folgenden der Reihe nach erläutert.
Fig. 12 zeigt einen Editierbildschirm, auf dem die Dropdown-Liste 108 zur Auswahl der zu editierenden Daten geöffnet ist. Die Anzeige des Silbenanzeigebereiches 120 und des Datenanzeigebereiches 122 ist dieselbe wie in Fig. 13.
Fig. 13 zeigt einen Editierbildschirm, auf dem die Werte der Steuerdaten (control) und die Werte des Resultats (result) des Editierens der Pitch-Bend- Daten im Datenanzeigebereich 122 dargestellt sind. Dabei ist eine horizontale Line (constant) als Änderungsform für die Steuerdaten ausgewählt worden.
Fig. 14 zeigt den Editierbildschirm, wenn im Editierbildschirm von Fig. 13 mit der Maus wie untenstehend erläutert ein Editierbereich markiert wurde, wobei der Editierbereich invers dargestellt ist.
Fig. 15 zeigt einen Editierbildschirm, wobei das Resultat (result) des Editierens auf dem Editierbildschirms in Fig. 14 nicht dargestellt ist, das heißt, nur die Werte der Steuerdaten (control) sind dargestellt.
Fig. 16 zeigt einen Editierbildschirm, wobei für die Pitch-Bend-Daten nur die Werte der Steuerdaten (control) dargestellt sind, im Editierbildschirm von Fig. 13 mit der Maus wie untenstehend erläutert ein Editierbereich markiert und invers dargestellt ist, und die Werte der Steuerdaten mit der Änderungsform einer horizontalen Linie (constant) durch Ziehen mit der Maus verändert wurden (dabei zeigt Fig. 16 eine Situation während des Ziehen mit der Maus).
Fig. 17 zeigt einen Editierbildschirm, der die Werte der Steuerdaten (control) und des Resultat (result) des Editierens im Datenanzeigebereich 122 darstellt, nach dem Ziehen und Ablegen mit der Maus in der Situation von Fig. 16.
Fig. 18 zeigt einen Editierbildschirm, wobei für die Pitch-Bend-Daten nur die Werte der Steuerdaten (control) dargestellt sind, im Editierbildschirm mit der Maus wie untenstehend erläutert ein Editierbereich markiert und invers dargestellt ist, und die Werte der Steuerdaten mit der Änderungsform einer Dreieckskurve (linear) durch Ziehen mit der Maus verändert wurden (dabei zeigt Fig. 18 eine Situation während des Ziehen mit der Maus).
Fig. 19 zeigt einen Editierbildschirm, wobei für die Pitch-Bend-Daten nur die Werte der Steuerdaten (control) dargestellt sind, im Editierbildschirm mit der Maus wie untenstehend erläutert ein Editierbereich markiert und invers dargestellt ist, und die Werte der Steuerdaten mit der Änderungsform einer Kosinuskurve (linear) durch Ziehen mit der Maus verändert wurden (dabei zeigt Fig. 19 eine Situation während des Ziehen mit der Maus).
Fig. 20 zeigt einen Editierbildschirm, wobei im Datenanzeigebereich die Transponierdaten (control) (also der Parameter "NoteOffset" der Silben) und das Resultat (result) des Editierens der Transponierdaten (also die Wiedergabetonhöhe der Silben) dargestellt sind, mit der Maus wie untenstehend erläutert ein Editierbereich markiert und invers dargestellt ist. Als Änderungsform für die Werte der Steuerdaten ist eine horizontale Linie (constant) ausgewählt.
Fig. 21 zeigt einen Editierbildschirm, wobei das Resultat (result) des Editierens der Transponierdaten (also die Wiedergabetonhöhe der Silben) im Editierbildschirm von Fig. 20 nicht dargestellt ist, sondern nur die Werte der Steuerdaten (control), wobei die Werte der Steuerdaten mit der Änderungsform einer horizontalen Linie (constant) durch Ziehen mit der Maus geändert werden (dabei zeigt Fig. 21 eine Situation während des Ziehen mit der Maus).
Da die Transponierdaten tatsächlich dem Parameter "NoteOffset" der Silbendaten entsprechen, können sie nur in ganzen Silben auf der Abszisse editiert werden, und nur in Halbtönen auf der Ordinate herauf oder herunter gesetzt werden.
Fig. 22 zeigt einen Editierbildschirm, wobei die Werte der Transponierdaten (control) und des Resultats (result) des Editierens im Datenanzeigebereich 122 dargestellt sind, nachdem das Ziehen und Ablegen mit der Maus in der Situation in Fig. 21 beendet wurde.
Fig. 23 zeigt einen Editierbildschirm, wobei für die Wiedergabe­ geschwindigkeitsdaten die Werte der Steuerdaten (control) im Datenanzeigebereich 122 dargestellt sind, und mit der Maus wie untenstehend erläutert ein Editierbereich markiert und invers dargestellt ist. Als Änderungsform für die Werte der Steuerdaten ist eine horizontale Linie (constant) ausgewählt.
Fig. 24 zeigt einen Editierbildschirm, wobei die Werte der Steuerdaten im Editierbildschirm von Fig. 23 mit der Änderungsform einer horizontalen Linie (constant) wie untenstehend erläutert durch Ziehen mit der Maus geändert worden sind (dabei zeigt Fig. 24 eine Situation während des Ziehen mit der Maus).
Fig. 25 zeigt einen Editierbildschirm, wobei die Werte der Steuerdaten (control) im Datenanzeigebereich 122 dargestellt sind, nachdem das Ziehen und Ablegen mit der Maus in der Situation in Fig. 24 beendet wurde.
Fig. 26 zeigt einen Editierbildschirm, wobei für die Wiedergabegeschwindigkeitsdaten die Werte der Steuerdaten (control) im Datenanzeigebereich 122 dargestellt sind, ein Editierbereich mit der Maus wie untenstehend erläutert markiert und invers dargestellt ist, und die Werte der Steuerdaten mit der Änderungsform einer Dreieckskurve (linear) durch Ziehen mit der Maus verändert sind (dabei zeigt Fig. 26 eine Situation während des Ziehen mit der Maus).
Fig. 27 zeigt einen Editierbildschirm, wobei die Werte der Steuerdaten (control) im Datenanzeigebereich 122 dargestellt sind, nachdem das Ziehen und Ablegen mit der Maus in der Situation in Fig. 26 beendet wurde.
Fig. 28 zeigt einen Editierbildschirm, wobei für die Wiedergabegeschwindigkeitsdaten die Werte der Steuerdaten (control) im Datenanzeigebereich 122 dargestellt sind, ein Editierbereich mit der Maus wie untenstehend erläutert markiert und invers dargestellt ist, und die Werte der Steuerdaten mit der Änderungsform einer Kosinuskurve (cosine) durch Ziehen mit der Maus verändert sind (dabei zeigt Fig. 28 eine Situation während des Ziehen mit der Maus).
Fig. 29 zeigt einen Editierbildschirm, wobei die Werte der Steuerdaten (control) im Datenanzeigebereich 122 dargestellt sind, nachdem das Ziehen und Ablegen mit der Maus in der Situation in Fig. 28 beendet wurde.
Fig. 30 zeigt einen Editierbildschirm, wobei für die Wiedergabegeschwindigkeitsdaten die Werte der Steuerdaten (control) im Datenanzeigebereich 122 dargestellt sind, und ein Editierbereich mit der Maus wie untenstehend erläutert markiert und invers dargestellt ist, nachdem auf ein "time keep"-Feld 200 geklickt wurde. Wenn die Wiedergabegeschwindigkeitsdaten editiert werden, ohne auf das "time keep"-Feld 200 zu klicken, dann werden die zeitabhängigen Daten sowohl innerhalb des Editierbereichs als auch nach dem Editierbereich aktualisiert, und wenn die Wiedergabegeschwindigkeitsdaten editiert werden nachdem auf das "time keep"-Feld 200 geklickt wurde, dann werden die zeitabhängigen Daten innerhalb des Editierbereichs aktualisiert, während die zeitabhängigen Daten nach dem Editierbereich nicht aktualisiert sondern gehalten wird. Das heißt, falls die Wiedergabegeschwindigkeits- Daten editiert werden nachdem auf das "time keep"-Feld 200 geklickt wurde, dann wird der Editiervorgang unter Beibehaltung der Zeiten an beiden Rändern des Editierbereichs durchgeführt. Als Änderungsform für die Werte der Steuerdaten ist hierbei eine Dreieckskurve (linear) ausgewählt.
Fig. 31 zeigt einen Editierbildschirm, wobei die Werte der Steuerdaten mit der Änderungsform einer Dreieckwelle (linear) durch Ziehen mit der Maus verändert sind (dabei zeigt Fig. 31 eine Situation während des Ziehen mit der Maus).
Fig. 32 zeigt einen Editierbildschirm, wobei die Werte der Steuerdaten (control) im Datenanzeigebereich 122 dargestellt sind, nachdem das Ziehen und Ablegen mit der Maus in der Situation in Fig. 31 beendet wurde.
Eine Gruppe Rechtecke wird, den Silben der Audiowellenform entsprechend, in horizontaler Anordnung im Silbenanzeigebereich 120 des Bildschirms dargestellt. Die Position der Rechtecke auf der Ordinate zeigt die Tonhöhe der entsprechenden Silben in Halbtönen an.
Wie bereits oben ausgeführt wurde, wird die Tonhöhe der Silben durch editieren der Transponierdaten verändert. Wenn die Transponierdaten für eine der Silben (also der Parameter "NoteOffset" von einer der Silben) mit der Maus herauf oder herunter gesetzt werden, was im Silbenanzeigebereich 120 angezeigt wird, dann wird das im Silbenanzeigebereich 120 angezeigte Rechteck dieser Silbe nach oben oder unten versetzt, und zwar entsprechend der Summe von "SylblOrigKey" und "NoteOffset" (vgl. Fig. 20, 21 und 22).
Wenn die Wiedergabegeschwindigkeitsdaten der Silben editiert worden sind, dann werden die Wiedergabepositionen der Silben auf der Zeitachse (d. h., die Position der Rechtecke auf der Abszisse im Silbenanzeigebereich 120) sowie die Länge der Silben verändert, so daß jedesmal wenn die Wiedergabegeschwindigkeit verändert worden ist, die Anzeige der Silben mit der neuen Wiedergabegeschwindigkeit aktualisiert wird. Dieses Auffrischen der Bildschirmanzeige der Silben wird nachfolgend etwas detaillierter erklärt.
Jeder Satz Steuerdaten wird als Strich im Datenanzeigebereich 122 dargestellt, und die Position der die Steuerdaten darstellenden Striche auf der Abszisse wird von "Clock" bestimmt. Das heißt, daß die Positionen des Silbenanzeigebereichs 120 und des Datenanzeigebereichs 122 auf der Abszisse denselben Zeiten entsprechen, und es ist leicht ersichtlich, welche Steuerdaten der Silben gesetzt wurden.
Wenn die Veränderung der Tonhöhe dargestellt wird (d. h., "Pitch" ist ausgewählt vgl. Fig. 12 bis 19), dann erfolgt die Anzeige mit der Position "0" auf der Ordinate in der Mitte des Datenanzeigebereiches 122. Wenn der ursprüngliche Verlauf der Tonhöhe der Audiowellenform dargestellt wird (d. h., "original" ist ausgewählt), dann wird die Position der angezeigten Striche auf der Ordinate von "DfltValue" bestimmt. Wenn die Werte des Pitch-Bends dargestellt werden (d. h., wenn "control" ausgewählt wurde), dann wird die Position der angezeigten Striche auf der Ordinate von "Value" bestimmt. Und wenn der Verlauf der Tonhöhe der Audiowellenform als Resultat der Tonhöhenmodifikation dargestellt wird (d. h., wenn "result" ausgewählt wurde), dann wird die Position der angezeigten Striche auf der Ordinate von der Summe von "DfltValue" und "Value "bestimmt.
Wenn die Tonhöhe der Silben in Halbtonschritten dargestellt wird (d. h., wenn "Transpose" ausgewählt wurde vgl. Fig. 20 bis 22), dann erfolgt die Anzeige mit der Position "1" auf der Ordinate in der Mitte des Datenanzeigebereiches 122. Wenn die Tonhöhe der ursprünglichen Silben dargestellt wird (d. h., wenn "original" ausgewählt wurde), dann wird die Position der Striche auf der Ordinate vom Parameter "SylblOrigKey" der Silbendaten bestimmt. Wenn die Transponierdaten dargestellt werden (d. h., wenn "control" ausgewählt wurde), dann wird die Position der Striche auf der Ordinate vom Parameter "NoteOffset" der Silbendaten bestimmt. Und wenn die Wiedergabetonhöhe als Resultat der Tonhöhenmodifikation in Halbtonschritten dargestellt wird (d. h., wenn "result" ausgewählt wurde in diesem Fall wird das Resultat der Tonhöhenmodifikation durch Pitch-Bend ignoriert), dann wird die Position der angezeigten Striche auf der Ordinate für jeden Satz Silbendaten von der Summe von "NoteOffset" und "SylblOrigKey" bestimmt.
Wenn die Wiedergabegeschwindigkeit ausgewählt wurde (d. h., "Time" ist ausgewählt worden vgl. Fig. 23 bis 32), dann erfolgt die Anzeige mit der Position "1" auf der Ordinate in der Mitte des Datenanzeigebereiches 122. Wenn die Werte der Wiedergabegeschwindigkeit dargestellt werden (d. h., wenn "control" ausgewählt wurde), dann wird die Position der Striche auf der Ordinate vom Parameter "Value" bestimmt. Wenn die Wiedergabegeschwindigkeit editiert worden ist, dann wird der Wert von "Clock" für jeden Datensatz aktualisiert, so daß die Positionen der dargestellten Striche auf der Ordinate des Datenanzeigebereichs 122 ebenfalls aktualisiert werden. Wenn die Wiedergabegeschwindigkeit angezeigt wird, dann wird eine horizontale Linie auf der Position "1" der Ordinate angezeigt falls "original" ausgewählt wurde, während dieselbe Anzeige wie für "control" erfolgt, falls "result" ausgewählt wurde.
Jedesmal wenn die Steuerdaten editiert werden, wird die Bildschirmanzeige mit den neuen Steuerdaten aktualisiert.
Da für die Pitch-Bend-Werte vor dem Editieren "Value = 0" gilt, wird ein horizontaler gerader Strich an der Position "0" der Ordinate des Datenanzeigebereichs 122 dargestellt, wenn die Pitch-Bend-Werte angezeigt werden, und sowohl die Anzeige des Verlaufs der Tonhöhe der ursprünglichen Audiowellenform als auch des Verlaufs der Tonhöhe der Audiowellenform als Ergebnis der Tonhöhenmodifikation werden in derselben Form (z. B. gebogene Striche) dargestellt.
Da ferner für die Warte der Transponierdaten (d. h., der Werte von "NoteOffset") vor dem Editieren "NoteOffset = 0" gilt, wird ein horizontaler gerader Strich an der Position "0" der Ordinate des Datenanzeigebereichs 122 dargestellt, wenn die Werte der Transponierdaten angezeigt werden, und sowohl die Anzeige der Tonhöhe der ursprünglichen Silben als auch der Tonhöhe der Silben als Ergebnis der Tonhöhenmodifikation mit den Transponierdaten werden in derselben Form (z. B. Treppenstriche) dargestellt.
Da ferner für die Werte der Wiedergabegeschwindigkeit vor dem Editieren "Value = 1" gilt, wird ein horizontaler gerader Strich an der Position "1" der Ordinate des Datenanzeigebereichs 122 dargestellt, wenn die Wiedergabegeschwindigkeit angezeigt wird.
Wie bereits oben ausgeführt wurde, editiert der Benutzer die Steuerdaten mit der Maus, und zwar wie folgt:
Prozedur zum Editieren der Steuerdaten
  • 1. Mit Hinblick auf die im Datenanzeigebereich 122 dargestellten Daten, bewegt der Benutzer den Cursor mit der Maus auf einen Rand des Bereichs, der editiert werden soll. Wenn der Cursor auf einen Rand des Bereichs, der editiert werden soll, positioniert worden ist, zieht der Benutzer unter Niederdrücken der rechten Maustaste die Maus von links nach rechts (oder umgekehrt) über den Editierbildschirm bis zum anderen Rand des Bereichs, der editiert werden soll, und läßt die rechte Maustaste los, wenn der Cursor am anderen Rand des Bereichs, der editiert werden soll, angekommen ist. Somit wird der Bereich, über den der Benutzer die Maus gezogen hat, zum Editierbereich, und dieser Bereich von Werten, die nun editiert werden können, wird farblich markiert.
    In dieser Situation wird der linke Rand des Editierbereich als die Position der Steuerdaten angenommen, die dem vom Benutzer mit der Maus markierten linken Rand direkt vorausgehen, und der rechte Rand des Editierbereich wird als die Position angenommen, die direkt den Steuerdaten vorausgeht, die direkt dem vom Benutzer mit der Maus markierten rechten Rand folgen. Mit anderen Worten kann der Benutzer die folgenden Variablen ("TopDfltClock" and "EndDfltClock") mit der Maus setzen.
    "TopDfltClock" ist eine Variable, die "DfltClock" der Steuerdaten am linken Rand des Editierbereichs anzeigt, und "EndDlftClock" ist eine Variable, die "DfltClock" der Steuerdaten direkt nach dem rechten Rand des Editierbereichs anzeigt.
  • 2. Danach wählt der Benutzer eine der verfügbaren Änderungsformen aus, und zwar durch Klicken auf das "constant"-Feld 130, das "linear"-Feld 132 oder das "cosine"-Feld 134.
  • 3. Mittels Klicken mit der linken Maustaste nach dem Bewegen des Cursors auf einen Punkt innerhalb des in Schritt (1) definierten Editierbereichs kann der Benutzer eine als Referenz für das Editieren dienende Position (Editierreferenzposition 300) auf der Zeitachse (Abszisse) setzen und anzeigen. Dann, während die linke Maustaste noch niedergedrückt ist, kann der Benutzer die Maus auf dem Editierbildschirm nach oben oder nach unten ziehen, so daß der Cursor sich nach oben oder nach unten bewegt. Somit kann der Benutzer die Variablen "TargetDfltClock" und "DeltaValue" setzen.
    "TargetDfltClock" ist eine Variable, die "DfltClock" der als Editierreferenzposition 300 markierten Steuerdaten anzeigt. "DeltaValue" ist eine Variable, die die gezogene Strecke anzeigt.
    Je nach der Änderungsform, die vom Benutzer durch Klicken auf das "constant"-Feld 130, das "linear"-Feld 132 oder das "cosine"-Feld 134 ausgewählt wurde, wird der Parameter "Value" der Steuerdaten im Editierbereich um einen Wert aktualisiert, der der mit der Maus gezogenen Strecke proportional ist, und zwar in Übereinstimmung mit Gleichung 1:
    Gleichung 1: Value = Value + DeltaValue × f(DfltClock)
    Falls Transponierdaten editiert werden, ist "Value" in der obigen Gleichung mit "NoteOffset" zu ersetzen.
    "f(DfltClock)" in Gleichung 1 ist eine Funktion, die je nach der von der vom Benutzer gewählten Änderungsform einen Wert zurückgibt, der von "DfltClock" der Steuerdaten abhängt.
    Genauer gesagt, wenn der Benutzer auf das "constant"-Feld 130 geklickt hat, um eine horizontale Linie parallel zur Abszisse als Änderungsform auszuwählen, dann wird "f(DfltClock) auf "1" gesetzt, und der Parameter "Value" der Steuerdaten im Editierbereich wird durch die Berechnung in Gleichung 1 gleichmäßig erhöht oder vermindert.
    Wenn der Benutzer auf das "linear"-Feld 132 geklickt hat, um eine abschnittsweise lineare Dreieckskurve als Änderungsform auszuwählen, und falls
    DfltClock < TargetDfltClock
    dann wird "f(DfltClock)" auf
    f(DfltClock) = (DfltClock - TopDfltClock)/(TargetDfltClock - TopDfltClock)
    gesetzt, und falls
    DfltClock ≧ TargetDfltClock
    dann wird "f(DfltClock)" auf
    f(DfltClock) = (DfltClock - EndDfltClock)/(TargetDfltClock - EndDfltClock),
    gesetzt, und der Parameter "Value" der Steuerdaten im Editierbereich wird durch die Berechnung in Gleichung 1 gleichmäßig erhöht oder vermindert. Dabei sind Zuwachs und Abnahme an beiden Rändern des Editierbereichs gleich Null.
    Wenn der Benutzer auf das "cosine"-Feld 134 geklickt hat, um eine Kosinuskurve als Änderungsform auszuwählen, und falls
    TargetDfltClock - TopDfltClock ≧ EndDfltClock - TargetDfltClock,
    dann wird "HalfCycle" auf
    HalfCycle = TargetDfltClock - TopDfltClock,
    gesetzt, und falls
    TargetDfltClock - TopDfltClock < EndDfltClock - TargetDfltClock,
    dann wird "HalfCycle" auf
    HalfCycle = EndDfltClock - TargetDfltClock,
    gesetzt, und da "f(DfltClock)" auf
    f(DfltClock) = (cos(π × (DfltClock - TargetDfltClock)/HalfCycle) + 1)/2,
    gesetzt ist (wobei π dem Verhältnis von Kreisumfang zu Kreisdurchmesser entspricht, also 3.141592), wird der Parameter "Value" der Steuerdaten im Editierbereich durch die Berechnung in Gleichung 1 mit der Form einer Kosinuskurve erhöht oder vermindert. Dabei sind Zuwachs und Abnahme an dem Rand des Editierbereichs, der weiter entfernt ist von dem Punkt der als Editierreferenzposition im Editierbereich markiert wurde, gleich Null.
  • 4. Die dargestellten Striche der Steuerdaten auf dem Editierbildschirm werden je nach dem in Gleichung 1 bestimmten Wert für "Value" nach oben oder nach unten bewegt.
    Wenn Transponierdaten editiert werden, werden die Rechtecke der entsprechenden Silben im Silbenanzeigebereich 120 ebenfalls nach oben oder nach unten bewegt, in Abhängigkeit der neuen Transponierdaten (NoteOffset).
  • 5. Wenn Wiedergabegeschwindigkeitsdaten editiert worden sind, werden alle zeitabhängigen Abspieldaten, die nach den editierten Wiedergabegeschwindigkeitsdaten liegen, aktualisiert, die Anzeigepositionen der Rechtecke der entsprechenden Silben auf der Abszisse im Silbenanzeigebereich 120 werden aktualisiert, und die Anzeigepositionen der Wiedergabegeschwindigkeitsdaten auf der Abszisse im Datenanzeigebereich 122 werden aktualisiert. Die Details dieser Prozedur werden im Folgenden erläutert.
Die Anzeige der Silben wird während des Ziehens mit der Maus ständig aktualisiert. Die Wiedergabegeschwindigkeit wird während des Ziehens mit dem Wert von "Clock" vor dem Ziehen mit der Maus dargestellt, und mit dem neuen Wert von "Clock", auf den "Clock" gesetzt wird, wenn die linke Maustaste losgelassen wird um somit das Ziehen zu beenden. Mit anderen Worten werden beim Editieren der Wiedergabegeschwindigkeit während des Ziehens mit der Maus nur die Anzeigepositionen auf der Ordinate geändert, während die Anzeigepositionen auf der Abszisse beibehalten werden, was Irritationen seitens des Benutzers vermeidet.
Da ferner nur die Anzeigepositionen auf der Ordinate geändert werden müssen, kann weiterhin die von der Anzeigeprozedur verursachte Last auf der CPU klein gehalten werden, so daß die Darstellung der Silben kontinuierlich aktualisiert werden kann.
Wenn der Benutzer auf das "time keep"-Feld 200 klickt, um die Wiedergabegeschwindigkeit im Editierbereich unter Beibehaltung der Zeiten an den beiden Rändern des Editierbereichs zu editieren, dann wird die Dauer der Wiedergabezeit des Editierbereichs mit der Wiedergabezeit vor dem Editieren bestimmt, die Dauer der Wiedergabezeit des Editierbereichs mit der Wiedergabezeit nach dem Editieren bestimmt, und die endgültige Wiedergabegeschwindigkeit wird durch Teilen der Wiedergabezeit nach dem Editieren durch die Wiedergabezeit vor dem Editieren und Multiplikation dieses Quotienten mit der editierten Wiedergabegeschwindigkeit bestimmt, wodurch die Dauer der Wiedergabegeschwindigkeit des Editierbereichs vor und nach dem Editieren angeglichen wird.
Die Dauer der Zeit eines Bereichs, in dem eine bestimmte Wiedergabegeschwindigkeit gilt, kann durch
Zeitdauer = Zeitdauer vor dem Editieren/Wiedergabegeschwindigkeit
ausgedrückt werden. Die Dauer der Wiedergabe des Editierbereichs wird bestimmt, indem diese Berechnung für alle Sätze Wiedergabe­ geschwindigkeitsdaten im Editierbereich durchgeführt wird, und die Resulate aufaddiert werden. Im Folgenden wird diese Prozedur im Detail erläutert.
Prozedur für die Bestimmung der Wiedergabedauer
  • A) Setze Editierbereich und Änderungsform (dieser Schritt entspricht (1) und (2) in der Prozedur zum Editieren der Steuerdaten).
  • B) Bestimme die Wiedergabedauer unter der gegenwärtigen Wiedergabegeschwindigkeit.
  • C) Bewege den Cursor auf einen Punkt innerhalb des Editierbereichs und ziehe den Cursor unter Niederdrücken der linken Maustaste nach oben oder nach unten (dieser Schritt entspricht (3) in der Prozedur zum Editieren der Steuerdaten).
  • D) "Value" der Wiedergabegeschwindigkeitsdaten innerhalb des Editierbereichs wird in Übereinstimmung mit der ausgewählten Änderungsform vorübergehend um soviel geändert, wie die Maus gezogen worden ist (dieser Schritt entspricht (3) in der Prozedur zum Editieren der Steuerdaten).
  • E) Die Wiedergabedauer des Editierbereichs wird anhand der vorrübergehend geänderten Wiedergabegeschwindigkeitsdaten bestimmt (wobei dieselben Berechnungen wie in Schritt (II) dieser Prozedur durchgeführt werden).
  • F) Die Werte der Wiedergabegeschwindigkeit (Value) werden so angepaßt, daß die Wiedergabedauer des Editierbereichs konstant gehalten wird.
  • G) Die zeitabhängigen Abspieldaten werden verändert, und die Anzeige der Silben und der Wiedergabegeschwindigkeit wird aktualisiert (dieser Schritt entspricht (5) in der Prozedur zum Editieren der Steuerdaten).
Es folgt eine Erläuterung der Berechnungen, die in den Schritten (11) und (V) dieser Prozedur für die Bestimmung der Wiedergabedauer durchgeführt werden, und zwar mit Bezugnahme auf das Flußdiagramm in Fig. 5, welches die Prozess-Routine für diese Berechnungen veranschaulicht.
Zunächst werden jedoch die Variablen für die in Fig. 5 dargestellte Prozedur für die Bestimmung der Wiedergabedauer erläutert.
Variablen
Data: Aktuelle Wiedergabegeschwindigkeitsdaten
DfltClock[Data]: "DfltClock" der aktuellen Wiedergabegeschwin­ digkeitsdaten
Value[Data]: Wert (Wiedergabegeschwindigkeit) der aktuellen Wiedergabegeschwindigkeitsdaten
PrevDfltClock: "DfltClock" der Wiedergabegeschwindigkeitsdaten, die den aktuellen Wiedergabegeschwindigkeitsdaten direkt vorausgehen
Integral: Integral der Wiedergabezeit
TimeRate: Wiedergabegeschwindigkeit
In der in Fig. 5 gezeigten Prozedur für die Bestimmung der Wiedergabedauer werden zunächst die Variablen initialisiert (Schrit S502). Insbesondere wird "Data" auf den Wert der Wiedergabegeschwindigkeits­ daten am linken Rand des Editierbereichs gesetzt (Data = Wiedergabegeschwindigkeitsdaten am linken Rand des Editierbereichs), "PrevDfltClock" wird auf DfltClock[Data] gesetzt (PrevDfltClock = DfftClock[Data]), "Integral" wird auf "0" gesetzt (Integral - 0), und "TimeRate" wird auf "Value[Data]" gesetzt (TimeRate = Value[Data]).
Nachdem dieser Schritt S502 abgearbeitet worden ist, geht die Prozedur weiter zu Schritt S504, und das Integral (Integral) der Wiedergabezeit wird durch Summation der Wiedergabedauern bestimmt. Genauer gesagt, wird dazu die Berechnung
Integral = Integral + (DfltClock[Data] - PrevDfltClock)/TimeRate durchgeführt.
Nachdem dieser Schritt S504 abgearbeitet worden ist, geht die Prozedur weiter zu Schritt S506, und die Werte der aktuellen Wiedergabe­ geschwindigkeitsdaten werden den Variablen zugewiesen. Genauer gesagt, wird "TimeRate" auf "Value[Data]" gesetzt (TimeRate = Value[Data]), und "PrevDfltClock" wird auf "DfltClock[Data]" gesetzt (PrevDfltClock = DfltClock[Data]).
Nachdem dieser Schritt S506 abgearbeitet worden ist, geht die Prozedur weiter zu Schritt S508, wo ermittelt wird, ob die zu verarbeitenden Wiedergabegeschwindigkeitsdaten die letzten Wiedergabegeschwindigkeits­ daten des Editierbereichs sind.
Falls in Schritt S508 ermittelt wird, daß die zu verarbeitenden Wiedergabegeschwindigkeitsdaten nicht die letzten Wiedergabe­ geschwindigkeitsdaten des Editierbereichs sind, dann wird "Data" um "1" erhöht (Schritt S510), wodurch die nächsten Wiedergabegeschwindigkeits­ daten als zu verarbeitende Wiedergabegeschwindigkeitsdaten ausgewählt werden, und die Prozedur kehrt zurück zu Schritt S504 und wird wiederholt.
Falls andererseits in Schritt S508 ermittelt wird, daß die zu verarbeitenden Wiedergabegeschwindigkeitsdaten doch die letzten Wiedergabegeschwindigkeitsdaten des Editierbereichs sind, dann wird die im Flußdiagramm dargestellte Prozedur für die Bestimmung der Wiedergabedauer umgehend beendet.
Es folgt eine Erläuterung einer Prozedur zum Ändern der Wiedergabezeit (Clock) und der Wiedergabehaltedauer (Length), wenn die Wiedergabe­ geschwindigkeit geändert wird.
Wenn die Wiedergabegeschwindigkeit editiert worden ist, werden alle zeitabhängigen Abspieldaten in Positionen, die nach den entsprechenden editierten Wiedergabegeschwindigkeitsdaten liegen, geändert. Dabei werden die Parameter "Clock" und "Length" der Silbendaten, sowie der Parameter "Clock" der Steuerdaten geändert. Mit den geänderten Parametern "Clock" und "Length" werden die graphischen Symbole (Rechtecke), die die Silben im Silbenanzeigebereich 120 darstellen, und die Striche, die die Wiedergabegeschwindigkeitsdaten im Datenanzeigbereich 122 darstellen aktualisiert.
Wie bereits oben ausgeführt wurde, wird die Position der Silben auf der Abszisse aktualisiert, während die Wiedergabegeschwindigkeit durch Ziehen mit der Maus gesetzt wird, aber die Positionen der Wiedergabegeschwindigkeit werden bezüglich der Abszisse konstant gehalten und nur in Bezug auf die Ordinate aktualisiert, und erst wenn das Ziehen mit der Maus beendet ist, werden die Positionen für die Wiedergabegeschwindigkeit auf der Abszisse aktualisiert.
Es folgt eine Erläuterung der Prozedur zum Ändern der Wiedergabezeit (Clock) und der Wiedergabehaltedauer (Length) der Silben beim Editieren der Wiedergabegeschwindigkeit, wobei auf Fig. 6 Bezug genommen wird, welche diese Prozess-Routine veranschaulicht.
Zunächst werden die Variablen erläutert, die für diese in Fig. 6 dargestellte Prozedur zum Ändern der Wiedergabezeit (Clock) und der Wiedergabehaltedauer (Length) der Silben beim Editieren der Wiedergabegeschwindigkeit verwendet werden.
Variablen
Prev_TimeRate_Clock: "Clock" der direkt vorausgehenden Wiedergabegeschwindigkeitsdaten
Prev_TimeRate_DfltClock: "DfltClock" der direkt vorausgehenden Wiedergabegeschwindigkeitsdaten
TimeRate: Wiedergabegeschwindigkeit
SyllableFLG: Merker, der anzeigt, ob die Silbendaten vorher schon einmal verarbeitet wurden. Wenn die Silbendaten schon einmal verarbeitet wurden, wird dieser Merker auf "1" gesetzt, und wenn die Silbendaten bisher noch nicht verarbeitet wurden, wird dieser Merker auf "0" gesetzt.
Data: Aktuelle Abspieldaten. Die ersten Abspieldaten werden durch "Data = 0" angezeigt.
PrevSyl: Direkt vorausgehende Silbendaten
Curt_Length: Aktuelle gemessene noch nicht editierte Dauer von den direkt vorausgehenden Silbendaten zu den aktuellen Abspieldaten
Prev_Length: Zuvor gemessene noch nicht editierte Dauer
Prev_DfltLength: Noch nicht editierte Dauer der direkt vorausgehenden Silbendaten
Prev_Clock: "Clock" der direkt vorausgehenden Abspieldaten
Prev_Syllable_Clock: "Clock" der direkt vorausgehenden Silbendaten
Dabei ist zu beachten, daß die von "Data" und "PrevSyl" spezifizierten Abspieldaten als "XXX[Data]" bzw. "XXX[PrevSyl]" ausgedrückt werden.
Die im Flußdiagramm in Fig. 6 gezeigte Prozedur erneuert die zeitabhängigen Abspieldaten in Übereinstimmung mit Änderungen der Wiedergabegeschwindigkeit. Insbesondere werden die Wiedergabezeit (Clock) und die Wiedergabehaltedauer (Length) vom zweiten bis zum letzten Satz Abspieldaten aktualisiert.
Die Tatsache nutzend, daß die im Flußdiagramm in Fig. 6 gezeigte Prozedur die Abspieldaten der Reihe nach abarbeitet, werden die Wiedergabezeiten unter Nutzung der vorhergehenden Abspieldaten erneuert, die bereits erneuert worden sind. Somit ändert diese Prozedur die Zeiten der Note-Ons, Note-Offs, Silbenspezifikationen, Specifikationen der Wiedergabegeschwindigkeit und Pitch-Bends, die geändert werden, wenn die Wiedergabegeschwindigkeit editiert wird.
In der in Fig. 6 dargestellte Prozedur zum Ändern der Wiedergabezeit, werden zunächst die Variablen initialisiert (Schritt S602). Genauer gesagt wird "Prev_TimeRate_Clock" auf "0" gesetzt (Prev_TimeRate_Clock = 0), "Prev_TimeRate_DfltClock" wird auf "0" gesetzt (Prev_TimeRate_DfltClock = 0), "TimeRate" wird auf "Value[0]" gesetzt, also auf den Parameter "Value" der Wiedergabegeschwindigkeitsdaten am Start (TimeRate = Value[Data]), "SyllableFLG" wird auf "0" gesetzt (SyllableFLG = 0), und "Data" wird auf "1" gesetzt (Data = 1).
Wenn dieser Schritt S602 abgearbeitet worden ist, geht die Prozedur weiter nach Schritt S604, wo die Wiedergabezeit erneuert wird. Die Details dieser Erneuerung in Schritt S604 werden weiter unten erläutert, unter Bezugnahme auf Fig. 7.
Wenn dieser Schritt S604 abgearbeitet worden ist, geht die Prozedur weiter nach Schritt S606, wo die Wiedergabehaltedauer der direkt vorausgehenden Silbendaten erneuert wird. Die Details dieser Erneuerung direkt vorausgehenden Silbendaten in Schritt S606 werden weiter unten erläutert, unter Bezugnahme auf die Fig. 8, 9, 10 und 11.
Wenn dieser Schritt S606 abgearbeitet worden ist, geht die Prozedur weiter nach Schritt S608, wo ermittelt wird, ob es sich bei den zu verarbeitenden Abspieldaten um die letzten Abspieldaten handelt.
Falls in Schritt S608 ermittelt wird, daß es sich bei den zu verarbeitenden Abspieldaten nicht um die letzten Abspieldaten handelt, dann wird "Data" um "1" erhöht (Schritt S610), wodurch die nächsten Abspieldaten als zu verarbeitende Abspieldaten ausgewählt werden, und die Prozedur kehrt zurück zu Schritt S604 und wird wiederholt.
Falls andererseits in Schritt S608 ermittelt wird, daß es sich bei den zu verarbeitenden Abspieldaten nicht um die letzten Abspieldaten handelt, dann wird die letzte Silbe verarbeitet (Schritt S612).
Hierbei wird die Erneuerung der Wiedergabehaltedauer der direkt vorangehenden Silbendaten in Schritt S606 mit den Silbendaten durchgeführt, die den aktuellen Abspieldaten direkt vorausgehen, wie unten noch näher erläutert wird, so daß die Wiedergabehaltedauer der letzten Silbe nicht komplett verändert wird, falls die letzten Abspieldaten der Zeit, zu der die letzte Silbe endet, vorausgehen.
Folglich wird während des Verarbeitens der letzten Silbe in Schritt S612 angenommen, daß es noch mehr Abspieldaten gibt nach der Zeit, zu der die Wiedergabe der letzten Silbe beendet ist, und dieselbe Prozedur wie für die Erneuerung der Wiedergabehaltedauer der direkt vorausgehenden Silbendaten in Schritt S606 wird durchgeführt, so daß die Wiedergabehaltedauer auch für die letzte Silbe erneuert wird.
Dann, wenn die Verarbeitung der letzten Silbe in Schritt S612 beendet worden ist, wird die Prozedur dieses Flußdiagramms beendet.
Unter Bezugnahme auf Fig. 7 folgt nun eine Erläuterung der Prozedur zum Erneuern der Wiedergabezeiten in Schritt S604.
Die Prozedur zum Erneuern der Wiedergabezeiten in Schritt S604 nutzt die Tatsache, daß "Dauer nach dem Editieren = Dauer vor dem Editieren/­ Wiedergabegeschwindigkeit nach dem Editieren. Wie aus Fig. 7 ersichtlich ist, wird die Dauer nach dem Editieren zwischen den aktuellen, durch "Data" angezeigten Abspieldaten und den direkt vorangehenden, bereits erneuerten Wiedergabegeschwindigkeitsdaten bestimmt, durch die Zeiten der beiden Datensätze vor dem Editieren und die Wiedergabegeschwindigkeit dazwischen, und die Wiedergabezeit der aktuellen Abspieldaten wird erneuert, indem dazu die Wiedergabezeit der direkt vorangehenden, bereits erneuerten Wiedergabegeschwindigkeitsdaten addiert wird.
Genauer gesagt wird die Wiedergabezeit (Clock[Data]) durch die Berechnung von
Clock[Data] = Prev_TimeRate_Clock + (DfltClock[Data] - Prev_TimeRate_DfltClock)/TimeRate
bestimmt.
Normalerweise stimmen die Zeit, die von "Prev_TimeRate_Clock" angezeigt wird und die Zeit, die von "Prev_TimeRate_DfltClock" angezeigt wird, nicht unbedingt überein, aber um die Sachlage zu vereinfachen, sind sie in Fig. 7 als übereinstimmend dargestellt.
Unter Bezugnahme auf die Fig. 8, 9, 10 und 11 folgt nun eine Erläuterung der Prozedur zur Erneuerung der Wiedergabehaltedauer der direkt vorausgehenden Silbendaten in Schritt S606.
In der Prozedur zur Erneuerung der Wiedergabehaltedauer der direkt vorausgehenden Silbendaten wird die Wiedergabehaltedauer der Silbendaten, auf die "PrevSyl zeigt, und die direkt den aktuellen Abspieldaten, auf die "Data" zeigt", vorausgehen, erneuert. Diese Prozedur wird durchgeführt, wenn die aktuellen Abspieldaten Silbendaten sind, oder wenn die aktuellen Daten Wiedergabegeschwindigkeitsdaten sind. Wie noch im folgenden näher betrachtet wird, unterscheidet sich diese Prozedur, je nachdem ob die Abspieldaten Silbendaten oder Wiedergabegeschwindigkeitsdaten sind.
Wenn die Abspieldaten weder Silbendaten noch Wiedergabegeschwindigkeitsdaten sind, geht die Prozedur unmittelbar nach Schritt S608.
Die Prozedur zur Erneuerung der Wiedergabehaltedauer der direkt vorausgehenden Silbendaten für den Fall, daß es sich bei den aktuellen Daten um Wiedergabegeschwindigkeitsdaten handelt, wird unter Bezugnahme auf die Prozess-Routine in Fig. 8 erläutert.
Im Flußdiagramm in Fig. 8 wird zunächst ermittelt, ob die erste Silbe bereits abgearbeitet wurde, das heißt, ob "SyllableFLG" auf "1" oder auf "0" gesetzt worden ist (Schritt S802).
Falls in Schritt S802 ermittelt wird, daß die erste Silbe bereits abgearbeitet wurde (d. h., "SyllableFLG" ist auf "1" gesetzt), dann geht die Prozedur weiter nach Schritt S804, und die bisher gemessene Dauer vor dem Editieren wird gespeichert. Mit anderen Worten, "Prev_Length" wird auf "Curt_Length" gesetzt (Prev_Length = Curt_Length).
Dann wird die Dauer vor dem Editieren von den direkt vorausgehenden Silbendaten bis zu den aktuellen Abspieldaten gemessen (Schritt S806).
Genauer gesagt, wird die aktuell gemessene Länge vor dem Editieren (Curt_Length) von den direkt vorausgehenden Silbendaten bis zu den aktuellen Abspieldaten ermittelt, indem
Curt_Length = Prev_Length + (Clock[Data] - Prev_Clock) × TimeRate
berechnet wird.
Die Prozedur zum Messen der Dauer von den vorausgehenden Silbendaten bis zu den aktuellen Abspieldaten vor dem Editieren in Schritt S806 wird nachfolgend erläutert, mit Bezug auf Fig. 9.
Dann, wenn Schritt S806 abgearbeitet worden ist, geht die Prozedur weiter nach S808, in dem entschieden wird, ob die gemessene Dauer vor dem Editieren gleich oder länger der Dauer der vorausgehenden Silbendaten vor dem Editieren ist. Mit anderen Worten, es wird entschieden, ob "Curt_Length ≧ Prev_Length".
Wenn in Schritt S808 ermittelt wurde, daß die gemessene Dauer vor dem Editieren gleich oder länger der Dauer der vorausgehenden Silbendaten vor dem Editieren ist (also "Curt_Length ≧ Prev_Length"), dann geht die Prozedur weiter nach Schritt S810, und die Wiedergabehaltedauer der vorausgehenden Silbendaten nach dem Editieren wird ermittelt.
Genauer gesagt, wird die Wiedergabehaltedauer der vorausgehenden Silbendaten nach dem Editieren (Length[PrevSyl]) ermittelt durch Berechnung von
Length[PrevSyl] = (Prev_Clock - Prev_Syllable_Clock) + (Prev_DfltLength - Prev_Length)/TimeRate
Wenn Schritt S810 abgearbeitet worden ist, geht die Prozedur weiter nach Schritt S812.
Wenn hingegen in Schritt S808 ermittelt wird, daß die gemessene Dauer vor dem Editieren nicht gleich oder länger der Dauer der vorausgehenden Silbendaten vor dem Editieren ist (also wenn "Curt_Length ≧ Prev_Length" falsch ist), dann geht die Prozedur unmittelbar weiter nach Schritt S812.
Wenn in Schritt S802 entschieden wird, daß die erste Silbe noch nicht abgearbeitet wurde (d. h., "SyllableFLG" ist auf "0" gesetzt), dann geht die Prozedur weiter nach Schritt S812.
In Schritt S812 werden die Werte der aktuellen Wiedergabegeschwindigkeitsdaten den Variablen zugeordnet. Insbesondere wird "Prev_Clock" auf "Clock[Data]" gesetzt (Prev_Clock = Clock[Data]), "TimeRate" wird auf "TimeRate Value[Data]" gesetzt (TimeRate = TimeRate_Value[Data]), "Prev_TimeRate_Clock" wird auf "Clock[Data]" gesetzt (Prev_TimeRate_Clock = Clock[Data]) und "Prev_TimeRate_DfltClock" wird auf "DfltClock[Data]" gesetzt (Prev_TimeRate_DfltClock = DfltClock[Data]).
Wenn Schritt S812 abgearbeitet worden ist, wird das Flußdiagramm der Prozedur zur Erneuerung der Wiedergabehaltedauer der direkt vorausgehenden Silbendaten beendet.
Unter Bezugnahme auf Fig. 9 folgt nun eine Erläuterung der Prozedur zum Messen der Dauer von den vorausgehenden Silbendaten bis zu den aktuellen Abspieldaten vor dem Editieren in Schritt S806.
Diese Prozedur zum Messen der Dauer von den vorausgehenden Silbendaten bis zu den aktuellen Abspieldaten vor dem Editieren in Schritt S806 macht sich die Tatsache zu Nutze, daß "Dauer vor dem Editieren = Dauer nach dem Editieren × Wiedergabegeschwindigkeit". Wie Fig. 9 zeigt, wird die Dauer zwischen den aktuellen Abspieldaten, auf die "Data" zeigt, und die vorausgehenden Abspieldaten vor dem Editieren durch die Dauer der beiden Datensätze und die Wiedergabegeschwindigkeit dazwischen vor dem Editieren bestimmt, und die Dauer von den vorausgehenden Silbendaten bis zu den aktuellen Abspieldaten vor dem Editieren kann gemessen werden, indem dazu die bis zum vorhergehenden Durchlauf gemessene Dauer addiert wird.
Falls "Curt_Length ≧ Prev_DfltLength", dann zeigt dies, daß das Ende der vorausgehenden Silbe vor den aktuellen Abspieldaten liegt, womit die Wiedergabedauer der vorausgehenden Silbe fest steht.
Falls dagegen "Curt_Length ≧ Prev_DfltLength" falsch ist, dann heißt das, daß das Ende der vorausgehenden Silbe hinter den aktuellen Abspieldaten liegt, und die Wiedergabedauer der vorausgehenden Silbe nach dem Editieren steht noch nicht fest.
Unter Bezugnahme auf die Prozess-Routine in Fig. 10, folgt nun eine Erläuterung der Prozedur zum Erneuern der Wiedergabehaltedauer der vorausgehenden Silbendaten, für den Fall, daß die aktuellen Abspieldaten Silbendaten sind.
Im Flußdiagramm von Fig. 10 wird zunächst entschieden, ob die erste Silbe bereits verarbeitet worden ist, als, ob "SyllableFLG" auf "1" oder auf "0" gesetzt worden ist (Schritt S1002).
Falls in Schritt S1002 ermittelt wird, daß die erste Silbe bereits verarbeitet worden ist (daß also "SyllableFLG" auf "1" gesetzt ist), dann geht die Prozedur weiter nach Schritt S1004, und die bisher gemessene Dauer vor dem Editieren wird gespeichert. Mit anderen Worten, "Prev_Length" wird auf "Curt_Length" gesetzt (Prev_Length = Curt_Length).
Dann wird die Dauer von den vorausgehenden Silbendaten bis zu den aktuellen Abspieldaten gemessen vor dem Editieren (Schritt S1006).
Genauer gesagt, wird die Dauer vor dem Editieren (Curt Length) von den vorausgehenden Silbendaten bis zu den aktuellen Abspieldaten gemessen, indem
Curt_Length = Prev_Length + (Clock[Data] - Prev_Clock) × TimeRate
berechnet wird.
Die Prozedur zum Messen der Dauer vor dem Editieren (Curt_Length) von den vorausgehenden Silbendaten bis zu den aktuellen Abspieldaten in Schritt S1006 ist wie oben mit Bezug auf Fig. 9 erläutert.
Dann, wenn Schritt S1006 abgearbeitet worden ist, geht die Prozedur weiter nach Schritt S1008, wo ermittelt wird, ob die gemessene Dauer vor dem Editieren gleich oder länger der Dauer der vorausgehenden Silbendaten vor dem Editieren ist. Mit anderen Worten, es wird ermittelt, ob "Curt_Length ≧ Prev_Length".
Falls in Schritt S1008 ermittelt wird, daß die gemessene Dauer vor dem Editieren nicht gleich oder länger der Dauer der vorausgehenden Silbendaten vor dem Editieren ist (das heißt, falls "Curt Length ≧ Prev_Length" falsch ist), dann geht die Prozedur weiter nach Schritt S1010, und die Wiedergabehaltedauer der vorausgehenden Silbendaten nach dem Editieren wird ermittelt.
Genauer gesagt, wird die Wiedergabehaltedauer der vorausgehenden Silbendaten nach dem Editieren (Length[PrevSyl]) durch die Berechnung von
Length[PrevSyl] = (Clock[Data] - Prev_Syllable_Clock)
bestimmt.
Wenn Schritt S1010 abgearbeitet worden ist, geht die Prozedur weiter nach Schritt S1016.
Die Prozedur zur Bestimmung der Länge der Wiedergabehaltedauer der vorausgehenden Silbendaten nach dem Editieren in Schritt S1008 wird mit Bezugnahme auf Fig. 11 erläutert.
Falls in Schritt S1008 entschieden wird, daß die gemessene Dauer vor dem Editieren gleich oder länger der Dauer der vorausgehenden Silbendaten vor dem Editieren ist (das heißt, falls "Curt_Length ≧ Prev_Length"), dann geht die Prozedur weiter nach Schritt S1012.
In Schritt S1012 wird Länge der Wiedergabehaltedauer der vorausgehenden Silbendaten nach dem Editieren ermittelt Genauer gesagt wird die Wiedergabehaltedauer der vorausgehenden Silbendaten nach dem Editieren (Length[PrevSyl]) durch Berechnung von
Length[PrevSyl] = (Prev_Clock - Prev_Syllable_Clock) + (Prev_DfltLength - Prev_Length)/TimeRate
ermittelt.
Dann, wenn Schritt S1012 abgearbeitet worden ist, geht die Prozedur weiter nach Schritt S1016.
Falls in Schritt S1002 ermittelt wird, daß die erste Silbe noch nicht verarbeitet worden ist (falls also "SyllableFLG" auf "0" gesetzt ist), dann geht die Prozedur weiter nach Schritt S1014, und "SyllableFLG" wird auf "1" gesetzt.
Dann, wenn Schritt S1014 abgearbeitet worden ist, geht die Prozedur weiter nach Schritt S1016.
In Schritt S1016 wird der Wert der aktuellen Silbendaten den Variablen zugewiesen. Genauer gesagt, "Prev_Clock wird auf "Clock[Data]" gesetzt (Prev_Clock = Clock[Data]), "Prev_Syllable_Clock" wird auf "Clock[Data]" gesetzt (Prev_Syllable_Clock = Clock[Data]), "Prev_DfltLength" wird auf "DfltLength[Data]" gesetzt (Prev_DfltLength - DfltLength[Data]), "Curt_Length" wird auf "0" gesetzt (Curt Length = 0) und "PrevSyl" wird auf "Data" (PrevSyl = Data) gesetzt.
Wenn Schritt S1016 abgearbeitet worden ist, wird die Prozedur zum Erneuern der Wiedergabehaltedauer der vorausgehenden Silbendaten beendet.
Unter Bezugnahme auf Fig. 11 folgt nun eine Erläuterung der Prozedur zum Bestimmen der Dauer der Wiedergabehaltedauer der vorausgehenden Silbendaten nach dem Editieren in Schritt S1010.
Falls die aktuellen Abspieldaten Silbendaten sind und "Curt_Length ≧ Prev_DfltLength" falsch ist, und falls das Editieren der Wiedergabezeit der Silben möglich ist, dann heißt das, daß es Zeit ist, die nächste Silbe wiederzugeben, obwohl die vorausgehende Silbe noch wiedergegeben wird. Folglich wird in diesem Fall die Wiedergabehaltedauer der vorausgehenden Silbe erneuert wenn es Zeit ist, die nächste Silbe wiederzugeben, so daß die Wiedergabe der vorausgehenden Silbe gestoppt wird.
Wie oben erläutert, kann mit dieser Ausführungsform der Benutzer mit der Maus die Pitch-Bend-Daten, die Transponier-Daten, und die Wiedergabegeschwindigkeitsdaten für jede gewünschte Position auf der Zeitachse setzten. Die Pitch-Bend-Daten und die Transponierdaten zeigen an, wie die Tonhöhe über den Verlauf der Zeit modifiziert wird, wohingegen die Wiedergabegeschwindigkeitsdaten anzeigen, wie die Wiedergabegeschwindigkeit der Audiowellenform über den Verlauf der Zeit modifiziert wird. Die Tonhöhe und die Wiedergabegeschwindigkeit der Audiowellenform die mit dem Soundmodul wiedergegeben wird, wird mit den in Abhängigkeit dieser Daten ans Soundmodul ausgegebenen MIDI- Signalen modifiziert.
Sowohl die Pitch-Bend-Daten als auch die Transponierdaten geben nicht die absolute Tonhöhe sondern die relative Tonhöhe an. Die Audiowellenform wird mit dem Soundmodul wiedergegeben, nachdem die ursprüngliche Tonhöhe der Audiowellenform mit den Pitch-Bend-Daten und den Transponierdaten geändert worden ist. Ferner geben die Wiedergabegeschwindigkeitsdaten die Wiedergabezeit und die Wiedergabehaltedauer der Audiowellenform nicht absolut sondern relativ an, und die Audiowellenform wird mit dem Soundmodul wiedergegeben, nachdem die ursprüngliche Wiedergabezeit und Wiedergabehaltedauer der Audiowellenform mit den Wiedergabegeschwindigkeitsdaten geändert worden ist. Mit anderen Worten, der Benutzer setzt die Daten um Festzulegen wie die Audiowellenform wiedergegeben werden soll als relative Daten.
Ferner werden in der oben beschriebenen Ausführungsform "DfltValue" und "SylblOrigkey" der Pitch-Bend-Daten als die Information gespeichert, die angibt, wie sich di Tonhöhe der Audiowellenform mit dem Verlauf der Zeit ändert.
Wenn im Editierbildschirm für die Pitch-Bend-Daten oder die Transponierdaten "control" ausgewählt wird, wird der Inhalt des Parameters "Value" der vom Benutzer gesetzten Pitch-Bend-Daten bzw. der Transponierdaten (NoteOffset) dargestellt, und wenn im Editierbildschirm "result" ausgewählt wird, wird dargestellt, mit welcher Tonhöhe die Audiowellenform wiedergegeben wird, und zwar abhängig von "DfltValue" und "Value" der Pitch-Bend-Daten bzw. "SylblOrigkey" und Transponierdaten (NoteOffset).
Ebenso sind mit "DfltClock" und "DfltLength" der Silbendaten Informationen bezüglich der ursprünglichen Wiedergabezeit und Wiedergabehaltedauer der Silben der Audiowellenform gespeichert.
Wenn im Editierbildschirm für die Wiedergabegeschwindigkeit "control" ausgewählt wird, wird der Inhalt der vom Benutzer gesetzten Wiedergabegeschwindigsdaten (Value) dargestellt, und der Silbenanzeigebereich stellt dar zu welcher Wiedergabezeit und mit welcher Wiedergabehaltedauer die Audiowellenform, die mit den vom Benutzer gesetzten Daten modifiziert wurde, wiedergegeben wird, und zwar abhängig von "Clock" und "Length", die den Daten von "DfltClock" and "DfltLength" entsprechen, die in Übereinstimmung mit den Wiedergabegeschwindigkeit geändert wurden.
In der oben beschriebenen Ausführungsform werden Informationen bezüglich der Zeit der Silbendaten, der Pitch-Bend-Daten und der Wiedergabegeschwindigkeitsdaten in Übereinstimmung mit den Wiedergabegeschwindigkeitsdaten geändert. Daher werden durch die Wiedergabegeschwindigkeitsdaten nicht nur die Wiedergabegeschwindigkeit modifiziert, sondern auch die Zeiten zu denen Note-Ons, Note-Offs, Pitch- Bends, Silbennummern und Spezifikationen der Wiedergabegeschwindigkeit an das Soundmodul ausgegeben werden.
Wo angebracht, kann die oben beschriebene Ausführungsform wie folgt abgewandelt werden:
  • 1. Wenn die Wiedergabegeschwindigkeitsdaten in der oben beschriebenen Ausführungsform editiert werden, wird für alle Abspieldaten dieselbe Prozedur durchgeführt.
    Es besteht jedoch keine Notwendigkeit die Wiedergabezeit (Clock) für Abspieldaten zu erneuern, die vor den eigentlich editierten Wiedergabegeschwindigkeitsdaten liegen, und es ist ausreichend, wenn die Wiedergabezeit (Clock) gleichmäßig (also um denselben Wert) nur für die Abspieldaten hinter den Wiedergabegeschwindigkeitsdaten, die den editierten Wiedergabegeschwindigkeitsdaten folgen, erhöht oder vermindert werden. Ferner besteht keine Notwendigkeit die Wiedergabehaltedauer (Length) für die Silbendaten, die hinter den Wiedergabegeschwindigkeitsdaten liegen, die unmittelbar den editierten Wiedergabegeschwindigkeitsdaten folgen, zu revidieren. Folglich kann für diese Abspieldaten die Erneuerungsprozedur auch anders gestaltet und vereinfacht werden.
  • 2. In der oben beschriebenen Ausführungsform wird das Timing, mit dem die Abspieldaten wiedergegeben werden, von der Wiedergabezeit (Clock), die die Zeit anzeigt, die seit dem Beginn der Wiedergabe der Abspieldaten verstrichen ist, kontrolliert. Die vorliegende Erfindung ist jedoch nicht darauf beschränkt, und es ist ebensfalls möglich, das Timing, mit der die Abspieldaten wiedergegeben werden, über die Zeitinformationen, die den zeitlichen Abstand zwischen den einzelnen Abspieldatensätzen anzeigen, zu kontrollieren.
    In der oben beschriebenen Ausführungsform enthalten die Silbendaten Wiedergabehaltedauern (Length), und ein Satz Silbendaten kontrolliert sowohl das Timing für die Note-Ons als auch das Timing für die Note-Offs. Die vorliegende Erfindung ist jedoch nicht darauf beschränkt, und es ist ebensfalls möglich, Silbendaten für Note-Ons und Silbendaten für Note-Offs separat zu speichern.
    Mit anderen Worten, ein beliebiges Verfahren zum Kontrollieren der Zeit kann angewandt werden, solange das Timing für jeden Datentyp möglich ist.
  • 3. Wenn in der oben beschriebenen Ausführungsform aufgrund des Editierens der Wiedergabegeschwindigkeit die Wiedergabezeiten (Clock) und die Wiedergabehaltedauern (Length) erneuert werden, dann ändert sich das Timing, mit dem die MIDI-Signale bei Wiedergabe der Abspieldaten- Ketten ausgegeben werden. Die vorliegende Erfindung ist jedoch nicht darauf beschränkt, und wenn die Wiedergabegeschwindigkeiten als Informationen betrachtet werden, die Veränderungen des Tempos anweisen, dann ist auch eine andere Vorgehensweise möglich.
    Das heißt, wenn Abspieldaten-Ketten wiedergegeben werden, dann ist es ausreichend, wenn abhängig von den wiedergegebenen Wiedergabegeschwindigkeitsdaten die Dauer eines Ticks geändert wird, also wenn die Zeitabstände zur Ausführung der in Fig. 4 dargestellten Prozedur zur Wiedergabe der Abspieldaten geändert werden.
    In der oben beschriebenen Ausführungsform wird zu einer bestimmten Zeit nur jeweils eine Audiowellenform wiedergegeben. Die vorliegende Erfindung ist jedoch nicht darauf beschränkt, und kann auch auf Fälle angewandt werden, wo mehrere Audiowellenform gleichzeitig wiedergegeben werden. In diesem Fall, ist es möglich, die Wiedergabegeschwindigkeit für alle Audiowellenformen zusammen zu modifizieren, aber es ist ebenfalls möglich, separate Abspieldaten-Ketten für jede Audiowellenform zu erzeugen, und die Wiedergabegeschwindigkeit unabhängig für jede Audiowellenform zu modifizieren. Im letzteren Fall wird die in Fig. 4 dargestellte Prozedur zur Wiedergabe der Abspieldaten für jede der Audiowellenformen in separaten Intervallen durchgeführt, wenn ein Verfahren angewandt wird, wobei die Wiedergabegeschwindigkeit als Informationen betrachtet werden, die eine Veränderung des Tempos anweisen.
    Auch mit diesem Verfahren wird das Timing, mit dem jedes MIDI-Signal ausgegeben wird, verändert.
    Wenn allerdings in diesem Fall für jede Silbe ein graphisches Symbol auf der Zeitachse dargestellt wird, dann ist es jedoch nötig das Timing zur Wiedergabe der Silbe sowie die Wiedergabehaltedauer mit einer ähnlichen Prozedur wie für die oben beschriebene Ausführungsform erläutert zu bestimmen und darzustellen.
    Mit anderen Worten, jedes Verfahren ist möglich, solange das Timing für die Ausgabe der MIDI-Signale durch Editieren der Wiedergabegeschwindigkeit verändert werden kann.
  • 4. In der oben beschriebenen Ausführungsform besteht die Audiowellenform aus mehreren aufeinanderfolgenden Tönen, aber vorliegende Erfindung ist jedoch nicht darauf beschränkt, und es ist ausreichend, wenn die Audiowellenform einfach mehrere Töne enthält, wobei diese Töne nicht unbedingt aufeinander folgen müssen. Beispielsweise kann die Audiowellenform auch eine Ansammlung unabhängiger Töne sein.
  • 5. Von allen Merkmalen der Audiowellenform beschäftigte sich die oben beschriebene Ausführungsform hauptsächlich mit der Tonhöhe, und die Erläuterungen bezogen sich auf Fälle, in denen die Tonhöhe der Audiowellenform modifiziert wurde. Die vorliegende Erfindung ist jedoch nicht darauf beschränkt, und außer der Tonhöhe ist es auch möglich, die Lautstärke oder Frequenzmerkmale (z. B. Formamen oder Cutoff- Frequenzen von Filtern) zu modifizieren.
  • 6. Die oben beschriebene Ausführungsform stellt das Ergebnis des Addierens der ursprünglichen Werte der Audiowellenform zum Modifikationswert der Audiowellenform dar. Die vorliegende Erfindung ist jedoch nicht darauf beschränkt, und es ist auch möglich, das Ergebnis einer Multiplikation der beiden darzustellen.
  • 7. In der oben beschriebenen Ausführungsform gehen Steuerdaten, deren Steuerwerte vor dem Editieren einen bestimmten Wert haben, in eine Abspieldaten-Kette ein, und die Steuerwerte werden durch Editieranweisungen verändert. Die vorliegende Erfindung ist jedoch nicht darauf beschränkt, und es ist auch möglich vorzusehen, daß jedesmal wenn eine Editieranweisung gegeben wird, Steuerdaten mit Steuerwerten, die von der Editieranweisung abhängen, in die Abspieldaten-Kette gegeben werden.
  • 8. Wenn in der oben beschriebenen Ausführungsform die Steuerdaten editiert werden, dann wird der Parameter "Value" der Steuerdaten im Editierbereich mit dem von "DfltClock" bestimmten Wert der Steuerdaten geändert, und zwar je nach der Veränderungsform, die der Benutzer ausgewählt hat. Die vorliegende Erfindung ist jedoch nicht darauf beschränkt, und neben den Wiedergabegeschwindigkeitsdaten ist es auch möglich, Steuerdaten mit dem von "Clock" bestimmten Wert der Steuerdaten zu ändern, und zwar je nach der Veränderungsform, die der Benutzer ausgewählt hat.
    Wenn die Wiedergabegeschwindigkeit editiert worden ist, stimmt "DfltClock" nicht mit der wirklichen Position der Wiedergabezeit der Wellenformdaten auf der Zeitachse überein, so daß wenn "Value" mit "DfltClock" verändert wurde, und wenn beispielsweise die Werte von "Value" linear in fortlaufender Richtung auf der Zeitachse erhöht wurden, dann werden nicht die eigentlichen Werte linear geändert, aber wenn "Value" durch "Clock" geändert wird, dann werden die Werte linear geändert, und das Editieren kann bequemer durchgeführt werden.
  • 9. Wenn in der oben beschriebenen Ausführungsform während der Wiedergabe einer Silbe eine andere Silbe mit einem "NoteOffset" wiedergegeben wird, das sich vom "NoteOffset" der momentan wiedergegebenen Silbe unterscheidet, dann wird ein Note-On (also eine Anweisung zum Beginn einer Tonerzeugung) an das Soundmodul 12 gesendet. Die vorliegende Erfindung ist jedoch nicht darauf beschränkt, und außer eines Note-Ons ist es auch möglich ein Signal zur Änderung der Tonhöhe zu senden. In diesem Fall wird bei einer Reihe aufeinanderfolgender Silben nur das Note-On zum Anfang der ersten Silbe sowie nur das Note-Off zum Ende der letzten Silbe gesendet.
  • 10. In der oben beschriebenen Ausführungsform wird die vorliegende Erfindung mit einem Anwendungsprogramm (einem automatischen Abspiel- Anwendungsprogramm) ausgeführt, das auf einem Computer 10 läuft. Die vorliegende Erfindung ist jedoch nicht darauf beschränkt, und es ist auch möglich, die vorliegende Erfindung auf einem speziellen Gerät auszuführen. Ferner ist es möglich, in einem solchen speziellen Gerät, eine Soundmodulvorrichtung vorzusehen.
    Ferner sind die Speichermedien um das Anwendungsprogramm zu speichern nicht auf CD-ROMs begrenzt, sondern können auch Halbleiterspeicher oder Magnetplatten sein.
    Anstatt das Anwendungsprogramm direkt vom Speichermedium in den Computer 10 einzulesen, ist es auch möglich, das Programm vom Speichermedium über eine Kommunikationsverbindung, wie z. B. das Internet, in den Computer 10 einzulesen.
  • 11. Die wellenformbezogenen Daten, die vom Soundmodul 12 an das automatische Abspiel-Anwendungsprogramm ausgegeben werden, sind nicht auf die für die oben beschriebene Ausführungsform beschriebenen begrenzt, sondern können sich auch von diesen unterscheiden.
    Beispielsweise können die wellenformbezogenen Daten, die vom Soundmodul 12 ausgegeben werden, auch dem SMF-Format (Standard MIDI File) entsprechen, das gewöhnlich für automatisches Abspielen verwendet wird.
    In diesen Fall werden jedoch die Startpositionen und die Endpositionen der Silben auf der Zeitachse als Note-On-Events und Note-Off-Events ausgedrückt, der Wert der Tonhöhenveränderung wird als Pitch-Bend-Event ausgedrückt, und Ursprungstonart, Tempo und Zeichenkette werden als Meta-Events ausgedrückt. Die Notenzahlen der Note-On-Events und der Note-Off-Events werden auf den Wert der Ursprungstonart der Silbe gesetzt, die dem Event entspricht. Zu jedem Event werden Zeitinformationen hinzugefügt, die den zeitlichen Abstand zwischen dem vorausgehenden Event und dem Event selbst in Ticks anzeigen.
    Das Timing für die Note-On-Events, die Note-Off Events und die Pitch- Bend-Events wird von den Adressen der Audiowellenformdaten, die den Events entsprechen, bestimmt, und die vorgenannten Zeitinformationen werden aus diesem Timing bestimmt, abhängig vom Tempo. Ferner befinden sich Events, die die Ursprungstonart oder das Tempo anzeigen an einer Startposition der SMF-Daten, und Events, die eine Zeichenkette anzeigen, befinden sich an einer angemessenen Position zwischen dem Note-On-Event der entsprechenden Silbe und dem Note-On-Event der folgenden Silbe (beispielsweise direkt nach dem Note-On-Event der entsprechenden Silbe).
    Das automatische Abspiel-Anwendungsprogramm erzeugt Abspieldaten auf Basis der wellenformbezogenen Daten in diesem SMF-Format. In diesem Fall wird das Timing der Events durch Addieren der Zeitinformationen bestimmt, die die Zeitabstände zwischen den Events anzeigen, und auf Basis des Zeitabstandes zwischen einem Note-On-Event und dem entsprechenden Note-Off-Event wird die Wiedergabehaltelänge der entsprechenden Silbe bestimmt. Ferner werden abhängig von den Zeichenketten-Events, innerhalb der Abspieldaten Steuerdaten erzeugt, die die Zeichenketten anzeigen, und indem Silben der entsprechenden Zeichenketten den direkt vorausgehenden Note-On-Events der Steuerdaten zugeordnet werden, können aufgrund diese Zeichenketten Zeichen auf dem Editierbildschirm für die Abspieldaten in Rechtecken, die den Silben auf dem Editierbildschirm entsprechen, dargestellt werden.
  • 12. In der oben beschriebenen Ausführungsform wird der Editierbereich unabhängig von der Wiedergabezeit der Silben bestimmt, aber stattdessen ist es auch möglich, den Editierbereich in Abhängigkeit von der Wiedergabezeit der Silben zu bestimmen.
    Wenn im Datenanzeigebereich ein Editierbereich markiert wird, ist es beispielsweise möglich, anstatt die Markierung von Editierbereichen unabhängig von der Wiedergabezeit der Silben zu ermöglichen wie für die oben beschriebene Ausführungsform erläutert wurde, den Anfang der Wiedergabe einer gewünschten Silbe und das Ende der Wiedergabe der gewünschten Silbe als die beiden Ränder des Editierbereiches zu nehmen. In diesem Falle wird es einfacher, den Bereich von Anfang einer gewünschten Silbe bis zum Ende der gewünschten Silbe als Editierbereich zu markieren.
  • 13. In der oben beschriebenen Ausführungsform wird, während die Wiedergabegeschwindigkeit durch Ziehen mit der Maus editiert wird, "Clock" für alle Epen der Abspieldaten bestimmt, und die Anzeige der Rechtecke, die den Silben im Silbenanzeigebereich 120 entsprechen, wird aktualisiert, aber es ist ebenso möglich, "Clock" nur für Silbendaten und Wiedergabegeschwindigkeitsdaten zu bestimmen und zu aktualisieren. In diesem Fall wird die Prozessorlast zur Bestimmung von "Clock" abgemildert, und das Aktualisieren der Bildschirmanzeige verläuft glatter.
  • 14. In der oben beschriebenen Ausführungsform können die Werte für "control", "original" und "result" während des Editierens der Wiedergabegeschwindigkeitsdaten separat dargestellt werden. Da jedoch bei den Wiedergabegeschwindigkeitsdaten nur die Werte für "control" einen Sinn haben, ist es auch möglich vorzusehen, daß nur die "control"-Daten dargestellt werden können, wenn die Wiedergabegeschwindigkeitsdaten editiert werden.
  • 15. In der oben beschriebenen Ausführungsform können die Werte für "control", "original" und "result" während des Editierens der Transponierdaten separat dargestellt werden. Da jedoch für die Werte für "result" dieselben Informationen wie im Silbenanzeigebereich 120 dargestellt werden, ist es auch möglich, die Anzeige der Werte für "result" nicht zu aktualisieren, wenn die Transponierdaten editiert werden.
  • 16. In der oben beschriebenen Ausführungsform werden die vom Benutzer gesetzten Pitch-Bend-Daten und die Transponierdaten an sich als Abspieldaten gespeichert. Stattdessen ist es aber ebenso möglich, das Resultat einer Rechnung, in die die vom Benutzer gesetzten Daten sowie andere Daten eingehen, zu speichern.
    So kann beispielsweise anstatt des Parameters "Value" der vom Benutzer gesetzten Pitch-Bend-Daten auch die Summe von "Value" und "DfltValue" gespeichert werden, also die Daten, die anzeigen, wie Audiowellenform letztendlich wiedergegeben wird. In diesem Fall, falls "control" ausgewählt wird, wird die Differenz der gespeicherten Summe abzüglich "DfltValue" auf dem Editierbildschirm dargestellt, falls "result" ausgewählt wird, wird die gespeicherte Summe auf dem Editierbildschirm dargestellt, und die gespeicherte Summe wird als Pitch-Bend-Daten an das Soundmodul ausgegeben.
    Oder anstatt des Parameters "NoteOffset" der vom Benutzer gesetzten Transponierdaten kann beispielsweise auch die Summe von "NoteOffset" und "SylblOrigKey" gespeichert werden, also die Daten, die anzeigen, wie Audiowellenform letztendlich wiedergegeben wird. In diesem Fall, falls "control" ausgewählt wird, wird Differenz der gespeicherten Summe abzüglich "SylblOrigKey" auf dem Editierbildschirm dargestellt, falls "result" ausgewählt wird, wird die gespeicherte Summe auf dem Editierbildschirm dargestellt, und Note-Ons und Note-Offs werden an das Soundmodul ausgegeben, wobei das Resultat der Subtraktion von "SylblOrigKey" von der gespeicherten Summe und Hinzuaddieren des Wertes der Ursprungstonart als Notenzahl genommen wird.
    Alternativ dazu kann auch anstatt des Parameters "NoteOffset" der vom Benutzer gesetzten Transponierdaten kann beispielsweise auch die Summe von "NoteOffset" und der Originaltonart gespeichert werden, also die Daten, die die Notenzahlen der Note-Ons und Note-Offs anzeigen, die letztendlich an das Soundmodul ausgegeben werden. In diesem Fall, falls "control" ausgewählt wird, wird Differenz der gespeicherten Summe abzüglich der Originaltonart auf dem Editierbildschirm dargestellt, falls "result" ausgewählt wird, wird das Resultat der Subtraktion der Ursprungstonart von der gespeicherten Summe und Hinzuaddieren des SylblOrigKey auf dem Editierbildschirm dargestellt, und Note-Ons und Note-Offs werden an das Soundmodul ausgegeben, wobei die gespeicherte Summe als Notenzahl genommen wird.
    Mit anderen Worten, es ist nicht notwendig, die vom Benutzer gesetzten Daten selbst zu speichern, und andere Daten können gespeichert werden, aus denen die gesetzten Daten dann später rekonstruiert werden.
  • 17. In der oben beschriebenen Ausführungsform werden alle Werte der Wiedergabeschwindigkeit vor dem Editieren auf "1" gesetzt, aber es ist auch möglich, Abspieldaten-Ketten, in welchen die Wiedergabegeschwindigkeit bereits auf andere Werte als "1" gesetzt wurde, zu reeditieren.
In diesem Fall werden die voreingestellten Werte der Wiedergabegeschwindigkeit als "DfltValue" der Wiedergabegeschwindig­ keitsdaten gespeichert, die neu gesetzte Wiedergabegeschwindigkeit wird als "Value" der Wiedergabegeschwindigkeitsdaten gespeichert, und die letztendlichen Wiedergabegeschwindigkeitsdaten sind ein Produkt der beiden.
Oder, die Werte der voreingestellten Wiedergabegeschwindigkeit wird als "DfltValue" der Wiedergabegeschwindigkeitsdaten gespeichert, und das Produkt der voreingestellten Wiedergabegeschwindigkeit und der neu gesetzten Wiedergabegeschwindigkeit wird gespeichert.
In diesem letztem Fall wird das gespeicherte Produkt der voreingestellten Wiedergabegeschwindigkeit und der neu gesetzten Wiedergabegeschwindigkeit als endgültige Wiedergabegeschwindigkeit angenommen.
Ferner kann die neu gesetzte Wiedergabegeschwindigkeit durch Subtraktion von "DfltValue" von der gespeicherten letztendlichen Wiedergabegeschwindigkeit bestimmt werden.
In den Zeichnungen:
Fig. 1 grundlegende Anordnung der Hardware
10 Computer
(CPU, RAM, ROM, CD-ROM-Laufwerk, Festplatte, Tastatur, Maus, Monitor, MIDI-Schnittstelle, usw.)
12 Soundmodul
Fig. 2 Prozess-Routine, die durchgeführt wird, wenn ein MIDI-Signal in das Soundmodul eingegeben wird
Eingabe eines MIDI-Signals
S202 Datentyp?
S204 Senden der wellenformbezogenen Daten
S206 Speichern der festgelegten Silbennummer
S208 Speichern der festgelegten Wiedergabegeschwindigkeit ändern der Wiedergabegeschwindigkeit
S210 Werden momentan Audiowellenformdaten wiedergegeben?
S212 Beginnen der Wiedergabe ab der gespeicherten Silbe, mit der gespeicherten Wiedergabegeschwindigkeit und der festgelegten Tonhöhe
S214 Ändern auf festgelegte Tonhöhe
S216 Selbe Notennummer wie die des zuletzt empfangenen Note-Ons?
S218 Wiedergabe stoppen
S220 Durchführung einer anderen Prozedur
End
<next to the six branches following S202:<
Anfrage nach wellenformbezogenen Daten
Silbennummer
Spezifikation der Wiedergabegeschwindigkeit
Note-On
Note-Off
sonstige
Fig. 4 Prozedure zur Wiedergabe der Abspieldaten laufende Zeit löschen
S402 Ermitteln der laufenden Zeit
S404 Zeit für Wiedergabe
S406 Datentyp?
S408 NoteFLG?
S410 NoteFLG = 1
S412 Spezifizierung der Silbe senden
S414 Note-On senden
S416 In der Note-Off-Tabelle speichern
S418 Nächste Abspieldaten
S420 Selbes "NoteOffset" wie für die direkt vorausgehenden Silbendaten?
S422 Note-On Senden
S424 Speichern in der Note-Off-Tabelle
S426 Note-Off für direkt vorausgehende Silbe senden
S428 Löschen der direkt vorausgehenden Silbe aus der Note-Off-Tabelle
S430 Daten senden
S432 Zeit die Tonerzeugung zu stoppen?
S434 NoteFLG = 0
S436 Note-Off senden
S438 Aus Note-Off-Tabelle löschen
End
Fig. 5 Prozedur zum Bestimmen der Wiedergabedauern.
Wiedergabedauer bestimmen
S502 Variablen initialisieren
Data = Wiedergabegeschwindigkeitsdaten am linken Rand des Editierbereichs
PrevDfltClock = DfltClock[Data]
Integral = 0
TimeRate = Value[Data]
S504 Integrieren der Wiedergabedauer
Integral = Integral + (DfltClock[Data] - PrevDfltClock)/TimeRate
S506 Werte der aktuellen Wiedergabe- geschwindigkeitsdaten den Variablen zuweisen
TimeRate = Value[Data]
PrevDfltClock = DfltClock[Data]
S508 Letzte Wiedergabegeschwindigkeitsdaten des Editierbereichs
S510 Data = Data + 1
End
Fig. 6 Prozedur zum Ändern der Wiedergabezeit (Clock) und der Wiedergabehaltedauer (Length) der Silben beim Editieren der Wiedergabegeschwindigkeit
Wiedergabegeschwindigkeit wird geändert
S602 Variablen initialisieren
Prev_TimeRate_Clock = 0
Prev_TimeRate_DfltClock = 0
TimeRate = Value[0] (also "Value" der Wiedergabegeschwindigkeitsdaten am Anfang)
SyllableFLG = 0
Data = 1
S604 Wiedergabezeit erneuern
S606 Wiedergabehaltedauer der direkt vorausgehenden Silbendaten erneuern
S608 letzte Daten?
S610 nächste Abspieldaten
Data = Data + 1
S612 letzte Silbe verarbeiten
End
Fig. 7 Erneuern der Wiedergabezeit
Clock[Date] <etc., see drawing<
<left:< direkt vorausgehende Wiedergabegeschwindigkeitsdaten (nach dem Erneuern)
<middle:< aktuelle Abspieldaten (vor dem Editieren)
<right:< aktuelle Abspieldaten (nach dem Editieren)
Prev_TimeRate_Clock <etc., see drawing<
* Die von "Prev_TimeRate_Clock" und die von "Prev_TimeRate_DfltClock" angezeigten Zeiten stimmen nicht unbedingt überein, aber hier wird der Einfachheit halber angenommen, daß die beiden übereinstimmen.
Fig. 8 Prozedur zur Erneuerung der Wiedergabehaltedauer der direkt vorausgehenden Silbendaten (für den Fall, daß es sich bei den aktuellen Daten um Wiedergabegeschwindigkeitsdaten handelt)
Start
S802 Erste Silbe schon verarbeitet?
SyllableFLG?
S804 Speichern der bisher gemessenen Dauer vor dem Editieren
Prev_Length = Curt_Length
S806 Messen der Dauer von den direkt vorausgehenden Silbendaten bis zu den aktuellen Abspieldaten vor dem Editieren
Curt_Length = Prev_Length + (Clock[Data] - Prev_Clock) × TimeRate
S808 Gemessene Dauer vor dem Editieren ≧ Dauer der vorausgehenden
Silbendaten vor dem Editieren?
Curt_Length ≧ Prev Length?
S810 Ermitteln der Wiedergabehaltedauer der vorausgehenden Silbendaten nach dem Editieren
Length[PrevSyl] = (Prev_Clock - Prev_Syllable_Clock) + (Prev_DfltLength - Prev_Length)/TimeRate
S812 Zuordnen der Werte der aktuellen Wiedergabegeschwindigkeits­ daten zu den Variablen
Prev_Clock = Clock[Data]
TimeRate = TimeRate_Value[Data]
Prev_TimeRate_Clock = Clock[Data]
Prev_TimeRate_DfltClock = DfltClock[Data]
End
Fig. 9 Prozedeur zum Messen der Dauer von den vorangehenden Silbendaten bis zu den aktuellen Abspieldaten vor dem Editieren
<first from left:< direkt vorausgehende Silbendaten
<second from left:< direkt vorausgehende Wiedergabegeschwindigkeitsdaten
<third from left:< Ende der direkt vorausgehenden Silbendaten vor dem Editieren
<fourth from left:< Ende der direkt vorausgehenden Silbendaten nach dem Editieren
<fifth from left:< aktuelle Abspieldaten (nach dem Erneuern)
* Die Dauer aufgrund der Wiedergabegeschwindigkeit nach dem Editieren ist notiert als
Die Dauer aufgrund der Wiedergabegeschwindigkeit vor dem Editieren ist notiert als
Fig. 10 Prozedur zur Erneuerung der Wiedergabehaltedauer der direkt vorausgehenden Silbendaten (für den Fall, daß es sich bei den aktuellen Daten um Silbendaten handelt)
Start
S1002 Erste Silbe schon verarbeitet?
S1004 Speichern der bisher gemessenen Dauer vor dem Editieren
S1006 Messen der Dauer von den direkt vorausgehenden Silbendaten bis zu den aktuellen Abspieldaten vor dem Editieren
S1008 Gemessene Dauer vor dem Editieren ≧ Dauer der vorausgehenden Silbendaten vor dem Editieren?
S1010 Ermitteln der Wiedergabehaltedauer der vorausgehenden Silbendaten nach dem Editieren
Length[PrevSyl] = Clock[Data] - Prev_Syllable_Clock
S1012 Ermitteln der Länge der Wiedergabehaltedauer der vorausgehenden Silbendaten nach dem Editieren
S1014 SyllalbleFLG = 1
S1016 Zuweisen des Werts der aktuellen Silbendaten zu den Variablen zugewiesen
Prev_Clock = Clock[Data]
Prev_Syllable_Clock = Clock[Data]
Prev_DfltLength = DfltLength[Data]
Curt_Length = 0
PrevSyl = Data
End
Fig. 11 Prozedur zum Bestimmen der Dauer der Wiedergabehaltedaten der vorangehenden Silbendaten nach dem Editieren
<first from left:< direkt vorausgehende Silbendaten
<second from left:< direkt vorausgehende Wiedergabegeschwindigkeits daten
<third from left:< aktuelle Silbendaten Ende der vorausgehenden Silbe nach dem Editieren
<fourth from left:< Ende der vorausgehenden Silbe vor dem Editieren

Claims (11)

1. Ein Verfahren zum Verarbeiten einer Audiowellenform mit einer automatischen Abspielvorrichtung, die einem Soundmodul, in dem eine Audiowellenform gespeichert ist, Anweisungen gibt zur zeitlichen Modifikation bezüglich der Wiedergabe der Audiowellenform, gekennzeichnet durch:
einen ersten Schritt zum Speichern von Informationen, die anzeigen, wie sich ein bestimmtes Merkmal der im Soundmodul gespeicherten Audiowellenform zeitlich ändert;
einen von einem Benutzer durchgeführten zweiten Schritt zur Eingabe einer Anweisung zu einer gewünschten relativen Modifikation des Merkmals der Audiowellenform an einer gewünschten Position auf der Zeitachse;
einen dritten Schritt zum Speichern von Informationen, die anzeigen, wie das Merkmal der Audiowellenform zeitlich modifiziert wird, wenn die angewiesene relative Modifikation bei der angewiesenen Position der Audiowellenform auf der Zeitachse in Übereinstimmung mit der Anweisung des Benutzers zur gewünschten relativen Modifikation des Merkmals der Audiowellenform bei einer gewünschten Position auf der Zeitachse im zweiten Schritt gültig wird;
einen vierten Schritt zum Darstellen, wie sich das Merkmal der Audiowellenform zeitlich ändert, wenn es in Übereinstimmung mit der Anweisung des Benutzers zur relativen Modifikation im zweiten Schritt modifiziert wird, und zwar abhängig von (i) den im ersten Schritt gespeicherten Informationen, die anzeigen, wie sich das Merkmal der Audiowellenform zeitlich ändert, und (ii) der im zweiten Schritt eingegebenen Anweisung zur relativen Modifikation des Merkmals der Audiowellenform; und
einen fünften Schritt zur Ausgabe einer Anweisung zur Modifikation des Merkmals der Audiowellenform mit dem Verlauf der Zeit an das Soundmodul, und zwar abhängig von den im dritten Schritt gespeicherten Informationen, die anzeigen, wie das Merkmal der Audiowellenform zeitlich modifiziert wird.
2. Das Verfahren zum Verarbeiten einer Audiowellenform nach Anspruch 1, dadurch gekennzeichnet, daß
die Anweisung des Benutzers zur gewünschten relativen Modifikation des Merkmals der Audiowellenform an einer gewünschten Position auf der Zeitachse im zweiten Schritt einen gewünschten Bereich auf der Zeitachse sowie eine gewünschte Erhöhung bzw. Verminderung angibt; und
die im dritten Schritt gespeicherten Informationen, die anzeigen, wie das Merkmal der Audiowellenform zeitlich modifiziert wird, Informationswerte im Bereich, der von dieser Anweisung angegeben wird, abhängig von der Erhöhung bzw. Verminderung, die mit der Anweisung des Benutzers zur relativen Modifikation im zweiten Schritt angegeben wurde, erhöhen bzw. verringern, und zwar in Übereinstimmung mit einer bestimmten Änderungsform.
3. Ein Verfahren zum Verarbeiten einer Audiowellenform mit einer automatischen Abspielvorrichtung, die einem Soundmodul, in dem eine Audiowellenform gespeichert ist, Anweisungen gibt zur zeitlichen Modifikation bezüglich der Wiedergabe der Audiowellenform, gekennzeichnet durch:
einen ersten Schritt zum Speichern von Informationen, die Positionen auf der Zeitachse anzeigen, zu denen Töne der Audiowellenform, die mehrere Töne enthält, die im Soundmodul gespeichert sind, wiedergegeben werden;
einen von einem Benutzer durchgeführten zweiten Schritt zur Eingabe einer Anweisung zu einer gewünschten Modifikation einer Wiedergabegeschwindigkeit der Audiowellenform an einer gewünschten Position auf der Zeitachse;
einen dritten Schritt zum Speichern von Informationen, die anzeigen, wie die Wiedergabegeschwindigkeit der Audiowellenform zeitlich modifiziert wird, wenn die angewiesene Modifikation bei der angewiesenen Position der Audiowellenform auf der Zeitachse in Übereinstimmung mit der Anweisung des Benutzers zur gewünschten Modifikation der Wiedergabegeschwindigkeit der Audiowellenform an einer gewünschten Position auf der Zeitachse im zweiten Schritt gültig wird;
einen vierten Schritt zum Darstellen von Positionen auf der Zeitachse bei denen Töne der Audiowellenform wiedergegeben werden, wenn die Wiedergabegeschwindigkeit der Audiowellenform in Übereinstimmung mit der Anweisung des Benutzers zur Modifikation im zweiten Schritt modifiziert werden, und zwar abhängig von (i) den im ersten Schritt gespeicherten Informationen, die Positionen auf der Zeitachse anzeigen, zu denen Töne der Audiowellenform wiedergegeben werden, und (ii) der im zweiten Schritt eingegebenen Anweisung zur gewünschten Modifikation der Wiedergabegeschwindigkeit der Audiowellenform; und
einen fünfter Schritt zur Ausgabe einer Anweisung zur Modifikation der Wiedergabegeschwindigkeit der Audiowellenform mit dem Verlauf der Zeit an das Soundmodul, und zwar abhängig von den im dritten Schritt gespeicherten Informationen, die anzeigen, wie die Wiedergabegeschwindigkeit der Audiowellenform zeitlich modifiziert wird.
4. Das Verfahren zum Verarbeiten einer Audiowellenform nach Anspruch 3, ferner gekennzeichnet durch:
einen sechsten Schritt zum Speichern einer Position auf der Zeitachse, zu der eine Anweisung zur Modifikation einer bestimmten Art der Wiedergabe der im Soundmodul gespeicherten Audiowellenform ausgegeben wird; und
einen siebten Schritt zur Änderung der im sechsten Schritt gespeicherten Ausgabeposition auf der Zeitachse der Anweisung zur Modifikation einer bestimmten Art der Wiedergabe, und zwar abhängig von der Anweisung des Benutzers zur Modifikation im zweiten Schritt, sowie Ausgabe dieser Anweisung zur Modifikation an der geänderten Position auf der Zeitachse mit dem Verlauf der Zeit an das Soundmodul.
5. Das Verfahren zum Verarbeiten einer Audiowellenform nach Anspruch 3, dadurch gekennzeichnet, daß:
die Anweisung des Benutzers zur gewünschten Modifikation der Wiedergabegeschwindigkeit der Audiowellenform an einer gewünschten Position auf der Zeitachse im zweiten Schritt einen gewünschten Bereich auf der Zeitachse sowie eine gewünschte Erhöhung bzw. Verminderung angibt; und
die im dritten Schritt gespeicherten Informationen, die anzeigen, wie die Wiedergabegeschwindigkeit der Audiowellenform zeitlich modifiziert wird, Informationswerte im Bereich, der von dieser Anweisung angegeben wird, abhängig von der Erhöhung bzw. Verminderung, die mit der Anweisung des Benutzers zur Modifikation der Wiedergabegeschwindigkeit im zweiten Schritt angegeben wurde, erhöhen bzw. verringern, und zwar in Übereinstimmung mit einer bestimmten Änderungsform.
6. Ein Gerät zum Verarbeiten einer Audiowellenform mit einer automatischen Abspielvorrichtung, die einem Soundmodul, in dem eine Audiowellenform gespeichert ist, Anweisungen gibt zur zeitlichen Modifikation bezüglich der Wiedergabe der Audiowellenform, gekennzeichnet durch:
eine erste Speichervorrichtung zum Speichern von Informationen, die anzeigen, wie sich ein bestimmtes Merkmal der im Soundmodul gespeicherten Audiowellenform zeitlich ändert;
eine Eingabevorrichtung, mit er ein Benutzer eine Anweisung zu einer gewünschten relativen Modifikation des Merkmals der Audiowellenform an einer gewünschten Position auf der Zeitachse eingeben kann;
eine zweite Speichervorrichtung zum Speichern von Informationen, die anzeigen, wie das Merkmal der Audiowellenform zeitlich modifiziert wird, wenn die angewiesene relative Modifikation bei der angewiesenen Position der Audiowellenform auf der Zeitachse in Übereinstimmung mit den vom Benutzer in die Eingabevorrichtung eingegebenen Anweisungen zur gewünschten relativen Modifikation des Merkmals der Audiowellenform bei einer gewünschten Position auf der Zeitachse im zweiten Schritt gültig wird;
eine Anzeigevorrichtung zum Darstellen, wie sich das Merkmal der Audiowellenform zeitlich ändert, wenn es in Übereinstimmung mit den vom Benutzer in die Eingabevorrichtung eingegebenen Anweisungen zur relativen Modifikation modifiziert wird, und zwar abhängig von (i) den in der ersten Speichervorrichtung gespeicherten Informationen, die anzeigen, wie sich das Merkmal der Audiowellenform zeitlich ändert, und (ii) der in die Eingabevorrichtung eingegebenen Anweisung zur relativen Modifikation des Merkmals der Audiowellenform; und
eine Ausgabevorrichtung zur Ausgabe einer Anweisung zur Modifikation des Merkmals der Audiowellenform mit dem Verlauf der Zeit an das Soundmodul, und zwar abhängig von den in der zweiten Speichervorrichtung gespeicherten Informationen, die anzeigen, wie das Merkmal der Audiowellenform zeitlich modifiziert wird.
7. Das Gerät zum Verarbeiten einer Audiowellenform nach Anspruch 6, dadurch gekennzeichnet, daß
die vom Benutzer in die Eingabevorrichtung eingegebene Anweisung zur gewünschten relativen Modifikation des Merkmals der Audiowellenform an einer gewünschten Position auf der Zeitachse einen gewünschten Bereich auf der Zeitachse sowie eine gewünschte Erhöhung bzw. Verminderung angibt; und
die in der zweiten Speichervorrichtung gespeicherten Informationen, die anzeigen, wie das Merkmal der Audiowellenform zeitlich modifiziert wird, Informationswerte im Bereich, der von dieser Anweisung angegeben wird, abhängig von der Erhöhung bzw. Verminderung, die mit der in die Eingabevorrichtung eingegebenen Anweisung des Benutzers zur relativen Modifikation angegeben wurde, erhöhen bzw. verringern, und zwar in Übereinstimmung mit einer bestimmten Änderungsform.
8. Ein Gerät zum Verarbeiten einer Audiowellenform mit einer automatischen Abspielvorrichtung, die einem Soundmodul, in dem eine Audiowellenform gespeichert ist, Anweisungen gibt zur zeitlichen Modifikation bezüglich der Wiedergabe der Audiowellenform, gekennzeichnet durch:
eine erste Speichervorrichtung zum Speichern von Informationen, die Positionen auf der Zeitachse anzeigen, zu denen Töne der Audiowellenform, die mehrere Töne enthält, die im Soundmodul gespeichert sind, wiedergegeben werden;
eine Eingabevorrichtung, mit der ein Benutzer eine Anweisung zu einer gewünschten Modifikation einer Wiedergabegeschwindigkeit der Audiowellenform an einer gewünschten Position auf der Zeitachse eingeben kann;
eine zweite Speichervorrichtung zum Speichern von Informationen, die anzeigen, wie die Wiedergabegeschwindigkeit der Audiowellenform zeitlich modifiziert wird, wenn die angewiesene Modifikation bei der angewiesenen Position der Audiowellenform auf der Zeitachse in Übereinstimmung mit der vom Benutzer in die Eingabevorrichtung eingegebene Anweisung zur gewünschten Modifikation der Wiedergabegeschwindigkeit der Audiowellenform an einer gewünschten Position auf der Zeitachse gültig wird;
eine Anzeigevorrichtung zum Darstellen von Positionen auf der Zeitachse bei denen Töne der Audiowellenform wiedergegeben werden, wenn die Wiedergabegeschwindigkeit der Audiowellenform in Übereinstimmung mit den vom Benutzer in die Eingabevorrichtung eingegebenen Anweisungen zur Modifikation modifiziert wird, und zwar abhängig von (i) den in der ersten Speichervorrichtung gespeicherten Informationen, die Positionen auf der Zeitachse anzeigen, zu denen Töne der Audiowellenform wiedergegeben werden, und (ii) der in die Eingabevorrichtung eingegebenen Anweisung zur gewünschten Modifikation der Wiedergabegeschwindigkeit der Audiowellenform; und
eine Ausgabevorrichtung zur Ausgabe einer Anweisung zur Modifikation der Wiedergabegeschwindigkeit der Audiowellenform mit dem Verlauf der Zeit an das Soundmodul, und zwar abhängig von den in der zweiten Speichervorrichtung gespeicherten Informationen, die anzeigen, wie die Wiedergabegeschwindigkeit der Audiowellenform zeitlich modifiziert wird.
9. Das Gerät zum Verarbeiten einer Audiowellenform nach Anspruch 8, ferner gekennzeichnet durch:
eine dritte Speichervorrichtung zum Speichern einer Position auf der Zeitachse, zu der eine Anweisung zur Modifikation einer bestimmten Art der Wiedergabe der im Soundmodul gespeicherten Audiowellenform ausgegeben wird und
eine zweite Ausgabevorrichtung zur Änderung der in der dritten Speichervorrichtung gespeicherten Ausgabeposition auf der Zeitachse der Anweisung zur Modifikation einer bestimmten Art der Wiedergabe, und zwar abhängig von der vom Benutzer in die Eingabevorrichtung eingegebenen Anweisung zur Modifikation, sowie Ausgabe dieser Anweisung zur Modifikation an der geänderten Position auf der Zeitachse mit dem Verlauf der Zeit an das Soundmodul.
10. Das Gerät zum Verarbeiten einer Audiowellenform nach Anspruch 8, dadurch gekennzeichnet, daß
die vom Benutzer in die Eingabevorrichtung eingegebene Anweisung zur gewünschten Modifikation der Wiedergabegeschwindigkeit der Audiowellenform an einer gewünschten Position auf der Zeitachse einen gewünschten Bereich auf der Zeitachse sowie eine gewünschte Erhöhung bzw. Verminderung angibt; und
die in der zweiten Speichervorrichtung gespeicherten Informationen, die anzeigen, wie die Wiedergabegeschwindigkeit der Audiowellenform zeitlich modifiziert wird, Informationswerte im Bereich, der von dieser Anweisung angegeben wird, abhängig von der Erhöhung bzw. Verminderung, die mit der vom Benutzer in die Eingabevorrichtung eingegebenen Anweisung zur Modifikation der Wiedergabegeschwindigkeit angegeben wurde, erhöhen bzw. verringern, und zwar in Übereinstimmung mit einer bestimmten Änderungsform;
11. Ein computerlesbares Speichermedium, auf dem ein Programm für ein Verfahren zum Verarbeiten einer Audiowellenform nach einem der Ansprüche 1 bis 5 gespeichert ist.
DE2000156980 1999-11-19 2000-11-17 Verfahren und Gerät zum Verarbeiten einer Audiowellenform Withdrawn DE10056980A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP32924399A JP2001147691A (ja) 1999-11-19 1999-11-19 オーディオ波形処理方法、オーディオ波形処理装置およびオーディオ波形処理方法のプログラムを記録したコンピュータ読み取り可能な記録媒体

Publications (1)

Publication Number Publication Date
DE10056980A1 true DE10056980A1 (de) 2001-06-07

Family

ID=18219263

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2000156980 Withdrawn DE10056980A1 (de) 1999-11-19 2000-11-17 Verfahren und Gerät zum Verarbeiten einer Audiowellenform

Country Status (2)

Country Link
JP (1) JP2001147691A (de)
DE (1) DE10056980A1 (de)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3823928B2 (ja) 2003-02-27 2006-09-20 ヤマハ株式会社 スコアデータ表示装置およびプログラム
JP4876645B2 (ja) * 2006-03-13 2012-02-15 ヤマハ株式会社 波形編集装置
JP5262464B2 (ja) * 2008-09-04 2013-08-14 ヤマハ株式会社 音声処理装置およびプログラム
US9728225B2 (en) 2013-03-12 2017-08-08 Cyberlink Corp. Systems and methods for viewing instant updates of an audio waveform with an applied effect

Also Published As

Publication number Publication date
JP2001147691A (ja) 2001-05-29

Similar Documents

Publication Publication Date Title
DE69623318T2 (de) Verfahren und vorrichtung zur interaktiven bildung von neuen bearbeitungen von musikstücken
EP1336173B1 (de) Anordnung bzw. anlage zum komponieren
DE68913278T2 (de) Vorrichtung zur Wiedergabe von Musik und zur Anzeige von Worten.
DE60018626T2 (de) Vorrichtung und Verfahren zur Eingabe von Steuerungsdateien für Musikvorträge
DE69625693T2 (de) Verfahren und vorrichtung zur formatierung von digitalen, elektrischen daten
EP1415297B1 (de) Automatische erzeugung von musikalischen sratch-effekten
DE602004000873T2 (de) Vorrichtung zur Synthese einer singenden Stimme unter Berücksichtigung unterschiedlicher Modelle je nach Ansatzkontext der gesungenen Töne
DE202020005830U1 (de) Vorrichtung zum Zerlegen, Rekombinieren und Abspielen von Audiodaten
EP2099024B1 (de) Verfahren zur klangobjektorientierten Analyse und zur notenobjektorientierten Bearbeitung polyphoner Klangaufnahmen
DE69720706T2 (de) Interaktives system zur synchronisierung und zum simultanen spielen von vorbestimmten musiksequenzen
DE60024157T2 (de) Vorrichtung und Verfahren zur Eingabe eines Vortragstils
DE60308370T2 (de) Musikalisches notierungssystem
DE60026189T2 (de) Verfahren und Vorrichtung zur Wellenformkomprimierung und Erzeugung
DE112013005807T5 (de) Vorrichtung und Verfahren zur Erzeugung einer Echtzeitmusikbegleitung
DE102009040540B4 (de) Elektronisches Musikinstrument mit Stegreifaufführungsfunktion und Programm für Stegreifaufführungsfunktion
DE102007034356A1 (de) Vorrichtung zur Tempobestimmung und Computerprogramm zur Tempobestimmung
DE60215750T2 (de) Vorrichtung und Verfahren zum Anzeigen von Akkorden
DE202015006043U1 (de) Signalfolge und Datenträger mit einem Computerprogramm zur Wiedergabe eines Musikstücks
DE3023581C2 (de) Verfahren zur digitalen Hüllkurvensteuerung eines polyphonen Musiksyntheseinstruments und Schaltungsanordnung zur Durchführung des Verfahrens
DE60033098T2 (de) Verfahren und Vorrichtung zur Aufnahme/Wiedergabe oder Erzeugung von Wellenformen mittels Zeitlageinformation
DE60006131T2 (de) Verfahren und vorrichtung zur erzeugung von improvisierter musik
DE10056980A1 (de) Verfahren und Gerät zum Verarbeiten einer Audiowellenform
DE60032844T2 (de) Verfahren und Vorrichtung zur Erzeugung einer Wellenform auf einem Auslegungsstildatenstrom basiert
DE60032085T2 (de) Verfahren und Vorrichtung zur Erzeugung einer Wellenform mit verbessertem Übergang zwischen aufeinandervolgenden Dateimodulen
DE2513127C2 (de) Verfahren zum künstlichen Erzeugen eines musikalischen Klangs

Legal Events

Date Code Title Description
8139 Disposal/non-payment of the annual fee