CN110636074A - 双排键音色自动下发系统 - Google Patents
双排键音色自动下发系统 Download PDFInfo
- Publication number
- CN110636074A CN110636074A CN201910934178.6A CN201910934178A CN110636074A CN 110636074 A CN110636074 A CN 110636074A CN 201910934178 A CN201910934178 A CN 201910934178A CN 110636074 A CN110636074 A CN 110636074A
- Authority
- CN
- China
- Prior art keywords
- data
- byte
- unit
- tone color
- midi
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- 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
Abstract
本发明公开了双排键音色自动下发的系统,包括:请求模块,用于向服务器发送接收第一音色数据的请求。接收模块,用于接收所述第一音色数据。解析模块,用于解析所述第一音色数据为第二音色数据。封装模块,用于将所述第二音色数据封装为MIDI指令序列。发送模块,用于发送所述MIDI指令序列。方法操作步骤简单,扩宽了适用人群,可操作性强;避免U盘使用长造成损坏或丢失现象的弊端,保证使用的实时有效及可靠性;不存在容量限制,服务器端有海量的资源,不存在使用的有限性;同时更好地对音色文件的创作进行保护,用户的创作的价值体现更明显,同时也起到了很好的用户创作敦促作用。
Description
技术领域
本发明属于音乐教育技术领域,具体涉及一种音色自动下发或音色自动接收的方法、系统。
背景技术
随着互联网技术的发展,越来越多的互联网技术应用到音乐教育领域。而作为电子键盘乐器“双排键”以音色丰富著称,对于双排键的音色加载,目前市面上都是采用的U盘读取的方式,具体过程为:首先制作音色文件,然后将音色文件拷贝到U盘,将U盘插入双排键USB口,通过双排键读取U盘内容,点击双排键音色加载按钮,选择需要加载的文件,现有技术的缺点,第一方面此种操作步骤比较繁琐,尤其对于年龄小的双排键学员,操作相对较困难;第二方面,U盘使用长了,容易损坏或丢失,不能保证使用的实时有效及可靠性;第三方面,U盘容量有限,造成了使用的有限性;第四方面,U盘内容容易被拷贝,容易导致盗版,不易做到对音色文件的保护创作。
发明内容
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本发明第一目的在于提出一种音色自动下发系统,该系统将音色数据文件存储在服务器,通过终端加载服务器音色文件,然后采用MIDI传输协议,将音色文件下发到双排键。达到了无需使用U盘和操作双排键,只需操作终端实现了音色文件在任意有网络的地方加载的操作简单的技术效果。
本发明第二个目的在于提出一种双排键音色自动接收的系统。
本发明第三个目的在于提出一种双排键音色自动下发的方法。
本发明第四个目的在于提出一种双排键音色自动接收的方法。
本发明第五个目的在于提出一种非临时性计算机可读存储介质。
为了实现上述目的,本发明第一方面实施例提供了音色自动下发的系统,所述系统包括:请求模块,用于向服务器发送接收第一音色数据的请求。接收模块,用于接收所述第一音色数据。解析模块,用于解析所述第一音色数据为第二音色数据。封装模块,用于将所述第二音色数据封装为MIDI指令序列。发送模块,用于发送所述MIDI指令序列。
根据本发明的一个实施例,所述系统还包括:选择模块,用于选择音乐曲目。
根据本发明的一个实施例,所述第一音色数据为(.B00)格式数据,所述(.B00)格式数据包括开头段数据、音色库ID、表示本音色库事件数据、字节单元音色数据、结尾段数据。
根据本发明的一个实施例,所述解析模块包括:判断单元,用于判断所述字节单元音色数据、第一字节单元音色数据的字节数据最高位是否为“1”,得到判断结果。
接收单元,用于接收所述判断结果,如果接收到的所述字节单元音色数据的字节数据最高位不为“1”的判断结果,则不用转换所述字节单元音色数据;如果接收到的所述字节单元音色数据的字节数据最高位为“1”的判断结果,则转换所述字节单元音色数据。
第一转换单元,用于转换所述字节单元音色数据为所述第一字节单元音色数据。
第二转换单元,用于将所述第一字节单元音色数据、所述字节单元音色数据转换为第二音色数据。
根据本发明的一个实施例,所述第二音色数据包括:注册音节数据、KBP数据、用户音色数据、注册SEQ数据、用户节奏数据。
根据本发明的一个实施例,所述发送模块包括:设定单元,用于设定第一阀值、第二阀值,所述第一阀值为一常数a,所述第二阀值为一常数b。
判断单元,用于判断所述MIDI指令序列的字节长度是否小于第一阀值。
接收单元,用于接收所述判断单元的判断结果,所述判断结果包括:所述MIDI指令序列的字节长度小于第一阀值以及所述MIDI指令序列的字节长度不小于第一阀值。
发送单元,用于发送所述MIDI指令序列,包括:所述MIDI指令序列的字节长度小于第一阀值发送所述MIDI指令序列;所述MIDI指令序列的字节长度不小于第一阀值分割所述MIDI指令序列为第一阀值单元的MIDI指令序列并发送所述第一阀值单元的MIDI指令序列。
根据本发明的一个实施例,按照所述第二阀值时间发送所述MIDI指令序列、所述第一阀值单元的MIDI指令序列。
为了实现上述目的,本发明第二方面实施例提供了一种音色自动接收的系统,所述系统包括:接收模块,用于接收MIDI指令序列。组装模块,用于将所述MIDI指令序列组装成音色数据。
为了实现上述目的,本发明第三方面实施例提供了一种音色自动下发的方法,所述方法包括:
S1:向服务器发送接收第一音色数据请求。
S2:接收所述第一音色数据。
S3:解析所述第一音色数据为第二音色数据。
S4:将所述第二音色数据封装为MIDI指令序列。
S5:发送所述MIDI指令序列。
根据本发明的一个实施例,所述方法还包括:S0:选择音乐曲目。
根据本发明的一个实施例,所述第一音色数据为(.B00)格式数据,所述(.B00)格式数据包括开头段数据、音色库ID、表示本音色库事件数据、字节单元音色数据、结尾段数据。
根据本发明的一个实施例,所述S3中所述解析所述第一音色数据为第二音色数据,包括:
S31:判断所述字节单元音色数据、第一字节单元音色数据的字节数据最高位是否为“1”,得到判断结果。
S32:接收所述判断结果,如果接收到的所述字节单元音色数据的字节数据最高位不为“1”的判断结果,则不用转换所述字节单元音色数据;如果接收到的所述字节单元音色数据的字节数据最高位为“1”的判断结果,则转换所述字节单元音色数据为所述第一字节单元音色数据并转到步骤S31。
S33:根据所述S31的判断结果转换所述第一字节单元音色数据、所述字节单元音色数据转换为第二音色数据。
根据本发明的一个实施例,所述第二音色数据包括:注册音节数据、KBP数据、用户音色数据、注册SEQ数据、用户节奏数据。
根据本发明的一个实施例,所述S5中所述发送所述MIDI指令序列,包括:S51:判断所述MIDI指令指令序列的字节长度是否小于第一阀值,所述第一阀值为一常数a。
S52:接收所述判断单元的判断结果,所述判断结果包括:所述MIDI指令序列的字节长度小于第一阀值以及所述MIDI指令序列的字节长度不小于第一阀值。
S53:发送所述MIDI指令序列,包括:所述MIDI指令序列的字节长度小于第一阀值发送所述MIDI指令序列;所述MIDI指令序列的字节长度不小于第一阀值分割所述MIDI指令序列为第一阀值单元的MIDI指令序列并发送所述第一阀值单元的MIDI指令序列。
根据本发明的一个实施例,所述S53还包括:按照第二阀值时间发送所述MIDI指令序列、所述第一阀值单元的MIDI指令序列,所述第二阀值为一常数b。
为了实现上述目的,本发明第四方面实施例提供了一种音色自动接收的方法,所述方法包括:S1:接收MIDI指令序列。S2:将所述MIDI指令序列组装成音色数据。
为了实现上述目的,本发明第五方面实施例提供了一种非临时性计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以上所述的音色自动下发的方法。。
本发明达到的技术效果为:第一方面此种方法操作步骤简单,只需选择目标音乐就可实现音色自动下发的技术效果,扩宽了不同年龄段的适用人群,可操作性强;第二方面,避免U盘等实体装置由于使用时间长造成损坏或丢失现象的造成的影响使用弊端,保证使用的实时有效及可靠性;第三方面,不存在容量限制,服务器端有海量的资源,直接通过终端从服务器或者云服务器下载相应的音色文件即可,音色资源、容量不受限制,避开了使用的有限性的问题;第四方面,由于音色文件都存储在服务器或者云服务器中,更好地对音色文件的创作进行保护,用户的创作的价值体现更明显,同时对用户也起到了很好的创作敦促作用。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例公开的音色自动下发系统的结构方框图;
图2是本发明实施例公开的音色自动下发系统的又一结构方框图;
图3是本发明实施例公开的所述字节单元音色数据的字节数据最高位不为“1”的情况下不用转换所述字节单元音色数据的数据表示图;
图4是本发明实施例公开的所述字节单元音色数据的字节数据最高位为“1”的情况下转换所述字节单元音色数据的数据表示图;
图5是本发明实施例公开的所述音色自动下发的方法流程图;
图6是本发明实施例公开的所述音色自动下发的又一方法流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明实施例保护的范围。
本发明主要目的解决音色下发的操作便捷性、安全性、可靠性,音色(musicalquality)是指不同的声音的频率表现在波形方面总是有与众不同的特性。不同的物体振动都有不同的特点。如同天下的树叶各有不同一样。不同的发声体由于其材料、结构不同,则发出的声音的音色也不同,例如钢琴、小提琴、人的声音各不一样;每一个人的声音也会不一样。音色下发的操作步骤具体如下:音色文件存储在云端,用户想要弹奏某首曲子时,只需在终端内选择曲目名,点击后,自动从云端下载音色文件资源,终端通过MIDI数据线与双排键的MIDI端口相连,终端将下载好的音色文件通过MIDI协议将音色文件分块发送给双排键。双排键收到所有音色文件分块后,加载音色文件中包含的音色。
MIDI(Musical Instrument Digital Interface)乐器数字接口,是20世纪80年代初为解决电声乐器之间的通信问题而提出的。MIDI是编曲界最广泛的音乐标准格式,可称为“计算机能理解的乐谱”。它用音符的数字控制信号来记录音乐。一首完整的MIDI音乐只有几十KB大,而能包含数十条音乐轨道。几乎所有的现代音乐都是用MIDI加上音色库来制作合成的。MIDI传输的不是声音信号,而是音符、控制参数等指令,它指示MIDI设备要做什么,怎么做,如演奏哪个音符、多大音量等。它们被统一表示成MIDI消息(MIDI Message)。传输时采用异步串行通信,标准通信波特率为31.25×(1±0.01)KBaud。
针对以上技术问题,本发明第一方面实施例提供了音色自动下发的系统,图1是本发明实施例公开的音色自动下发系统的结构方框图所述系统100包括:请求模块101,用于向服务器发送接收第一音色数据的请求。接收模块102,用于接收所述第一音色数据。解析模块103,用于解析所述第一音色数据为第二音色数据。封装模块104,用于将所述第二音色数据封装为MIDI指令序列。发送模块105,用于发送所述MIDI指令序列。
根据本发明的一个实施例,图2是本发明实施例公开的音色自动下发系统的又一结构方框图,所述系统100还包括:选择模块106,用于选择音乐曲目。
根据本发明的一个实施例,所述第一音色数据为(.B00)格式数据,所述(.B00)格式数据包括开头段数据、音色库ID、表示本音色库事件数据、字节单元音色数据、结尾段数据。
根据本发明的一个实施例,所述解析模块103包括:判断单元,用于判断所述字节单元音色数据、第一字节单元音色数据的字节数据最高位是否为“1”,得到判断结果。
接收单元,用于接收所述判断结果,如果接收到的所述字节单元音色数据的字节数据最高位不为“1”的判断结果,则不用转换所述字节单元音色数据;如果接收到的所述字节单元音色数据的字节数据最高位为“1”的判断结果,则转换所述字节单元音色数据。
第一转换单元,用于转换所述字节单元音色数据为所述第一字节单元音色数据。
第二转换单元,用于将所述第一字节单元音色数据、所述字节单元音色数据转换为第二音色数据。
根据本发明的一个实施例,所述第二音色数据包括:注册音节数据、KBP数据、用户音色数据、注册SEQ数据、用户节奏数据。
根据本发明的一个实施例,所述发送模块105包括:设定单元,用于设定第一阀值、第二阀值,所述第一阀值为一常数a,所述第二阀值为一常数b。
判断单元,用于判断所述MIDI指令序列的字节长度是否小于第一阀值。
接收单元,用于接收所述判断单元的判断结果,所述判断结果包括:所述MIDI指令序列的字节长度小于第一阀值以及所述MIDI指令序列的字节长度不小于第一阀值。
发送单元,用于发送所述MIDI指令序列,包括:所述MIDI指令序列的字节长度小于第一阀值发送所述MIDI指令序列;所述MIDI指令序列的字节长度不小于第一阀值分割所述MIDI指令序列为第一阀值单元的MIDI指令序列并发送所述第一阀值单元的MIDI指令序列。
根据本发明的一个实施例,按照所述第二阀值时间发送所述MIDI指令序列、所述第一阀值单元的MIDI指令序列。
整个过程由终端自动完成,用户只需一步操作:选择想要弹奏的曲目就行,无需操作双排键上各种操作按钮,大大降低双排键操作门槛。
由于音色资源在云服务器或者服务器加载,因此容量不受限制,只要有网络就可以访问,因此访问便捷,不会丢失,不会损坏,也不会被随意拷贝,防止盗版。
本发明第二方面实施例提供了一种音色自动接收的系统,所述系统包括:接收模块,用于接收MIDI指令序列。组装模块,用于将所述MIDI指令序列组装成音色数据。
以双键盘音色下发系统为例,一套完整的双排键音色下发系统包括:装有音色下发App iPad,MIDI数据线,双排键,通过MIDI数据线将iPad和双排键连接。具体步骤如下:
S1:用户打开终端App,选择想要弹奏的曲目。
S2:终端App从服务器加载音色文件。
S3:音色文件解析,解析过程如下:
S31:原始的音色文件是在双排键上编制好后,导出的,后缀为.B00的二进制文件。
S32:加载的.B00文件无法直接发给双排键进行识别加载,需将B00文件转换成MIDI格式的指令序列,然后进行发送。
由于系统码的要求是从F0开始到F7之间的内容必需是0x00~0x7F之间的值,否则将被视为不标准的系统码。而在F0后接上的表示尺寸的内容,是按照MIDI文件的要求而设置的。
S33:.B00格式的数据格式为,如表1所示,其中,BLL:数据Byte数的0bit~6bit、BML:7bit~13bit、BMH:14bit~20bit、BHH:21bit~27bit。
由于MIDI每个字节数据位的表示范围是0-127,即字节最高为不能为1,如果最高为1,则双排键将无法识别该数据,因此对于最高位为1的字节,需要拆分成2个字节表示,这个转换过程,称之为7bit转换,以下是转换说明:
我们知道,1个字节有8个bit(我们用bit0~bit7标识),它可表示的数据范围是:0~255。
如果某个字节的bit7和bit6是0,则该字节无需做7bit转换,
表1
可直接使用,比如十进制数63用二进制表示为:0011 1111,变换后为0011 1111,参见图3,所述字节单元音色数据的字节数据最高位不为“1”的情况下不用转换所述字节单元音色数据的数据表示图。
如果某个字节的bit7和bit6有一个不是0,则该字节需要拆分成2个字节来表示,比如十进制数191用二进制表示为:1011 1111,它的bit7为1,我们需要将它拆成两个字节:字节1和字节2。其中字节1bit0~bit5为原始直接的bit0~bit5,字节1的bit6和bit7为01;字节2的b0~bit3为0,bit4和bit5分别为原始字节的bit6和bit7,字节1bit6和bit7为01。1011 1111变换后为:字节1+字节2,即:0111 1111+0110 0000参见图4,所述字节单元音色数据的字节数据最高位为“1”的情况下转换所述字节单元音色数据的数据表示图。
S34:将B00文件数据进行7bit转换后,抽取音色数据,包括:注册1的数据、注册2的数据、注册3的数据、注册4的数据、注册5的数据、注册6的数据、注册7的数据、KBP的数据、用户音色数据、注册SEQ数据、用户节奏数据。
S35:将S34中的每条数据,封装成一条MIDI的系统指令,即F0开口,F7结尾的MIDI指令。
S36:将S35中生成的音色指令生成音色MIDI序列,供下面步骤S4使用。
S4:终端App给双排键发送开始接受音色文件指令。
S5:如果当前音色指令小于等于256字节,则字节发送该音色指令,否则App将音色文件分包切片每个数据包切割成256Bytes,然后每个50毫秒,发送一个音色数据块,直到该条音色指令发送完成。
S6:按照步骤S5的发送逻辑,将第3不生成的所有音色序列指令逐条发送给双排键。
S7:当App最后一个数据包发送完毕后,App发送音色文件发送完毕指令。
S8:双排键收到所有数据包后,组装成完整音色文件。
S9:将完整的音色文件加载到双排键。
S10:用户开始演奏。
本发明第三方面实施例提供了一种音色自动下发的方法,图5是本发明实施例公开的所述音色自动下发的方法流程图;所述方法包括:
S1:向服务器发送接收第一音色数据请求。
S2:接收所述第一音色数据。
S3:解析所述第一音色数据为第二音色数据。
S4:将所述第二音色数据封装为MIDI指令序列。
S5:发送所述MIDI指令序列。
根据本发明的一个实施例,图6是本发明实施例公开的所述音色自动下发的又一方法流程图,所述方法还包括:S0:选择音乐曲目。
根据本发明的一个实施例,所述第一音色数据为(.B00)格式数据,所述(.B00)格式数据包括开头段数据、音色库ID、表示本音色库事件数据、字节单元音色数据、结尾段数据。
根据本发明的一个实施例,所述S3中所述解析所述第一音色数据为第二音色数据,包括:
S31:判断所述字节单元音色数据、第一字节单元音色数据的字节数据最高位是否为“1”,得到判断结果。
S32:接收所述判断结果,如果接收到的所述字节单元音色数据的字节数据最高位不为“1”的判断结果,则不用转换所述字节单元音色数据;如果接收到的所述字节单元音色数据的字节数据最高位为“1”的判断结果,则转换所述字节单元音色数据为所述第一字节单元音色数据并转到步骤S31。
S33:根据所述S31的判断结果转换所述第一字节单元音色数据、所述字节单元音色数据转换为第二音色数据。
根据本发明的一个实施例,所述第二音色数据包括:注册音节数据、KBP数据、用户音色数据、注册SEQ数据、用户节奏数据。
根据本发明的一个实施例,所述S5中所述发送所述MIDI指令序列,包括:S51:判断所述MIDI指令指令序列的字节长度是否小于第一阀值,所述第一阀值为一常数a。
S52:接收所述判断单元的判断结果,所述判断结果包括:所述MIDI指令序列的字节长度小于第一阀值以及所述MIDI指令序列的字节长度不小于第一阀值。
S53:发送所述MIDI指令序列,包括:所述MIDI指令序列的字节长度小于第一阀值发送所述MIDI指令序列;所述MIDI指令序列的字节长度不小于第一阀值分割所述MIDI指令序列为第一阀值单元的MIDI指令序列并发送所述第一阀值单元的MIDI指令序列。
根据本发明的一个实施例,所述S53还包括:按照第二阀值时间发送所述MIDI指令序列、所述第一阀值单元的MIDI指令序列,所述第二阀值为一常数b。
此种方法操作步骤简单,扩宽了适用人群,可操作性强;第二方面,避免U盘使用长造成损坏或丢失现象的弊端,保证使用的实时有效及可靠性;第三方面,不存在容量限制,服务器端有海量的资源,不存在使用的有限性;第四方面,由于音色文件都存储在服务器或者云服务器中,更好地对音色文件的创作进行保护,用户的创作的价值体现更明显,同时也起到了很好的用户创作敦促作用。
整个过程由终端自动完成,用户只需一步操作:选择想要弹奏的曲目就行,无需操作琴键上各种操作按钮,大大降低操作门槛。
本发明第四方面实施例提供了一种音色自动接收的方法,所述方法包括:S1:接收MIDI指令序列。S2:将所述MIDI指令序列组装成音色数据。无需操作琴键上各种操作按钮,避免初学者或者年龄较小的用户使用不畅或者使用困难带来的不便。
本发明第五方面实施例提供了一种非临时性计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以上所述的音色自动下发的方法。。
本发明达到的技术效果为:第一方面此种方法操作步骤简单,只需选择目标音乐就可实现音色自动下发的技术效果,扩宽了不同年龄段的适用人群,可操作性强;第二方面,避免U盘等实体装置由于使用时间长造成损坏或丢失现象的造成的影响使用弊端,保证使用的实时有效及可靠性;第三方面,不存在容量限制,服务器端有海量的资源,直接通过终端从服务器或者云服务器下载相应的音色文件即可,音色资源、容量不受限制,避开了使用的有限性的问题;第四方面,由于音色文件都存储在服务器或者云服务器中,更好地对音色文件的创作进行保护,用户的创作的价值体现更明显,同时对用户也起到了很好的创作敦促作用。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所描述的电子设备等实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上各实施例仅用以说明本发明的实施例的技术方案,而非对其限制;尽管参照前述各实施例对本发明的实施例进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明的实施例各实施例技术方案的范围。
Claims (10)
1.双排键音色自动下发的系统,其特征在于,所述系统包括:
请求模块,用于向服务器发送接收第一音色数据的请求;
接收模块,用于接收所述第一音色数据;
解析模块,用于解析所述第一音色数据为第二音色数据;
封装模块,用于将所述第二音色数据封装为MIDI指令序列;
发送模块,用于发送所述MIDI指令序列。
2.根据权利要求1所述的系统,其特征在于,所述第一音色数据为(.B00)格式数据,所述(.B00)格式数据包括开头段数据、音色库ID、表示本音色库事件数据、字节单元音色数据和结尾段数据。
3.根据权利要求1或2所述的系统,其特征在于,所述解析模块包括:
判断单元,用于判断所述字节单元音色数据、第一字节单元音色数据的字节数据最高位是否为“1”,得到判断结果;
接收单元,用于接收所述判断结果,如果接收到的所述字节单元音色数据的字节数据最高位不为“1”的判断结果,则不用转换所述字节单元音色数据;如果接收到的所述字节单元音色数据的字节数据最高位为“1”的判断结果,则转换所述字节单元音色数据。
第一转换单元,用于转换所述字节单元音色数据为所述第一字节单元音色数据;
第二转换单元,用于将所述第一字节单元音色数据、所述字节单元音色数据转换为第二音色数据。
4.根据权利要求1所述的系统,其特征在于,所述发送模块包括:
设定单元,用于设定第一阀值、第二阀值,所述第一阀值为一常数a,所述第二阀值为一常数b;
判断单元,用于判断所述MIDI指令序列的字节长度是否小于第一阀值;
接收单元,用于接收所述判断单元的判断结果,所述判断结果包括:所述MIDI指令序列的字节长度小于第一阀值以及所述MIDI指令序列的字节长度不小于第一阀值;
发送单元,用于发送所述MIDI指令序列,包括:所述MIDI指令序列的字节长度小于第一阀值发送所述MIDI指令序列;所述MIDI指令序列的字节长度不小于第一阀值分割所述MIDI指令序列为第一阀值单元的MIDI指令序列并发送所述第一阀值单元的MIDI指令序列;更进一步地,按照所述第二阀值时间发送所述MIDI指令序列、所述第一阀值单元的MIDI指令序列。
5.双排键音色自动下发的方法,其特征在于,所述方法包括:
S1:向服务器发送接收第一音色数据请求;
S2:接收所述第一音色数据;
S3:解析所述第一音色数据为第二音色数据;
S4:将所述第二音色数据封装为MIDI指令序列;
S5:发送所述MIDI指令序列。
6.根据权利要求5所述的方法,其特征在于,所述第一音色数据为(.B00)格式数据,所述(.B00)格式数据包括开头段数据、音色库ID、表示本音色库事件数据、字节单元音色数据、结尾段数据。
7.根据权利要求5所述的方法,其特征在于,所述S3中所述解析所述第一音色数据为第二音色数据,包括:
S31:判断所述字节单元音色数据、第一字节单元音色数据的字节数据最高位是否为“1”,得到判断结果;
S32:接收所述判断结果,如果接收到的所述字节单元音色数据的字节数据最高位不为“1”的判断结果,则不用转换所述字节单元音色数据;如果接收到的所述字节单元音色数据的字节数据最高位为“1”的判断结果,则转换所述字节单元音色数据为所述第一字节单元音色数据并转到步骤S31;
S33:根据所述S31的判断结果转换所述第一字节单元音色数据、所述字节单元音色数据转换为第二音色数据。
8.根据权利要求5所述的方法,其特征在于,所述S5中所述发送所述MIDI指令序列,包括:
S51:判断所述MIDI指令指令序列的字节长度是否小于第一阀值,所述第一阀值为一常数a;
S52:接收所述判断单元的判断结果,所述判断结果包括:所述MIDI指令序列的字节长度小于第一阀值以及所述MIDI指令序列的字节长度不小于第一阀值;
S53:发送所述MIDI指令序列,包括:所述MIDI指令序列的字节长度小于第一阀值发送所述MIDI指令序列;所述MIDI指令序列的字节长度不小于第一阀值分割所述MIDI指令序列为第一阀值单元的MIDI指令序列并发送所述第一阀值单元的MIDI指令序列。
9.根据权利要求7所述的方法,其特征在于,所述S53还包括:
按照第二阀值时间发送所述MIDI指令序列、所述第一阀值单元的MIDI指令序列,所述第二阀值为一常数b。
10.一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求5-8中任一所述的双排键音色自动下发的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910934178.6A CN110636074B (zh) | 2019-09-29 | 2019-09-29 | 双排键音色自动下发系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910934178.6A CN110636074B (zh) | 2019-09-29 | 2019-09-29 | 双排键音色自动下发系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110636074A true CN110636074A (zh) | 2019-12-31 |
CN110636074B CN110636074B (zh) | 2020-08-14 |
Family
ID=68973472
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910934178.6A Active CN110636074B (zh) | 2019-09-29 | 2019-09-29 | 双排键音色自动下发系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110636074B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1453716A (zh) * | 2003-05-30 | 2003-11-05 | 蔡键龙 | 基于midi文件的便携式多媒体音乐作曲系统 |
CN1731506A (zh) * | 2005-09-07 | 2006-02-08 | 北京中星微电子有限公司 | 实现将midi文件和数字波形音频文件合成播放的方法及装置 |
JP2006267491A (ja) * | 2005-03-23 | 2006-10-05 | Yamaha Corp | 自動演奏データ再生装置およびその制御方法を実現するためのプログラム |
CN101577113A (zh) * | 2009-03-06 | 2009-11-11 | 北京中星微电子有限公司 | 一种音乐合成方法及装置 |
CN105869614A (zh) * | 2016-03-29 | 2016-08-17 | 北京精奇互动科技有限公司 | 音频文件导出方法和装置 |
CN207367592U (zh) * | 2017-11-08 | 2018-05-15 | 北京开心练教育科技有限公司 | 电子键盘的midi信号转换装置 |
CN108076074A (zh) * | 2016-11-07 | 2018-05-25 | 方正璞华软件(武汉)股份有限公司 | 一种基于bs结构的音频文件管理系统 |
-
2019
- 2019-09-29 CN CN201910934178.6A patent/CN110636074B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1453716A (zh) * | 2003-05-30 | 2003-11-05 | 蔡键龙 | 基于midi文件的便携式多媒体音乐作曲系统 |
JP2006267491A (ja) * | 2005-03-23 | 2006-10-05 | Yamaha Corp | 自動演奏データ再生装置およびその制御方法を実現するためのプログラム |
CN1731506A (zh) * | 2005-09-07 | 2006-02-08 | 北京中星微电子有限公司 | 实现将midi文件和数字波形音频文件合成播放的方法及装置 |
CN101577113A (zh) * | 2009-03-06 | 2009-11-11 | 北京中星微电子有限公司 | 一种音乐合成方法及装置 |
CN105869614A (zh) * | 2016-03-29 | 2016-08-17 | 北京精奇互动科技有限公司 | 音频文件导出方法和装置 |
CN108076074A (zh) * | 2016-11-07 | 2018-05-25 | 方正璞华软件(武汉)股份有限公司 | 一种基于bs结构的音频文件管理系统 |
CN207367592U (zh) * | 2017-11-08 | 2018-05-15 | 北京开心练教育科技有限公司 | 电子键盘的midi信号转换装置 |
Non-Patent Citations (1)
Title |
---|
徐烈: "MIDI音乐制作", 《华为应用商城》 * |
Also Published As
Publication number | Publication date |
---|---|
CN110636074B (zh) | 2020-08-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7579543B2 (en) | Electronic musical apparatus and lyrics displaying apparatus | |
JP3915585B2 (ja) | データ生成方法、プログラム、記録媒体およびデータ生成装置 | |
CN104978973B (zh) | 一种音频处理方法及装置 | |
CN106409282B (zh) | 一种音频合成系统、方法及其电子设备和云服务器 | |
CN110636074B (zh) | 双排键音色自动下发系统 | |
JP7343012B2 (ja) | 情報処理装置および情報処理方法 | |
CN111185006A (zh) | 游戏中的信息处理方法及装置、存储介质及电子设备 | |
KR101005672B1 (ko) | Midi 파일 재생의 최적화 | |
KR100636906B1 (ko) | 미디 재생 장치 그 방법 | |
JP2005017992A (ja) | 演奏データ送信装置及び演奏システム並びに演奏方法 | |
KR100598209B1 (ko) | Midi 재생 장치 및 방법 | |
US20070028751A1 (en) | System for using sound inputs to obtain video display response | |
JP6686756B2 (ja) | 電子楽器 | |
JP2008090202A (ja) | チューニング装置及びチューニング用コンピュータ・プログラム | |
US20240087550A1 (en) | Performance data transmission control method, storage medium, electronic device and electronic musical instrument | |
JP4238807B2 (ja) | 音源用波形データの決定装置 | |
JP6819236B2 (ja) | 音処理装置、音処理方法、及びプログラム | |
JP2941667B2 (ja) | 演奏情報出力装置及びその装置を備えた自動演奏装置 | |
JP3197620B2 (ja) | 演奏情報通信装置 | |
JP3658661B2 (ja) | データ受信装置、及びデータ送信装置 | |
KR100689495B1 (ko) | Midi 재생 장치 및 방법 | |
KR100598208B1 (ko) | Midi 재생 장치 및 방법 | |
KR100636905B1 (ko) | 미디 재생 장치 그 방법 | |
KR100547340B1 (ko) | 미디 재생 장치 그 방법 | |
CN112185325A (zh) | 音频播放风格调节方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |