00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029 #ifndef _ID3LIB_MISC_SUPPORT_H_
00030 #define _ID3LIB_MISC_SUPPORT_H_
00031
00032 #include <id3/tag.h>
00033
00034 ID3_C_EXPORT char* ID3_GetString(const ID3_Frame *, ID3_FieldID);
00035 ID3_C_EXPORT char* ID3_GetString(const ID3_Frame *, ID3_FieldID, size_t nItems);
00036
00037 ID3_C_EXPORT void ID3_FreeString(char *str);
00038
00039
00040
00041
00042 ID3_C_EXPORT char* ID3_GetArtist(const ID3_Tag*);
00043 ID3_C_EXPORT ID3_Frame* ID3_AddArtist(ID3_Tag*, const char*, bool replace = false);
00044 ID3_C_EXPORT size_t ID3_RemoveArtists(ID3_Tag*);
00045
00046 ID3_C_EXPORT char* ID3_GetAlbum(const ID3_Tag*);
00047 ID3_C_EXPORT ID3_Frame* ID3_AddAlbum(ID3_Tag*, const char*, bool replace = false);
00048 ID3_C_EXPORT size_t ID3_RemoveAlbums(ID3_Tag*);
00049
00050 ID3_C_EXPORT char* ID3_GetTitle(const ID3_Tag*);
00051 ID3_C_EXPORT ID3_Frame* ID3_AddTitle(ID3_Tag*, const char*, bool replace = false);
00052 ID3_C_EXPORT size_t ID3_RemoveTitles(ID3_Tag*);
00053
00054 ID3_C_EXPORT char* ID3_GetYear(const ID3_Tag*);
00055 ID3_C_EXPORT ID3_Frame* ID3_AddYear(ID3_Tag*, const char*, bool replace = false);
00056 ID3_C_EXPORT size_t ID3_RemoveYears(ID3_Tag*);
00057
00058 ID3_C_EXPORT char* ID3_GetComment(const ID3_Tag*, const char* desc = NULL);
00059 ID3_C_EXPORT ID3_Frame* ID3_AddComment(ID3_Tag*, const char*, bool = false);
00060 ID3_C_EXPORT ID3_Frame* ID3_AddComment(ID3_Tag*, const char*, const char*, bool = false);
00061 ID3_C_EXPORT ID3_Frame* ID3_AddComment(ID3_Tag*, const char*, const char*, const char*,
00062 bool = false);
00063 ID3_C_EXPORT size_t ID3_RemoveComments(ID3_Tag*, const char * = NULL);
00064
00065 ID3_C_EXPORT char* ID3_GetTrack(const ID3_Tag*);
00066 ID3_C_EXPORT size_t ID3_GetTrackNum(const ID3_Tag*);
00067
00068 ID3_C_EXPORT ID3_Frame* ID3_AddTrack(ID3_Tag*, uchar ucTrack, uchar ucTotal = 0,
00069 bool replace = false);
00070 ID3_C_EXPORT size_t ID3_RemoveTracks(ID3_Tag*);
00071
00072 ID3_C_EXPORT char* ID3_GetGenre(const ID3_Tag*);
00073 ID3_C_EXPORT size_t ID3_GetGenreNum(const ID3_Tag*);
00074 ID3_C_EXPORT ID3_Frame* ID3_AddGenre(ID3_Tag*, size_t ucGenre, bool replace = false);
00075
00076 ID3_C_EXPORT ID3_Frame* ID3_AddGenre(ID3_Tag*, const char *, bool replace = false);
00077 ID3_C_EXPORT size_t ID3_RemoveGenres(ID3_Tag*);
00078
00079 ID3_C_EXPORT char* ID3_GetLyrics(const ID3_Tag*);
00080 ID3_C_EXPORT ID3_Frame* ID3_AddLyrics(ID3_Tag*, const char*, bool = false);
00081 ID3_C_EXPORT ID3_Frame* ID3_AddLyrics(ID3_Tag*, const char*, const char*, bool = false);
00082 ID3_C_EXPORT ID3_Frame* ID3_AddLyrics(ID3_Tag*, const char*, const char*, const char*,
00083 bool = false);
00084 ID3_C_EXPORT size_t ID3_RemoveLyrics(ID3_Tag*);
00085
00086 ID3_C_EXPORT char* ID3_GetLyricist(const ID3_Tag*);
00087 ID3_C_EXPORT ID3_Frame* ID3_AddLyricist(ID3_Tag *, const char *, bool replace = false);
00088 ID3_C_EXPORT size_t ID3_RemoveLyricist(ID3_Tag*);
00089
00090 ID3_C_EXPORT ID3_Frame* ID3_AddSyncLyrics(ID3_Tag*, const uchar*, size_t,
00091 ID3_TimeStampFormat, bool = false);
00092 ID3_C_EXPORT ID3_Frame* ID3_AddSyncLyrics(ID3_Tag*, const uchar*, size_t,
00093 ID3_TimeStampFormat, const char *, bool = false);
00094 ID3_C_EXPORT ID3_Frame* ID3_AddSyncLyrics(ID3_Tag*, const uchar*, size_t,
00095 ID3_TimeStampFormat, const char *, const char *,
00096 bool = false);
00097 ID3_C_EXPORT ID3_Frame* ID3_AddSyncLyrics(ID3_Tag*, const uchar*, size_t,
00098 ID3_TimeStampFormat, const char *, const char *,
00099 ID3_ContentType, bool = false);
00100 ID3_C_EXPORT ID3_Frame* ID3_GetSyncLyricsInfo(const ID3_Tag *tag, const char *lang,
00101 const char *desc, char &stampformat,
00102 char &type, size_t &size);
00103 ID3_C_EXPORT ID3_Frame* ID3_GetSyncLyrics(const ID3_Tag* tag, const char* lang,
00104 const char* desc, const uchar* &pData, size_t& size);
00105
00106
00107
00108 ID3_C_EXPORT int ID3_GetPictureData(const ID3_Tag*, const char* TempPicPath);
00109
00110
00111 ID3_C_EXPORT char* ID3_GetPictureMimeType(const ID3_Tag*);
00112
00113
00114 ID3_C_EXPORT bool ID3_HasPicture(const ID3_Tag*);
00115
00116
00117 ID3_C_EXPORT ID3_Frame* ID3_AddPicture(ID3_Tag*, const char* TempPicPath, const char* MimeType, bool replace = false);
00118 ID3_C_EXPORT ID3_Frame* ID3_AddPicture(ID3_Tag*, const char* TempPicPath, const char* MimeType, ID3_PictureType pictype, const char* Description, bool replace = false);
00119
00120
00121 ID3_C_EXPORT size_t ID3_RemovePictures(ID3_Tag*);
00122
00123
00124 ID3_C_EXPORT size_t ID3_GetPictureDataOfPicType(ID3_Tag*, const char* TempPicPath, ID3_PictureType pictype);
00125
00126
00127 ID3_C_EXPORT char *ID3_GetMimeTypeOfPicType(ID3_Tag*, ID3_PictureType pictype);
00128
00129
00130 ID3_C_EXPORT char *ID3_GetDescriptionOfPicType(ID3_Tag*, ID3_PictureType pictype);
00131
00132
00133 ID3_C_EXPORT size_t ID3_RemovePictureType(ID3_Tag*, ID3_PictureType pictype);
00134
00135
00136 #endif
00137