Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tracywong117/melody-quest
A Python rhythm game based on PyGame framework.
https://github.com/tracywong117/melody-quest
music-information-retrieval pygame rhythm-game
Last synced: 20 days ago
JSON representation
A Python rhythm game based on PyGame framework.
- Host: GitHub
- URL: https://github.com/tracywong117/melody-quest
- Owner: tracywong117
- License: mit
- Created: 2024-01-03T05:24:14.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-01-03T07:09:15.000Z (about 1 year ago)
- Last Synced: 2024-11-18T04:44:17.013Z (3 months ago)
- Topics: music-information-retrieval, pygame, rhythm-game
- Language: Jupyter Notebook
- Homepage:
- Size: 55.4 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Melody-Quest
Melody Quest is a rhythm game developed based on PyGame framework. It enables users to import their preferred songs and generates a beatmap for gameplay.## Features
- Automatic beatmap generation utilizing music information retrieval techniques
- Onset detection, melody extraction, and separation for precise beatmap creation
- Pitch estimation for accurate note generation
- Mood detection and waveform visualization using machine learning algorithms![Demo](demo.png)
## How to run
### Prerequisite
Python 3.10.71. Install the dependencies
```plaintext
pip3 install -r requirements.txt
```
2. Run
```plaintext
python3 main.py
```
3. Select the music file (.wav)## Details
1. main.py: the main program of the rhythm game
2. LR_arousal.sav: model to predict arousal level (important)
3. RF_valence.sav: model to predict valence level (important)
4. other image files (.png): assets of the game (important)
5. mood_detection.ipynb: train the mood detection in two dimension (arousal, valence) (for reference only)
6. waveform.py: the program that can draw waveform (for reference only)
7. preprocessing.ipynb: the program that trying the preprocessing (beatmap generation, feature_extraction, mood_dection) (for refrerence only)
8. get_python_library_version: obtain the version of each python packages (for reference only)