Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kiranandcode/gop-music
Music synced to typing baby!
https://github.com/kiranandcode/gop-music
mood music music-player python typing
Last synced: 26 days ago
JSON representation
Music synced to typing baby!
- Host: GitHub
- URL: https://github.com/kiranandcode/gop-music
- Owner: kiranandcode
- License: gpl-3.0
- Created: 2019-03-15T07:16:57.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2019-05-02T10:48:04.000Z (over 5 years ago)
- Last Synced: 2024-07-20T19:13:00.961Z (4 months ago)
- Topics: mood, music, music-player, python, typing
- Language: Python
- Homepage: https://gitlab.com/gopiandcode/gop-music
- Size: 478 KB
- Stars: 3
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
Awesome Lists containing this project
README
# Gop-Music
Ever wanted to play music while working, but wanted more than just some plain background audio?
Ever felt that a static playlist could never capture the dynamism of your development process?
Well, friend, do I have the tool for you!
Gop-Music uses "algorithms and coding" to automatically play music suited your writing style.
Background music for coding, but done the right way.
## Screen Shots
![Coding with a graph of key-press beats and the thresholds](https://github.com/Gopiandcode/gop-music/raw/master/example_use.png)
![Example keyboard beat graph](https://github.com/Gopiandcode/gop-music/raw/master/keyboard_beats.png)
## Video
A video demonstration of gop-music in action can be found [here](https://www.youtube.com/watch?v=OG7meAEAAaU).### WARNING
*In the interests of transparency, I should note that the functionality provided by Gop-music can only be achieved by tracking the frequency of key-presses, which, unfortunately, is a feature also used by many malicious applications. While Gop-Music doesn't log the exact keys you press, nor does it share any data with any devices, if you want to use Gop-music, it is strongly advised you read through the source code yourself.*## Usage
I'm not sure how pipenv works, or if it works in this way, but I've been using pipenv to make my development
environment, so maybe if you use pipenv shell it'll recreate the environment? If not, raise an issue, and I may
fix it.
```
pipenv shell
```
Anyway, all subsequent commands assume that your python environment contains all the required packages.### Loading Songs
Use the music_manager script to load songs to a profile (by default all profiles stored in `~/.typemusic/`)
usage: music_manager.py [-h] [-p PROFILE] [-s] [-v] [--force-mood MOOD]
[--min-length MIN-LENGTH]
ACTIONHelper script to manage the internal music library used by gop-music.
positional arguments:
ACTION The action to perform. Should be one of: add-song,
remove-song, list-songs, list-snippets, test-runoptional arguments:
-h, --help show this help message and exit
-p PROFILE, --profile PROFILE
Type Music can maintain multiple libraries of songs to
use for its music source - use this to group songs by
different moods,etc. Defaults to the default profile.
-s, --silent Whether to run in silent mode (useful for scripts).
-v, --visualise-beats
Whether plot the beats produced by each song. -
Requires manual saving
--force-mood MOOD, -f MOOD
The beat detection is a bit iffy, so sometimes you may
want to manually force a certain mood.
--min-length MIN-LENGTH, -m MIN-LENGTH
Minimum length for a snippet. Snippet lengths aren't
used when playing, only for the detection processThe beat detection is currently a bit iffy, so I often just use `--force-mood` to manually define a categorisation for the track I want to add.
Once music has been loaded, launch the main program to start gop-music:
usage: main.py [-h] [-p PROFILE]
Gop-Music automatic music player
optional arguments:
-h, --help show this help message and exit
-p PROFILE, --profile PROFILE
Name of the profile to load. Defaults to
the default profile.## Note
If you are viewing this from micro$oft github, then note that any updates are first pushed to *gitlab*,
and then only maybe will be pushed to Micro$oft's github at some delayed later date.It can be found on gitlab at: https://gitlab.com/gopiandcode/gop-music