576b662af433052b309415368c07e0a2d82945b6
[mussorgsky] / tools / ht-album-art.c
1 /*
2  * gcc -o ht-albumart ht-album-art.c `pkg-config --cflags --libs hildon-thumbnail`
3  */ 
4 #include <hildon-albumart-factory.h>
5 #include <hildon-thumbnail-factory.h>
6 #include <glib.h>
7
8 static gchar *artist = NULL;
9 static gchar *album = NULL;
10
11 static GOptionEntry   entries[] = {
12         { "artist", 'a', 0, G_OPTION_ARG_STRING, &artist,
13           "Artist",
14           NULL,
15         },
16         { "album", 'b', 0, G_OPTION_ARG_STRING, &album,
17           "Album",
18           NULL,
19         }
20 };
21
22 gint 
23 main (gint argc, gchar **argv)
24 {
25         gchar          *album_art, *thumbnail;
26         GOptionContext *context;
27
28         g_type_init ();
29
30         context = g_option_context_new ("- Ask image/thum path for album art");
31
32         g_option_context_add_main_entries (context, entries, NULL);
33         g_option_context_parse (context, &argc, &argv, NULL);
34
35
36         if (!album) {
37                 gchar *help;
38
39                 g_printerr ("%s\n\n",
40                             "Album is a mandatory field");
41
42                 help = g_option_context_get_help (context, TRUE, NULL);
43                 g_option_context_free (context);
44                 g_printerr ("%s", help);
45                 g_free (help);
46
47                 return -1;
48         }
49
50         /*
51          * USE NULL for artist!!! (It is what UKMP and media player use!)
52          */
53         album_art = hildon_albumart_get_path (NULL, album, "album");
54         g_print ("album art: %s\n", album_art);
55
56         /*
57          * USE PATH!!! (not uri)
58          */
59         thumbnail = hildon_thumbnail_get_uri (album_art, 124, 124, FALSE);
60         g_print ("thumbnail (using image path): %s\n", thumbnail);
61
62         g_free (album_art);
63         g_free (thumbnail);
64
65         return 0;
66 }