Re: [Tracker] Getting all files from tracker
- From: Jamie McCracken <jamiemcc blueyonder co uk>
- To: doclivingston gmail com
- Cc: tracker-list gnome org
- Subject: Re: [Tracker] Getting all files from tracker
- Date: Sun, 22 Oct 2006 13:04:25 +0100
James "Doc" Livingston wrote:
I've been playing around with Tracker the last few days, and had a
couple of issues:
First, tracker.pc has "-lmetatracker" in it, but that doesn't exist. it
should probably be "-ltrackerclient".
this was fixed yesterday in CVS (noticed this when Nautilus would not
build with it)
Second, what would be the best way of asking Tracker for all the music
files? Calling tracker_search_text() with the search string being NULL
or "" doesn't work, and complains about the lack of search terms.
In tracker, "Music" is a first class object/service so you can get all
music files very efficiently by calling GetByServiceType in the Files
interface in Dbus or use the equivalent api call in libtrackerclient.
You can already see the output (and sample source) for this by using the
tracker-files command line tool :
tracker-files -s Music
will show the first 512 music files on your system.
I've also tried tracker_search_query() with field, search, keyword and
query being NULL, but I when I do that it segfaults somewhere around the
dbus call. Unfortunately I haven't managed to get a useful backtrace
yes thats right - tracker-query must have one of keywords, search or
query set or it will fail (I should make sure this returns an error
rather than crashing)
If you want to use the query facility you can also specify Music as the
service parameter here to only query music files (and same for all other
methdos that take a service parameter)
Hope that helps - it will be cool to get this into rhythmbox to help
dispel some of the myths/FUD being propogated on d-d-l wrt tracker's
inclusion in GNOME.
Also once I have the Music dbus interface completed and HAL/Live query
support going it would be great if Rhythmbox could auto-detect tracker
and use it automatically if its installed for its main database (should
be a lot faster than an xml database when number of music files is
large) - you can use Dbus directly to manipulate tracker so there's no
need to link to or have hard dependencies on tracker.
Mr Jamie McCracken
] [Thread Prev