Rhythmbox:Pythonスクリプトを介してトラックの「評価」フィールドにアクセスするにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/1492849

  •  18-09-2019
  •  | 
  •  

質問

Pythonを介して特定のトラックに関連付けられた評価を取得/設定する機能を希望します。これを達成するにはどうすればよいですか?

役に立ちましたか?

解決

Rhythmbox 'D-Busインターフェイスを使用できます。私は、評価を取得/設定し、通知を表示できる小さなスクリプトを書きました。

スクリプトはこちらです: http://kaizer.se/wiki/code/rhrating.py

Addendum One:私はそれが使い捨てのスクリプトではないときにもっと美しいPythonを書くことを約束します!
補遺2:欠落している使用法文字列はです ./rhrating.py [NEWRATING 0..5]

補遺3:スクリプトをフィルタリングして、ファイルシステムの場所で曲の評価を正確に設定する部分を取り出した場合 uri, 、これです:

import dbus
bus = dbus.Bus()

service_name = "org.gnome.Rhythmbox"
sobj_name = "/org/gnome/Rhythmbox/Shell"
siface_name = "org.gnome.Rhythmbox.Shell"

def set_rating(uri, rating):
    searchobj = bus.get_object(service_name, sobj_name)
    shell = dbus.Interface(searchobj, siface_name)
    shell.setSongProperty(uri, "rating", float(rating))
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top