Deutsch
Quelltexte/ Codesnippets

Steuerung Winamp

 

Don
Bubu
moin moin,
ich arbeite im mom gerade an einer software für einen multimedia pc und hab dabei eine menge infos zusammen bekommen.
der pc hat eine fernsteuerung mit trackball und eine funk tastatur, beides mit multimedia funtionen aber wie üblich nur wieder bescheidene treiber.
das problem hab ich mit einer genialen software namens keybind von dieser hp gelöst : [...] 
geniale sache ^^
aber nu zu winamp .
diese sachen hab ich aus verscheidenen foren zusammengetragen und für profan 5 angepasst :
als erstes muss winamp gestartet werden, was man sicherlich auch profan machen lassen kann.
anschliessend muss profan das handle von winamp haben.
das geht aber nicht über das normale findwindow, da es manchmal nur das playlist-fenster findet. aber die winapi hat ja alles wat man braucht wa ;)

-------------------------------------------------------
KompilierenMarkierenSeparieren
Declare txt#,winamp&
Dim txt#,255
String txt#,0="Winamp v1.x"
Def FindWindowA(2) ! "user32","FindWindowA"
let winamp&=findwindowa(txt#,0)
dispose txt#
-------------------------------------------------------

um nun winamp zu steuern gibt es 2 arten, einmal mit wm_command (273) und einmal mit wm_user (1024).
bei wm_command sähe das so aus :

-------------------------------------------------------
KompilierenMarkierenSeparieren
sendmessage(winamp&,273,<BEFEHL>,0)
-------------------------------------------------------

bei wm_user so :

-------------------------------------------------------
KompilierenMarkierenSeparieren
sendmessage(winamp&,1024,<PARAMETER>,<BEFEHL>)
-------------------------------------------------------

hier eine liste der wm_command befehle in dec :
KompilierenMarkierenSeparieren
PreviousTrackButton = 40044
NextTrackButton = 40048
PlayButton = 40045
PauseUnpauseButton = 40046
StopButton = 40047
StopAfterCurrentTrack = 40147
FadeoutAndStop = 40157
FastForward5Seconds = 40148
FastRewind5Seconds = 40144
StartOfPlaylist = 40154
GoToEndOfPlaylist = 40158
OpenFileDialog = 40029
OpenUrlDialog = 40155
OpenFileInfoBox = 40188
SetTimeDisplayModeToElapsed = 40037
SetTimeDisplayModeToRemaining = 40038
TogglePreferencesScreen = 40012
OpenVisualizationOptions = 40190
OpenVisualizationPlugInOptions = 40191
ExecuteCurrentVisualizationPlugIn = 40192
ToggleAboutBox = 40041
ToggleTitleAutoscrolling = 40189
ToggleAlwaysOnTop = 40019
ToggleWindowshade = 40064
TogglePlaylistWindowshade = 40266
ToggleDoublesizeMode = 40165
ToggleEq = 40036
TogglePlaylistEditor = 40040
ToggleMainWindowVisible = 40258
ToggleMinibrowser = 40298
ToggleEasymove = 40186
RaiseVolumeBy1Perc = 40058
LowerVolumeBy1Perc = 40059
ToggleRepeat = 40022
ToggleShuffle = 40023
OpenJumpToTimeDialog = 40193
OpenJumpToFileDialog = 40194
OpenSkinSelector = 40219
ConfigureCurrentVisualizationPlugIn = 40221
ReloadTheCurrentSkin = 40291
CloseWinamp = 40001
MovesBack10TracksInPlaylist = 40197
ShowTheEditBookmarks = 40320
AddsCurrentTrackAsABookmark = 40321
PlayAudioCd = 40323
LoadAPresetFromEq = 40253
SaveAPresetToEqf = 40254
OpensLoadPresetsDialog = 40172
OpensAutoLoadPresetsDialog = 40173
LoadDefaultPreset = 40174
OpensSavePresetDialog = 40175
OpensAutoLoadSavePreset = 40176
OpensDeletePresetDialog = 40178
OpensDeleteAnAutoLoadPresetDialog = 40180

und hier die liste der wm_user befehle, wobei für befehle ohne parameter
eine 0 eingesetzt werden sollte :
KompilierenMarkierenSeparieren
0       Auslesen der Winampversion - damit kann man gut feststellen, dass Winamp läuft
100     Startet die Wiedergabe. Ähnlich wie "Play" aber nicht das selbe
101     Playlist löschen
102     Ausgewählten Track abspielen
103     Winamp zum Verzeichnis C:Download wechseln
104     Abspielstatus. Bei Wiedergabe wird 1 zurückgegeben, bei Pause 3.
Ansonsten ist die Wiedergabe gestoppt.
105     Mit Parameter 0 wird die Wiedergabeposition in ms zurückgegeben, bei Parameter 1
die aktuelle Track-Länge in Sekunden. Bei keiner Wiedergabe oder einem Fehler
wird -1 zurückgegeben.
106     Springt zur im Parameter in ms angegebenen Trackposition
120     Schreibt die aktuelle Playlist ins Winampverzeichnis (winamp.m3u)
und gibt die aktuelle Playlistposition zurück
121     Springt zum im Parameter angegebenen Track. Beginnt bei 0, Parameter=Tracknr-1 ruft
also den korrekten Track auf
122     Mit dem Parameter kann man die Lautstärke von 0-255 einstellen. Verwendet man als
Parameter -666 wird die aktuell eingestellte Lautstärke zurückgegeben.
123     Mit dem Parameter kann man die Balance von 0 (links) bis 255 (rechts) eingeben
124     Gibt Anzahl der Tracks in der aktuellen Playlist aus
125     Gibt die aktuell abgespielte Tracknummer der Playlist aus (ab Winamp 2.05).
126     Gibt bei Parameter 0 die Samplerate, bei 1 die Bitrate und bei 2
die Anzahl der Channel zurück (ab Winamp 2.0.5).
127     Liest die Equalizer-Einstellungen aus. Parameter 0-9 gibt die Einstellung der
Kanäle von 1-10 zurück (0-63, +20db - -20db). Parameter 10 gibt die
Vorverstärker-Einstellung zurück (0-63, +20db - -20db), Parameter 11 gibt 0 zurück,
wenn der Equalizer deaktiviert ist - ansonsten ungleich 0.
128     Autoload. Bei 0 = disabled, ungleich 0 = enabled.
129     Fügt die ausgewählte Datei der Winamp Bookmarkliste hinzu
135     Startet Winamp neu

dazu gleich ein beispiel wie ich die aktuelle datei, die winamp gerade abspielt, herrausbekomme:
-------------------------------------------------------
KompilierenMarkierenSeparieren
declare winamp&,ok%,a%,txt#,a$,st%
dim txt#,255
string txt#,0="Winamp v1.x"
Def findwindowa(2) ! "user32","FindWindowA"
let winamp&=findwindowa(txt#,0)
dispose txt#
let a%=@sendmessage(winamp&,1024,0,120)
assign #1,"G:AnwendungWinampWINAMP.m3u" diese angaben müssen natürlich angepasst werden
reset #1

whilenot ok%

    input #1,a$

    ifnot equ$(mid$(a$,1,1),"#")

        inc st%

        if gt(st%,a%)

            let ok%=1

        endif

    endif

wend

close #1
-------------------------------------------------------

so ich hoffe das einige damit was anfangen können und mit einem dicken danke an alle in diesem forum und in dem profan.de forum, die mir bei diesen sachen geholfen haben,
also bis denne wa ;)
 
29.09.2005  
 



Wow! Sehr nette Sache!

Salve!
 
29.09.2005  
 



Zum Quelltext


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

3.412 Betrachtungen

Unbenanntvor 0 min.
Peter Max Müller12.10.2013
Profanet25.10.2011
Marcus Mayer23.02.2011

Themeninformationen

Dieses Thema hat 2 Teilnehmer:

iF (1x)
Don Bubu (1x)


Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie