annotate src/libaudtag/util.c @ 4887:0ddbd0025174 default tip

added libaudtag. (not used yet.)
author Yoshiki Yazawa <yaz@honeyplanet.jp>
date Wed, 05 May 2010 18:26:06 +0900
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
4887
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
1 /*
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
2 * Copyright 2009 Paula Stanciu
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
3 *
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
4 * This file is part of Audacious.
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
5 *
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
6 * Audacious is free software: you can redistribute it and/or modify it under
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
7 * the terms of the GNU General Public License as published by the Free Software
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
8 * Foundation, version 3 of the License.
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
9 *
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
10 * Audacious is distributed in the hope that it will be useful, but WITHOUT ANY
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
11 * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
12 * A PARTICULAR PURPOSE. See the GNU General Public License for more details.
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
13 *
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
14 * You should have received a copy of the GNU General Public License along with
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
15 * Audacious. If not, see <http://www.gnu.org/licenses/>.
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
16 *
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
17 * The Audacious team does not consider modular code linking to Audacious or
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
18 * using our public API to be a derived work.
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
19 */
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
20
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
21 #include <glib.h>
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
22 #include "util.h"
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
23 #include <inttypes.h>
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
24
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
25 /* convert windows time to unix time */
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
26 time_t unix_time(guint64 win_time)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
27 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
28 guint64 t = (guint64) ((win_time / 10000000LL) - 11644473600LL);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
29 return (time_t) t;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
30 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
31
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
32 guint16 get_year(guint64 win_time)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
33 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
34 GDate *d = g_date_new();
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
35 g_date_set_time_t(d, unix_time(win_time));
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
36 guint16 year = g_date_get_year(d);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
37 g_date_free(d);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
38 return year;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
39 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
40
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
41 Tuple *makeTuple(Tuple * tuple, const gchar * title, const gchar * artist, const gchar * comment, const gchar * album, const gchar * genre, const gchar * year, const gchar * filePath, int tracnr)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
42 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
43
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
44 tuple_associate_string(tuple, FIELD_ARTIST, NULL, artist);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
45 tuple_associate_string(tuple, FIELD_TITLE, NULL, title);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
46 tuple_associate_string(tuple, FIELD_COMMENT, NULL, comment);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
47 tuple_associate_string(tuple, FIELD_ALBUM, NULL, album);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
48 tuple_associate_string(tuple, FIELD_GENRE, NULL, genre);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
49 tuple_associate_string(tuple, FIELD_YEAR, NULL, year);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
50 tuple_associate_int(tuple, FIELD_TRACK_NUMBER, NULL, tracnr);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
51 tuple_associate_string(tuple, FIELD_FILE_PATH, NULL, filePath);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
52 return tuple;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
53 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
54
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
55 const gchar *get_complete_filepath(Tuple * tuple)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
56 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
57 const gchar *filepath;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
58 const gchar *dir;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
59 const gchar *file;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
60
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
61 dir = tuple_get_string(tuple, FIELD_FILE_PATH, NULL);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
62 file = tuple_get_string(tuple, FIELD_FILE_NAME, NULL);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
63 filepath = g_strdup_printf("%s/%s", dir, file);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
64 AUDDBG("file path = %s\n", filepath);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
65 return filepath;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
66 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
67
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
68 void print_tuple(Tuple * tuple)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
69 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
70 #if WMA_DEBUG
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
71 AUDDBG("--------------TUPLE PRINT --------------------\n");
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
72 const gchar *title = tuple_get_string(tuple, FIELD_TITLE, NULL);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
73 AUDDBG("title = %s\n", title);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
74 /* artist */
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
75 const gchar *artist = tuple_get_string(tuple, FIELD_ARTIST, NULL);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
76 AUDDBG("artist = %s\n", artist);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
77
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
78 /* copyright */
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
79 const gchar *copyright = tuple_get_string(tuple, FIELD_COPYRIGHT, NULL);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
80 AUDDBG("copyright = %s\n", copyright);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
81
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
82 /* comment / description */
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
83
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
84 const gchar *comment = tuple_get_string(tuple, FIELD_COMMENT, NULL);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
85 AUDDBG("comment = %s\n", comment);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
86
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
87 /* codec name */
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
88 const gchar *codec_name = tuple_get_string(tuple, FIELD_CODEC, NULL);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
89 AUDDBG("codec = %s\n", codec_name);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
90
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
91 /* album */
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
92 const gchar *album = tuple_get_string(tuple, FIELD_ALBUM, NULL);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
93 AUDDBG("Album = %s\n", album);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
94
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
95 /*track number */
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
96 gint track_nr = tuple_get_int(tuple, FIELD_TRACK_NUMBER, NULL);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
97 AUDDBG("Track nr = %d\n", track_nr);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
98
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
99 /* genre */
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
100 const gchar *genre = tuple_get_string(tuple, FIELD_GENRE, NULL);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
101 AUDDBG("Genre = %s \n", genre);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
102
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
103 /* length */
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
104 gint length = tuple_get_int(tuple, FIELD_LENGTH, NULL);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
105 AUDDBG("Length = %d\n", length);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
106
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
107 /* year */
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
108 gint year = tuple_get_int(tuple, FIELD_YEAR, NULL);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
109 AUDDBG("Year = %d\n", year);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
110
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
111 /* quality */
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
112 const gchar *quality = tuple_get_string(tuple, FIELD_QUALITY, NULL);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
113 AUDDBG("quality = %s\n", quality);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
114
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
115 /* path */
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
116 const gchar *path = tuple_get_string(tuple, FIELD_FILE_PATH, NULL);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
117 AUDDBG("path = %s\n", path);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
118
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
119 /* filename */
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
120 const gchar *filename = tuple_get_string(tuple, FIELD_FILE_NAME, NULL);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
121 AUDDBG("filename = %s\n", filename);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
122
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
123 AUDDBG("-----------------END---------------------\n");
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
124 #endif
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
125 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
126
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
127 void seek(VFSFile * f, long pos)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
128 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
129
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
130 vfs_fseek(f, pos, SEEK_SET);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
131 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
132
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
133 void skip(VFSFile * f, int amount)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
134 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
135 vfs_fseek(f, amount, SEEK_CUR);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
136 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
137
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
138 gchar *read_char_data(VFSFile * fd, int size)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
139 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
140 gchar *value = g_new0(gchar, size);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
141 vfs_fread(value, size, 1, fd);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
142 return value;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
143 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
144
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
145 gboolean write_char_data(VFSFile * f, gchar * data, size_t i)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
146 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
147 return (vfs_fwrite(data, i, 1, f) == i);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
148 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
149
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
150 gchar *utf8(gunichar2 * s)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
151 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
152 g_return_val_if_fail(s != NULL, NULL);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
153 return g_utf16_to_utf8(s, -1, NULL, NULL, NULL);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
154 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
155
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
156 gunichar2 *fread_utf16(VFSFile * f, guint64 size)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
157 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
158 gunichar2 *p = (gunichar2 *) g_malloc0(size);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
159 if (vfs_fread(p, 1, size, f) != size)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
160 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
161 g_free(p);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
162 p = NULL;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
163 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
164 gchar *s = utf8(p);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
165 AUDDBG("Converted to UTF8: '%s'\n", s);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
166 g_free(s);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
167 return p;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
168 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
169
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
170 gboolean write_utf16(VFSFile * f, gunichar2 * data, size_t i)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
171 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
172 return (vfs_fwrite(data, i, 1, f) == i);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
173 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
174
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
175 guint8 read_uint8(VFSFile * fd)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
176 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
177 guint16 i;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
178 if (vfs_fread(&i, 1, 1, fd) == 1)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
179 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
180 return i;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
181 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
182 return -1;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
183 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
184
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
185 guint16 read_LEuint16(VFSFile * fd)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
186 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
187 guint16 a;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
188 if (vfs_fget_le16(&a, fd))
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
189 return a;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
190 else
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
191 return -1;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
192 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
193
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
194 guint16 read_BEuint16(VFSFile * fd)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
195 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
196 guint16 a;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
197 if (vfs_fget_be16(&a, fd))
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
198 return a;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
199 else
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
200 return -1;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
201 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
202
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
203 guint32 read_LEuint32(VFSFile * fd)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
204 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
205 guint32 a;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
206 if (vfs_fget_le32(&a, fd))
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
207 return a;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
208 else
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
209 return -1;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
210 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
211
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
212 guint32 read_BEuint32(VFSFile * fd)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
213 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
214 guint32 a;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
215 if (vfs_fget_be32(&a, fd))
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
216 return a;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
217 else
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
218 return -1;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
219 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
220
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
221 guint64 read_LEuint64(VFSFile * fd)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
222 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
223 guint64 a;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
224 if (vfs_fget_le64(&a, fd))
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
225 return a;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
226 else
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
227 return -1;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
228 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
229
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
230 guint64 read_BEuint64(VFSFile * fd)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
231 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
232 guint64 a;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
233 if (vfs_fget_be64(&a, fd))
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
234 return a;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
235 else
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
236 return 1;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
237 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
238
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
239 gboolean write_uint8(VFSFile * fd, guint8 val)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
240 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
241 return (vfs_fwrite(&val, 1, 1, fd) == 1);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
242 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
243
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
244 gboolean write_LEuint16(VFSFile * fd, guint16 val)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
245 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
246 guint16 le_val = GUINT32_TO_LE(val);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
247 return (vfs_fwrite(&le_val, 2, 1, fd) == 2);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
248 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
249
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
250 gboolean write_BEuint32(VFSFile * fd, guint32 val)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
251 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
252 guint32 be_val = GUINT32_TO_BE(val);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
253 return (vfs_fwrite(&be_val, 4, 1, fd) == 4);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
254 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
255
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
256 gboolean write_LEuint32(VFSFile * fd, guint32 val)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
257 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
258 guint32 le_val = GUINT32_TO_LE(val);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
259 return (vfs_fwrite(&le_val, 4, 1, fd) == 4);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
260 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
261
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
262 gboolean write_LEuint64(VFSFile * fd, guint64 val)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
263 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
264 guint64 le_val = GUINT64_TO_LE(val);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
265 return (vfs_fwrite(&le_val, 8, 1, fd) == 8);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
266 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
267
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
268 void copyAudioToFile(VFSFile * from, VFSFile * to, guint32 pos)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
269 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
270 vfs_fseek(from, pos, SEEK_SET);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
271 while (vfs_feof(from) == 0)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
272 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
273 gchar buf[4096];
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
274 gint n = vfs_fread(buf, 1, 4096, from);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
275 vfs_fwrite(buf, n, 1, to);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
276 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
277 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
278
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
279 void copyAudioData(VFSFile * from, VFSFile * to, guint32 pos_from, guint32 pos_to)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
280 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
281 vfs_fseek(from, pos_from, SEEK_SET);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
282 int bytes_read = pos_from;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
283 while (bytes_read < pos_to - 4096)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
284 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
285 gchar buf[4096];
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
286 guint32 n = vfs_fread(buf, 1, 4096, from);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
287 vfs_fwrite(buf, n, 1, to);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
288 bytes_read += n;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
289 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
290 if (bytes_read < pos_to)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
291 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
292 guint32 buf_size = pos_to - bytes_read;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
293 gchar buf2[buf_size];
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
294 int nn = vfs_fread(buf2, 1, buf_size, from);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
295 vfs_fwrite(buf2, nn, 1, to);
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
296 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
297 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
298
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
299 gchar *convert_numericgenre_to_text(gint numericgenre)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
300 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
301 const struct
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
302 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
303 gint numericgenre;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
304 gchar *genre;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
305 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
306 table[] =
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
307 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
308 {GENRE_BLUES, "Blues"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
309 {GENRE_CLASSIC_ROCK, "Classic Rock"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
310 {GENRE_COUNTRY, "Country"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
311 {GENRE_DANCE, "Dance"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
312 {GENRE_DISCO, "Disco"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
313 {GENRE_FUNK, "Funk"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
314 {GENRE_GRUNGE, "Grunge"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
315 {GENRE_HIPHOP, "Hip-Hop"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
316 {GENRE_JAZZ, "Jazz"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
317 {GENRE_METAL, "Metal"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
318 {GENRE_NEW_AGE, "New Age"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
319 {GENRE_OLDIES, "Oldies"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
320 {GENRE_OTHER, "Other"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
321 {GENRE_POP, "Pop"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
322 {GENRE_R_B, "R&B"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
323 {GENRE_RAP, "Rap"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
324 {GENRE_REGGAE, "Reggae"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
325 {GENRE_ROCK, "Rock"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
326 {GENRE_TECHNO, "Techno"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
327 {GENRE_INDUSTRIAL, "Industrial"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
328 {GENRE_ALTERNATIVE, "Alternative"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
329 {GENRE_SKA, "Ska"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
330 {GENRE_DEATH_METAL, "Death Metal"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
331 {GENRE_PRANKS, "Pranks"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
332 {GENRE_SOUNDTRACK, "Soundtrack"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
333 {GENRE_EURO_TECHNO, "Euro-Techno"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
334 {GENRE_AMBIENT, "Ambient"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
335 {GENRE_TRIP_HOP, "Trip-Hop"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
336 {GENRE_VOCAL, "Vocal"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
337 {GENRE_JAZZ_FUNK, "Jazz+Funk"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
338 {GENRE_FUSION, "Fusion"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
339 {GENRE_TRANCE, "Trance"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
340 {GENRE_CLASSICAL, "Classical"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
341 {GENRE_INSTRUMENTAL, "Instrumental"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
342 {GENRE_ACID, "Acid"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
343 {GENRE_HOUSE, "House"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
344 {GENRE_GAME, "Game"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
345 {GENRE_SOUND_CLIP, "Sound Clip"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
346 {GENRE_GOSPEL, "Gospel"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
347 {GENRE_NOISE, "Noise"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
348 {GENRE_ALTERNROCK, "AlternRock"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
349 {GENRE_BASS, "Bass"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
350 {GENRE_SOUL, "Soul"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
351 {GENRE_PUNK, "Punk"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
352 {GENRE_SPACE, "Space"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
353 {GENRE_MEDITATIVE, "Meditative"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
354 {GENRE_INSTRUMENTAL_POP, "Instrumental Pop"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
355 {GENRE_INSTRUMENTAL_ROCK, "Instrumental Rock"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
356 {GENRE_ETHNIC, "Ethnic"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
357 {GENRE_GOTHIC, "Gothic"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
358 {GENRE_DARKWAVE, "Darkwave"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
359 {GENRE_TECHNO_INDUSTRIAL, "Techno-Industrial"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
360 {GENRE_ELECTRONIC, "Electronic"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
361 {GENRE_POP_FOLK, "Pop-Folk"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
362 {GENRE_EURODANCE, "Eurodance"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
363 {GENRE_DREAM, "Dream"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
364 {GENRE_SOUTHERN_ROCK, "Southern Rock"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
365 {GENRE_COMEDY, "Comedy"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
366 {GENRE_CULT, "Cult"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
367 {GENRE_GANGSTA, "Gangsta"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
368 {GENRE_TOP40, "Top 40"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
369 {GENRE_CHRISTIAN_RAP, "Christian Rap"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
370 {GENRE_POP_FUNK, "Pop/Funk"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
371 {GENRE_JUNGLE, "Jungle"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
372 {GENRE_NATIVE_AMERICAN, "Native American"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
373 {GENRE_CABARET, "Cabaret"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
374 {GENRE_NEW_WAVE, "New Wave"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
375 {GENRE_PSYCHADELIC, "Psychadelic"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
376 {GENRE_RAVE, "Rave"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
377 {GENRE_SHOWTUNES, "Showtunes"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
378 {GENRE_TRAILER, "Trailer"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
379 {GENRE_LO_FI, "Lo-Fi"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
380 {GENRE_TRIBAL, "Tribal"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
381 {GENRE_ACID_PUNK, "Acid Punk"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
382 {GENRE_ACID_JAZZ, "Acid Jazz"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
383 {GENRE_POLKA, "Polka"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
384 {GENRE_RETRO, "Retro"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
385 {GENRE_MUSICAL, "Musical"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
386 {GENRE_ROCK_ROLL, "Rock & Roll"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
387 {GENRE_HARD_ROCK, "Hard Rock"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
388 {GENRE_FOLK, "Folk"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
389 {GENRE_FOLK_ROCK, "Folk-Rock"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
390 {GENRE_NATIONAL_FOLK, "National Folk"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
391 {GENRE_SWING, "Swing"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
392 {GENRE_FAST_FUSION, "Fast Fusion"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
393 {GENRE_BEBOB, "Bebob"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
394 {GENRE_LATIN, "Latin"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
395 {GENRE_REVIVAL, "Revival"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
396 {GENRE_CELTIC, "Celtic"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
397 {GENRE_BLUEGRASS, "Bluegrass"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
398 {GENRE_AVANTGARDE, "Avantgarde"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
399 {GENRE_GOTHIC_ROCK, "Gothic Rock"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
400 {GENRE_PROGRESSIVE_ROCK, "Progressive Rock"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
401 {GENRE_PSYCHEDELIC_ROCK, "Psychedelic Rock"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
402 {GENRE_SYMPHONIC_ROCK, "Symphonic Rock"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
403 {GENRE_SLOW_ROCK, "Slow Rock"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
404 {GENRE_BIG_BAND, "Big Band"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
405 {GENRE_CHORUS, "Chorus"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
406 {GENRE_EASY_LISTENING, "Easy Listening"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
407 {GENRE_ACOUSTIC, "Acoustic"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
408 {GENRE_HUMOUR, "Humour"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
409 {GENRE_SPEECH, "Speech"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
410 {GENRE_CHANSON, "Chanson"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
411 {GENRE_OPERA, "Opera"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
412 {GENRE_CHAMBER_MUSIC, "Chamber Music"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
413 {GENRE_SONATA, "Sonata"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
414 {GENRE_SYMPHONY, "Symphony"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
415 {GENRE_BOOTY_BASS, "Booty Bass"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
416 {GENRE_PRIMUS, "Primus"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
417 {GENRE_PORN_GROOVE, "Porn Groove"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
418 {GENRE_SATIRE, "Satire"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
419 {GENRE_SLOW_JAM, "Slow Jam"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
420 {GENRE_CLUB, "Club"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
421 {GENRE_TANGO, "Tango"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
422 {GENRE_SAMBA, "Samba"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
423 {GENRE_FOLKLORE, "Folklore"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
424 {GENRE_BALLAD, "Ballad"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
425 {GENRE_POWER_BALLAD, "Power Ballad"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
426 {GENRE_RHYTHMIC_SOUL, "Rhythmic Soul"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
427 {GENRE_FREESTYLE, "Freestyle"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
428 {GENRE_DUET, "Duet"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
429 {GENRE_PUNK_ROCK, "Punk Rock"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
430 {GENRE_DRUM_SOLO, "Drum Solo"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
431 {GENRE_A_CAPELLA, "A capella"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
432 {GENRE_EURO_HOUSE, "Euro-House"},
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
433 };
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
434
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
435 gint count;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
436
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
437 for (count = 0; count < G_N_ELEMENTS(table); count++)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
438 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
439 if (table[count].numericgenre == numericgenre)
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
440 {
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
441 return table[count].genre;
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
442 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
443 }
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
444
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
445 return "Unknown";
0ddbd0025174 added libaudtag. (not used yet.)
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff changeset
446 }