https://github.com/queue-ri/shared-piano-playbot
🎵 Play MIDI files on Google Shared Piano 🎹 (WIP)
https://github.com/queue-ri/shared-piano-playbot
bot chrome google midi shared-piano tonejs
Last synced: 12 months ago
JSON representation
🎵 Play MIDI files on Google Shared Piano 🎹 (WIP)
- Host: GitHub
- URL: https://github.com/queue-ri/shared-piano-playbot
- Owner: Queue-ri
- License: mit
- Created: 2022-03-06T13:47:21.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2022-08-15T12:27:08.000Z (almost 4 years ago)
- Last Synced: 2025-05-12T14:12:57.356Z (about 1 year ago)
- Topics: bot, chrome, google, midi, shared-piano, tonejs
- Language: JavaScript
- Homepage: https://musiclab.chromeexperiments.com/Shared-Piano/
- Size: 10.7 KB
- Stars: 5
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Shared-Piano-Playbot
🎵 Play MIDI files on Google Shared Piano 🎹
## Play Demo
Please click the gif below to watch full video :)
[](https://drive.google.com/file/d/1zJCgLY74Kt_SCeB8_HkQp3melCtlrFpe/view?usp=sharing)
## Main Features
- Auto-play midi files
- Transpose (Pitch Shifting)
- Auto sustain & sustain controls
## How to Install
1. Install [Tampermonkey](https://chrome.google.com/webstore/detail/tampermonkey/dhdgffkkebhmkfjojejmpbldmpobfkfo) chrome extension.
2. Add Playbot script to Tampermonkey.
3. Tampermonkey will automatically run Playbot script if you visit Shared Piano webpage.
## How to Use
1. Open Shared Piano webpage and press `ctrl + m`.
3. Select your midi file from the file explorer.
4. Hit `Enter` to start playing. (please wait for a second)
## Shortcuts
### Main control
- Open file explorer: `ctrl + m`
- Start playing: `Enter`
### Transpose
No need to press `shift` key.
- Pitch +1: `+`
- Pitch -1: `-`
### Sustain
Sustain will automatically be turned on.
- Turn off: `←`
- Turn on with minimum interval: `→`
- Longer interval: `↑`
- Shorter interval: `↓`
## Reminder
- Too much amplitude will cause **audio clipping**.
- Try *Night of Nights black midi* if you're curious.😉
- Too long sustain interval will trigger Tone.js limit & cause **load error** from Shared Piano.
- In this case, some keys won't sound properly.
- It will be fixed if you immediately turn off the sustain with `←` key for a bit.
## WIP
- ~~Direct midi file convert~~ ✅ **Support since v1.0!**
- Velocity
#### WIP but not soon
- Better sustain interval
- UI
- Pause & Replay
- Play speed control