CN100562923C - 一种乐器数字化接口中突发音的播放方法 - Google Patents
一种乐器数字化接口中突发音的播放方法 Download PDFInfo
- Publication number
- CN100562923C CN100562923C CNB2005100086770A CN200510008677A CN100562923C CN 100562923 C CN100562923 C CN 100562923C CN B2005100086770 A CNB2005100086770 A CN B2005100086770A CN 200510008677 A CN200510008677 A CN 200510008677A CN 100562923 C CN100562923 C CN 100562923C
- Authority
- CN
- China
- Prior art keywords
- abrupt
- passage
- duration
- timing device
- incident
- 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
- 238000000034 method Methods 0.000 title claims abstract description 24
- 230000005540 biological transmission Effects 0.000 claims abstract description 4
- 238000004891 communication Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000037361 pathway Effects 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
Images
Landscapes
- Electrophonic Musical Instruments (AREA)
Abstract
本发明公开了一种乐器数字化接口中突发音的播放方法,该方法中,预先为每个通道设置其对应的定时装置;当系统获得用户设置的突发音后,获取该突发音的属性,根据该突发音的属性生成打开通道事件,并执行该打开通道事件,打开该事件所对应的通道,在其上播放突发音;同时,系统将突发音属性中的持续时间下发给播放突发音通道所对应的定时装置;定时装置在持续时间结束时,向其对应的通道发送关闭指示,关闭该通道。本发明中,通过为每个通道设置其对应的定时装置,在用户产生突发音后,系统通过定时装置控制所打开通道的关闭,解决了突发音播放的延迟问题,提高了突发音的播放效果。
Description
技术领域
本发明涉及乐器数字化接口(Musical Instrument Digital Interface,MIDI)技术领域,特别是指一种乐器数字化接口中突发音的播放方法。
背景技术
MIDI是数字乐器接口的国际标准,它定义了电子音乐设备与计算机的通讯接口,规定了使用数字编码来描述音乐乐谱的规范。
MIDI文件本身其实只是一堆数字信号,不包含任何声音信息,它只是记录在什么时间播放哪个音,在什么时间停止播放哪个音,实际上就是一组音序。在播放这组音序时,系统根据其中每个音的打开时间、关闭时间进行播放。每个音对应有两个事件:打开通道事件、关闭通道事件,MIDI的音序就是很多事件的组合,在MIDI播放过程中,顺序执行已经设置好的各个事件。例如,对于1、2、3三个音来说,其事件顺序可能是这样:打开通道1事件、打开通道2事件、关闭通道1事件、打开通道3事件、关闭通道3事件、关闭通道2事件,那么在MIDI的播放顺序就是:播放1音,播放2音,结束1音,播放3音,结束3音,结束2音。
在播放MIDI音乐的时候,用户可以设置产生突发音,突发音就是不在MIDI预先安排好的音序中的音。对于突发音的播放,目前采用和普通音相同的处理方式,即为突发音产生两个事件:打开通道事件和关闭通道事件。在系统获得用户设置的突发音后,从音源库中读取该音的相关属性,其中包括该音的音色、音阶和音长等,其中,音长即该音的持续时间,然后根据这些属性为该突发音生成打开通道事件和关闭通道事件,并根据该突发音的持续时间等设置关闭通道事件中的关闭时间。此后,系统执行打开通道事件和关闭通道事件,系统在执行打开通道事件时,打开相应通道播放突发音;系统在执行关闭通道事件时,根据其中的时间关闭播放该突发音的通道,停止播放该提示音。如果用户设置突发音的时间,例如按下某个键的时间超出了该突发音对应的持续时间,那么在该突发音对应的持续时间结束后,系统再次为该突发音生成相应的事件来播放该突发音,直至用户停止设置该突发音。
对于用户设置产生多个突发音的情况下,每个突发音的两个事件都是同时产生的,执行突发音事件的顺序如图1所示,即当产生第一个突发音时,系统首先产生第一个突发音的打开通道事件和关闭通道事件,并顺序执行这两个事件打开通道1和关闭通道1;产生第二个突发音时,系统产生第二个突发音的打开通道事件和关闭通道事件,并在第一个突发音的两个事件结束后,再顺序执行这两个事件打开通道2和关闭通道2。
如果用户在第一个突发音没有结束之后,又设置产生了第二个突发音,这种情况下用户当然希望在播放时,也能够在第一个突发音没有结束播放时,就播放第二个突发音。但是由于突发音的播放只能顺序执行,即只能在第一个突发音的两个事件执行结束后,才能够执行第二个突发音的两个事件。也就是说在播放时,一定是第一个突发音结束播放后,才播放第二个突发音,造成了第二个突发音播放的延迟。以上是对于两个突发音来说造成了延迟,对于多个突发音来说,造成的延迟将更加严重,对突发音的播放效果造成了很大的影响。
发明内容
有鉴于此,本发明的目的在于提供一种乐器数字化接口中突发音的播放方法,该方法能够避免突发音的播放延迟。
为达到上述目的,本发明提供了一种乐器数字化接口中突发音的播放方法,该方法中,预先为每个通道设置对应的定时装置;
当系统获得用户设置的突发音时,获取该突发音的属性,根据该突发音的属性生成打开通道事件,并执行该打开通道事件,打开该事件所对应的通道,在该通道上播放突发音;
同时,系统将突发音属性中的持续时间下发给所述通道所对应的定时装置;定时装置在持续时间结束时,向所述通道发送关闭指示,关闭该通道。
所述下发持续时间的方法可以为:以脉冲的形式下发该持续时间参数。
所述关闭指示可以为脉冲。
所述定时装置可以为计数器。
如果所述定时装置为计数器,可以进一步包括:在计数器中设置时间单位和计数单位的对应关系,
所述下发给通道所对应的定时装置的持续时间包括:持续时间的数值和时间单位;
所述持续时间结束的判断步骤为:
a1、计数器根据时间单位,索引所述时间单位和计数单位的对应关系,获得该时间单位对应的计数单位;
a2、将所述数值和计数单位相乘得到计数次数;
a3、启动计数器,当该计数器的计数次数消耗至0时,确定持续时间结束。
所述定时装置为还可以为定时器。
所述的定时装置还可以为软件定时器或软件计数器。
从以上技术方案可以看出,本发明中,通过为每个通道设置对应的定时装置,在用户产生突发音后,系统只产生并执行打开通道事件,并通过定时装置控制所打开通道的关闭,使得后续的突发音不会因为前一个突发音的关闭通道事件没有执行而无法执行打开通道事件,从而解决了突发音播放的延迟问题,提高了突发音的播放效果。
附图说明
图1为现有技术中突发音的播放顺序图;
图2为本发明一个较佳实施例的流程图;
图3为本发明的一个示例中突发音的播放顺序图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明作进一步的详细描述。
本发明中,预先为每个通道设置对应的定时装置;当系统获得用户设置的突发音后,获取该突发音的属性,根据该突发音的属性为其生成打开通道事件,并执行该打开通道事件,打开该事件所对应的通道,在其上播放突发音;同时,系统将突发音属性中的持续时间下发给播放突发音通道所对应的定时装置;定时装置在持续时间结束时,向播放突发音的通道发送关闭指示,该通道关闭停止播放突发音。
上述定时装置可以为计数器,在预先为每个通道设置了对应的计数器后,还可以设置时间单位与计数器计数单位的对应关系,例如,可以设置1毫秒对应1000个计数单位;当系统获得用户产生的突发音时,产生并执行打开通道事件,在打开通道事件中设置的通道号对应的通道上播放突发音;同时,系统获得该突发音的持续时间,将该持续时间下发给播放该突发音通道所对应的计数器,这里下发的持续时间中包括持续时间的数值和时间单位。此后,计数器接收到持续时间的数值和时间单位后,根据时间单位,索引所述时间单位和计数单位的对应关系,获得该时间单位对应的计数单位,并将所述数值和计数单位相乘得到计数次数,然后启动计数器,当该计数器的计数次数消耗至0时,即产生关闭脉冲;例如,突发音的持续时间为10ms,那么系统将10和ms分别以脉冲形式下发给计数器,则计数器在计数10000次后,输出关闭脉冲;播放突发音的通道接收到该脉冲后,就自行关闭,结束播放。
上述定时装置还可以为定时器。预先为每个通道设置了对应的定时器后,当系统获得用户产生的突发音时,产生并执行打开通道事件,在打开通道事件中设置的通道号对应的通道上播放突发音;同时,系统获取该突发音的持续时间后,设置播放该突发音通道所对应定时器的定时时间为该持续时间,并启动定时器,定时器的具体实现原理与计数器相同,这里不再详细阐述;当定时器达到持续时间后,即产生关闭脉冲,关闭播放通道,结束播放。
上述定时装置还可以为软件定时器或软件计数器。在用软件定时器或软件计数器作为定时装置的方法中,预先为每个通道设置一个对应软件计数器或软件定时器;当系统产生并执行打开通道事件后,将获得的持续时间参数发送给打开通道时间中通道号所对应的软件定时器或软件计数器,当达到持续时间后,软件定时器或软件计数器向其对应的通道发送脉冲,关闭该通道。
以下通过一个较佳实施例对本发明进行说明。
在本发明的具体实施例中,预先为每个通道设置一个计数器。此后,本实施例的具体流程如图2所示,具体步骤如下:
步骤201、用户设置突发音后,系统获取该突发音所对应的音源属性,并根据音源属性产生打开通道事件,并执行打开通道事件,在其中设置的通道上播放突发音;
产生打开通道事件的方法与现有技术相同,即根据用户产生的突发音获取对应的音源属性,该音源属性中包括音色、持续时间等,系统在获取这些属性信息后,根据这些信息产生打开通道事件,并在打开通道事件中设置播放该音的通道号,在执行打开通道事件后,系统即在该事件中设置的通道号对应的通道上播放用户产生的突发音;
步骤202、系统将突发音所对应的持续时间下发到播放突发音通道所对应的计数器,同时启动计数器;
步骤203、计数器对收到的持续时间参数进行消耗,当计数器减到0时,产生一个脉冲,发送给其对应的通道,并关闭该通道;
由于在MIDI中,控制每个通道的关闭都是通过向通道发送脉冲来实现的,同样的,当计数器向已经打开的通道发送脉冲时,就关闭了该计数器对应的通道。
下面再通过用户设置两个突发音这样的具体示例对本发明进行进一步说明。假设用户设置产生了两个突发音,产生后一个突发音时,第一个突发音的播放还没有完成,即还没有关闭第一个突发音的播放通道。在这种假设下,如图3所示,用户设置产生第一个突发音后,系统获取该突发音的属性,产生打开通道事件X,并执行该打开通道事件,在通道X上播放该突发音,同时将该突发音的持续时间参数X下发到通道X所对应的计数器X,计数器X对持续时间参数X进行消耗;用户设置产生第二个突发音后,系统根据该突发音的信息,产生打开通道事件Y,并执行该打开通道事件,在通道Y上播放该突发音,同时将该突发音的持续时间参数Y下发到通道Y所对应的计数器Y,计数器Y对持续时间参数Y进行消耗;计数器X对持续时间参数X消耗至0,向通道X发送关闭脉冲,通道X关闭;计数器Y对持续时间参数Y消耗至0,向通道Y发送关闭脉冲,通道Y关闭。
以上是对本发明具体实施例的说明,在具体的实施过程中可对本发明的方法进行适当的改进,以适应具体情况的具体需要。因此可以理解,根据本发明的具体实施方式只是起示范作用,并不用以限制本发明的保护范围。
Claims (7)
1、一种乐器数字化接口中突发音的播放方法,其特征在于,预先为每个通道设置对应的定时装置;
当系统获得用户设置的突发音后,获取该突发音的属性,根据该突发音的属性生成打开通道事件,并执行该打开通道事件,打开该事件所对应的通道,在该通道上播放突发音;
同时,系统将突发音属性中的持续时间下发给所述通道所对应的定时装置;定时装置在持续时间结束时,向所述通道发送关闭指示,关闭该通道。
2、根据权利要求1所述的方法,其特征在于,所述下发持续时间的方法为:以脉冲的形式下发该持续时间参数。
3、根据权利要求1所述的方法,其特征在于,所述关闭指示为脉冲。
4、根据权利要求1至3中任一权利要求所述的方法,其特征在于,所述定时装置为计数器。
5、根据权利要求4所述的方法,其特征在于,在计数器中设置时间单位和计数单位的对应关系,
所述下发给通道所对应的定时装置的持续时间包括:持续时间的数值和时间单位;
所述持续时间结束的判断步骤为:
a1、计数器根据时间单位,索引所述时间单位和计数单位的对应关系,获得该时间单位对应的计数单位;
a2、将所述数值和计数单位相乘得到计数次数;
a3、启动计数器,当该计数器的计数次数消耗至0时,确定持续时间结束。
6、根据权利要求1至3中任一权利要求所述的方法,其特征在于,所述定时装置为定时器。
7、根据权利要求1至3中任一权利要求所述的方法,其特征在于,所述的定时装置为软件定时器或软件计数器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2005100086770A CN100562923C (zh) | 2005-03-01 | 2005-03-01 | 一种乐器数字化接口中突发音的播放方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2005100086770A CN100562923C (zh) | 2005-03-01 | 2005-03-01 | 一种乐器数字化接口中突发音的播放方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1645474A CN1645474A (zh) | 2005-07-27 |
CN100562923C true CN100562923C (zh) | 2009-11-25 |
Family
ID=34875344
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005100086770A Expired - Fee Related CN100562923C (zh) | 2005-03-01 | 2005-03-01 | 一种乐器数字化接口中突发音的播放方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100562923C (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111933099A (zh) * | 2020-07-27 | 2020-11-13 | 北京爱其科技有限公司 | 基于单片机的midi音乐播放电路和方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1427392A (zh) * | 2001-11-30 | 2003-07-02 | 雅马哈株式会社 | 基于不同种类音乐数据的合奏的音乐记录和播放器 |
CN1440184A (zh) * | 2003-03-27 | 2003-09-03 | 大唐微电子技术有限公司 | 基于移动通信网络的多路语音收听系统及方法 |
-
2005
- 2005-03-01 CN CNB2005100086770A patent/CN100562923C/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1427392A (zh) * | 2001-11-30 | 2003-07-02 | 雅马哈株式会社 | 基于不同种类音乐数据的合奏的音乐记录和播放器 |
CN1440184A (zh) * | 2003-03-27 | 2003-09-03 | 大唐微电子技术有限公司 | 基于移动通信网络的多路语音收听系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN1645474A (zh) | 2005-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109218535A (zh) | 智能调节音量的方法、装置、存储介质及终端 | |
CN1215540A (zh) | 声反馈校正 | |
CA2539442A1 (en) | Methods and apparatus to operate an audience metering device with voice commands | |
CN106919867A (zh) | 移动终端及其关机控制方法和装置 | |
CN100562923C (zh) | 一种乐器数字化接口中突发音的播放方法 | |
CN106098038B (zh) | 一种自动钢琴演奏系统中多音轨midi文件的演奏方法 | |
CN108960836A (zh) | 语音支付方法、装置及系统 | |
CN105609095B (zh) | 音频信号处理装置 | |
KR20110061987A (ko) | 로봇의 음성인식 성능 평가장치 및 평가 방법 | |
CN109446351B (zh) | 一种控制ppt自动翻页的方法 | |
CN105702240A (zh) | 智能终端调整歌曲伴奏音乐的方法和装置 | |
CN103928021B (zh) | 一种电声二胡 | |
US7046792B2 (en) | Transmit/receive arbitrator | |
CN100422880C (zh) | 时刻管理装置及时刻管理方法 | |
CN110491425A (zh) | 一种智能音乐播放装置 | |
CN1939089B (zh) | 音量控制电路、半导体集成电路及声源设备 | |
CN106211799A (zh) | 使用声响的任意信号的传递方法 | |
CN105069935B (zh) | 门铃的按键音处理方法、装置及所适用的门铃 | |
JPH032959Y2 (zh) | ||
JP3075350U (ja) | カラオケ装置のための自動オンオフデバイス | |
RU1152U1 (ru) | Устройство программного управления электронной аппаратурой для систем инфракрасного дистанционного управления | |
WO2023229492A1 (ru) | Пульт дистанционного управления | |
CN101409776B (zh) | 应用于多媒体接口的声音时钟产生方法 | |
CN117935760A (zh) | 一种基于超声波的无接触式虚拟电子钢琴演奏方法及系统 | |
CN1201970A (zh) | 声控计算器与时钟及其控制方法 |
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: 20091125 Termination date: 20120301 |