
简谱变成midi已经有很多软件实现了。一般音序器软件都可以将简谱或者五线谱转化成midi音轨。这种算法实现起来也不困难,前提是你得能识谱。但如果是格式的简谱的话,就会困难得多,因为目前还没有OCR可以识别乐谱的。
大多数音序器是反向识别的,即你输入midi音轨,程序帮你制作成简谱或是五线谱。
另外看看有没有相关的函数或者类可以用。
遇到一个即研究音乐又研究算法的人还真是不容易。
;TowTigerasm
;乐谱是:;1231 1231 345 345 565431 565431 25(低)1 25(低)1
;--------------------------------------------------------------------------------------------------
extrn delay:far
data segment
ftable dw 2 dup(262,294,330,262)
dw 2 dup(330,349,392,19)
dw 2 dup(392,440,392,349,330,262)
dw 2 dup(294,196,262,19),-1
ttable dw 8 dup(8)
dw 8 dup(8)
dw 2 dup(4,4,4,4,8,8)
dw 8 dup(8)
data ends
code segment
assume cs:code,ds:data
begin: mov ax,data
mov ds,ax
lea si,ftable
lea bp,ds:ttable
freq: mov di,[si]
cmp di,-1
je exit
mov bx,DS:[BP]
call sound
add si,2
add bp,2
jmp freq
exit: mov ah,4ch
int 21h
sound proc near
push ax
push bx
push cx
push dx
push di
mov al,0b6h
out 43h,al
mov dx,12h
mov ax,348ch
div di
out 42h,al
mov al,ah
out 42h,al
in al,61h
mov ah,al
or al,3
out 61h,al
call delay
mov al,ah
out 61h,al
pop di
pop dx
pop cx
pop bx
pop ax
ret
sound endp
code ends
end begin
;--------------------------------------------------------------------------------------------------
这中间还用到了一个延迟用的通用子程序: delay
在delayasm里实现:
;--------------------------------------------------------------------------------------------------
public delay
code segment
assume cs:code
delay proc far
push ax
ms250: mov cx,16666
us015: in al,61h
and al,10h
cmp al,ah
je us015
mov ah,al
loop us015
dec bl
jnz ms250
pop ax
ret
delay endp
code ends
end
在word中打出简谱的方法如下(以windows10系统的word2019版为例):
1、在word文档中输入1-7几个数字。
2、将需要输入高音符的文字选中,点击上方的“wen”按钮。
3、将对应的拼音文字改为“·”。
4、随后选中需要添加低音的文字,点击上方的“更多”按钮。
5、点击着重号,随后电脑及“·”为着重号。
6、接着选中需要添加连音的音符,点击下划线图标。
7、最后即可看到制作好的简谱,包括高音、低音和连音。
蜂鸣器貌似分直流和交流两种,具体哪种可以根据频率发出相应声音我也不大记得,买个喇叭蛮好的,也不贵。如果你硬件使用的是数模转换器的话,程序就用数组,具体还得看你想输出的波形,方波效果会好一些,程序也简单,先上网搜下各个音阶的频率吧,然后在搞定程序,蛮简单。如果不想编程序的话,用555也行,我做过类似的电子琴,555硬件电路很简单。
先运用MP3转MIDI工具“WaveToMidi”等,再用MidiNotate Musician、 eyesong、乐音、简谱制作大师等MIDI转成五线谱或简谱。
具体步骤:
一、下载安装软件
从网站搜索下载相关软件,在电脑中进行安装
二、转换乐谱:
1、运行MP3转MIDI工具把MP3等格式的音乐转换成MIDI格式
2、运行转谱软件MidiNotate Musician、 eyesong、乐音、简谱制作大师等把MIDI格式的文件转换成乐谱。
单片机实现音乐的原料很简单,把乐曲中的符号按次序排成一个表,然后按该表编辑要播放的音乐,再由查表程序依次取出,产生音符并控制节奏。
一般来说结束符为ff,体止符为00,
0x是16进制数字表示法前缀
其他字符的意思,你可以查看你d片机程序是怎么定义的就知道了。
以上就是关于Android如何识别简谱,再转换成MIDI,我是大二学生,做一个这样的软件,但是并不会。请教啊!全部的内容,包括:Android如何识别简谱,再转换成MIDI,我是大二学生,做一个这样的软件,但是并不会。请教啊!、实验要求:1. 以小组为单位进行开发,乐谱参考《IBM-PC汇编语言程序设计实验教程》P74两只老虎简谱;、怎样在WORD上打出简谱啊教我1!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)