Commit e27b7ed5 authored by Agate's avatar Agate 💬
Browse files

Merge branch 'aiff-format-support' into 'develop'

Support AIFF file format

Closes #1243

See merge request !1241
parents 780c1f53 9e5d168e
...@@ -253,7 +253,7 @@ CONF = { ...@@ -253,7 +253,7 @@ CONF = {
"comment": {"field": "comment"}, "comment": {"field": "comment"},
}, },
}, },
"MP3": { "ID3": {
"getter": get_id3_tag, "getter": get_id3_tag,
"clean_pictures": clean_id3_pictures, "clean_pictures": clean_id3_pictures,
"fields": { "fields": {
...@@ -331,6 +331,9 @@ CONF = { ...@@ -331,6 +331,9 @@ CONF = {
}, },
} }
CONF["MP3"] = CONF["ID3"]
CONF["AIFF"] = CONF["ID3"]
ALL_FIELDS = [ ALL_FIELDS = [
"position", "position",
"disc_number", "disc_number",
......
...@@ -59,6 +59,10 @@ AUDIO_EXTENSIONS_AND_MIMETYPE = [ ...@@ -59,6 +59,10 @@ AUDIO_EXTENSIONS_AND_MIMETYPE = [
("m4a", "audio/x-m4a"), ("m4a", "audio/x-m4a"),
("flac", "audio/x-flac"), ("flac", "audio/x-flac"),
("flac", "audio/flac"), ("flac", "audio/flac"),
("aif", "audio/aiff"),
("aif", "audio/x-aiff"),
("aiff", "audio/aiff"),
("aiff", "audio/x-aiff"),
] ]
EXTENSION_TO_MIMETYPE = {ext: mt for ext, mt in AUDIO_EXTENSIONS_AND_MIMETYPE} EXTENSION_TO_MIMETYPE = {ext: mt for ext, mt in AUDIO_EXTENSIONS_AND_MIMETYPE}
......
...@@ -150,10 +150,38 @@ def test_can_get_metadata_from_id3_mp3_file(field, value): ...@@ -150,10 +150,38 @@ def test_can_get_metadata_from_id3_mp3_file(field, value):
assert str(data.get(field)) == value assert str(data.get(field)) == value
@pytest.mark.parametrize(
"field,value",
[
("title", "Bend"),
("artist", "Binärpilot"),
("album_artist", "Binärpilot"),
# ("artists", "Binärpilot; Another artist"), # FW does not properly extract multi-value artists from ID3
("album", "You Can't Stop Da Funk"),
("date", "2006-02-07"),
("position", "2/4"),
("disc_number", "1/1"),
("musicbrainz_albumid", "ce40cdb1-a562-4fd8-a269-9269f98d4124"),
("mbid", "f269d497-1cc0-4ae4-a0c4-157ec7d73fcb"),
("musicbrainz_artistid", "9c6bddde-6228-4d9f-ad0d-03f6fcb19e13"),
("musicbrainz_albumartistid", "9c6bddde-6228-4d9f-ad0d-03f6fcb19e13"),
("license", "https://creativecommons.org/licenses/by-nc-nd/2.5/"),
("copyright", "Someone"),
("comment", "Hello there"),
],
)
def test_can_get_metadata_from_id3_aiff_file(field, value):
path = os.path.join(DATA_DIR, "test.aiff")
data = metadata.Metadata(path)
assert str(data.get(field)) == value
@pytest.mark.parametrize( @pytest.mark.parametrize(
"name", "name",
[ [
"test.mp3", "test.mp3",
"test.aiff",
"with_other_picture.mp3", "with_other_picture.mp3",
"sample.flac", "sample.flac",
"with_cover.ogg", "with_cover.ogg",
......
Support AIFF file format (#1243)
\ No newline at end of file
...@@ -11,7 +11,7 @@ export default { ...@@ -11,7 +11,7 @@ export default {
lastDate: new Date(), lastDate: new Date(),
maxMessages: 100, maxMessages: 100,
messageDisplayDuration: 5 * 1000, messageDisplayDuration: 5 * 1000,
supportedExtensions: ["flac", "ogg", "mp3", "opus", "aac", "m4a"], supportedExtensions: ["flac", "ogg", "mp3", "opus", "aac", "m4a", "aiff", "aif"],
messages: [], messages: [],
theme: 'light', theme: 'light',
window: { window: {
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment