首先需要配置一下键盘,像下面的配置就好:
然后python代码如下:
import mido import time from pymouse import PyMouse from pykeyboard import PyKeyboard dic = {'60': 'a', '61': '1', '62': 's', '63': '2', '64': 'd', '65': 'f', '66': '3', '67': 'g', '68': '4', '69': 'h', '70': '5', '71': 'j', '72': 'q', '73': '-', '74': 'w', '75': '=', '76': 'e', '77': 'r', '78': '[', '79': 't', '80': ']', '81': 'y', '82': ';', '83': 'u', '84': 'i', '59': 'm', '58': '0', '57': 'n', '56': '9', '55': 'b', '54': '8', '53': 'v', '52': 'c', '51': '7', '50': 'x', '49': '6', '48': 'z'} m = PyMouse() m.click(100, 100) k = PyKeyboard() def play_ff14(note, tim): k.press_key(note) time.sleep(tim) k.release_key(note) mid = mido.MidiFile('waltzformoon.mid') for msg in mid.play(): if msg.type == 'note_on': if str(msg.note) in dic.keys(): play_ff14(dic[str(msg.note)],0)# msg.time) print(msg)
用管理员启动脚本即可。
最后提供一个我粗糙编辑的mid文件(中间有点乱掉了),是FF8中的月下华尔兹,下载地址在这里。
mid最好都用单轨文件,一般单轨没有和弦的效果都还行,感兴趣的同学可以试试哈。
标签:play,Python,mid,dic,note,演奏,FF14,msg,import From: https://www.cnblogs.com/tiandsp/p/16736293.html