📄 globals.h
字号:
**/
ID3_ENUM(ID3_FrameID)
{
/* ???? */ ID3FID_NOFRAME = 0, /**< No known frame */
/* AENC */ ID3FID_AUDIOCRYPTO, /**< Audio encryption */
/* APIC */ ID3FID_PICTURE, /**< Attached picture */
/* COMM */ ID3FID_COMMENT, /**< Comments */
/* COMR */ ID3FID_COMMERCIAL, /**< Commercial frame */
/* ENCR */ ID3FID_CRYPTOREG, /**< Encryption method registration */
/* EQUA */ ID3FID_EQUALIZATION, /**< Equalization */
/* ETCO */ ID3FID_EVENTTIMING, /**< Event timing codes */
/* GEOB */ ID3FID_GENERALOBJECT, /**< General encapsulated object */
/* GRID */ ID3FID_GROUPINGREG, /**< Group identification registration */
/* IPLS */ ID3FID_INVOLVEDPEOPLE, /**< Involved people list */
/* LINK */ ID3FID_LINKEDINFO, /**< Linked information */
/* MCDI */ ID3FID_CDID, /**< Music CD identifier */
/* MLLT */ ID3FID_MPEGLOOKUP, /**< MPEG location lookup table */
/* OWNE */ ID3FID_OWNERSHIP, /**< Ownership frame */
/* PRIV */ ID3FID_PRIVATE, /**< Private frame */
/* PCNT */ ID3FID_PLAYCOUNTER, /**< Play counter */
/* POPM */ ID3FID_POPULARIMETER, /**< Popularimeter */
/* POSS */ ID3FID_POSITIONSYNC, /**< Position synchronisation frame */
/* RBUF */ ID3FID_BUFFERSIZE, /**< Recommended buffer size */
/* RVAD */ ID3FID_VOLUMEADJ, /**< Relative volume adjustment */
/* RVRB */ ID3FID_REVERB, /**< Reverb */
/* SYLT */ ID3FID_SYNCEDLYRICS, /**< Synchronized lyric/text */
/* SYTC */ ID3FID_SYNCEDTEMPO, /**< Synchronized tempo codes */
/* TALB */ ID3FID_ALBUM, /**< Album/Movie/Show title */
/* TBPM */ ID3FID_BPM, /**< BPM (beats per minute) */
/* TCOM */ ID3FID_COMPOSER, /**< Composer */
/* TCON */ ID3FID_CONTENTTYPE, /**< Content type */
/* TCOP */ ID3FID_COPYRIGHT, /**< Copyright message */
/* TDAT */ ID3FID_DATE, /**< Date */
/* TDLY */ ID3FID_PLAYLISTDELAY, /**< Playlist delay */
/* TENC */ ID3FID_ENCODEDBY, /**< Encoded by */
/* TEXT */ ID3FID_LYRICIST, /**< Lyricist/Text writer */
/* TFLT */ ID3FID_FILETYPE, /**< File type */
/* TIME */ ID3FID_TIME, /**< Time */
/* TIT1 */ ID3FID_CONTENTGROUP, /**< Content group description */
/* TIT2 */ ID3FID_TITLE, /**< Title/songname/content description */
/* TIT3 */ ID3FID_SUBTITLE, /**< Subtitle/Description refinement */
/* TKEY */ ID3FID_INITIALKEY, /**< Initial key */
/* TLAN */ ID3FID_LANGUAGE, /**< Language(s) */
/* TLEN */ ID3FID_SONGLEN, /**< Length */
/* TMED */ ID3FID_MEDIATYPE, /**< Media type */
/* TOAL */ ID3FID_ORIGALBUM, /**< Original album/movie/show title */
/* TOFN */ ID3FID_ORIGFILENAME, /**< Original filename */
/* TOLY */ ID3FID_ORIGLYRICIST, /**< Original lyricist(s)/text writer(s) */
/* TOPE */ ID3FID_ORIGARTIST, /**< Original artist(s)/performer(s) */
/* TORY */ ID3FID_ORIGYEAR, /**< Original release year */
/* TOWN */ ID3FID_FILEOWNER, /**< File owner/licensee */
/* TPE1 */ ID3FID_LEADARTIST, /**< Lead performer(s)/Soloist(s) */
/* TPE2 */ ID3FID_BAND, /**< Band/orchestra/accompaniment */
/* TPE3 */ ID3FID_CONDUCTOR, /**< Conductor/performer refinement */
/* TPE4 */ ID3FID_MIXARTIST, /**< Interpreted, remixed, or otherwise modified by */
/* TPOS */ ID3FID_PARTINSET, /**< Part of a set */
/* TPUB */ ID3FID_PUBLISHER, /**< Publisher */
/* TRCK */ ID3FID_TRACKNUM, /**< Track number/Position in set */
/* TRDA */ ID3FID_RECORDINGDATES, /**< Recording dates */
/* TRSN */ ID3FID_NETRADIOSTATION, /**< Internet radio station name */
/* TRSO */ ID3FID_NETRADIOOWNER, /**< Internet radio station owner */
/* TSIZ */ ID3FID_SIZE, /**< Size */
/* TSRC */ ID3FID_ISRC, /**< ISRC (international standard recording code) */
/* TSSE */ ID3FID_ENCODERSETTINGS, /**< Software/Hardware and settings used for encoding */
/* TXXX */ ID3FID_USERTEXT, /**< User defined text information */
/* TYER */ ID3FID_YEAR, /**< Year */
/* UFID */ ID3FID_UNIQUEFILEID, /**< Unique file identifier */
/* USER */ ID3FID_TERMSOFUSE, /**< Terms of use */
/* USLT */ ID3FID_UNSYNCEDLYRICS, /**< Unsynchronized lyric/text transcription */
/* WCOM */ ID3FID_WWWCOMMERCIALINFO, /**< Commercial information */
/* WCOP */ ID3FID_WWWCOPYRIGHT, /**< Copyright/Legal infromation */
/* WOAF */ ID3FID_WWWAUDIOFILE, /**< Official audio file webpage */
/* WOAR */ ID3FID_WWWARTIST, /**< Official artist/performer webpage */
/* WOAS */ ID3FID_WWWAUDIOSOURCE, /**< Official audio source webpage */
/* WORS */ ID3FID_WWWRADIOPAGE, /**< Official internet radio station homepage */
/* WPAY */ ID3FID_WWWPAYMENT, /**< Payment */
/* WPUB */ ID3FID_WWWPUBLISHER, /**< Official publisher webpage */
/* WXXX */ ID3FID_WWWUSER, /**< User defined URL link */
/* */ ID3FID_METACRYPTO, /**< Encrypted meta frame (id3v2.2.x) */
/* */ ID3FID_METACOMPRESSION /**< Compressed meta frame (id3v2.2.1) */
};
ID3_ENUM(ID3_V1Lengths)
{
ID3_V1_LEN = 128,
ID3_V1_LEN_ID = 3,
ID3_V1_LEN_TITLE = 30,
ID3_V1_LEN_ARTIST = 30,
ID3_V1_LEN_ALBUM = 30,
ID3_V1_LEN_YEAR = 4,
ID3_V1_LEN_COMMENT = 30,
ID3_V1_LEN_GENRE = 1
};
ID3_ENUM(ID3_FieldFlags)
{
ID3FF_NONE = 0,
ID3FF_CSTR = 1 << 0,
ID3FF_LIST = 1 << 1,
ID3FF_ENCODABLE = 1 << 2,
ID3FF_TEXTLIST = ID3FF_CSTR | ID3FF_LIST | ID3FF_ENCODABLE
};
/** Enumeration of the types of field types */
ID3_ENUM(ID3_FieldType)
{
ID3FTY_NONE = -1,
ID3FTY_INTEGER = 0,
ID3FTY_BINARY,
ID3FTY_TEXTSTRING,
ID3FTY_NUMTYPES
};
/**
** Predefined id3lib error types.
**/
ID3_ENUM(ID3_Err)
{
ID3E_NoError = 0, /**< No error reported */
ID3E_NoMemory, /**< No available memory */
ID3E_NoData, /**< No data to parse */
ID3E_BadData, /**< Improperly formatted data */
ID3E_NoBuffer, /**< No buffer to write to */
ID3E_SmallBuffer, /**< Buffer is too small */
ID3E_InvalidFrameID, /**< Invalid frame id */
ID3E_FieldNotFound, /**< Requested field not found */
ID3E_UnknownFieldType, /**< Unknown field type */
ID3E_TagAlreadyAttached, /**< Tag is already attached to a file */
ID3E_InvalidTagVersion, /**< Invalid tag version */
ID3E_NoFile, /**< No file to parse */
ID3E_ReadOnly, /**< Attempting to write to a read-only file */
ID3E_zlibError /**< Error in compression/uncompression */
};
ID3_ENUM(ID3_ContentType)
{
ID3CT_OTHER = 0,
ID3CT_LYRICS,
ID3CT_TEXTTRANSCRIPTION,
ID3CT_MOVEMENT,
ID3CT_EVENTS,
ID3CT_CHORD,
ID3CT_TRIVIA
};
ID3_ENUM(ID3_TimeStampFormat)
{
ID3TSF_FRAME = 1,
ID3TSF_MS
};
#define MASK(bits) ((1 << (bits)) - 1)
#define MASK1 MASK(1)
#define MASK2 MASK(2)
#define MASK3 MASK(3)
#define MASK4 MASK(4)
#define MASK5 MASK(5)
#define MASK6 MASK(6)
#define MASK7 MASK(7)
#define MASK8 MASK(8)
/*
* The following is borrowed from glib.h (http://www.gtk.org)
*/
#ifdef WIN32
/* On native Win32, directory separator is the backslash, and search path
* separator is the semicolon.
*/
# define ID3_DIR_SEPARATOR '\\'
# define ID3_DIR_SEPARATOR_S "\\"
# define ID3_SEARCHPATH_SEPARATOR ';'
# define ID3_SEARCHPATH_SEPARATOR_S ";"
#else /* !WIN32 */
# ifndef _EMX_
/* Unix */
# define ID3_DIR_SEPARATOR '/'
# define ID3_DIR_SEPARATOR_S "/"
# define ID3_SEARCHPATH_SEPARATOR ':'
# define ID3_SEARCHPATH_SEPARATOR_S ":"
# else
/* EMX/OS2 */
# define ID3_DIR_SEPARATOR '/'
# define ID3_DIR_SEPARATOR_S "/"
# define ID3_SEARCHPATH_SEPARATOR ';'
# define ID3_SEARCHPATH_SEPARATOR_S ";"
# endif
#endif /* !WIN32 */
#ifndef NULL
# define NULL ((void*) 0)
#endif
#define BS_SIZE (sizeof(uint32)*8)
#define BS_SET(v,x) ((v)[(x) / BS_SIZE] |= (1 << ((x) % BS_SIZE)))
#define BS_CLEAR(v,x) ((v)[(x) / BS_SIZE] &= ~(1 << ((x) % BS_SIZE)))
#define BS_ISSET(v,x) ((v)[(x) / BS_SIZE] & (1 << ((x) % BS_SIZE)))
#endif /* _ID3LIB_GLOBALS_H_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -