aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/xmms2_controls/lib/xmms2_current_file.py
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/xmms2_controls/lib/xmms2_current_file.py')
-rwxr-xr-xscripts/xmms2_controls/lib/xmms2_current_file.py23
1 files changed, 23 insertions, 0 deletions
diff --git a/scripts/xmms2_controls/lib/xmms2_current_file.py b/scripts/xmms2_controls/lib/xmms2_current_file.py
new file mode 100755
index 0000000..c1742ab
--- /dev/null
+++ b/scripts/xmms2_controls/lib/xmms2_current_file.py
@@ -0,0 +1,23 @@
+#!/usr/bin/python
+
+import xmmsclient
+import urllib
+
+def waitval(result):
+ result.wait()
+ return result.value()
+
+def currentfile():
+ client = xmmsclient.XMMS()
+ client.connect()
+ dic = waitval(client.medialib_get_info(
+ waitval(client.playback_current_id())))
+ url = ''
+ if 'url' in dic:
+ url = urllib.unquote_plus(str(dic['url'])).decode('utf8')
+ if url.startswith('file://'):
+ url = url[7:]
+ return url
+
+if __name__ == '__main__':
+ print(currentfile().encode('utf-8'))