Playing multiple concurrent instances of musical segments
    1.
    发明授权
    Playing multiple concurrent instances of musical segments 失效
    播放音乐段的多个并发实例

    公开(公告)号:US06433266B1

    公开(公告)日:2002-08-13

    申请号:US09243192

    申请日:1999-02-02

    IPC分类号: A63H500

    摘要: A musical performance is generated by a segment object and a plurality of constituent track objects. Multiple segment instances can be played concurrently by instantiating multiple state objects corresponding to the segment instances. Each state object stores state information for the track objects of the segment object. When calling a track object to play a portion of its track, the state object provides the stored state information and the track object plays in accordance with the provided state information. The track object updates the state information and returns it to the segment object. Each state object calls the same track objects, but maintains a different set of state information for use by the track objects. This allows multiple concurrent instances of the tracks, without requiring actual duplication of the track objects.

    摘要翻译: 音乐表演由段对象和多个组成轨道对象产生。 可以通过实例化与段实例相对应的多个状态对象来同时播放多个段实例。 每个状态对象存储段对象的轨迹对象的状态信息。 当调用轨道对象来播放其轨道的一部分时,状态对象提供所存储的状态信息,并且跟踪对象根据所提供的状态信息播放。 轨道对象更新状态信息并将其返回到段对象。 每个状态对象调用相同的跟踪对象,但是维护一组不同的状态信息供轨道对象使用。 这允许轨道的多个并发实例,而不需要实际复制轨道对象。

    Inter-track communication of musical performance data
    2.
    发明授权
    Inter-track communication of musical performance data 失效
    音乐演奏数据的轨道间通信

    公开(公告)号:US06541689B1

    公开(公告)日:2003-04-01

    申请号:US09243083

    申请日:1999-02-02

    IPC分类号: G10H700

    摘要: A music generation system includes a segment manager and a plurality of segment objects. Each segment object has one or more track objects. Each track object containing a time sequence of musical performance data. Some of the track objects are dependent track objects and some of the track objects are controlling track objects. The dependent track objects contain dependent musical performance data that is interpreted based on controlling musical performance data contained in one or more of the controlling track objects. Each of the controlling track objects contains a predefined type of controlling musical performance data, wherein a plurality of different control type identifiers correspond respectively to different predefined types of controlling musical performance data. When a dependent track object needs controlling musical performance data, the track object calls the segment manager with an argument comprising a control type identifier. The segment manager responds by calling one or more segment objects with arguments that include the received control type identifier. In response a called segment object identifies one of its track objects that contains the requested type of controlling musical performance data and returns the musical performance data from the identified track object to the segment manager.

    摘要翻译: 音乐生成系统包括片段管理器和多个片段对象。 每个段对象都有一个或多个轨道对象。 每个轨道对象包含一个音乐演奏数据的时间序列。 一些轨道对象是依赖的轨道对象,一些轨道对象是控制轨道对象。 依赖轨道对象包含依赖于音乐演奏数据,该数据基于控制包含在一个或多个控制轨道对象中的演奏数据来解释。 每个控制轨迹对象包含预定类型的控制演奏数据,其中多个不同的控制类型标识符分别对应于不同的预定类型的控制演奏数据。 当依赖轨道对象需要控制演奏数据时,轨道对象使用包括控制类型标识符的参数来调用段管理器。 段管理员通过调用一个或多个包含接收到的控制类型标识符的参数的段对象进行响应。 作为响应,被叫分段对象识别其中包含所请求类型的控制演奏数据的轨道对象之一,并将演奏数据从所识别的轨道对象返回给分段管理器。

    Track-based music performance architecture
    3.
    发明授权
    Track-based music performance architecture 有权
    基于音轨的音乐表演架构

    公开(公告)号:US06169242A

    公开(公告)日:2001-01-02

    申请号:US09243326

    申请日:1999-02-02

    IPC分类号: A63H500

    摘要: The invention utilizes segments and tracks to generate and playback musical performances. A segment is implemented as a programming object, and represents a specified musical piece. The segment comprises a plurality of tracks, each of which is implemented as a programming object. The tracks are of different types, and generate music in a variety of ways. However, every track supports an identical track interface that is utilized by the segment object. To play the musical piece, a performance supervisor makes repeated calls to the segment object to play specified intervals of the musical piece. In response, the segment object calls its track objects, requesting them to play the specified interval. The tracks generate the requested interval in accordance with their own methods. In some cases, the track objects communicate and cooperate with each other to generate their musical tracks.

    摘要翻译: 本发明利用段和轨道来产生和回放音乐表演。 段被实现为编程对象,并且表示指定的乐曲。 该段包括多个轨道,每个轨道被实现为编程对象。 轨道是不同的类型,并以各种方式产生音乐。 然而,每个轨道都支持由段对象使用的相同轨道接口。 要播放音乐作品,演出主管重复调用片段对象以播放音乐作品的指定间隔。 作为响应,段对象调用其跟踪对象,请求它们播放指定的间隔。 轨道根据自己的方法生成所请求的间隔。 在某些情况下,轨道对象彼此通信和协作以产生其音轨。

    Dynamically halting music event streams and flushing associated command
