KDE 发表于 2005-6-9 20:09:43

播放声音的一点建议

大多数游戏软件都采用 mod 格式的音频文件,好象是一种编译过的 midi 的二进制文件,可以参考。如要支持 midi 播放,目前仅知道 fluid、timidity 这两个软件能利用 soundfont 软波表实现 midi 播放,magic 目录里能找到。timidity 支持 mod 文件播放。但你要实现支持 midi,恐怕非常麻烦。windows 自带 midi 支持,这和 linux 不同。

参见 starfighter 源代码,里面一定有播放方法。
http://www.parallelrealities.co.uk/starfighter.php#Downloads

这是一个典型的 mod 文件,只有 205.1k,但是使用 timidity 加上 141M 软波表放出的声音相当雄浑、透彻。
http://www.parallelrealities.co.uk/download.php?file=platinum.mod&type=mod

KDE 发表于 2005-6-9 22:23:39

播放方法:
aoss timidity starfighter.mod
aoss timidity starfighter.mid
或者:
LD_PRELOAD=/usr/lib/libaoss.so timidity starfighter.mod
LD_PRELOAD=/usr/lib/libaoss.so timidity starfighter.mid
这里使用 aoss 模拟 OSS 驱动,可以实现 ALSA 多音频流支持,避免播放时干扰其他使用声卡的软件。

alpher 发表于 2005-6-9 22:28:15

KDE兄说的链接我连不上,被网关过滤了:
中国气象局Internet访问过滤系统限制访问该网页。

原因:
该网页属于的类别“游戏”被中国气象局Internet访问过滤系统禁止。


--------------------------------------------------------------------------------

URL:
http://www.parallelrealities.co.uk/download.php?file=platinum.mod&type=mod




赫赫,多谢KDE,
我再看看SDL,能播放mod而且mid又能转乘mod的话,就用SDL吧。

多谢KDE!!

alpher 发表于 2005-6-9 23:11:37


看了半天SDL的文档,还是没搞懂到底支持哪些类型的文件。
只是看到wav,还有一种mx后缀的
其他都都没提到
ft呀ft

KDE 发表于 2005-6-10 21:41:17

你也可以下载:
http://www.magiclinux.org/dev/rc3/cd2/SRPMS/Game/starfighter-1.1-1mgc.src.rpm
执行
rpm -i starfighter-1.1-1mgc.src.rpm
然后到 /usr/src/mBuild/SOURCES 里可以找到 .tar.gz 文件。如果不行,我梢后把文件放到服务器上。

alpher 发表于 2005-6-10 22:25:48

谢谢KDE!!!
弄到源码了

alpher 发表于 2005-6-10 22:44:25

starfighter用的mod格式,只需要把midi转成mod
然后使用SDL库就可以了。
这周末假期+纪念日
下周末吧,发布具有音效和背景音乐的版本。

Anomymous 发表于 2005-8-5 06:22:00

starfighter用的mod格式,只需要把midi转成mod
然后使用SDL库就可以了。
这周末假期+纪念日
下周末吧,发布具有音效和背景音乐的版本。

mid转mdo...要用什么软体...有这个软体吗...我找不到耶

KDE 发表于 2005-8-7 18:26:52

timidity 只能实现 midi 到 mod的转换。
页: [1]
查看完整版本: 播放声音的一点建议