1
0
Fork 0
forked from len0rd/rockbox

properties plugin: Make the ID3 info available on HWCODEC targets too.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14334 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Nicolas Pennequin 2007-08-14 13:19:22 +00:00
parent ee44c8da52
commit 4918059225

View file

@ -34,11 +34,9 @@ char str_filecount[64];
char str_date[64];
char str_time[64];
#if (CONFIG_CODEC == SWCODEC)
char str_title[MAX_PATH];
char str_artist[MAX_PATH];
char str_album[MAX_PATH];
#endif
int num_properties;
@ -69,6 +67,7 @@ static bool file_properties(char* selected_file)
char tstr[MAX_PATH];
DIR* dir;
struct dirent* entry;
struct mp3entry id3;
char* ptr = rb->strrchr(selected_file, '/') + 1;
int dirlen = (ptr - selected_file);
@ -99,24 +98,24 @@ static bool file_properties(char* selected_file)
num_properties = 5;
#if (CONFIG_CODEC == SWCODEC)
struct mp3entry id3;
int fd = rb->open(selected_file, O_RDONLY);
if (fd >= 0)
{
if (rb->get_metadata(&id3, fd, selected_file, false))
{
rb->snprintf(str_artist, sizeof str_artist,
"Artist: %s", id3.artist ? id3.artist : "");
rb->snprintf(str_title, sizeof str_title,
"Title: %s", id3.title ? id3.title : "");
rb->snprintf(str_album, sizeof str_album,
"Album: %s", id3.album ? id3.album : "");
num_properties += 3;
}
rb->close(fd);
}
if (fd >= 0 &&
rb->get_metadata(&id3, fd, selected_file, false))
#else
if (!rb->mp3info(&id3, selected_file, false))
#endif
{
rb->snprintf(str_artist, sizeof str_artist,
"Artist: %s", id3.artist ? id3.artist : "");
rb->snprintf(str_title, sizeof str_title,
"Title: %s", id3.title ? id3.title : "");
rb->snprintf(str_album, sizeof str_album,
"Album: %s", id3.album ? id3.album : "");
num_properties += 3;
}
#if (CONFIG_CODEC == SWCODEC)
rb->close(fd);
#endif
found = true;
break;
}
@ -236,7 +235,6 @@ char * get_props(int selected_item, void* data, char *buffer)
case 4:
rb->strcpy(buffer, its_a_dir ? "" : str_time);
break;
#if (CONFIG_CODEC == SWCODEC)
case 5:
rb->strcpy(buffer, its_a_dir ? "" : str_artist);
break;
@ -246,7 +244,6 @@ char * get_props(int selected_item, void* data, char *buffer)
case 7:
rb->strcpy(buffer, its_a_dir ? "" : str_album);
break;
#endif
default:
rb->strcpy(buffer, "ERROR");
break;