https://github.com/fanfanffy163/midi-player
解析midi文件转化为按键映射的高时钟精度地自动演奏播放器
https://github.com/fanfanffy163/midi-player
midi pyside6 python3 qfluentwidgets qt6
Last synced: 5 months ago
JSON representation
解析midi文件转化为按键映射的高时钟精度地自动演奏播放器
- Host: GitHub
- URL: https://github.com/fanfanffy163/midi-player
- Owner: fanfanffy163
- License: other
- Created: 2025-11-01T10:18:08.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2025-12-01T11:25:22.000Z (7 months ago)
- Last Synced: 2025-12-03T23:13:04.472Z (6 months ago)
- Topics: midi, pyside6, python3, qfluentwidgets, qt6
- Language: Python
- Homepage: https://fanfanffy163.github.io/midi-player/
- Size: 742 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG
- License: LICENSE
Awesome Lists containing this project
README

# midi-player
English | [中文](README_CN.md)
A **game performance player** that parses MIDI files, converting MIDI notes into key mappings with **high clock precision**, allowing your game character to accurately play the desired tracks.
## Quick Start 📥
### Windows
#### Build
```shell
python -m venv .venv
.venv\Scripts\activate
pip install -r requirements.txt
```
#### Run
```shell
cd src
python -m midiplayer
```
#### Debug
Use VS Code's "Run and Debug" directly; please ensure the virtual environment configuration is correct.
## Online Documentation 📕
Want to know how to use it? Please carefully read the [Help Documentation](https://fanfanffy163.github.io/midi-player/#/zh-cn/) 👈
## Features 🚀
* Supports **multiple key presets** for different scenarios.
* Export, import, and share key presets.
* **Smart Tuning** supports low-range instruments in games.
* Freely select **specific tracks** for playback.
* Supports recognizing sheet music to directly generate MIDI files.
* Supports tempo adjustment, free playback progress control, and custom keys to control music playback.
* QT GUI interface based on [PySide6-Fluent-Widgets](https://qfluentwidgets.com/) and [PySide6](https://wiki.qt.io/Qt_for_Python), supports custom theme switching.