https://github.com/cronokirby/populate
Populate a music library based on a descriptive file
Science Score: 26.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (10.2%) to scientific vocabulary
Repository
Populate a music library based on a descriptive file
Basic Info
Statistics
- Stars: 5
- Watchers: 0
- Forks: 1
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
populate
A simple command line app to populate music files.
What exactly is this?
This is an app that I wrote because it was useful to me, but I hope it can be useful to other people to. The idea is to take a file specifying a library of music (song name, artist, where to get it etc) the app fetches the song and splits it based on provided time stamps if necessary.
For example, a file like:
toml
[[source]]
name = "Gattsu"
artist = "Susume Hirasawa"
path = "Susume Hirasawa/"
url = "https://www.youtube.com/watch?v=_isSnrC2__A"
timestamps = ["0:00", "1:00"]
namestamps = ["first", "second"]
specifies how to get an album named "Gattsu" by an artist
named "Susume Hirasawa", by fetching it from a url and then unpacking
it into the songs that compose it in a certain directory.
The app takes a bunch of sources like these and downloads and unpacks them all.
Building
With Stack Installed on System
This program relies on having the cli applications youtube-dl and ffmpeg available.
taglib_c is also needed for adding metadata to the audio files.
On my system (ubuntu) acquiring these depencies looks like this:
bash
sudo apt-get install ffmpeg
sudo apt-get install youtube-dl
sudo apt-get install libtagc0-dev
Feel free to submit corresponding instructions for your platform :)
With stack, building and installing the program looks like this:
bash
stack install
With Nix
Assuming you have a nix installation in your system, building and running the project
is done like the following:
bash
$(nix-build default.nix)/bin/populate mysrc.toml
Usage
``` Usage: populate FILE [-w|--overwrite] Populate based on the songs in FILE
Available options: -w,--overwrite Whether to overwrite cached files -h,--help Show this help text ```
For examples on what this file should look like, check out the examples directory.
Owner
- Name: Lúcás Meier
- Login: cronokirby
- Kind: user
- Location: Seattle
- Website: https://cronokirby.com
- Repositories: 177
- Profile: https://github.com/cronokirby
"apprentice cryptographer"
GitHub Events
Total
Last Year
Committers
Last synced: about 1 year ago
Top Committers
| Name | Commits | |
|---|---|---|
| Lúcás Meier | c****y@g****m | 33 |
| Yiğit Özkavcı | y****8@g****m | 3 |
Issues and Pull Requests
Last synced: about 1 year ago
All Time
- Total issues: 1
- Total pull requests: 1
- Average time to close issues: 8 days
- Average time to close pull requests: 6 days
- Total issue authors: 1
- Total pull request authors: 1
- Average comments per issue: 1.0
- Average comments per pull request: 1.0
- Merged pull requests: 1
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- yigitozkavci (1)
Pull Request Authors
- yigitozkavci (1)