• Stars
    star
    321
  • Rank 127,566 (Top 3 %)
  • Language
    Python
  • License
    Other
  • Created about 10 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Use your computer keyboard as a "piano".

Pianoputer

This library lets you to play your computer keyboard like a piano. Here is a video of it in action on a French azerty keyboard.

Play!

Pianoputer only works in python3 so make sure you are using python3

pip install pianoputer
pianoputer

After a few seconds, the below image will appear in a window, indicating that the program is ready. The cyan key is the key that the sample wav file is assigned to. By default this is c4, the piano middle C at 261.6 hz All white and black keys are transposed up and down from the anchor cyan key.

qwerty keyboard layout, c4 is cyan

Changing the sound file

You can provide your own sound file with

pianoputer --wav my_sound_file.wav

For example:

pianoputer -w audio_files/bowl_c6.wav

All white and black keys are transposed up and down from the anchor cyan key.

Changing the keyboard layout

Note that the default keyboard configuration (stored in file keyboards/qwerty_piano.txt) is for the most commonly used QWERTY keyboards. You can change the configuration so that it matches your keyboard, for instance using the alternative keyboards/azerty_typewriter.txt:

pianoputer -k keyboards/azerty_typewriter.txt

azerty typewriter These .txt files simply contain a sequence of key names and are easy to edit. For convenience this repository also provides a make_kb_file.py program:

python make_kb_file.py

This will let you press the keys in the order that you want, and create a new keyboard configuration file, by default my_keyboard.kb (just follow the instructions). You can then use the custom keyboard file with the --keyboard argument

Local Installation

python3 -m venv venv
source venv/bin/activate
# if you want to edit the program and have pianoputer use your edits
pip install -e .
# to install pianoputer separately in your virtual environment
pip install .
pianoputer

Attributions

Changelog

https://github.com/Zulko/pianoputer/tree/master/CHANGELOG.md

More Repositories

1

moviepy

Video editing with Python
Python
11,920
star
2

eagle.js

A hackable slideshow framework built with Vue.js
JavaScript
4,074
star
3

gizeh

Simple Vector Graphics for Python
Python
691
star
4

easyAI

Python artificial intelligence framework for games
Python
631
star
5

vapory

Photo-realistic 3D rendering with Python and POV-Ray
Python
472
star
6

picnic.py

Easy Python packages creation.
Python
256
star
7

twittcher

Python module to watch Twitter user pages or search-results.
Python
63
star
8

unroll

Python package for Piano roll transcription to sheet music
Python
57
star
9

eaglejs-demo

Demo slideshows for Eagle.js
Vue
44
star
10

Minimix

A minimalist sound mixer / instrument emulator written in python
Python
43
star
11

pompei

Mosaics generation from movie frames
Python
42
star
12

-sheet-music--Gerhswin-Limehouse-Nights

Sheet music transcription of a G. Gershwin Public Domain piano roll performance
LilyPond
27
star
13

ddeint

Scipy-based Delay Differential Equation (DDE) solver
Python
26
star
14

pianoputer.js

Javascript implementation of the Pianoputer. Right now, it's bad. Very bad.
JavaScript
24
star
15

gix

Create, share and remix GIFs online
Vue
21
star
16

vmfactory

The Viennese Maze Factory
Python
15
star
17

zulko.github.com

My personal blog on Github
HTML
12
star
18

gif-captioning-with-css

Let's add CSS animations to a GIF!
Vue
5
star
19

moviepy_matplotlib

For issue on matplotlib
Python
5
star
20

bricks_and_scissors

Blog on the computational side of synthetic biology and DNA manufacturing
HTML
4
star
21

--video-editing---Cup-Song-Covers-Mix

Source code for a video featuring 60 covers of the Cup Song
4
star
22

funsliders

Graphical sliders to manually explore any function's input
Python
4
star
23

pianola

A web MIDI piano player, built for roll transcription
Vue
3
star
24

dna_weaver_paper

Manuscript for DNA Weaver
TeX
3
star
25

kbmix

script-based / keyboard-controlled sound mixer
2
star
26

sheet-music--Gershwin-sweet-and-lowdown

Transcription of the Sweet and Lowdown piano roll by George Gershwin
LilyPond
2
star
27

sheet-music--hindustan

Piano transcription of "Hindustan" from a piano roll
LilyPond
2
star
28

-sheet-music--Romance-for-guitar

Piano arrangement of the Romance for guitar made famous by the movie Jeux Interdits
2
star
29

unroll-online

Web app for piano roll transcription
JavaScript
1
star
30

Web_tools

Python
1
star
31

FLOT-Demo

A FLOT.js demo
JavaScript
1
star
32

sheet-music--duet-for-the-right-hand

A little piano piece for the right hand alone (lilypond file)
LilyPond
1
star