Page 1 of 4

intergration with gnome-shell

Posted: Sun Jun 19, 2011 11:23 pm
by bmbaker
Hi Anon :-)
as always still loving the way Guayadeque is progressing a truly great job, I think its probably the best music player I have ever used :-)
I have a technical question for you in regard to how guayadeque interacts with the new gnome-shell in ubuntu 11.04, I am using the lastest Guayadeque from SVN.
There is this great media extension made by Freddy https://github.com/Caccc/Gnome-shell-ex ... iasplayers
which wks great with Guaya' until you try to adjust the volume in the extension, which causes Guayadeque to crash/disappear, I am unsure if this is an Ubuntu-gnome-guayadeque issue?
Freddy made this comment, https://github.com/Caccc/Gnome-shell-ex ... s/issues/3
which in a nutshell he thinks its something todo with "MDPRIS" implementation. Could you help by pointing me in the right direction on this please :-)
big thanks BB

intergration with gnome-shell

Posted: Mon Jun 20, 2011 12:00 am
by anonbeat
I already investigated this problem for a friend who tried to use it and seems the extension is sending the volume as a int when it should be double.
See this
http://www.mpris.org/2.1/spec/Player_No ... rty:Volume

method call sender=:1.150 -> dest=org.mpris.MediaPlayer2.guayadeque serial=427 path=/org/mpris/MediaPlayer2; interface=org.freedesktop.DBus.Properties; member=Set
string "org.mpris.MediaPlayer2.Player"
string "Volume"
variant int32 1

This should be 'variant double 1'

Thanks for your help

intergration with gnome-shell

Posted: Mon Jun 20, 2011 1:38 am
by bmbaker
wow ! great, thanks for the fast response :-)
just so we are on the same page, the volume control is active in the extension, so it reflects the Guayadeque volume setting, if you try to adjust the volume in the extension itself, that is when it crashes. you adjust the volume in guayadeque and it changes in the extension, but not the other way round.
cheers :-)
I was just looking at the mpris stuff and the extension.js to see what would need to be changed, and with newly acquired skils i have to i am a bit lost !
but very willing to learn :-)

intergration with gnome-shell

Posted: Mon Jun 20, 2011 1:56 am
by anonbeat
I dont know exactly what needs to be changed in the script but what is needed is that this script send the volume property as a double as the specification says instead of a int32.

I guess it must be changed here

setVolume: function(value) {
this.SetRemote('Volume', value);
},

intergration with gnome-shell

Posted: Mon Jun 20, 2011 2:09 am
by bmbaker
hmmm, there is also this too:-

_updateVolume: function() {
this._mediaServer.getVolume(Lang.bind(this,
function(sender, volume) {
global.log(this._volume_text);
this._volume_text.setIcon = "audio-volume-low";
if (volume > 0.30) {
this._volume_text.setIcon = "audio-volume-medium";
}
if (volume > 0.70) {
this._volume_text.setIcon = "audio-volume-high";
}
this._volume.setValue(volume);
}

nah ya! alot info !!

intergration with gnome-shell

Posted: Mon Jun 20, 2011 2:10 am
by anonbeat
I guess this last is to update the volume control in the script.

intergration with gnome-shell

Posted: Mon Jun 20, 2011 2:20 am
by bmbaker
ya i was just playing with it and i don't know enough to change it!
where did you find this?

"method call sender=:1.150 -> dest=org.mpris.MediaPlayer2.guayadeque serial=427 path=/org/mpris/MediaPlayer2; interface=org.freedesktop.DBus.Properties; member=Set
string "org.mpris.MediaPlayer2.Player"
string "Volume"
variant int32 1"

intergration with gnome-shell

Posted: Mon Jun 20, 2011 2:24 am
by anonbeat
do dbus-monitor in a console while change the volume.

I want to tell that I was given that information. I dont have gnome-shell installed so I couldnt test it myself.

intergration with gnome-shell

Posted: Mon Jun 20, 2011 2:46 am
by bmbaker
ya i thought i would try that and see what came up :-)
if you have the time i email you the dbus output when i changed the volume!
for some reason it won't allow me to attach a text file :-(

intergration with gnome-shell

Posted: Mon Jun 20, 2011 2:56 am
by bmbaker
this is what i got :-
method call sender=:1.75 -> dest=org.mpris.MediaPlayer2.guayadeque serial=703 path=/org/mpris/MediaPlayer2; interface=org.freedesktop.DBus.Properties; member=Set
string "org.mpris.MediaPlayer2.Player"
string "Volume"
variant double 0.68
signal sender=org.freedesktop.DBus -> dest=(null destination) serial=124 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameOwnerChanged
string ":1.117"
string ":1.117"
string ""