CN1794345B - 乐曲再生装置 - Google Patents
乐曲再生装置 Download PDFInfo
- Publication number
- CN1794345B CN1794345B CN200510107104.3A CN200510107104A CN1794345B CN 1794345 B CN1794345 B CN 1794345B CN 200510107104 A CN200510107104 A CN 200510107104A CN 1794345 B CN1794345 B CN 1794345B
- Authority
- CN
- China
- Prior art keywords
- mentioned
- message
- function portion
- sequencer
- read
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC 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/00—Instruments in which the tones are synthesised from a data store, e.g. computer organs
- G10H7/002—Instruments in which the tones are synthesised from a data store, e.g. computer organs using a common processing for different operations or calculations, and a set of microinstructions (programme) to control the sequence thereof
- G10H7/006—Instruments in which the tones are synthesised from a data store, e.g. computer organs using a common processing for different operations or calculations, and a set of microinstructions (programme) to control the sequence thereof using two or more algorithms of different types to generate tones, e.g. according to tone color or to processor workload
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC 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
- G10H2230/00—General physical, ergonomic or hardware implementation of electrophonic musical tools or instruments, e.g. shape or architecture
- G10H2230/025—Computing or signal processing architecture features
- G10H2230/031—Use of cache memory for electrophonic musical instrument processes, e.g. for improving processing capabilities or solving interfacing problems
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC 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
- G10H2230/00—General physical, ergonomic or hardware implementation of electrophonic musical tools or instruments, e.g. shape or architecture
- G10H2230/025—Computing or signal processing architecture features
- G10H2230/041—Processor load management, i.e. adaptation or optimization of computational load or data throughput in computationally intensive musical processes to avoid overload artifacts, e.g. by deliberately suppressing less audible or less relevant tones or decreasing their complexity
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC 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/00—Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
- G10H2240/011—Files or data streams containing coded musical information, e.g. for transmission
- G10H2240/046—File format, i.e. specific or non-standard musical file format used in or adapted for electrophonic musical instruments, e.g. in wavetables
- G10H2240/056—MIDI or other note-oriented file format
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Electrophonic Musical Instruments (AREA)
Abstract
乐曲再生装置在MIDI再生器中利用简单的程序切换多通道的音序器。读出复原功能部(221)从输入FIFO(110-1)读取包含标题信息、增量时间及消息的乐曲信息。消息分析处理功能部(222)进行标题信息的分析、增量时间的消费及音源驱动信息的生成。写入功能部(223)将音源驱动信息写入输出FIFO(130-1)。音序器控制功能部(224)控制消息分析处理功能部(222)的标题信息分析、时间消费、音源驱动信息生成或写入功能部(223)的写入。当工作的音序器(220-1~220-4)切换时,工作中断的功能部的工作状态以这些功能部为单位保持起来。
Description
技术领域
本发明涉及一种再生例如MIDI(Musical Instrument DigitalInterface:乐器数字化接口)数据等乐谱信息的技术。本发明能够应用于例如移动电话、PDA(Personal Digital Assistance:个人数字助理)、游戏设备、MIDI专用设备等。
背景技术
利用乐谱信息再生乐曲的技术已知有例如MIDI。MIDI技术的公开文献有例如下述专利文献1。
MIDI再生装置已知有将多通道MIDI数据并行再生的装置。通过使用多通道的MIDI再生装置能够同时再生例如旋律和伴奏。
现有的多通道的MIDI再生装置在各个通道中具备输入FIFO(FirstIn First Out:先入先出)、音序器(sequencer)、输出FIFO及音源。音序器将MIDI消息的内容进行分析处理,变换为用来驱动音源的信息(音源驱动信息)。通常,各音序器通过MIDI再生装置内的1个CPU(Central Processing Unit:中央处理单元)以软件方式构筑。
众所周知,MIDI消息的数据长度因消息种类而异。而且,根据MIDI消息不同,也规定了可变的数据长度。因此,各音序器所进行的分析处理的进度未必一致。例如,当某个音序器结束了对1个MIDI消息的处理后转移到下一个音序器的工作时,在该下一个音序器,1个MIDI消息的输入有时候尚未结束。
因此,在多通道的MIDI再生装置中,有时候不得不中途停止音序器的工作,进入下一个音序器的工作。之所以需要等待工作中的音序器的处理结束,是因为其他音序器的工作也在此期间停止,有时候无法进行流畅的MIDI再生。
因此,为了在1个CPU中执行多通道的音序器,必须对各个音序器的分析处理状态进行适当管理,当工作在中途结束时,保持其状态。但是,由于MIDI消息的处理内容及数据长度多种多样,为了进行这种管理保持,需要制作复杂的程序。
与此相对,利用现有的OS(Operating System:操作***)及调度程序等,通过多任务方式进行音序器的切换,就能够容易地实现上述管理保持。但是,在使用OS及调度程序等的情况下,需要大容量的存储器(ROM(Read Only Memory:只读存储器)或RAM(Random AccessMemory:随机存取存储器)等)。特别是,在移动电话的来电旋律再生电路等小型MIDI再生装置中,难以搭载OS等。
[专利文献1]特开2001-51678号公报
发明内容
本发明的课题是提供不使用OS及调度程序、能够通过简单的程序实现对多个音序器进行状态管理的乐曲再生装置。
本发明涉及一种通过适当切换多个音序器来再生多通道乐曲的乐曲再生装置。
此外,本发明的特征在于,各个音序器具备:读出复原功能部,从输入存储器中读取包含标题信息、增量时间(Delta-time)及消息的乐曲信息,并将消息的运行状态(Running Status)复原;消息分析处理功能部,分析从读出复原功能部输入的标题信息,进行与增量时间相应的时间消费,并对消息进行分析处理,生成音源驱动信息;写入功能部,将消息分析处理功能部生成的音源驱动信息写入输出存储器;以及音序器控制功能部,使读出复原功能部读出并复原乐曲信息,使消息分析处理功能部分析标题信息,在标题信息适当的情况下,使消息分析处理功能部和写入功能部进行时间消费和音源驱动信息的生成以及音源驱动信息的写入;当工作的音序器切换时,结束工作的功能部的一部分或全部的工作状态以这些功能部为单位保持下来。
借助于本发明,将各个音序器分割为读出复原功能部、消息分析处理功能部、写入功能部及音序器控制功能部,以这些功能部为单位对状态进行个别管理;因此,能够不使用OS及调度程序等而以简单的程序实现多个音序器的状态管理。
附图说明
图1是概略表示实施方式的MIDI再生装置的整体结构的框图。
图2是概略表示图1所示的4通道MIDI音序器的结构的功能框图。
图3是用来说明图2所示的音序器控制功能部的工作的流程图。
图4是用来说明实施方式的MIDI再生装置的标题分析处理的概念图。
图5是用来说明实施方式的MIDI再生装置的时序管理处理的概念图。
图6是用来说明实施方式的MIDI再生装置的音源驱动信息生成写入处理的概念图。
图7是表示图2所示的读出复原功能部、消息分析处理功能部及音序器控制功能部的分析处理状态的图表。
具体实施方式
以下以将本发明应用于4通道的MIDI再生装置的情况为例,使用附图说明本发明的实施方式。此外,图中各构成成分的大小、形状及配置关系只不过是以能够理解本发明的程度所作的概略表示,另外,以下所说明的数值条件也只是示例。
图1是概略表示本实施方式的MIDI再生装置的整体结构的框图。
如图1所示,本实施方式的MIDI再生装置100具备4个输入FIFO110-1~110-4、4通道的MIDI音序器120、4个输出FIFO130-1~130-4、1个音源140。
输 FIFO110-1~110-4分别从外部输入对应通道的乐谱信息,暂时保持起来。输 FIFO110-1~110-4的存储容量为例如256字节。
4通道MIDI音序器120从输入FIFO110-1~110-4分别输入4通道部分的MIDI数据,将这些MIDI数据以通道为单位分析处理,生成音源驱动信息。
输出FIFO130-1~130-4从4通道MIDI音序器输入对应通道的音源驱动信息,暂时保持起来。输出FIFO130-1~130-4的存储容量为例如32字节。
音源140具备4通道的音源部,从各个输出FIFO130-1~130-4分别输入音源驱动信息,根据这些音源驱动信息生成用来驱动扬声器(未图示)的模拟音响信号。
图2是概略表示4通道MIDI音序器120的结构的功能框图。
如图2所示,4通道MIDI音序器120具备1个通道控制功能部210和4个音序器220-1~220-4。另外,音序器220-1~220-4分别具备读出复原功能部221、消息分析处理功能部222、写入功能部223、音序器控制功能部224、输入缓冲区225和输出缓冲区226。
在本实施方式中,使用1个CPU(未图示)将各功能部210、221~224作为固件构筑起来。即,这些功能部210、221~224不是在OS等之上以软件方式构筑,而是在硬件上以软件方式构筑的。
通道控制功能部210将4个音序器220-1~220-4适当切换,使其工作。由此,可以再生4通道的乐曲。
读出复原功能部221从对应的输入FIFO(音序器220-1的情况下是输入FIFO110-1)输入MIDI数据。进一步,读出复原功能部221复原MIDI消息的运行状态。所谓的“运行状态”,是一种当连续的多个MIDI消息包含同一状态字节(表示MIDI消息的种类的字节)的情况下,省略从第2个开始以后的MIDI消息的状态字节,以减少传送数据量的技术。读出复原功能部221将省略的状态字节复原,返回实施运行状态之前的MIDI消息。另外,读出复原功能部221也可以判断该乐谱信息是否是MIDI消息,当不是MIDI消息的情况下,将其变换为MIDI消息。依照此种方式,读出复原功能部221在乐谱信息的分析处理中承担该乐谱信息的数据结构及数据形式相关的分析处理。另外,读出复原功能部221管理自身的分析处理的状态,适当保持该状态(参照后述的图7(A))。
消息分析处理功能部222对从读出复原功能部221输入的MIDI数据的标题信息进行分析,并且对该MIDI数据中保存的消息进行分析处理,生成音源驱动信息。即,消息分析处理功能部222在乐谱信息(这里是MIDI数据)的分析处理中承担用于基于该乐谱信息中保存的消息的内容生成音源驱动信息的分析处理工作。另外,消息分析处理功能部222管理自身的分析处理的状态,适当保持该状态(参照后述的图7(B))。
写入功能部223将消息分析处理功能部222生成的音源驱动信息写入对应的输出FIFO(音序器220-1的情况下是输出FIFO130-1)。此外,写入功能部223只是将输出缓冲区226的数据原样写入输出FIFO130-1之中,因此,不需要管理自身的分析处理的状态(后述)。
音序器控制功能部224使读出复原功能部221取得标题信息,使消息分析处理功能部222分析该标题信息。进一步,在该标题信息正常的情况下,音序器控制功能部224使消息分析处理功能部222及写入功能部223重复执行与增量时间对应的时间消费、与消息对应的音源驱动信息的生成及该音源驱动信息向输出FIFO130-1~130-4的写入。另外,音序器控制功能部224管理自身的分析处理的状态,适当保存该状态(参照后述的图7(C))。
接着,将本实施方式的MIDI再生装置100的工作,分为标题分析处理、时序管理处理及音源驱动信息生成写入处理进行说明。图3~图7是用来表示MIDI再生装置100的工作的图,图3是用来说明音序器控制功能部224的工作的流程图,图4是用来说明标题分析处理的概念图,图5是用来说明时序管理处理的概念图,图6是用来说明音源驱动信息生成写入处理的概念图,图7是表示读出复原功能部221、消息分析处理功能部222及音序器控制功能部224的状态的表。
以下,在本实施方式中以音序器220-1的工作为例进行说明,其他音序器220-2~220-4的工作相同。
(1)标题分析处理
4通道MIDI音序器120(参照图1)一旦开始工作,首先,通道控制功能部210(参照图2)开始音序器220-1的工作。由此,音序器220-1开始标题分析处理。
在标题分析处理中,首先,音序器控制功能部224请求读出复原功能部221读出标题信息(参照图3的S301及图4的R1)。
读出复原功能部221接受该请求后,从输入FIFO110-1逐个字节读出构成标题信息的数据,依次保存到输入缓冲区225(参照图4的R2、R3)。
这里,当标题信息的一部分或全部字节尚未保存到输入FIFO110-1的情况下,读出复原功能部221变得不能执行读出处理。这种情况下,读出复原功能部221保持“标题信息读出中”作为分析处理的状态,并且保持已经读取出来的标题信息的字节数(参照图7(A))。此外,本申请中的“保持”的方法只要是在重新开始工作后音序器220-1能够检查该分析处理状态的方法即可,没有特殊限定;例如,既可以在构筑音序器的硬件内的存储器中存储状态值,也可以通过软件方式生成标志位等,或者使用其他方法(以下,在所有保持工作中都是如此)。
读出复原功能部221向音序器控制功能部224发送表示标题信息读出未完成就已结束的通知信号(参照图4的R4)。音序器控制功能部224根据接收到的通知信号,获知标题信息读出尚未完成(参照图3的S302)。然后,音序器控制功能部224在保持“标题信息取得中”作为分析处理的状态之后(参照图3的S303及图7(C))之后,向通道控制功能部210(参照图2)发送表示处理结束的通知信号(参照图4的R5),结束标题信息的读出处理。通道控制功能部210接收到该通知信号后,停止音序器220-1的工作,开始下一个音序器220-2的工作。其后,音序器220-2~220-4的工作完成后,通道控制功能部210再次启动音序器220-1的工作。在该再次启动时,音序器控制功能部224根据所保持的分析处理状态(即“标题信息取得中”),判断为上次的音序器220-1的工作在标题信息读取尚未完成时结束(参照图3的S304)。然后,音序器控制功能部224向读出复原功能部221再次发送请求读取标题信息的信号(参照图4的R1)。读出复原功能部221接收到该请求信号后,从保持内容中识别出上次结束时的状态(“标题信息读出中”及已经读取的字节数),再次读出剩余字节。
当读出结束时,读出复原功能部221向音序器控制功能部224发送表示读出完成的通知信号(参照图4的R6)。音序器控制功能部224接收到该通知信号后(参照图3的步骤S302),请求消息分析处理功能部222分析该标题信息(参照图3的S305及图4的R7)。
消息分析处理功能部222接收到该请求后,从输入缓冲区225读出标题信息进行分析(参照图4的R8)。然后,向音序器控制功能部224发送表示标题信息的“正常”或“异常”(即是否是该MIDI再生装置100能够再生的数据)的通知信号(参照图4的R9)。当标题信息为“异常”的情况下,音序器控制功能部224向通道控制功能部210发送表示分析处理结束的通知信号,结束工作。另一方面,当标题信息为“正常”的情况下,音序器控制功能部224进入时序管理处理。
(2)时序管理处理
在时序管理处理中,首先,音序器控制功能部224请求读出复原功能部221读出增量时间(参照图3的S306及图5的T1)。所谓增量时间是指用来规定某个演奏工作与下一演奏工作之间的时间间隔的信息。例如,通过增量时间来规定从Note On(按键盘)至Note Off(离开键盘)的时间。读出复原功能部221接受该请求后,从输入FIFO110-1逐个字节读出增量时间,依次保存到输入缓冲区225(参照图5的T2、T3)。
这里,当增量时间的一部分或全部字节尚未保存到输入FIFO110-1的情况下,读出复原功能部221变得不能执行读出处理。这种情况下,读出复原功能部221保存“增量时间读出中”作为分析处理的状态,并且保持已经读取出来的增量时间的字节数(参照图7(A))。然后,读出复原功能部221向音序器控制功能部224发送表示增量时间读出未完成就已结束的通知信号(参照图5的T4)。音序器控制功能部224根据接收到的通知信号,获知增量时间读出尚未完成(参照图3的步骤S307)。然后,音序器控制功能部224在保持“增量时间取得中”作为分析处理的状态之后(参照图3的S308及图7(C))之后,向通道控制功能部210(参照图2)发送表示处理结束的通知信号(参照图5的T5),结束工作。通道控制功能部210接收到该通知信号后,停止音序器220-1的工作,开始下一个音序器220-2的工作。其后,音序器220-2~220-4的工作完成后,通道控制功能部210再次启动音序器220-1的工作。在该再次启动时,音序器控制功能部224根据所保持的分析处理状态(即“增量时间取得中”),判断为上次的音序器220-1的工作在增量时间读出尚未完成时结束(参照图3的S304)。然后,音序器控制功能部224向读出复原功能部221再次发送请求读出增量时间的信号(参照图3的S306及图5的T1)。读出复原功能部221接收到该请求信号后,从保持内容中识别出上次结束时的状态(“增量时间读出中”及已经读取的字节数),再次读出剩余字节。
当读出结束时,读出复原功能部221向音序器控制功能部224发送表示读出完成的通知信号(参照图5的T6)。音序器控制功能部224接收到该通知信号后,向消息分析处理功能部222请求与该增量时间相当的时间消费(参照图3的步骤S309及图5的T7)。
消息分析处理功能部222接收到该请求后,从输入缓冲区225读出增量时间(参照图5的T8)。然后,消息分析处理功能部222随时将该增量时间与内部计时器(未图示)的计时进行比较,由此管理时间消费状况。当在规定时间内该时间消费没有完成的情况下,消息分析处理功能部222保持“增量时间消费中”作为分析处理的状态,并且保持已经消费的时间(参照图7(B))。然后,消息分析处理功能部222向音序器控制功能部224发送表示在时间消费尚未完成即已结束的通知信号(参照图5的T9)。音序器控制功能部224根据接收到的通知信号,获知时间消费尚未完成(参照图3的步骤S310)。然后,音序器控制功能部224在保持“时序管理中”作为分析处理的状态之后(参照图3的S311及图7(C))之后,向通道控制功能部210(参照图2)发送表示处理结束的通知信号(参照图5的T10),结束时序管理处理。通道控制功能部210接收到该通知信号后,停止音序器220-1的工作,开始下一个音序器220-2的工作。其后,音序器220-2~220-4的工作完成后,通道控制功能部210再次启动音序器220-1的工作。在该再次启动时,音序器控制功能部224根据所保持的分析处理状态(即“时序管理中”),判断为上次的音序器220-1的工作在增量时间的消费尚未完成时结束(参照图3的S304)。然后,音序器控制功能部224再次向消息分析处理功能部222发送请求时间消费的信号(参照图5的T7)。
消息分析处理功能部222接收到该请求信号后,从保持内容中获知上次结束时的状态(“增量时间消费中”及消费时间),再次开始增量时间的消费。
当增量时间消费完成时,消息分析处理功能部222向音序器控制功能部224发送表示消费完成的通知信号(参照图5的T11)。音序器控制功能部224从该通知信号获知时间消费完成后(参照图3的步骤S310),进入音源驱动信息生成写入处理。
(3)音源驱动信息生成写入处理
在音源驱动信息生成写入处理中,首先,音序器控制功能部224请求读出复原功能部221读出消息(参照图3的S312及图6的P1)。
读出复原功能部221接受该请求后,从输入FIFO110-1逐个字节读出构成消息的数据,依次保存到输入缓冲区225(参照图6的P2、P3)。另外,当设置了将数据从MIDI以外的形式变换为MIDI形式的功能(上述)的情况下,读出复原功能部221在进行数据变换后,保存到输入缓冲区225即可。
这里,当消息的一部分或全部字节尚未保存到输入FIFO110-1的情况下,读出复原功能部221变得不能进行读出处理。这种情况下,读出复原功能部221将“消息读出中(种类未定)”、“消息读出中(2字节消息)”、“消息读出中(3字节消息)”、“消息读出中(元事件)”或“消息读出中(***独有信息)”作为分析处理的状态保持下来,并且保持已经读取的消息的字节数(参照图7(A))。这里,之所以保持消息种类,是因为判断剩余字节数的处理随该种类不同而不同。然后,读出复原功能部221向音序器控制功能部224发送表示消息读出未完成就已结束的通知信号(参照图6的P4)。音序器控制功能部224根据接收到的通知信号,获知消息读出尚未完成(参照图3的步骤S313)。然后,音序器控制功能部224在保持“消息取得中”作为分析处理的状态之后(参照图7(C))之后,向通道控制功能部210(参照图2)发送表示处理结束的通知信号(参照图6的P5),结束标题信息的读出处理。通道控制功能部210接收到该通知信号后,停止音序器220-1的工作,开始下一个音序器220-2的工作。其后,当音序器220-1再次开始工作时,音序器控制功能部224根据保存的分析处理状态(即“消息取得中(种类未定)”等)判断上次的音序器220-1的工作在消息读出尚未完成的状态下结束以及该消息的种类(或未定)(参照图3的S304)。然后,音序器控制功能部224向读出复原功能部221再次发送请求读出消息的信号(参照图6的P1)。读出复原功能部221接收到该请求信号后,从保持内容中识别出上次结束时的状态(“消息读出中”及已经读取的字节数),再次读出剩余字节。
当消息读出结束时,读出复原功能部221向音序器控制功能部224发送表示读出完成的通知信号(参照图6的P4)。音序器控制功能部224接收到该通知信号后(参照图3的S313),请求消息分析处理功能部222分析该消息(参照图3的S314及图6的P6)。
消息分析处理功能部222接收到该请求后,从输入缓冲区225读取MIDI消息进行分析(参照图6的P7)。然后,当该消息为异常的情况(即是不与音源140对应的消息的情况)下,消息分析处理功能部222将该消息从输入缓冲区225删除,将表示这一情况的通知信号发送给音序器控制功能部224(参照图6的P8)。音序器控制功能部224获知该通知信号为“异常”后(参照图3的S315),将“增量时间取得中”作为分析处理状态保持下来(参照图3的S316),并且将表示处理结束的通知信号发送到通道控制功能部210(参照图6的P9),结束处理。通过保持“增量时间取得中”作为分析处理状态,当音序器220-1的工作下次重新开始时,执行时序管理处理(参照图3的S306~S311)。
另一方面,当消息为“正常”的情况(即是与音源140对应的消息的情况)下,消息分析处理功能部222生成与该消息对应的音源驱动信息,写入输出缓冲区226(参照图6的P10)。然后,消息分析处理功能部222向音序器控制功能部224发送表示分析结束的通知信号(参照图6的P11)。
音序器控制功能部224获知通知信号表示分析结束时(图3的S315),接着请求写入功能部223将音源驱动信息写入输出FIFO130-1(参照图3的步骤S317及图6的P12)。写入功能部223接收到该请求后,从输出缓冲区226读出音源驱动信息,保存到输出FIFO130-1(参照图6的P13、P14)。
这里,当输出FIFO130-1中已经没有空间的情况下,写入功能部223无法进行写入处理。这种情况下,写入功能部223向音序器控制功能部224发送表示在写入尚未完成时即已结束的通知信号(参照图6的P15)。此外,这时,写入功能部223不进行状态保持。这是因为,写入功能部223只是将输出缓冲区226的数据原样写入输出FIFO130-1,没有进行分析和处理等,因此,不需要状态保持。不过,必要时,写入功能部223当然也可以进行状态的保持。音序器控制功能部224根据接收到的通知信号,获知音源驱动信息读出尚未完成(参照图3的步骤S318)。然后,音序器控制功能部224在保持“音源驱动信息写入中”作为分析处理的状态之后(参照图7(C))之后,向通道控制功能部210(参照图2)发送表示处理结束的通知信号(参照图6的P16),结束工作。通道控制功能部210接收到该通知信号后,停止音序器220-1的工作,开始下一个音序器220-2的工作。当音序器220-1再次开始工作时,音序器控制功能部224根据保持的分析处理状态(即“音源驱动信息写入中”),判断为上次的音序器220-1的工作在音源驱动信息的写入尚未完成时即已结束(参照图3的S304)。然后,音序器控制功能部224向写入功能部223再次发送请求写入的信号(参照图6的P12)。写入功能部223接收到该请求信号后,再次开始将输出缓冲区226的数据写入输出FIFO130-1。
当写入结束的情况下,写入功能部223向音序器控制功能部224发送表示写入完成的通知信号(参照图6的P17)。音序器控制功能部224根据该通知信号获知写入已经结束时(参照图3的步骤S318),保持“增量时间取得中”作为分析处理的状态,然后,向通道控制功能部210(参照图2)发送表示工作结束的通知信号(参照图6的P18),结束工作。通过保持“增量时间取得中”作为分析处理状态,当音序器220-1的工作下次重新开始时,执行时序管理处理(参照图3的S306~S311)。
其后,重复执行时序管理处理和音源驱动信息生成写入处理,直至MIDI数据再生结束。
如上述说明,本实施方式中将音序器220-1~220-4分为读出复原功能部221、消息分析处理功能部222、写入功能部223及音序器控制功能部224进行构筑,以各个功能部为单位管理、保持分析处理状态。因此,本实施方式中涉及的管理、保持项目变得非常简单(参照图7)。因此,借助于该实施方式,可以不使用OS及调度程序、通过简单的程序实现对多个音序器进行状态管理。由此,能够减少多通道的MIDI再生装置中存储器容量。
进而,借助于该实施方式,读出复原功能部221从其他功能独立出来,因此,能够容易地增加将MIDI以外的形式变换为MIDI的功能。
Claims (8)
1.一种乐曲再生装置,通过适当切换多个音序器进行工作来进行多通道的乐曲再生,其特征在于,
各个上述音序器具备:
读出复原功能部,从输入存储器中读出包含标题信息、增量时间及消息的乐曲信息,并将该消息的运行状态复原;
消息分析处理功能部,分析从该读出复原功能部输入的上述标题信息,进行与上述增量时间相应的时间消费,并对上述消息进行分析处理,生成音源驱动信息;
写入功能部,将该消息分析处理功能部生成的上述音源驱动信息写入输出存储器;以及
音序器控制功能部,使上述读出复原功能部读出并复原上述乐曲信息,使上述消息分析处理功能部分析上述标题信息,在该标题信息正常的情况下,使上述消息分析处理功能部和上述写入功能部进行上述时间消费和上述音源驱动信息的生成以及该音源驱动信息的写入,
当工作的上述音序器切换时,结束工作的上述读出复原功能部、上述消息分析处理功能部、上述写入功能部、上述音序器控制功能部的一部分或全部的工作状态以这些功能部为单位保持下来,
其中,上述增量时间是指用来规定某个演奏工作与下一演奏工作之间的时间间隔的信息。
2.如权利要求1所述的乐曲再生装置,其特征在于,当在上述乐曲信息的读出过程中上述音序器的工作结束的情况下,保持读出过程中的数据的标题信息/增量时间/消息和已经读取的数据量作为上述读出复原功能部的上述工作状态。
3.如权利要求2所述的乐曲再生装置,其特征在于,当读出过程中的数据是上述消息的情况下,保持该消息的种类作为上述读出复原功能部的上述工作状态。
4.如权利要求2或3所述的乐曲再生装置,其特征在于,保持标题取得中/增量时间取得中/消息取得中作为上述音序器控制功能部的上述工作状态。
5.如权利要求1~3的任意一个所述的乐曲再生装置,其特征在于,当在上述时间消费过程中上述音序器的工作结束的情况下,保持时间消费中这一含义和已经消费的时间作为上述消息分析处理功能部的上述工作状态。
6.如权利要求5所述的乐曲再生装置,其特征在于,在时间消费尚未完成即已结束的情况下,保持时序管理中这一含义作为上述音序器控制功能部的上述工作状态。
7.如权利要求1~3的任意一个所述的乐曲再生装置,其特征在于,当在向上述输出存储器写入上述音源驱动信息过程中上述音序器的工作结束的情况下,保持音源驱动信息写入中这一含义作为上述音序器控制功能部的上述工作状态。
8.如权利要求1~3的任意一个所述的乐曲再生装置,其特征在于,上述读出复原功能部还具备将上述乐曲信息的形式变换为上述消息分析处理功能部所对应的形式的功能。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP367544/04 | 2004-12-20 | ||
JP2004367544A JP2006171626A (ja) | 2004-12-20 | 2004-12-20 | 楽曲再生装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1794345A CN1794345A (zh) | 2006-06-28 |
CN1794345B true CN1794345B (zh) | 2011-08-10 |
Family
ID=36594065
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200510107104.3A Expired - Fee Related CN1794345B (zh) | 2004-12-20 | 2005-09-30 | 乐曲再生装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US7285711B2 (zh) |
JP (1) | JP2006171626A (zh) |
CN (1) | CN1794345B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110083221A (zh) * | 2014-06-09 | 2019-08-02 | 威盛电子股份有限公司 | 电子装置及音频播放方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0823699B1 (en) * | 1996-08-05 | 2001-05-30 | Yamaha Corporation | Software sound source |
JP2004070154A (ja) * | 2002-08-08 | 2004-03-04 | Yamaha Corp | 演奏データ処理方法および楽音信号合成方法 |
JP2004347705A (ja) * | 2003-05-20 | 2004-12-09 | Kawai Musical Instr Mfg Co Ltd | 電子楽器 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4387617A (en) * | 1976-12-29 | 1983-06-14 | Nippon Gakki Seizo Kabushiki Kaisha | Assigner for electronic musical instrument |
JPS6174487A (ja) * | 1984-09-20 | 1986-04-16 | Sharp Corp | 静止画受信装置 |
US5763805A (en) * | 1990-01-25 | 1998-06-09 | Roland Corporation | Performance information transmitter and/or receiver for a performance information system |
JPH06348263A (ja) * | 1993-06-11 | 1994-12-22 | Kawai Musical Instr Mfg Co Ltd | 電子楽器 |
EP0676878A1 (en) * | 1994-04-07 | 1995-10-11 | International Business Machines Corporation | Efficient point to point and multi point routing mechanism for programmable packet switching nodes in high speed data transmission networks |
JP3596048B2 (ja) * | 1994-09-27 | 2004-12-02 | ヤマハ株式会社 | 自動伴奏装置 |
US5862136A (en) * | 1995-07-07 | 1999-01-19 | Northern Telecom Limited | Telecommunications apparatus and method |
JP4477159B2 (ja) * | 1999-01-27 | 2010-06-09 | ヤマハ株式会社 | カラオケ装置 |
TW491989B (en) | 1999-08-05 | 2002-06-21 | Yamaha Corp | Music reproducing apparatus, music reproducing method and telephone terminal device |
JP3279293B2 (ja) | 1999-08-05 | 2002-04-30 | ヤマハ株式会社 | 楽曲再生装置、楽曲再生機能を備える携帯電話装置および楽曲再生方法 |
JP4089162B2 (ja) * | 2001-02-13 | 2008-05-28 | ヤマハ株式会社 | 電子情報処理方法及び装置並びに記録媒体 |
-
2004
- 2004-12-20 JP JP2004367544A patent/JP2006171626A/ja active Pending
-
2005
- 2005-08-17 US US11/205,123 patent/US7285711B2/en active Active
- 2005-09-30 CN CN200510107104.3A patent/CN1794345B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0823699B1 (en) * | 1996-08-05 | 2001-05-30 | Yamaha Corporation | Software sound source |
JP2004070154A (ja) * | 2002-08-08 | 2004-03-04 | Yamaha Corp | 演奏データ処理方法および楽音信号合成方法 |
JP2004347705A (ja) * | 2003-05-20 | 2004-12-09 | Kawai Musical Instr Mfg Co Ltd | 電子楽器 |
Also Published As
Publication number | Publication date |
---|---|
US20060130638A1 (en) | 2006-06-22 |
US7285711B2 (en) | 2007-10-23 |
CN1794345A (zh) | 2006-06-28 |
JP2006171626A (ja) | 2006-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7678986B2 (en) | Musical instrument digital interface hardware instructions | |
JPH0774854A (ja) | カラオケシステムおよびカラオケ装置 | |
CN1794345B (zh) | 乐曲再生装置 | |
US20040069124A1 (en) | Musical sound generator, portable terminal, musical sound generating method, and storage medium | |
JP2013152477A (ja) | 電子楽器デジタルインターフェースハードウェア命令セット | |
JPH0922287A (ja) | 楽音波形生成方法 | |
US20080229916A1 (en) | Efficient identification of sets of audio parameters | |
JP3722015B2 (ja) | 楽音生成装置 | |
CN1604181B (zh) | 一种midi音乐播放的方法及midi音乐播放装置 | |
CN100378696C (zh) | 音频处理器及其控制方法 | |
CN1790479A (zh) | 音乐数据处理设备和方法 | |
US5668336A (en) | Music system, tone generator and musical tone-synthesizing method | |
KR0179815B1 (ko) | 디지탈 음발생장치 및 그의 음발생방법 | |
JP2003280645A (ja) | 楽曲データの圧縮方法 | |
JP2709965B2 (ja) | Bgm再生に用いる音楽伝送再生システム | |
CN2758924Y (zh) | 一种midi音乐播放装置 | |
JP3460524B2 (ja) | 曲データ加工方法、加工後曲データ再生方法および記憶媒体 | |
JPH11126069A (ja) | 楽音生成方法 | |
CN117453424B (zh) | 可动态扩展计算资源的加速算法运行效率的方法及装置 | |
US6772023B1 (en) | Apparatus for tone control and recording medium of tone control program | |
JPH11167517A (ja) | 信号処理装置 | |
JP4388643B2 (ja) | マルチチャンネル信号処理装置 | |
CN100489963C (zh) | 应用于可变式负载数字信号处理器的声音合成器 | |
KR20000032731A (ko) | 음성합성보드에서의 연속적인 음성재생을 위한 구조 및 그 구조를 이용한 연속적인 음성재생방법 | |
JP2001209377A (ja) | 電子楽器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110810 Termination date: 20120930 |