# MIDI-Simplified Music Notation Editor-python-v1.0 **Repository Path**: YHN282615109/MIDI-Score-Editor-v1.0 ## Basic Information - **Project Name**: MIDI-Simplified Music Notation Editor-python-v1.0 - **Description**: MIDI简谱编辑器 V1.0 是一款基于Python开发的轻量级MIDI音乐创作与播放工具,集成简谱编辑、多音轨管理、实时MIDI播放、随机谱曲及MIDI文件导出等核心功能。软件采用Tkinter图形化界面,操作直观易懂,既支持音乐爱好者手动编写简谱,也能通过随机谱曲功能快速生成旋律,同时兼容主流MIDI输出设备,可满足音乐创作、教学演示、个人兴趣等多场景需求。 - **Primary Language**: Python - **License**: AGPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-06-05 - **Last Updated**: 2026-06-06 ## Categories & Tags **Categories**: Uncategorized **Tags**: MIDI简谱编辑器, MIDI简谱播放 ## README # MIDI简谱编辑器 V1.0 [![license](https://img.shields.io/badge/license-AGPL--3.0-blue.svg)](LICENSE) [![platform](https://img.shields.io/badge/platform-Windows%20%7C%20macOS%20%7C%20Linux-brightgreen.svg)]() 《MIDI简谱编辑器 V1.0》是一款基于 Python 开发的轻量级 MIDI 音乐创作与播放工具,集成简谱编辑、多音轨管理、实时 MIDI 播放、随机谱曲及 MIDI 文件导出等核心功能。软件采用 Tkinter 图形化界面,操作直观易懂,既支持音乐爱好者手动编写简谱,也能通过随机谱曲功能快速生成旋律。 ## ✨ 软件特色 - **多音轨分层创作**:支持 16 个独立音轨,每个音轨可分配专属 MIDI 通道(0-15),可同时加载不同音色 - **灵活的简谱解析规则**:支持高低音标记(`.` 低音,`'` 高音)、延长音(`-`)、休止符(`0`)、升调(`#`)、括号分组(`[12]`)和减时线(`(5533//)`) - **智能辅助功能**:随机谱曲(音轨3-5)、右键快捷菜单(剪切/复制/粘贴/全选/全选复制/全选删除) - **稳定的播放与控制**:多线程同步播放、循环播放、暂停/继续/停止,停止时自动发送所有音符关闭消息 - **便捷的文件导出**:一键导出标准 MIDI 文件(.mid),可在 FL Studio、Cubase 等软件中二次编辑 ## 📱 使用方法 ### 环境安装 ```bash pip install mido pip install python-rtmidi 启动软件 bash python main.py 或打包为 exe: bash pyinstaller --onefile --icon=1.ico --hidden-import=mido.backends.rtmidi main.py 基本操作 切换音轨:点击右侧“音轨1-16”按钮 编写简谱:格式为 [音色编号,BPM,调式] + 旋律内容 示例:[0,120,C大调]5-351'--76-1'-5--- 播放:点击“播放全部音轨”,支持循环播放 导出:点击“导出”按钮,保存为 .mid 文件 📝 简谱格式说明 头部参数 以 [音色编号,BPM,调式] 开头,例如 [0,120,C大调] 音色编号:0-127(GM 标准,0=钢琴、40=小提琴等) BPM:速度值(如 120 表示每分钟 120 拍) 调式:支持 C大调、G大调、D大调、A大调、E大调、B大调、F大调、C小调、G小调、D小调、A小调、E小调、B小调、F小调 音符标记 标记 说明 示例 1-7 基本音符 5 # 升调(偏音) 1#、2# . 低八度(多个表示多级) 1.、1.. ' 高八度(多个表示多级) 1'、1'' - 延长1拍(多个表示多拍) 5-、5-- 0 休止符 0、0- | 小节分隔符(仅用于阅读) 5-3|51'-- [12] 括号内音符一起占一拍 [12]、[123] (xxx/) 减时线,拍长减半 (5533//) ⚙️ 运行环境 开发语言:Python 3.7+ 依赖模块:mido、python-rtmidi、tkinter(内置) 操作系统:Windows / macOS / Linux 📄 开源协议 本项目采用 AGPL-3.0 协议,详情参见 LICENSE 文件。 ⚠️ 免责声明 本软件为音乐创作辅助工具,仅供个人学习、创作交流使用。导出文件可在遵守相关音乐版权法律法规的前提下自由使用。