Functional Ear Training for Musicians
Project description
birdears
Licensed with GNU AGPLv3 |
---|
Support Channels
Channel | Site | Description |
---|---|---|
Chat (Matrix) | #birdears:mozilla.org | chat channel |
GitHub Discussions | discussions | general discussion |
GitHub Issues | issues | for issues with the software |
Documentation | https://birdears.readthedocs.io/ | extended documentation at ReadTheDocs |
PyPI | https://pypi.python.org/pypi/birdears | python package/repository |
GitHub | https://github.com/iacchus/birdears | mainline repository |
TUI
CLI
Introduction
birdears
birdears
is a software written in Python 3 for ear training for musicians
(musical intelligence, transcribing music, composing). It is a clone of the
method used by Funcitional Ear Trainer app for Android.
It comes with four modes, or four kind of exercises, which are: melodic
, harmonic
, dictation
and instrumental
.
In resume, with the melodic mode two notes are played one after the other and you have to guess the interval; with the
harmonic
mode, two notes are played simoutaneously (harmonically) and you should guess the interval.
With the dictation mode, more than 2 notes are played (ie., a melodic dictation) and you should tell what are the intervals between them.
With the instrumental mode, it is a like the dictation, but you will be expected to play the notes on your instrument, ie., birdears will not wait for a typed reply and you should prectice with your own judgement. The melody can be repeat any times and you can have as much time as you want to try it out.
What is musical ear training
this needs to be written. The method.
It is currently being written here
Features
- Different kind of exercises for ear training.
- Pretty much configurable: you can create more difficult exercises as you progress.
- Exercises from configuration files: you can make presets and share them:
- you can make your own presets
- Can be used interactively from a Python console. (docs needed)
- Can be used as a Python library. (docs needed)
Installing
1. Installing the dependencies
birdears
depends on python >= 3.7
and sox
; the latter should be installed
by your distribution's package manager (supposing you're using GNU/Linux) and
provides the play
command.)
(Please send the steps for your OS)
Arch Linux
sudo pacman -Syu sox python python-pip
Debian/Ubuntu
sudo apt install sox python3 python3-pip python3-venv
2. Installing birdears
- After installing the above stated dependencies for your operating system, you can install the software with the following command:
pip3 install --user --upgrade --no-cache-dir birdears
- Then add the installation directory to your PATH via your
.bashrc
,.zshrc
, or the respective file for your shell:
export PATH="$(python3 -m site --user-base)/bin:${PATH}"
This path is where the command will be installed when using --user
method.
If you prefer, you can skip step 2 and start the software with:
python -m birdears --help
3. Running
After installing just run:
birdears --help
or
python3 -m birdears --help
What is 'pip'?
The software pip is the python package installer. The arguments used are the following:
arg | meaning |
---|---|
pip3 install | install command |
--user | installs on the user home; no need to root access/ global install |
--upgrade | if it is already installed, upgrade nonetheless if there is an upgrade available |
--no-cache-dir | avoid previously downloaded versions; always check PyPI server for newer versions |
birdears | the software to be installed |
pip will then download and install the software from the Python's official repository, the package in here.
Addendum: In-depth installation using a virtualenv
You can choose to use a virtualenv to use birdears; this should give you an idea on how to setup one virtualenv.
You should first install virtualenv (for python3) using your distribution's package (supposing you're on linux), then on terminal:
use python
or python3
depending on your operating system distribution.
python -m venv ~/.venv # use the directory ~/.venv/ for the virtualenv
source ~/.venv/bin/activate # activate the virtualenv; this should be done
# every time you may want to run the software
# installed here. You can also put this line in
# your .bashrc or .zshrc etc, so to start with
# the shell.
pip install birdears # this will install the software
birdears --help # and this will run it
Upgrading birdears
The same command that installs upgrades it:
pip3 install --user --upgrade --no-cache-dir birdears
Keybindings
The following keyboard diagrams should give you an idea on how the keybindings work. Please
note how the keys on the line from z
(unison) to ,
(comma, octave) represent the notes
that are natural to the mode, and the line above represent the chromatics.
Also, for exercises with two octaves, the uppercased keys represent the second octave. For
example, z
is unison, ,
is the octave, Z
(uppercased) is the double octave. The same
for all the other intervals.
Ionian (Major)
These are the keybindings for the Ionian (Major) Scale; black keys are the chromatic notes.
Dorian
Phrygian
Lydian
Mixolydian
Aeolian (minor)
Locrian
Advanced
this is still being improved
Legend for the keys on the diagram above:
Text Format | Scale Direction | Octave |
---|---|---|
blue (bold italic) | descending | second octave (shift or caps lock) |
pink (bold) | descending | first octave |
black/white (bold) | ascending | first octave |
black (italic) | ascending | second octave (shift or caps lock) |
White keys are the diatonic notes, black keys are the chromatic ones.
Descendent mode are usable for exercises with -d
or --descendent
.
Chromatic keys are usable for exercises with -c
or --chromatic
.
Second octave is usable for exercises with -n 2
or --n_octaves 2
Documentation
Full documentation for this software is available at birdears Read The Docs and also in PDF format.
Contributors
Made with contrib.rocks.
Contributing
Those who want to contribute to this project can read CONTRIBUTING.md.
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
Built Distribution
Hashes for birdears-0.3.10-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 32209d53d1a7b4976b4885216969a8098e71586390ec5bdcd438591e1a987923 |
|
MD5 | b968ce53fa7e3def337a1b24bd87d500 |
|
BLAKE2b-256 | a30f7a9a98c265db0567e429dbbc84e19b9e89cecb835880db99deef3742ecda |