Repolode
Rainbow-Dreamer

Rainbow-Dreamer/musicpy

基于 Python 的音乐编程语言,用简洁且懂乐理的语法编写、分析音乐,并可导出 MIDI。

Star
1,502
Fork
138
未关闭 Issue
0
最近提交
2个月前

这是什么?

Musicpy 是嵌入 Python 的音乐编程语言。用户可以通过简短易读的语法描述音符、和弦、旋律、节奏和力度,并依据乐理规则与算法生成音乐素材。其核心数据类型 note、chord、scale 支持算术运算,便于以数学方式实现乐理操作。

库可以将作品导出为 MIDI 文件,也能把已有 MIDI 文件载入为内部数据结构,进行基于乐理的分析。安装可选依赖后,还支持读写 MusicXML 文件;另有 musicpy.daw 模块用于更底层的音频处理。play 函数可通过 pygame 播放作品。

项目支持 Windows、macOS 和 Linux,要求 Python 3.7 及以上版本,可通过 pip 安装。完整文档和教程见 Read the Docs 与项目 wiki。

核心功能

  • 01用简洁易读的语法编写音符、和弦和旋律。
  • 02依据乐理规则和算法生成音乐。
  • 03可将作品导出为 MIDI,也能载入 MIDI 文件进行分析。
  • 04通过可选依赖支持读写 MusicXML 文件。
  • 05note、chord、scale 等类型支持算术运算。
  • 06内置 play 函数直接播放作品。

适用场景

  • 用代码创作短曲或和弦进行。
  • 分析已有 MIDI 文件的和声与结构。
  • 通过编程学习或实验乐理知识。
  • 基于规则集合生成算法音乐或实验音乐。

快速上手

  1. 1

    确保已安装 Python 3.7 或更高版本

  2. 2

    使用 pip 安装 musicpy

    pip install musicpy
  3. 3

    在文件开头导入 musicpy

    from musicpy import *

使用前须知

  • 采用 LGPL-2.1 许可证,修改后的库代码需要以相同条款保持开源。
  • 在 Linux 上使用播放功能需要较旧版本的 pygame 以及 freepats 包。
  • musicxml 和 daw 模块等功能需要额外安装依赖。

标签

#music#music-theory#midi#python#music-programming#audio#musicpy

常见问题

musicpy 是什么?
基于 Python 的音乐编程语言,用简洁且懂乐理的语法编写、分析音乐,并可导出 MIDI。 Musicpy 是嵌入 Python 的音乐编程语言。用户可以通过简短易读的语法描述音符、和弦、旋律、节奏和力度,并依据乐理规则与算法生成音乐素材。其核心数据类型 note、chord、scale 支持算术运算,便于以数学方式实现乐理操作。
musicpy 可以免费使用吗?用的什么许可证?
musicpy 以 LGPL-2.1 许可证开源。用于商业产品前,请先确认许可证条款。
musicpy 还在维护吗?
半年内有更新。musicpy 最近一次提交是在 2026年9月19日。
musicpy 适合用来做什么?
用代码创作短曲或和弦进行。 分析已有 MIDI 文件的和声与结构。 通过编程学习或实验乐理知识。 基于规则集合生成算法音乐或实验音乐。
musicpy 怎么安装和运行?
确保已安装 Python 3.7 或更高版本 使用 pip 安装 musicpy: pip install musicpy 在文件开头导入 musicpy: from musicpy import *
在哪里获取 musicpy?
源代码和安装说明在 GitHub 上:https://github.com/Rainbow-Dreamer/musicpy

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目