[tracker/hierarchical-indexing] tracker-extract: Use artist's value in filename when creating new album art
- From: Carlos Garnacho <carlosg src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [tracker/hierarchical-indexing] tracker-extract: Use artist's value in filename when creating new album art
- Date: Thu, 18 Feb 2010 17:31:27 +0000 (UTC)
commit c192237678ad42564bfde18535d5a37417df202c
Author: Dariusz Wiechecki (EXT-Comarch) <ext-dariusz 2 wiechecki nokia com>
Date: Thu Feb 18 11:55:55 2010 +0200
tracker-extract: Use artist's value in filename when creating new album art
.../tracker-extract-gstreamer-helix.c | 2 +-
src/tracker-extract/tracker-extract-gstreamer.c | 17 ++++++++++-------
src/tracker-extract/tracker-extract-mp3.c | 6 +++---
3 files changed, 14 insertions(+), 11 deletions(-)
---
diff --git a/src/tracker-extract/tracker-extract-gstreamer-helix.c b/src/tracker-extract/tracker-extract-gstreamer-helix.c
index 3bd99d3..0028873 100644
--- a/src/tracker-extract/tracker-extract-gstreamer-helix.c
+++ b/src/tracker-extract/tracker-extract-gstreamer-helix.c
@@ -842,7 +842,7 @@ tracker_extract_gstreamer_helix (const gchar *uri,
tracker_albumart_process (extractor->album_art_data,
extractor->album_art_size,
NULL,
- /* g_hash_table_lookup (metadata, "Audio:Artist") */ NULL,
+ artist,
album,
uri);
diff --git a/src/tracker-extract/tracker-extract-gstreamer.c b/src/tracker-extract/tracker-extract-gstreamer.c
index 405cb03..9b4e6db 100644
--- a/src/tracker-extract/tracker-extract-gstreamer.c
+++ b/src/tracker-extract/tracker-extract-gstreamer.c
@@ -456,6 +456,7 @@ extract_metadata (MetadataExtractor *extractor,
const gchar *uri,
TrackerSparqlBuilder *preupdate,
TrackerSparqlBuilder *metadata,
+ gchar **artist,
gchar **album,
gchar **scount)
{
@@ -491,12 +492,12 @@ extract_metadata (MetadataExtractor *extractor,
/* General */
if (extractor->mime == EXTRACT_MIME_AUDIO || extractor->mime == EXTRACT_MIME_VIDEO) {
- gchar *performer = NULL, *artist = NULL;
+ gchar *performer = NULL, *artist_local = NULL;
gst_tag_list_get_string (extractor->tagcache, GST_TAG_PERFORMER, &performer);
- gst_tag_list_get_string (extractor->tagcache, GST_TAG_ARTIST, &artist);
+ gst_tag_list_get_string (extractor->tagcache, GST_TAG_ARTIST, &artist_local);
- s = tracker_coalesce (2, performer, artist);
+ s = tracker_coalesce (2, performer, artist_local);
if (s) {
performer_uri = tracker_uri_printf_escaped ("urn:artist:%s", s);
@@ -509,7 +510,7 @@ extract_metadata (MetadataExtractor *extractor,
tracker_sparql_builder_object_unvalidated (preupdate, s);
tracker_sparql_builder_insert_close (preupdate);
- g_free (s);
+ *artist = s;
}
s = NULL;
@@ -1005,7 +1006,7 @@ tracker_extract_gstreamer (const gchar *uri,
ExtractMime type)
{
MetadataExtractor *extractor;
- gchar *album, *scount;
+ gchar *artist, *album, *scount;
g_return_if_fail (uri);
g_return_if_fail (metadata);
@@ -1071,18 +1072,20 @@ tracker_extract_gstreamer (const gchar *uri,
album = NULL;
scount = NULL;
+ artist = NULL;
- extract_metadata (extractor, uri, preupdate, metadata, &album, &scount);
+ extract_metadata (extractor, uri, preupdate, metadata, &artist, &album, &scount);
tracker_albumart_process (extractor->album_art_data,
extractor->album_art_size,
extractor->album_art_mime,
- /* g_hash_table_lookup (metadata, "Audio:Artist") */ NULL,
+ artist,
album,
uri);
g_free (scount);
g_free (album);
+ g_free (artist);
gst_element_set_state (extractor->pipeline, GST_STATE_NULL);
gst_element_get_state (extractor->pipeline, NULL, NULL, TRACKER_EXTRACT_GUARD_TIMEOUT* GST_SECOND);
diff --git a/src/tracker-extract/tracker-extract-mp3.c b/src/tracker-extract/tracker-extract-mp3.c
index aa3cad3..fe9470d 100644
--- a/src/tracker-extract/tracker-extract-mp3.c
+++ b/src/tracker-extract/tracker-extract-mp3.c
@@ -1997,8 +1997,7 @@ extract_mp3 (const gchar *uri,
tracker_sparql_builder_object_unvalidated (preupdate, md.performer);
tracker_sparql_builder_insert_close (preupdate);
-
- g_free (md.performer);
+ /* do not delete artist, needed by albumart */
}
if (md.lyricist) {
@@ -2124,10 +2123,11 @@ extract_mp3 (const gchar *uri,
tracker_albumart_process (md.albumart_data,
md.albumart_size,
md.albumart_mime,
- NULL,
+ md.performer,
md.album,
filename);
+ g_free (md.performer);
g_free (md.album);
g_free (md.title);
g_free (md.albumart_data);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]