kopia lustrzana https://dev.funkwhale.audio/funkwhale/funkwhale
Add support for Opus files
This adds support for reading metadata from Opus files. The metadata config is copied from OggVorbis with just the 'track' field name changed. Also make sure get_audio_file_data() in music/utils.py doesn't crash if no bitrate information is set, since mutagen doesn't add a bitrate to Opus info objects. Fixes #244. Signed-off-by: Toke Høiland-Jørgensen <toke@toke.dk>merge-requests/399/head
rodzic
6940d411d7
commit
0d128d40d5
|
@ -114,6 +114,22 @@ VALIDATION = {
|
|||
}
|
||||
|
||||
CONF = {
|
||||
"OggOpus": {
|
||||
"getter": lambda f, k: f[k][0],
|
||||
"fields": {
|
||||
"track_number": {
|
||||
"field": "TRACKNUMBER",
|
||||
"to_application": convert_track_number,
|
||||
},
|
||||
"title": {},
|
||||
"artist": {},
|
||||
"album": {},
|
||||
"date": {"field": "date", "to_application": get_date},
|
||||
"musicbrainz_albumid": {},
|
||||
"musicbrainz_artistid": {},
|
||||
"musicbrainz_recordingid": {"field": "musicbrainz_trackid"},
|
||||
},
|
||||
},
|
||||
"OggVorbis": {
|
||||
"getter": lambda f, k: f[k][0],
|
||||
"fields": {
|
||||
|
|
|
@ -54,7 +54,7 @@ def get_audio_file_data(f):
|
|||
if not data:
|
||||
return
|
||||
d = {}
|
||||
d["bitrate"] = data.info.bitrate
|
||||
d["bitrate"] = getattr(data.info, "bitrate", 0)
|
||||
d["length"] = data.info.length
|
||||
|
||||
return d
|
||||
|
|
Ładowanie…
Reference in New Issue