queues
    4.
    发明授权
    Dynamically halting music event streams and flushing associated command queues 有权
    动态停止音乐事件流并刷新相关的命令队列

    公开(公告)号:US6150599A

    公开(公告)日:2000-11-21

    申请号:US243072

    申请日:1999-02-02

    CPC分类号: G10H1/0066 G10H2240/305

    摘要: A system for processing music events includes a plurality of different music sources that provide music events to a performance manager. In response to receiving a music event, the performance manager calculates a time sequence of individual MIDI commands to implement the music event, and places a first of these events in a command queue. The performance manager monitors the command queue, and removes and processes individual commands from the command queue at the times indicated by their timestamps. Upon removing a non-concluding individual command of particular time sequence from the command queue, the music processing component determines a subsequent individual command of the particular time sequence and places it in the command queue. Upon receiving a flush instruction for a particular music source, the performance manager identifies any individual commands in the command queue corresponding to the music source, processes any of the commands that are off commands, and discards any other commands. Certain commands have associated reset values that are applied when the commands are removed from the queue in response to a flush instruction.

    摘要翻译: 用于处理音乐事件的系统包括向演奏管理器提供音乐事件的多个不同的音乐源。 响应于接收到音乐事件,演奏管理器计算各个MIDI命令的时间序列以实现音乐事件,并将这些事件中的第一个放在命令队列中。 性能管理器监视命令队列,并在其时间戳指示的时间从命令队列中删除和处理各个命令。 在从命令队列中移除特定时间序列的非结束单独命令时,音乐处理组件确定特定时间序列的后续单独命令并将其放置在命令队​​列中。 在接收到特定音乐源的刷新指令时,性能管理器识别与音乐源相对应的命令队列中的任何单独命令,处理任何关闭命令的命令,并丢弃任何其他命令。 某些命令具有相应的重置值,当这些命令从队列中移除以响应flush操作时应用。

    System and method for arranging and invoking music event processors
    5.
    发明授权
    System and method for arranging and invoking music event processors 有权
    用于排列和调用音乐事件处理器的系统和方法

    公开(公告)号:US5902947A

    公开(公告)日:1999-05-11

    申请号:US154335

    申请日:1998-09-16

    IPC分类号: G10H1/00 G10H7/00 G09B15/02

    摘要: A music processing system that processes music events includes a performance supervisor and a graph object. The graph object defines an ordered graph of music event processors, through which music events are routed. The graph object has a graph interface with methods allowing an application to insert and remove event processors in the graph. In addition, the graph interface has a method that can be called to update a music event data structure that represents the music event. This updating consists up supplying an identification of a music event processor that is next to receive the music event. Each event processor has a processor interface, which includes an initialization method and a process event method for performing the actual processing of a music event. Each processor supports one of a plurality of delivery timing modes, and also supports a subset of available event types. When inserting a music event processor in a graph, an application program can specify which instrument channel the event processor is to act upon.

    摘要翻译: 处理音乐事件的音乐处理系统包括表演主管和图形对象。 图形对象定义了音乐事件处理器的有序图,音乐事件处理器通过该有序图路由音乐事件。 图形对象具有图形界面,其中包含允许应用程序在图中插入和删除事件处理器的方法。 另外,图形界面具有可被调用来更新表示音乐事件的音乐事件数据结构的方法。 该更新包括提供接下来接收音乐事件的音乐事件处理器的标识。 每个事件处理器具有处理器接口,其包括用于执行音乐事件的实际处理的初始化方法和处理事件方法。 每个处理器支持多个递送定时模式之一,并且还支持可用事件类型的子集。 当在图形中插入音乐事件处理器时,应用程序可以指定事件处理器要采取的哪个仪器通道。

    System and method for enhancing musical performances in computer based
