diff --git a/beets/autotag/mb.py b/beets/autotag/mb.py index 1cf92ce5d..43639433e 100644 --- a/beets/autotag/mb.py +++ b/beets/autotag/mb.py @@ -319,7 +319,7 @@ def match_album(artist, album, tracks=None): # Various Artists search. criteria['arid'] = VARIOUS_ARTISTS_ID if tracks is not None: - criteria['tracks'] = bytes(tracks) + criteria['tracks'] = unicode(tracks) # Abort if we have no search terms. if not any(criteria.itervalues()): diff --git a/beets/library.py b/beets/library.py index cb46d99c3..33aa314bf 100644 --- a/beets/library.py +++ b/beets/library.py @@ -393,7 +393,7 @@ class Item(LibModel): _search_fields = ('artist', 'title', 'comments', 'album', 'albumartist', 'genre') - _media_fields = set(f.decode('utf8') for f in MediaFile.readable_fields()) \ + _media_fields = set(MediaFile.readable_fields()) \ .intersection(_fields.keys()) """Set of item fields that are backed by `MediaFile` fields. diff --git a/beets/mediafile.py b/beets/mediafile.py index 9c55f582e..6c5d0a2c2 100644 --- a/beets/mediafile.py +++ b/beets/mediafile.py @@ -1431,7 +1431,7 @@ class MediaFile(object): """ for property, descriptor in cls.__dict__.items(): if isinstance(descriptor, MediaField): - yield property + yield property.decode('utf8') @classmethod def readable_fields(cls):