delphi将xm音乐文件嵌入自己的程序


本文整理自网络,侵删。

 delphi将xm音乐文件嵌入自己的程序(基础)
Xm for Delphi Exe
工具:delphi 10
我今天学习了在delphi程序中嵌入xm文件。

关于此类文件的制作,工具比较多。
我个人喜欢MadTracker,因为这个软件,认识了一个瑞典的前辈,上世纪80年代就弄此类音乐的先行者。当时他说叫homestudio(所有的行为总和在一起)。

为什么要把xm嵌入Delphi Exe中呢?
是因为好多注册机都有此类小质量的音乐文件,为了用自己熟悉的开发工具也弄一个,当是学习学习。所以才有了这篇学习手记。

开始:
1. 打开网站:http://ufmod.sourceforge.net/
2. 下载:uFMOD(win32)


3. 解压
目录:ufmod-1.25-win32有很多子文件夹和两个exe。
eff.exe //此为xm文件的效果控制,用它产生两个文件。
xmstrip.exe //这个工具使用时,用两个勾选项,我不明白有什么区别
第一项是清理和strip(这个不知道如何理解)
第二项是xm标准(可能是一种协议、标准、信息格式)
\ufmod-1.25-win32\Delphi //我们要用这里的实例来学习

4. 复制一个xm文件到ufmod-1.25-win32
5. 打开xmstrip.exe,选择复制的xm文件,勾第二项(自己试下两者区别),单击GO!
6. 打开eff.exe,选择复制的xm文件,前面的控制选项,我没勾,底部,选择delphi。GO!

7. 产生了两个文件eff.inc、文件名称.pas。
我们先弄简单的方法,试验。
打开pas文件,会得到此文件被这两个工具处理过后的数据信息。
我复制一点:
const
xm : array[1..241887] of Byte = (
$45,$78,$74,$65,$6E,$64,$65,$64,$20,$4D,$6F,$64,$75,$6C,$65,$3A,
$20,$4C,$65,$76,$69,$74,$61,$74,$69,$6F,$6E,$20,$20,$20,$20,$20,
$20,$20,$20,$20,$20,$1A,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$04,$01,$14,$01,$00,$00,
$2A,$00,$00,$00,$0A,$00,$1A,$00,$10,$00,$00,$00,$09,$00,$7D,$00,
$01,$03,$00,$04,$02,$02,$00,$04,$05,$06,$06,$07,$08,$09,$0A,$0B,
$0C,$0E,$0D,$0F,$10,$11,$10,$13,$12,$12,$12,$14,$05,$06,$06,$15,
$16,$15,$16,$00,$04,$04,$19,$17,$18,$1 $18,$00,$00,$00,$00,$00,$00,
);
8. 复制全部
9. 打开\ufmod-1.25-win32\Delphi\WinMM下的test.dpr
你会发现里现同样有作者用于测试的xm文件的数据信息,将此替换为你的,编译测试一下。

相关阅读 >>

Delphi 调用外部 dll 中的函数(1. 早绑定)

Delphi firedac 下的 sqlite 创建数据库

Delphi xe10 fdmemtable 数据保存本地和从本地加载

Delphi crc算法的实现

Delphi 字符串中末位是双字节字符的处理(避免最后一位为乱码)

Delphi touchkeyboard1 基本用法

Delphi copyrect实现的几个图片的转换效果

Delphi xe5也可以开发 google glass应用

Delphi 固定保持datetime日期格式

Delphi 删除动态数组的指定元素

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...