From d140d430c5a2b2af1714d1630f21028e042c34ab Mon Sep 17 00:00:00 2001 From: Andre Noll Date: Mon, 9 Aug 2021 23:24:26 +0200 Subject: [PATCH 1/1] mp4: Prefer enums over defines. Just because the long list of macros clutters the taglist window in vim. --- mp4.c | 167 ++++++++++++++++++++++++++++++---------------------------- 1 file changed, 86 insertions(+), 81 deletions(-) diff --git a/mp4.c b/mp4.c index af491fc2..b9931821 100644 --- a/mp4.c +++ b/mp4.c @@ -51,87 +51,92 @@ static int32_t atom_compare(const int8_t a1, const int8_t b1, return 0; } -#define TRACK_AUDIO 1 -#define TRACK_VIDEO 2 -#define TRACK_SYSTEM 3 -#define TRACK_UNKNOWN 0 - -/* atoms with subatoms */ -#define ATOM_MOOV 1 -#define ATOM_TRAK 2 -#define ATOM_EDTS 3 -#define ATOM_MDIA 4 -#define ATOM_MINF 5 -#define ATOM_STBL 6 -#define ATOM_UDTA 7 -#define ATOM_ILST 8 /* iTunes Metadata list */ -#define ATOM_TITLE 9 -#define ATOM_ARTIST 10 -#define ATOM_WRITER 11 -#define ATOM_ALBUM 12 -#define ATOM_DATE 13 -#define ATOM_TOOL 14 -#define ATOM_COMMENT 15 -#define ATOM_GENRE1 16 -#define ATOM_TRACK 17 -#define ATOM_DISC 18 -#define ATOM_COMPILATION 19 -#define ATOM_GENRE2 20 -#define ATOM_TEMPO 21 -#define ATOM_COVER 22 -#define ATOM_DRMS 23 -#define ATOM_SINF 24 -#define ATOM_SCHI 25 - -#define SUBATOMIC 128 - -/* atoms without subatoms */ -#define ATOM_FTYP 129 -#define ATOM_MDAT 130 -#define ATOM_MVHD 131 -#define ATOM_TKHD 132 -#define ATOM_TREF 133 -#define ATOM_MDHD 134 -#define ATOM_VMHD 135 -#define ATOM_SMHD 136 -#define ATOM_HMHD 137 -#define ATOM_STSD 138 -#define ATOM_STTS 139 -#define ATOM_STSZ 140 -#define ATOM_STZ2 141 -#define ATOM_STCO 142 -#define ATOM_STSC 143 -#define ATOM_MP4A 144 -#define ATOM_MP4V 145 -#define ATOM_MP4S 146 -#define ATOM_ESDS 147 -#define ATOM_META 148 /* iTunes Metadata box */ -#define ATOM_NAME 149 /* iTunes Metadata name box */ -#define ATOM_DATA 150 /* iTunes Metadata data box */ -#define ATOM_CTTS 151 -#define ATOM_FRMA 152 -#define ATOM_IVIV 153 -#define ATOM_PRIV 154 -#define ATOM_USER 155 -#define ATOM_KEY 156 -#define ATOM_ALBUM_ARTIST 157 -#define ATOM_CONTENTGROUP 158 -#define ATOM_LYRICS 159 -#define ATOM_DESCRIPTION 160 -#define ATOM_NETWORK 161 -#define ATOM_SHOW 162 -#define ATOM_EPISODENAME 163 -#define ATOM_SORTTITLE 164 -#define ATOM_SORTALBUM 165 -#define ATOM_SORTARTIST 166 -#define ATOM_SORTALBUMARTIST 167 -#define ATOM_SORTWRITER 168 -#define ATOM_SORTSHOW 169 -#define ATOM_SEASON 170 -#define ATOM_EPISODE 171 -#define ATOM_PODCAST 172 - -#define ATOM_UNKNOWN 255 +enum tracks { + TRACK_UNKNOWN = 0, + TRACK_AUDIO = 1, + TRACK_VIDEO = 2, + TRACK_SYSTEM = 3 +}; + +enum atoms { + /* atoms with subatoms */ + ATOM_MOOV = 1, + ATOM_TRAK = 2, + ATOM_EDTS = 3, + ATOM_MDIA = 4, + ATOM_MINF = 5, + ATOM_STBL = 6, + ATOM_UDTA = 7, + ATOM_ILST = 8, /* iTunes Metadata list */ + ATOM_TITLE = 9, + ATOM_ARTIST = 10, + ATOM_WRITER = 11, + ATOM_ALBUM = 12, + ATOM_DATE = 13, + ATOM_TOOL = 14, + ATOM_COMMENT = 15, + ATOM_GENRE1 = 16, + ATOM_TRACK = 17, + ATOM_DISC = 18, + ATOM_COMPILATION = 19, + ATOM_GENRE2 = 20, + ATOM_TEMPO = 21, + ATOM_COVER = 22, + ATOM_DRMS = 23, + ATOM_SINF = 24, + ATOM_SCHI = 25, + + SUBATOMIC = 128, + + /* atoms without subatoms */ + ATOM_FTYP = 129, + ATOM_MDAT = 130, + ATOM_MVHD = 131, + ATOM_TKHD = 132, + ATOM_TREF = 133, + ATOM_MDHD = 134, + ATOM_VMHD = 135, + ATOM_SMHD = 136, + ATOM_HMHD = 137, + ATOM_STSD = 138, + ATOM_STTS = 139, + ATOM_STSZ = 140, + ATOM_STZ2 = 141, + ATOM_STCO = 142, + ATOM_STSC = 143, + ATOM_MP4A = 144, + ATOM_MP4V = 145, + ATOM_MP4S = 146, + ATOM_ESDS = 147, + ATOM_META = 148, /* iTunes Metadata box */ + ATOM_NAME = 149, /* iTunes Metadata name box */ + ATOM_DATA = 150, /* iTunes Metadata data box */ + ATOM_CTTS = 151, + ATOM_FRMA = 152, + ATOM_IVIV = 153, + ATOM_PRIV = 154, + ATOM_USER = 155, + ATOM_KEY = 156, + ATOM_ALBUM_ARTIST = 157, + ATOM_CONTENTGROUP = 158, + ATOM_LYRICS = 159, + ATOM_DESCRIPTION = 160, + ATOM_NETWORK = 161, + ATOM_SHOW = 162, + ATOM_EPISODENAME = 163, + ATOM_SORTTITLE = 164, + ATOM_SORTALBUM = 165, + ATOM_SORTARTIST = 166, + ATOM_SORTALBUMARTIST = 167, + ATOM_SORTWRITER = 168, + ATOM_SORTSHOW = 169, + ATOM_SEASON = 170, + ATOM_EPISODE = 171, + ATOM_PODCAST = 172, + + ATOM_UNKNOWN = 255 +}; + #define ATOM_FREE ATOM_UNKNOWN #define ATOM_SKIP ATOM_UNKNOWN -- 2.39.2