musical devices
    6.
    发明授权
    System and method for enhancing musical performances in computer based musical devices 失效
    用于增强基于计算机的音乐装置的音乐表演的系统和方法

    公开(公告)号:US5900567A

    公开(公告)日:1999-05-04

    申请号:US880883

    申请日:1997-06-23

    IPC分类号: G10H1/00 G10H1/20 G10H1/38

    摘要: A system and a method for the notes of one track to move in a harmonically separate manner from the notes of another track when the notes of each track are played against a chord progression. Each track is associated with a chord function. The notes of the tracks are then played against a progression of polychords, where each polychord consists of one or more chords. In addition, each chord of a polychord is associated with one or more chord functions. During operation, each note of a track is mapped against a chord of the currently playing polychord. The chord for each track is selected by identifying the chord of the polychord that is associated with the same chord function as the track. Furthermore, individual tracks, groups of notes, or single notes can be assigned to one of several playback modes. Each note includes a field that identifies a playback mode. In addition, each track is associated with a playback mode. Prior to generating a performance note, the playback mode for the note is determined, and the note is transposed or mapped against the currently playing chord in accordance with the playback mode.

    摘要翻译: 一种轨道的音符的系统和方法,当每个轨道的音符相对于和弦进行播放时,以和声分离的方式从另一声道的音符移动。 每个轨道与和弦功能相关联。 然后,轨道的音符与多个弦的进程相对应,其中每个多弦由一个或多个和弦组成。 另外,多弦的每个和弦与一个或多个和弦功能相关联。 在操作期间,轨道的每个音符被映射到当前播放的多声道的和弦。 通过识别与轨道相同的和弦功能相关联的多频和弦来选择每个轨道的和弦。 此外,可以将各个轨道,音符组或单个音符分配给多种播放模式之一。 每个音符包括一个标识播放模式的字段。 另外,每个轨道与回放模式相关联。 在生成演奏笔记之前,确定音符的播放模式,并根据播放模式,将音符转换或映射到当前播放的和弦。

    Music event timing and delivery in a non-realtime environment
    7.
    发明授权
    Music event timing and delivery in a non-realtime environment 有权
    音乐事件定时和非实时环境中的传送

    公开(公告)号:US06353172B1

    公开(公告)日:2002-03-05

    申请号:US09243073

    申请日:1999-02-02

    IPC分类号: A63H500

    CPC分类号: G10H7/002 G10H2240/056

    摘要: A music generation and playback system includes an application program and a music processing component. The application program makes repeated calls to the music processing component and provides a group of music events to be sent to the music processing component during each call. Each group of events comprises a plurality of individual events and associated timestamps indicating when the events are to be played. The timestamps of the individual music events of a particular group indicate that the events are to be played at varying times subsequent to being sent to the music processing component. The music processing component exposes a latency clock interface, which indicates the earliest time at which a new music event can be rendered. The application program uses this interface to determine how far ahead of time to provide new music events, and to schedule spontaneously occurring events for playback at the earliest possible time.

    摘要翻译: 音乐生成和播放系统包括应用程序和音乐处理组件。 应用程序对音乐处理组件进行重复呼叫,并在每个呼叫期间提供要发送到音乐处理组件的一组音乐事件。 每组事件包括指示何时播放事件的多个单独事件和相关联的时间戳。 特定组的各个音乐事件的时间戳指示事件将被发送到音乐处理组件之后的不同时间播放。 音乐处理组件暴露了延迟时钟接口,其指示可以呈现新音乐事件的最早时间。 应用程序使用此界面来确定提供新音乐事件的时间提前多远,并尽可能安排自发发生的事件进行播放。

    Automatic note inversions in sequences having melodic runs
    8.
    发明授权
    Automatic note inversions in sequences having melodic runs 有权
    自动音符反转序列具有旋律运行

    公开(公告)号:US6093881A

    公开(公告)日:2000-07-25

    申请号:US243193

    申请日:1999-02-02

    IPC分类号: G10H1/00 G10H1/38 G10H5/00

    摘要: A method of generating music includes steps of specifying a note sequence and a chord progression against which the note sequence is played. The notes of the note sequence are defined relative to chord elements, and melodic runs are identified within the note sequence. Each melodic run consists of a series of notes. Inversion conditions are specified in terms of inversion boundaries and in terms of legal inversion notes relative to the individual chords of the chord progression. When interpreting the note sequence in conjunction with the chord progression to generate output notes, the output notes are compared against the inversion conditions and inverted if appropriate. If a note belongs to an identified melodic run, the run is evaluated against the inversion conditions as a whole. More specifically, one note of the melodic run is compared against the inversion conditions. If the one note satisfies the inversion conditions, the entire run is inverted. If the one note does not satisfy the inversion conditions, none of the notes of the run are inverted.

    摘要翻译: 产生音乐的方法包括指定音符序列和音符序列播放的和弦进行的步骤。 音符序列的音符相对于和弦元素定义,并且音符运行在音符序列内被识别。 每个旋律都由一系列音符组成。 反转条件是根据反转边界和关于和弦进行的各个和弦的合法反转音符来规定的。 当将音符序列结合和弦进行解释以产生输出音符时,将输出音符与反转条件进行比较,如果适当,则将其反转。 如果音符属于识别的旋律曲线,则运行将根据反演条件作为整体进行评估。 更具体地说,将旋律跑步的一个音符与反转条件进行比较。 如果一个音符满足反转条件,则整个运行反转。 如果一个音符不满足反转条件,那么运行的音符都不会反转。

    Signal parameter track time slice control point, step duration, and
