comparison src/sndfile/plugin.c @ 2975:4d778b7a19c6

now sndfile can display Japanese file name.
author Yoshiki Yazawa <yaz@honeyplanet.jp>
date Thu, 12 Feb 2009 01:50:09 +0900
parents 3134a0987162
children e2e8f927a08a
comparison
equal deleted inserted replaced
2974:d116c0d61dd2 2975:4d778b7a19c6
141 SF_INFO tmp_sfinfo; 141 SF_INFO tmp_sfinfo;
142 gboolean lossy = FALSE; 142 gboolean lossy = FALSE;
143 gchar *codec, *format, *subformat; 143 gchar *codec, *format, *subformat;
144 144
145 tmp_sndfile = open_sndfile_from_uri(filename, &vfsfile, &tmp_sfinfo); 145 tmp_sndfile = open_sndfile_from_uri(filename, &vfsfile, &tmp_sfinfo);
146 if ( sf_get_string(tmp_sndfile, SF_STR_TITLE) == NULL) 146 if ( sf_get_string(tmp_sndfile, SF_STR_TITLE) == NULL) {
147 aud_tuple_associate_string(ti, FIELD_TITLE, NULL, g_path_get_basename(filename)); 147 gchar *utfname = aud_uri_to_display_basename(filename);
148 aud_tuple_associate_string(ti, FIELD_TITLE, NULL, utfname);
149 }
148 else 150 else
149 aud_tuple_associate_string(ti, FIELD_TITLE, NULL, sf_get_string(tmp_sndfile, SF_STR_TITLE)); 151 aud_tuple_associate_string(ti, FIELD_TITLE, NULL, sf_get_string(tmp_sndfile, SF_STR_TITLE));
150 152
151 aud_tuple_associate_string(ti, FIELD_ARTIST, NULL, sf_get_string(tmp_sndfile, SF_STR_ARTIST)); 153 aud_tuple_associate_string(ti, FIELD_ARTIST, NULL, sf_get_string(tmp_sndfile, SF_STR_ARTIST));
152 aud_tuple_associate_string(ti, FIELD_COMMENT, NULL, sf_get_string(tmp_sndfile, SF_STR_COMMENT)); 154 aud_tuple_associate_string(ti, FIELD_COMMENT, NULL, sf_get_string(tmp_sndfile, SF_STR_COMMENT));
225 format = "Core Audio File"; 227 format = "Core Audio File";
226 break; 228 break;
227 default: 229 default:
228 format = "Unknown sndfile"; 230 format = "Unknown sndfile";
229 } 231 }
230 232
231 switch (tmp_sfinfo.format & SF_FORMAT_SUBMASK) 233 switch (tmp_sfinfo.format & SF_FORMAT_SUBMASK)
232 { 234 {
233 case SF_FORMAT_PCM_S8: 235 case SF_FORMAT_PCM_S8:
234 subformat = "signed 8 bit"; 236 subformat = "signed 8 bit";
235 break; 237 break;
317 codec = g_strdup_printf("%s (%s)", format, subformat); 319 codec = g_strdup_printf("%s (%s)", format, subformat);
318 else 320 else
319 codec = g_strdup_printf("%s", format); 321 codec = g_strdup_printf("%s", format);
320 aud_tuple_associate_string(ti, FIELD_CODEC, NULL, codec); 322 aud_tuple_associate_string(ti, FIELD_CODEC, NULL, codec);
321 g_free(codec); 323 g_free(codec);
322 324
323 aud_tuple_associate_string(ti, FIELD_QUALITY, NULL, lossy ? "lossy" : "lossless"); 325 aud_tuple_associate_string(ti, FIELD_QUALITY, NULL, lossy ? "lossy" : "lossless");
324 } 326 }
325 327
326 static gchar * 328 static gchar *
327 get_title(gchar *filename) 329 get_title(gchar *filename)