A Python library and framework for composing and playing music.
Project description
Pitchr
A python library and framework for composing music.
Installation
pip install pitchr
. Make sure pip points to pip3 not pip2. Pitchr on PyPI
Documentation
Documentation is hosted on Github Pages here
Getting Started
from pitchr import *
# Instantiate notes
n = Note(pitch='C4', duration=1.0)
# Play them
n.play()
# Write music
m = Measure([
Note('C', 1.0),
Note('D', 1.0),
Note('E', 1.0),
Note('F', 1.0),
Note('G', 1.0),
Note('F', 1.0),
Note('E', 1.0),
Note('D', 1.0),
Note('C', 4.0),
])
# See what you've written
m.show()
# Export to PDF
m.save('MySong.pdf')
More Detailed Notes
Note() class
Init:
pitch
("C#6"
)duration
in beatsdynamic
(piano, forte, crescendo)articulation
(staccato, accent, fermata)
Note()
from pitchr import *
note1 = Note("C4", 1, "forte")
note1.mingus_note # 'C-4'
note1.duration # 1
note1.dynamic # "forte"
note1.augment() or note1.diminish()
Chords
note2. = Note("E4", 1)
chord1 = Chord([note1, note2])
chord1.determine() # "Major third"
Measure is a collection of Notes
measure1 = Measure([note1, note2])
measure1.contains(note1) # True
measure1.append(note3)
Staff is a collection of Measures
Init:
measures
clef
voice
https://thedpws.github.io/pitcher/
staff1 = music.Staff(measure1, Clef.TREBLE, Voice.PIANO)
Part is a collection of Staffs
part1 = Part(staff1, tempo, time_signature, key_signature)
part1.add_staff(staff2)
part1.time_signature = 3/4
Score is a collection of Parts
score1 = Score("My Song", "Wonderful Subtitle", "Author Me", "me@email.com")
score1.get_author() # "Author Me"
score1.get_title() # "My Song"
score1.add_part(part1)
Contributing
Setting up dependencies
- To create the virtual environment,
cd
into the project directory andpython3 -m venv env
- To install dependencies to the virtual environment,
source env/bin/activate && pip3 install -r requirements.txt
- Install these dependencies using your local package manager (ex.
sudo apt install python3-dev
):python3-dev
libasound2
lilypond
Working on the project
- Before working, activate the environment by
source env/bin/activate
- Deactivate by
deactivate
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pitchr-0.1.5.tar.gz
(14.8 kB
view hashes)
Built Distribution
pitchr-0.1.5-py3-none-any.whl
(27.0 kB
view hashes)