-
Notifications
You must be signed in to change notification settings - Fork 0
/
v2.4.go
101 lines (100 loc) · 7.86 KB
/
v2.4.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
package id3
var version24Params = &versionParams{
frameIdSize: 4,
frameSizeSize: 4,
frameFlagsSize: 2,
sizeUnsynchronized: true,
frames: map[string]*frameFactory{
"AENC": &frameFactory{description: "Audio encryption", maker: newDataFrame},
"APIC": &frameFactory{description: "Attached picture", maker: newPictureFrame},
"COMM": &frameFactory{description: "Comments", maker: newFullTextFrame},
"COMR": &frameFactory{description: "Commercial frame", maker: newDataFrame},
"ENCR": &frameFactory{description: "Encryption method registration", maker: newDataFrame},
"EQUA": &frameFactory{description: "Equalization", maker: newDataFrame},
"ETCO": &frameFactory{description: "Event timing codes", maker: newDataFrame},
"GEOB": &frameFactory{description: "General encapsulated object", maker: newDataFrame},
"GRID": &frameFactory{description: "Group identification registration", maker: newDataFrame},
"IPLS": &frameFactory{description: "Involved people list", maker: newDataFrame},
"LINK": &frameFactory{description: "Linked information", maker: newDataFrame},
"MCDI": &frameFactory{description: "Music CD identifier", maker: newDataFrame},
"MJGN": &frameFactory{description: "Media Jukebox metadata", maker: newDataFrame},
"MJMD": &frameFactory{description: "Media Jukebox metadata", maker: newDataFrame},
"MLLT": &frameFactory{description: "MPEG location lookup table", maker: newDataFrame},
"NCON": &frameFactory{description: "MusicMatch", maker: newDataFrame},
"OWNE": &frameFactory{description: "Ownership frame", maker: newDataFrame},
"PRIV": &frameFactory{description: "Private frame", maker: newDataFrame},
"PCNT": &frameFactory{description: "Play counter", maker: newDataFrame},
"POPM": &frameFactory{description: "Popularimeter", maker: newDataFrame},
"POSS": &frameFactory{description: "Position synchronisation frame", maker: newDataFrame},
"RBUF": &frameFactory{description: "Recommended buffer size", maker: newDataFrame},
"RGAD": &frameFactory{description: "ReplayGain", maker: newDataFrame},
"RVAD": &frameFactory{description: "Relative volume adjustment", maker: newDataFrame},
"RVA2": &frameFactory{description: "Relative volume adjustment (2)", maker: newDataFrame},
"RVRB": &frameFactory{description: "Reverb", maker: newDataFrame},
"SYLT": &frameFactory{description: "Synchronized lyric/text", maker: newDataFrame},
"SYTC": &frameFactory{description: "Synchronized tempo codes", maker: newDataFrame},
"TALB": &frameFactory{description: "Album/Movie/Show title", maker: newTextFrame},
"TBPM": &frameFactory{description: "BPM (beats per minute)", maker: newTextFrame},
"TCOM": &frameFactory{description: "Composer", maker: newTextFrame},
"TCON": &frameFactory{description: "Content type", maker: newTextFrame},
"TCOP": &frameFactory{description: "Copyright message", maker: newTextFrame},
"TDAT": &frameFactory{description: "Date", maker: newTextFrame},
"TDLY": &frameFactory{description: "Playlist delay", maker: newTextFrame},
"TDEN": &frameFactory{description: "Encoding time", maker: newTextFrame}, // TODO: DateFrame?
"TDOR": &frameFactory{description: "Original release time", maker: newTextFrame}, // TODO: DateFrame?
"TDRC": &frameFactory{description: "Recording time", maker: newTextFrame}, // TODO: DateFrame?
"TDRL": &frameFactory{description: "Release time", maker: newTextFrame}, // TODO: DateFrame?
"TDTG": &frameFactory{description: "Tagging time", maker: newTextFrame}, // TODO: DateFrame?
"TENC": &frameFactory{description: "Encoded by", maker: newTextFrame},
"TEXT": &frameFactory{description: "Lyricist/Text writer", maker: newTextFrame},
"TFLT": &frameFactory{description: "File type", maker: newTextFrame},
"TIME": &frameFactory{description: "Time", maker: newTextFrame},
"TIPL": &frameFactory{description: "Involved People List", maker: newTextFrame},
"TIT1": &frameFactory{description: "Content group description", maker: newTextFrame},
"TIT2": &frameFactory{description: "Title/songname/content description", maker: newTextFrame},
"TIT3": &frameFactory{description: "Subtitle/Description refinement", maker: newTextFrame},
"TKEY": &frameFactory{description: "Initial key", maker: newTextFrame},
"TLAN": &frameFactory{description: "Language(s)", maker: newTextFrame},
"TLEN": &frameFactory{description: "Length", maker: newTextFrame},
"TMED": &frameFactory{description: "Media type", maker: newTextFrame},
"TMCL": &frameFactory{description: "Musicians Credit List", maker: newTextFrame},
"TMOO": &frameFactory{description: "Mood", maker: newTextFrame},
"TOAL": &frameFactory{description: "Original album/movie/show title", maker: newTextFrame},
"TOFN": &frameFactory{description: "Original filename", maker: newTextFrame},
"TOLY": &frameFactory{description: "Original lyricist(s)/text writer(s)", maker: newTextFrame},
"TOPE": &frameFactory{description: "Original artist(s)/performer(s)", maker: newTextFrame},
"TORY": &frameFactory{description: "Original release year", maker: newTextFrame},
"TOWN": &frameFactory{description: "File owner/licensee", maker: newTextFrame},
"TPE1": &frameFactory{description: "Lead performer(s)/Soloist(s)", maker: newTextFrame},
"TPE2": &frameFactory{description: "Band/orchestra/accompaniment", maker: newTextFrame},
"TPE3": &frameFactory{description: "Conductor/performer refinement", maker: newTextFrame},
"TPE4": &frameFactory{description: "Interpreted, remixed, or otherwise modified by", maker: newTextFrame},
"TPOS": &frameFactory{description: "Part of a set", maker: newTextFrame},
"TPUB": &frameFactory{description: "Publisher", maker: newTextFrame},
"TRCK": &frameFactory{description: "Track number/Position in set", maker: newTextFrame},
"TRDA": &frameFactory{description: "Recording dates", maker: newTextFrame},
"TRSN": &frameFactory{description: "Internet radio station name", maker: newTextFrame},
"TRSO": &frameFactory{description: "Internet radio station owner", maker: newTextFrame},
"TSIZ": &frameFactory{description: "Size", maker: newTextFrame},
"TSOA": &frameFactory{description: "Album sort order", maker: newTextFrame},
"TSOP": &frameFactory{description: "Performer sort order", maker: newTextFrame},
"TSO2": &frameFactory{description: "iTunes Artist sort order", maker: newTextFrame},
"TSRC": &frameFactory{description: "ISRC (international standard recording code)", maker: newTextFrame},
"TSSE": &frameFactory{description: "Software/Hardware and settings used for encoding", maker: newTextFrame},
"TYER": &frameFactory{description: "Year", maker: newTextFrame},
"TXXX": &frameFactory{description: "User defined text information frame", maker: newDescribedFrame},
"UFID": &frameFactory{description: "Unique file identifier", maker: newUniqueFileIDFrame},
"USER": &frameFactory{description: "Terms of use", maker: newDataFrame},
"TCMP": &frameFactory{description: "Part of a compilation (iTunes extension)", maker: newTextFrame},
"USLT": &frameFactory{description: "Unsychronized lyric/text transcription", maker: newFullTextFrame},
"WCOM": &frameFactory{description: "Commercial information", maker: newDataFrame},
"WCOP": &frameFactory{description: "Copyright/Legal information", maker: newDataFrame},
"WOAF": &frameFactory{description: "Official audio file webpage", maker: newDataFrame},
"WOAR": &frameFactory{description: "Official artist/performer webpage", maker: newDataFrame},
"WOAS": &frameFactory{description: "Official audio source webpage", maker: newDataFrame},
"WORS": &frameFactory{description: "Official internet radio station homepage", maker: newDataFrame},
"WPAY": &frameFactory{description: "Payment", maker: newDataFrame},
"WPUB": &frameFactory{description: "Publishers official webpage", maker: newDataFrame},
"WXXX": &frameFactory{description: "User defined URL link frame", maker: newDataFrame},
"XSOP": &frameFactory{description: "Performer sort order (MusicBrainz)", maker: newTextFrame},
}}