moemusic / moe Goto Github PK
View Code? Open in Web Editor NEWThe ultimate tool for managing your music.
Home Page: https://mrmoe.readthedocs.io/
License: MIT License
The ultimate tool for managing your music.
Home Page: https://mrmoe.readthedocs.io/
License: MIT License
I would like to use the file format, bit depth, and sample rate of tracks to format paths. I see that audio_format
is a Track
property (but not a field) and that bit depth and sample rate are not properties nor fields.
I was wondering if it would make sense to add bit depth and sample rate as Track
properties, then make all three fields so they could be used to format paths?
They are accessible via the mediafile
I think , so I could try to add them in as Track
properties via @property
.
I think it's common to use audio format, bit depth, and sample rate to format album paths, however it might not make sense for them to be album properties. One reason being that some albums (some digital releases?) could have a mixture of formats, bit depths, and sampling rates.
So to format album paths using this information, it might make sense to create little plugins to return e.g. album_audio_format
which could be FLAC
or MP3
or even FLAC+MP3
.
But this would still require audio format, bit depth, and sample rate to be Track
properties I think.
It would be great if we can use numerical values in queries. For example, year
greater than 2010 or year
between 1990 and 2000. This does not have to be limited to year
, but can be extended to other fields, e.g., bitrate
, rating
.
This can be used to create smart playlists. For example, we can create a playlist for all tracks from '90s.
Moe misidentifies tracks from different albums as as being the same track.
When adding an album in Windows Powershell, Moe errors with a "Path not found" message.
PS C:\Users\Jacob> moe -vv add 'Z:\media\downloads\music\Tyler, The Creator - CALL ME IF YOU GET LOST (2021) - WEB FLAC\'
ERROR:moe.add:Path not found: Z:\media\downloads\music\Tyler, The Creator - CALL ME IF YOU GET LOST (2021) - WEB FLAC"
[move]
library_path = '''Z:\media\music'''
asciify_paths = true
When adding a few albums I encountered a KeyError
when Moe tries to create an album from a Musicbrainz release. I think it's because the release format is unknown (for example: https://musicbrainz.org/release/8bd1c26c-68d5-4c27-b32d-cf3393bc1059).
The obvious fix would be to update the format on Musicbrainz (format should be CD I think), but Moe shouldn't be crashing either. Not sure what media
should be set to in this case. Python doesn't have a missing
data type so maybe None
or the string unknown
?
This would be a different issue but it's also worth noting that some releases come in a mix of media. For example, https://musicbrainz.org/release/827008e9-0779-4fd5-8e5a-7322462eba91 has a CD (Disc 1) and a DVD-Video (Disc 2), although for music tagging only the first disc matters.
from moe.plugins.musicbrainz import get_album_by_id
get_album_by_id("8bd1c26c-68d5-4c27-b32d-cf3393bc1059")
Stacktrace:
KeyError Traceback (most recent call last)
Input In [3], in <cell line: 1>()
----> 1 get_album_by_id("8bd1c26c-68d5-4c27-b32d-cf3393bc1059")
File ~/build/Moe/moe/plugins/musicbrainz/mb_core.py:378, in get_album_by_id(release_id)
374 release = musicbrainzngs.get_release_by_id(release_id, includes=RELEASE_INCLUDES)
376 log.info(f"Fetched release from musicbrainz. [release={release_id!r}]")
--> 378 return _create_album(release["release"])
File ~/build/Moe/moe/plugins/musicbrainz/mb_core.py:425, in _create_album(release)
413 else:
414 label = None
416 album = MetaAlbum(
417 artist=_flatten_artist_credit(release["artist-credit"]),
418 barcode=release.get("barcode"),
419 catalog_nums=catalog_nums,
420 country=release.get("country"),
421 date=_parse_date(release["date"]),
422 disc_total=int(release["medium-count"]),
423 label=label,
424 mb_album_id=release["id"],
--> 425 media=release["medium-list"][0]["format"],
426 original_date=_parse_date(release["release-group"]["first-release-date"]),
427 title=release["title"],
428 )
429 for medium in release["medium-list"]:
430 for track in medium["track-list"]:
KeyError: 'format'
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.