staircase delta determination, for synthesizing audio by plural
functional components
    9.
    发明授权
    Signal parameter track time slice control point, step duration, and staircase delta determination, for synthesizing audio by plural functional components 失效
    用于通过多个功能组件合成音频的信号参数跟踪时间片控制点,步长和阶梯差分决定

    公开(公告)号:US5920843A

    公开(公告)日:1999-07-06

    申请号:US880868

    申请日:1997-06-23

    申请人: Todor C. Fay

    发明人: Todor C. Fay

    IPC分类号: G10H7/00 G10H1/02 G10L3/02

    摘要: The present invention provides a system and a method for tracking parameters of a synthesized �an! audio signal that reduces the amount of processing time without causing any discernible degradation in the sound quality of the audio signal. An audio signal is intelligently divided into multiple time slices and the parameters of the audio signal are tracked over the duration of the time slice. The time slices are selected so that the actual characteristic of the parameters over the duration of the time slice can be easily approximated by performing simple, non-processor intensive steps. The characteristics of various components of an audio signal such as a volume envelope, pitch envelope, low frequency oscillator, MIDI commands controlling the audio signal, and various other inputs are used to identify control points. Adjacent control points are then selected as the start point and end point of a time slice. Absolute values for the start point and the end point of the time slice are used to determine a step duration and a step delta. The parameters of the audio signal are tracked by using the absolute values for the start point of the time slice to generate initial control signals for the audio signal at the start point of the time slice. Then, the control signals are modified by the step delta at every step duration to the end point of the time slice.

    摘要翻译: 本发明提供一种用于跟踪合成音频信号的参数的系统和方法,该参数减少了处理时间量,而不会导致音频信号的声音质量的任何可辨别的劣化。 将音频信号智能地划分成多个时间片,并且在时间片段的持续时间内跟踪音频信号的参数。 选择时间片,使得可以通过执行简单的非处理器密集步骤来容易地近似在时间片段的持续时间内的参数的实际特性。 使用诸如音量包络,音调包络,低频振荡器,控制音频信号的MIDI命令以及各种其他输入之类的音频信号的各种组件的特征来识别控制点。 然后选择相邻的控制点作为时间片的起点和终点。 时间片的起点和终点的绝对值用于确定步长和步长。 通过使用时间片的起始点的绝对值来跟踪音频信号的参数,以在时间片的开始点产生音频信号的初始控制信号。 然后,将控制信号通过在每个步长的步长修改到时间片的终点。

    System and method for representing a musical event and for converting
