nihui 发表于 2007-12-1 21:35:10

用键盘弹奏──虚拟 MIDI 键盘

用键盘弹奏──虚拟 MIDI 键盘

安装方法:
添加 wiki 上面的 1107 apt 非官方源

apt-get install timidity++ vkeybd

这样子会同时安装 timidity++ 和 vkeybd
多媒体目录菜单中便会多出两样东西。
timidity 是个 MIDI 音乐的播放器和 MIDI->WAV 的转换器
可以直接双击 MIDI 音乐文件打开了~

http://img70.imageshack.us/img70/3876/vkeybd01ph6.png

使用方法:
1.首先确认系统已经启用了 MIDI 接口
打开控制中心──声音和多媒体──声音系统──硬件──选择 MIDI 设备
如果没有设备,那么请以 root 权限运行:
modprobe snd-seq-oss
如果有了的话,那么就用不着运行这条命令了。

2.打开 timidity 的 ALSA 接口
直接运行(建议后台执行):
timidity -iA

3.将 MIDI 设备改为 timidity 接口
打开控制中心──声音和多媒体──声音系统──硬件──选择 MIDI 设备
选择一个 Timidity port
0 ~ 4 分别对应于四个 port,后面连接的时候需要的。
如果你不清楚具体是什么原理,那么请选择 port 0

4.打开 vkeybd
简单,菜单中直接点出来吧~

5.将 vkeybd 与 timidity 的 port 连接
运行:
aconnect 129:0 128:0
其中 129:0 便是 vkeybd 的默认接口,128:0 就是 timidity 的
如果连接成功,那么现在 vkeybd 就已经能够出声了,随便点鼠标~
如果还是没声,可以确认一下:
cat /proc/asound/seq/clients
自行修正 aconnect 的参数。

6.(可选)
建立自己的 keymap 配置文件
默认的键位设置很不合理,建议自己修改一下。
配置文件在 ~/.vkeybdmap
如果没有,请用 vkeybd 菜单中的 "save keymap" 保存一下就有了~

注意:如果键位数量有很多的话(比如我的那个),那么运行 vkeybd 的时候要添加参数 --octave

用我的 keymap 就需要:vkeybd --octave 5
--octave 后面的数字越大,那么键位数就越多~

贴上我的~


global keymap
set keymap {
{a 8}
{z 9}
{s 10}
{x 11}
{c 12}
{f 13}
{v 14}
{g 15}
{b 16}
{n 17}
{j 18}
{m 19}
{k 20}
{comma 21}
{l 22}
{period 23}
{slash 24}
{apostrophe 25}
{Shift_R 26}
{Return 27}
{Tab 24}
{1 25}
{q 26}
{2 27}
{w 28}
{e 29}
{4 30}
{r 31}
{5 32}
{t 33}
{6 34}
{y 35}
{u 36}
{8 37}
{i 38}
{9 39}
{o 40}
{p 41}
{minus 42}
{bracketleft 43}
{equal 44}
{bracketright 45}
{BackSpace 46}
{backslash 47}
}

[ 本帖最后由 nihui 于 2007-12-1 21:39 编辑 ]

haulm 发表于 2007-12-2 02:20:14

又搞新玩意了,不过timidity++和kvm有依赖,kvm又和内核关联,所以这个我无法使用,尝试重新编译当中。

[ 本帖最后由 haulm 于 2007-12-2 02:38 编辑 ]
页: [1]
查看完整版本: 用键盘弹奏──虚拟 MIDI 键盘