libcfe  0.12.1
some useful C-functions
id3.h
Go to the documentation of this file.
1 #ifndef XID3_H
2 #define XID3_H
3 
4 #include <stdio.h>
5 #include <stdint.h>
6 
7 typedef struct
8 {
9  uint8_t version_major;
10  uint8_t version_rev;
11  uint8_t flags;
12  uint32_t size;
13  unsigned char *frames;
14 } ID3_tag;
15 
21 int ID3_tag_init(ID3_tag *t);
22 
31 int ID3_tag_fwrite(ID3_tag *t, FILE *fp);
32 
41 int ID3_tag_write(ID3_tag *tag, char *filename);
42 
52 int ID3_tag_add_data(ID3_tag *tag, uint8_t t1, uint8_t t2, uint8_t t3, uint8_t t4, char *data);
53 
54 /* 'T','P','E','1' */
55 #define ID3_tag_add_artist(t, a) ID3_tag_add_data(t, 84, 80, 69, 49, a);
56 
57 /* 'T','I','T','2' */
58 #define ID3_tag_add_title(t, s) ID3_tag_add_data(t, 84, 73, 84, 50, s);
59 
60 /* 'T','A','L','B' */
61 #define ID3_tag_add_album(t, a) ID3_tag_add_data(t, 84, 65, 76, 66, a);
62 
63 /* 'T','Y','E','R' */
64 #define ID3_tag_add_year(t, y) ID3_tag_add_data(t, 84, 89, 69, 82, y);
65 
66 /* 'T','L','E','N' */
67 #define ID3_tag_add_length(t, l) ID3_tag_add_data(t, 84, 76, 69, 78, l);
68 
69 #endif /* XID3_H */
int ID3_tag_write(ID3_tag *tag, char *filename)
Definition: id3.c:129
int ID3_tag_fwrite(ID3_tag *t, FILE *fp)
Definition: id3.c:79
Definition: id3.h:7
uint8_t version_rev
Definition: id3.h:10
int ID3_tag_add_data(ID3_tag *tag, uint8_t t1, uint8_t t2, uint8_t t3, uint8_t t4, char *data)
Definition: id3.c:26
unsigned char * frames
Definition: id3.h:13
uint8_t flags
Definition: id3.h:11
int ID3_tag_init(ID3_tag *t)
Definition: id3.c:14
uint32_t size
Definition: id3.h:12
uint8_t version_major
Definition: id3.h:9