the musical event into a series of discrete events
    10.
    发明授权
    System and method for representing a musical event and for converting the musical event into a series of discrete events 失效
    用于表示音乐事件并将音乐事件转换成一系列离散事件的系统和方法

    公开(公告)号:US5827989A

    公开(公告)日:1998-10-27

    申请号:US880922

    申请日:1997-06-23

    摘要: The present invention includes a system and a method for a series of discrete MIDI events to be represented by a single curve event. The curve event is stored as a curve data structure and may include one or more sub-curve data structures. Each sub-curve data structure represents one or more of the series of discrete MIDI events. The curve data structure identifies when the curve event should start, the type of MIDI events that the curve represents, and a list of one or more sub-curve data structures. Each of the sub-curve data structures identify a curve-shape, the start time for the playback of the sub-curve, the end time for the playback of the sub-curve, the minimum and maximum values that the sub-curve reaches, and an orientation of the sub-curve. At performance time, each sub-curve event in the curve data structure is converted into time-stamped, discrete MIDI events that can be provided as input to a MIDI device. This is accomplished by, for each sub-curve identified in a curve structure: (1) establishing the starting point of sub-curve; (2) establishing the value for the first MIDI event; (3) establishing the ending time of the sub-curve; (4) establishing the value for the last event; (5) generating a series of MIDI events between the first and last MIDI events.

    摘要翻译: 本发明包括用于由单个曲线事件表示的一系列离散MIDI事件的系统和方法。 曲线事件被存储为曲线数据结构,并且可以包括一个或多个子曲线数据结构。 每个子曲线数据结构表示一系列离散MIDI事件中的一个或多个。 曲线数据结构标识曲线事件何时开始,曲线表示的MIDI事件的类型以及一个或多个子曲线数据结构的列表。 每个子曲线数据结构识别曲线形状,子曲线的回放的开始时间,子曲线的回放的结束时间,子曲线到达的最小值和最大值, 和子曲线的方向。 在演奏时间,曲线数据结构中的每个子曲线事件转换成可以作为MIDI设备的输入提供的时间戳的离散MIDI事件。 这是通过对于以曲线结构识别的每个子曲线来实现的:(1)建立子曲线的起点; (2)建立第一个MIDI事件的值; (3)建立子曲线的结束时间; (4)确定上次事件的价值; (5)在第一个和最后一个MIDI事件之间产生一系列MIDI事件。