metadata: mp3: Support unsync embedded jpeg album art

Support parsing alubm art from id3 metadata with "unsynchronisation scheme":
https://id3.org/id3v2.3.0#The_unsynchronisation_scheme

Change-Id: I1e2ca4ae0aa967f7e80142a04c9a7d99e38e68b2
This commit is contained in:
Roman Artiukhin 2024-11-06 22:28:24 +02:00 committed by Solomon Peachy
parent 6649731563
commit 7f4a8891a6
7 changed files with 72 additions and 23 deletions

View file

@ -196,13 +196,17 @@ enum {
ID3_VER_2_4
};
#define AA_FLAGS_SHIFT 4
#define AA_CLEAR_FLAGS_MASK ~(-1 << AA_FLAGS_SHIFT)
#ifdef HAVE_ALBUMART
enum mp3_aa_type {
AA_TYPE_UNSYNC = -1,
AA_TYPE_UNKNOWN,
AA_TYPE_BMP,
AA_TYPE_PNG,
AA_TYPE_JPG,
AA_FLAG_ID3_UNSYNC = 1 << (AA_FLAGS_SHIFT + 0),
};
struct mp3_albumart {