1 diff --git plugins/lyrics/lyrics.py plugins/lyrics/lyrics.py
\r
2 index 13124b3..6bff657 100644
\r
3 --- plugins/lyrics/lyrics.py
\r
4 +++ plugins/lyrics/lyrics.py
\r
5 @@ -32,6 +32,7 @@ import urllib.request
\r
7 from gi.repository import Gtk, Gio, GObject, Peas
\r
8 from gi.repository import RB
\r
9 +from gi.repository import Gst, GstPbutils
\r
12 from LyricsConfigureDialog import LyricsConfigureDialog
\r
13 @@ -146,6 +147,29 @@ class LyricGrabber(object):
\r
14 def search_lyrics(self, callback, cache_only=False):
\r
15 self.callback = callback
\r
17 + #location = self.entry.get_string(RB.RhythmDBPropType.MOUNTPOINT)
\r
18 + location = self.entry.get_playback_uri()
\r
19 + print("discovering %s" % location)
\r
20 + self.discoverer = GstPbutils.Discoverer(timeout=Gst.SECOND*1)
\r
21 + info = self.discoverer.discover_uri(location)
\r
22 + tags = info.get_tags()
\r
24 + if tags is not None:
\r
25 + def fetags (list, tag):
\r
26 + print("tag: %s" % tag)
\r
27 + tags.foreach(fetags)
\r
28 + (found, text) = tags.get_string_index('lyrics', 0)
\r
29 + (found, text) = tags.get_string_index('extended-comment', 0)
\r
31 + print("found lyrics tag:\n%s" % text)
\r
32 + self.callback(text)
\r
35 + print("no lyrics tag found")
\r
37 + print("no tags found")
\r
40 status = self.verify_lyric()
\r