forked from len0rd/rockbox
Look for albumart in .rockbox/albumart/<artist>-<album><size>.bmp in addition to the current locations.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16110 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
608c547aa1
commit
2cffb1bf3d
1 changed files with 16 additions and 0 deletions
|
|
@ -27,6 +27,7 @@
|
||||||
#include "dircache.h"
|
#include "dircache.h"
|
||||||
#include "debug.h"
|
#include "debug.h"
|
||||||
#include "misc.h"
|
#include "misc.h"
|
||||||
|
#include "settings.h"
|
||||||
|
|
||||||
|
|
||||||
/* Strip filename from a full path
|
/* Strip filename from a full path
|
||||||
|
|
@ -79,6 +80,8 @@ static void fix_path_part(char* path, int offset, int count)
|
||||||
|
|
||||||
for (i = 0; i <= count; i++, path++)
|
for (i = 0; i <= count; i++, path++)
|
||||||
{
|
{
|
||||||
|
if (*path == 0)
|
||||||
|
return;
|
||||||
if (*path == '"')
|
if (*path == '"')
|
||||||
*path = '\'';
|
*path = '\'';
|
||||||
else if (strchr(invalid_chars, *path))
|
else if (strchr(invalid_chars, *path))
|
||||||
|
|
@ -92,6 +95,7 @@ static void fix_path_part(char* path, int offset, int count)
|
||||||
* ./cover<size>.bmp
|
* ./cover<size>.bmp
|
||||||
* ../<albumname><size>.bmp
|
* ../<albumname><size>.bmp
|
||||||
* ../cover<size>.bmp
|
* ../cover<size>.bmp
|
||||||
|
* ROCKBOX_DIR/albumart/<artist>-<albumname><size>.bmp
|
||||||
* <size> is the value of the size_string parameter, <trackname> and
|
* <size> is the value of the size_string parameter, <trackname> and
|
||||||
* <albumname> are read from the ID3 metadata.
|
* <albumname> are read from the ID3 metadata.
|
||||||
* If a matching bitmap is found, its filename is stored in buf.
|
* If a matching bitmap is found, its filename is stored in buf.
|
||||||
|
|
@ -138,6 +142,18 @@ bool search_albumart_files(const struct mp3entry *id3, const char *size_string,
|
||||||
found = file_exists(path);
|
found = file_exists(path);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!found)
|
||||||
|
{
|
||||||
|
/* look in the albumart subdir of .rockbox */
|
||||||
|
snprintf(path, sizeof(path),
|
||||||
|
ROCKBOX_DIR "/albumart/%s-%s%s.bmp",
|
||||||
|
id3->artist,
|
||||||
|
id3->album,
|
||||||
|
size_string);
|
||||||
|
fix_path_part(path, strlen(ROCKBOX_DIR "/albumart/"), MAX_PATH);
|
||||||
|
found = file_exists(path);
|
||||||
|
}
|
||||||
|
|
||||||
if (!found)
|
if (!found)
|
||||||
{
|
{
|
||||||
/* if it still doesn't exist,
|
/* if it still doesn't exist,
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue