2012-05-13 6 views
1

私はMPRISベースのメディアプレーヤー用の一般的なリモートコントロールアプリケーションを作成しようとしています。メディアプレーヤーをコントロールするのは簡単ですが、D-BusとDBus-GLibの新機能として、D-Busから値を取得するのはちょっと難解です。私は私が私のプレイヤーが実際に何かを再生しているかどうかを知りたい場合はPlaybackStatusプロパティを取得する必要があることがわかりドキュメンテーションからD-Busプロパティの値を取得するにはどうすればよいですか?

、私はC.

現在

でこの値を取得するための作業例を見つけることができませんそれはこのようになります取得する行:org.mpris.MediaPlayer2.Playerインタフェースは、GETメソッドを理解していないよう

dbus_g_proxy_call(player_proxy, "Get", &err, G_TYPE_STRING, "Volume", G_TYPE_INVALID, G_TYPE_INT, &volume, G_TYPE_INVALID); 

確かに、それは、動作しません。

答えて

0

this source codeを調べた後、hx_dbus_player_is_playingのように"IsPlaying"を使用する必要があるようです。

1

org.mpris.MediaPlayer2.PlayerインターフェイスがGetメソッドを認識しないため、確かに動作しません。

これは必要な手掛かりです。 Getメソッドは実際にはorg.freedesktop.DBus.Properties interfaceにあるので、player_proxyオブジェクト(おそらくorg.mpris.MediaPlayer2.Playerインターフェイスのプロキシです)ではなく、そのインターフェイスのプロキシオブジェクトで呼び出す必要があります。

関連する問題