Skip to main content

MusicConverter

一个简洁易用的MIDI音乐音色转换工具,原生Python开发,支持MIDI全流程自动化处理。

功能特性

  • 读取本地MIDI文件,解析完整音符与轨道信息
  • 一键分离多轨音轨,支持单轨道单独编辑
  • 自由替换任意音轨乐器音色,适配GM标准音色库
  • 独立单轨音频合成,分轨导出音频文件
  • 多轨音频合并,内置可调参数混响效果
  • 最终合成并输出标准WAV无损音频

快速开始

  1. 克隆项目 git clone https://github.com/jianfei1234/MusicConverter.git

  2. 安装依赖 pip install mido numpy sounddevice soundfile matplotlib pygame

  3. 运行示例 python example.py

使用示例

安装包

pip install MusicConverter

初始化

from MusicConverter import MusicStyleConverter
converter = MusicStyleConverter()

读取midi文件

midi_file_path = "火红的萨日朗 (1).mid"
converter.load_midi(midi_file_path)

分离音轨

converter.separate_tracks()

随机转换风格

multitrack3 = converter.synthesize_multitrack()
converter.save_audio(multitrack3, "random_retro.wav")

转换指定风格

instrument_map_8bit = {
        0: '8bit_bass',  # 主旋律 - 明亮穿透
        1: '8bit_lead',  # 贝斯 - 低音支撑
        2: '8bit_arp',  # 琶音 - 填充和声
        3: '8bit_pulse',  # 副旋律 - 对位
        4: '8bit_drum',  # 打击乐 - 节奏
    }
# 生成复古游戏音乐
multitrack = converter.synthesize_multitrack(instrument_map_8bit)
converter.save_audio(multitrack, "retro_game_music.wav")

版权说明

Copyright © 2026 【Ma Jianfei】 本库仅限个人学习使用,商业用途请购买授权。

Release files for MusicConverter 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for MusicConverter 1.0.0
File Size Uploaded
musicconverter-1.0.0.tar.gz 11.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for MusicConverter 1.0.0
File Interpreter ABI Platform
musicconverter-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 22.7 kB

Release files / musicconverter-1.0.0.tar.gz

Download URL musicconverter-1.0.0.tar.gz
Size 11.1 kB
Tags Source
SHA-256 checksum
How to use checksums
992ab6ef332f18a8b15bdec425af0990f959478eb09a092f387587d5be4d4599
BLAKE2b-256 checksum
How to use checksums
9e936541b427a4fa863a44d30a1f19c062355ce365594a53a8ac875fc21cc102
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.5

Release files / musicconverter-1.0.0-py3-none-any.whl

Download URL musicconverter-1.0.0-py3-none-any.whl
Size 11.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2c08b28f484be2eab0c3e64d9d95095f2bd57c8768a581b39a353f595e204c3a
BLAKE2b-256 checksum
How to use checksums
50a7b032961fb6b31dbf7631cdf84e21133cb0e0ded43ab411a322a7a53ac1b0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.5

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page