Skip to content

Takes a midi file and converts it into a macro which will play the midi using virtualpiano.net. Uses pyHook and ctypes for macro execution.

Notifications You must be signed in to change notification settings

Stereo101/python-MidiToVirtualPianoMacro

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

68 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MIDI to Virtual Piano Converter

Our partner application can be found over here: MIDIPlusPlus, featuring a ton of improvements and optimization.

💬 Join the Community

Need help or want to connect with others using the program? Join our Discord server.

Easily convert MIDI files into virtual piano sheet music for manual play or automated playback on platforms like Virtual Piano and Roblox pianos.

🎹 Features

  • MIDI to Virtual Piano Sheet Conversion: Quickly convert MIDI files into sheet music compatible with virtual pianos.
  • Automated and Manual Playback: Choose between automated playback or manual control for playing the music.
  • Human-Like Playback with Legit Mode: Simulate a human playing style with natural timing variations.
  • Playback Speed Control: Adjust the playback speed to match your preference.
  • Auto Tempo Adjustment: Automatically adjusts the tempo to suit the song.
  • Simple Setup: Easy to install and run with minimal configuration.

⚠️ Important Information

This program uses the Python pynput library to simulate key presses. Some antivirus software may flag this as suspicious behavior. The executable files are created using pyinstaller --onefile, which bundles the Python program and its dependencies into a single, portable executable. You are encouraged to review the scripts and generate the executable yourself for added security.

🚀 Getting Started

Prerequisites

Ensure you have Python installed and added to your system PATH.

Installation

  1. Download or Clone: Visit the releases page and download the latest release for your operating system, or clone the repository:

    git clone https://github.com/Stereo101/python-MidiToVirtualPianoMacro
  2. Extract Files: Extract the contents of pyMIDI and playSong. Add your MIDI files to the midi directory.

  3. Install Dependencies: Open your terminal (Command Prompt for Windows, Terminal for macOS and Linux) and install the required Python library:

    pip install pynput
  4. Run the Program:

    • Execute pyMIDI in your terminal. The program will list available songs from the midi directory.
    • Select a song to generate several files:
      • song.txt: The program reads this file to play the song.
      • midiRecord.txt: A debug log detailing the conversion process.
      • SheetConversion.txt: A human-readable version of song.txt displaying the notes in a more understandable format.
    • The program will wait for you to press the Delete key. Switch to your target application (e.g., Virtual Piano) and press Delete to start the automated playback.

📚 Tutorials and Demos

Volcaniks' YouTube Guide

Prizels' YouTube Guide

⚠️ Shady Instruction Videos

These videos link to potentially unsafe third-party downloads. Proceed with caution:

About

Takes a midi file and converts it into a macro which will play the midi using virtualpiano.net. Uses pyHook and ctypes for macro execution.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages