通过在 NEC PC-98 屏幕上显示并手机拍摄 QR 码,将二进制文件传到 Windows 11。
emef2247/x68k_vgm2mml
将 VGM 音源寄存器日志转换为 X68000 用结构化 MML 与 PCM IR 的 Python 工具。
- Star
- 13
- Fork
- 0
- 未关闭 Issue
- 0
- 最近提交
- 前天
这是什么?
x68k_vgm2mml 读取 VGM 文件。VGM 记录的是对音源芯片寄存器的写入而非音符,工具从中还原音高、音长、音量和音色等演奏信息,生成 X68000 上 MDX 格式使用的结构化 MML,并输出 PCM 中间表示数据。
支持的音源包括 OPM(YM2151)、OPNA(YM2608)、PSG/SSG、SCC、DCSG(SN76489 系列)、MSM6258 系 PCM、SegaPCM 和 C140 等。没有直接对应 OPM 的音源会被近似投影到 OPM 的 FM 或加算合成音色上,PSG 也可以改为输出到 PCM。
批处理脚本 export_mdx.py 可以一次转换整个目录中的 VGM 文件,并调用 MXC、mmlx、soundlog 等外部工具生成 MDX/PDX。--force 选项会跳过不支持的演奏要素并给出诊断,--no-song-loop 则只输出一遍而非循环。转换结果不保证与原音一致,建议在实机或模拟器上验证。
核心功能
- 01从 VGM 寄存器写入中提取音符、音长、音量和音色。
- 02输出用于 X68000 MDX 播放的结构化 MML。
- 03将 OPNA、PSG、SCC、DCSG 的音色近似为 OPM 音色。
- 04为 PCM 类音源生成 PCM 中间表示和 PDX 数据。
- 05支持目录批量转换,并可通过诊断信息跳过不支持的内容。
适用场景
- 将 VGM 音乐转换为 X68000 播放器可用的 MDX 文件。
- 研究音源寄存器序列如何对应到 MML 演奏数据。
- 为 X68000 声音播放准备 PCM 采样和 PDX 音色库。
快速上手
- 1
使用 Python 3.10 或更高版本
- 2
从 VGM 文件生成 MML
python vgm2mml.py INPUT.vgm --outdir OUTDIR - 3
批量将目录转换为 MML 及 MDX/PDX(需要外部 MDX 编译器)
python scripts/export_mdx.py INDIR --outdir OUTDIR --force
使用前须知
- 生成 MDX/PDX 需要 MXC 或 mmlx 等外部工具,并需单独配置。
- 不同音源之间的转换存在近似,编译结果不保证与原始音频一致。
- PCM 播放需要对应的 PCM 扩展驱动,部分输入可能因内存或容量限制而无法转换或播放。
标签
常见问题
- x68k_vgm2mml 是什么?
- 将 VGM 音源寄存器日志转换为 X68000 用结构化 MML 与 PCM IR 的 Python 工具。 x68k_vgm2mml 读取 VGM 文件。VGM 记录的是对音源芯片寄存器的写入而非音符,工具从中还原音高、音长、音量和音色等演奏信息,生成 X68000 上 MDX 格式使用的结构化 MML,并输出 PCM 中间表示数据。
- x68k_vgm2mml 可以免费使用吗?用的什么许可证?
- x68k_vgm2mml 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- x68k_vgm2mml 还在维护吗?
- 活跃维护中。x68k_vgm2mml 最近一次提交是在 2026年11月5日。
- x68k_vgm2mml 适合用来做什么?
- 将 VGM 音乐转换为 X68000 播放器可用的 MDX 文件。 研究音源寄存器序列如何对应到 MML 演奏数据。 为 X68000 声音播放准备 PCM 采样和 PDX 音色库。
- x68k_vgm2mml 怎么安装和运行?
- 使用 Python 3.10 或更高版本 从 VGM 文件生成 MML: python vgm2mml.py INPUT.vgm --outdir OUTDIR 批量将目录转换为 MML 及 MDX/PDX(需要外部 MDX 编译器): python scripts/export_mdx.py INDIR --outdir OUTDIR --force
- 在哪里获取 x68k_vgm2mml?
- 源代码和安装说明在 GitHub 上:https://github.com/emef2247/x68k_vgm2mml
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
一个在浏览器中运行的 x86 PC 模拟器,运行时将机器码转为 WebAssembly 以启动真实操作系统。
一款底层 x86 模拟器,用于运行 1981 年起 IBM PC 及兼容机的老式操作系统和软件。
在 64 位 Windows 上运行 16 位 Windows(1.x 至 3.1)程序的模拟器,并可运行 DOS 程序。
在 Apple silicon Mac 上运行从 Tiger 10.4 到 Big Sur 11 的 Intel 版 macOS,并支持图形加速。
BACON,将 MSX-BASIC 程序编译为 MSX 机器码的编译器,支持 PLAY 音乐指令。