Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > AutoIt
You last visited: Today at 00:41

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



MyCloudPlayer setVolume()

Discussion on MyCloudPlayer setVolume() within the AutoIt forum part of the Coders Den category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Jul 2011
Posts: 2
Received Thanks: 0
MyCloudPlayer setVolume()

Guten Abend
Versuche die Lautstärke unter: zu regulieren.
Klappt temporär:

Code:
    $sInput = _FFXPath('//*[@id="audioPlayer"]')
    _FFObj($sInput, "volume=" & $sVolume)

Beim nächsten Track ist aber alles beim Alten.(setCookie?)
Mit der Firebug-Konsole kann ich die Funktion "setVolume()" ausführen.
Wie lautet denn der Befehl über ff.au3?

Thx
Shy
Shyzo0 is offline  
Old 01/30/2015, 17:54   #2
 
Crossside's Avatar
 
elite*gold: 0
Join Date: Dec 2013
Posts: 2,095
Received Thanks: 506
1) Wieso möchtest du das ganze über Autoit lösen? Die ff.au3 bietet nämlich keinen Javascript Acces oder sonstige Mittel womit du Javascript ausführen kannst (es sei dessen es geht über Url Open, bezweifle es aber).

2) Das ganze wird sehr wahrscheinlich über eine Javascript Variable gelöst sein, das was du aber mit Autoit machst ist das du die Lautstärke im Player-Objekt änderst.
Wenn nun ein neues Lied kommt wird die Lautstärke anhand der Javascript Variable gesetzt, ergo die Lautstärke die zuvor war. Damit du das mit Autoit machen kannst, musst ne Lösung finden wie du die Javascript Variable setzen kannst.. das geht aber über Autoit nur über umwege - wär einfacher wenn du es direkt mit Greasemonkey oder so lösen würdest.

EDIT:
habs mir angeschaut..
Lautstärke wird in der Javascript Variable "VolumeValue" gespeichert.
Du kannst beispielweise in der Firefox Webconsole diese Variable ändern.

Beispiel (Lautstärke auf 0 setzen):
Code:
volumeValue=0;
Wenn du dann ein anderes Lied wählst, wird das was in VolumeValue als Zahl steht als Lautstärke eingestellt. Musst also das auch anpassen damit es klappt.

Die Funktion SetVolume sieht so aus ->

Code:
function setVolume(n)
{
 SCplayer?SCplayer.api_setVolume(n):audioElement&&(audioElement.volume=n/100);
  volumeValue=n;
  setCookie("volumeValue",n,150)
}
Wir halten also fest..

1) Einmal wirds im Player selbst gesetzt ( die Anzeige )
2) Dann wirds noch als Javascript Variable gesetzt (volumeValue)
3) Anschließend wird noch ein Cookie gesetzt (volumeValue) der jeweils nochmal die Lautstärke enthält

p.s: Der Cookie dient nur dazu die Lautstärke Einstellung zu speichern um bei einem erneuten Aufruf der Webseite die Lautstärke wieder zu haben die eingestellt wurde vom jeweiligen Benutzer.



grüße
Crossside is offline  
Old 01/30/2015, 21:11   #3
 
elite*gold: 0
Join Date: Jul 2011
Posts: 2
Received Thanks: 0
habs!
Code:
_FFCmd('FFau3.tmp=content.wrappedJSObject.volumeValue=' & $sVolume & ';')
und hier zum testen:
Code:
#include <GUIConstantsEx.au3>
#include <FF.au3>

Example()

Func Example()

    GUICreate("MySlider", 220, 100, 100, 200)
    GUISetBkColor(0x0f0f0f0f)

    Local $oOpen = GUICtrlCreateButton("MyCloudPlayers",10, 10, 200, 20)
    Local $oPlay = GUICtrlCreateButton("Play / Pause",10, 40, 200, 20)
	Local $oSlider = GUICtrlCreateSlider(12, 70, 196, 20)
    GUICtrlSetLimit(-1, 99, 0)
    GUISetState(@SW_SHOW)
    GUICtrlSetData($oSlider, 45)

    Local $idMsg
    Do
        $idMsg = GUIGetMsg()

        If $idMsg = $oPlay Then
			_FFClick(_FFXPath('/html/body/div[3]/div[6]/div[2]/div[2]/span[1]'))
        EndIf

        If $idMsg = $oOpen Then
			_FFStart("mycloudplayers.com")
        EndIf

		If $idMsg = $oSlider Then
			$sVolume = GUICtrlRead($oSlider)
			$sInput = _FFXPath('//*[@id="audioPlayer"]')
			_FFObj($sInput, "volume=" & $sVolume/100)
            _FFCmd('FFau3.tmp=content.wrappedJSObject.volumeValue=' & $sVolume & ';')
        EndIf
    Until $idMsg = $GUI_EVENT_CLOSE
EndFunc
...aber Danke für die ausführliche Antwort.
greetz
Shy
Shyzo0 is offline  
Reply

Tags
ff.au3, mycloudplayer, setvolume()




All times are GMT +1. The time now is 00:42.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.