Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi winamp status abfragen (https://www.delphipraxis.net/64303-winamp-status-abfragen.html)

easteregg 1. Mär 2006 23:30


winamp status abfragen
 
Hallo,

Ich bin ja noch relativ neu hier, aber leider bin ich im forum selbst zu meinem problem noch nicht fündig geworden.

Ich suche eine Möglichkeit den Aktuellen Winamp Titel auszulesen, dazu vlt. noch die aktuelle spieldauer und wie lang der titel komplett ist.
Das ganze soll periodisch gemacht werden, so das eben auch kurze titel erfasst werden, bzw. wenn ich eben meine lieder durchzappe.

Ich habe jetzt schon ein paar infos gefunden wie man das machen kann -> Winampapi

allerdings sind die ganzen links die ich gefunden haben alle veraltet und mit dem JVCL wo so eine komponente drin war bin ich auch nicht weitergekommen.
weil da irgendwie teile fehlen!

Dann habe ich einen quellcode gefunden, der das auch ohne diese API machen kann - nur überschreitet der bei weitem meine fähigkeiten :)
deswegen wollte ich mal fragen ob mir jemand mal vlt. an einem kurzen codebeispiel da weiterhelfen könnte, bzw. mir mal einer paar tipps zu seiten über die winamp api geben könne.
mit google bzw. auf winamp.com hab ich wenn überhaupt nur sachen für C gefunden, womit ich allerdings gar nichts anfangen kann!

wäre toll wenn mir da jemand behilflich sein könnte!

mfg, easteregg

Luckie 2. Mär 2006 00:02

Re: winamp status abfragen
 
Zitat:

Zitat von easteregg
Ich bin ja noch relativ neu hier, aber leider bin ich im forum selbst zu meinem problem noch nicht fündig geworden.

Das glaube ich nicht. Wenn ich nach Hier im Forum suchenwinamp titel suche, finde ich zum Beispiel das: http://www.delphipraxis.net/internal...t=winamp+titel Da es OpenSource ist, sollte sich da was finden lassen.

easteregg 2. Mär 2006 00:03

Re: winamp status abfragen
 
das war das programm, was mein können überstieg ;)
denn es nützt mir kein code, der zwar irgendwie funktioniert - aber ich keine ahnung hab warum und wieso

Wishmaster 2. Mär 2006 00:22

Re: winamp status abfragen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hi
Ich habe in meine Sammlung ne Demo dazu gefunden feileicht hilft dir das weiter.

easteregg 2. Mär 2006 00:45

Re: winamp status abfragen
 
mir fehlt da allerdings die komponente WinAmpControl, ich werde morgen mal schauen woher ich die bekomme.
danke erstmal für die infos :)

easteregg 2. Mär 2006 17:58

Re: winamp status abfragen
 
also irgendwie, ich habe mir das jetzt mal angeschaut, im forum auch die komponente noch gefunden, aber wenn ich die installieren will sagt der mir einen fehler im quellcode, und auch das programm will sich nicht kompilieren lassen weil eben die komponente nun fehlt?

aber ich glaube doch mal kaum, das die fehler im quellcode enthält?

Rastaman 2. Mär 2006 18:06

Re: winamp status abfragen
 
@Luckie: Das triffts besser ;)

easteregg 2. Mär 2006 18:09

Re: winamp status abfragen
 
das hat ich ja vorhin gefunden, aber wenn ich wie gesagt das in delphi per "komponente installieren" einbinden will, meckert der über fehler im quellcode!

Rastaman 2. Mär 2006 18:20

Re: winamp status abfragen
 
Ne darfste nicht, is keine Komponente.

Einfach
Delphi-Quellcode:
uses
  ..., WinampControl, ...
eintragen und dann selbst erstellen:

Delphi-Quellcode:
var
  WA: TWinampControl;
begin
  WA := TWinampControl.Create;
  Form1.Caption := WA.GetWindowText;
  WA.Destroy;
end;

easteregg 2. Mär 2006 18:41

Re: winamp status abfragen
 
Ich verstehs nicht!

ich hab jetzt erstmal die demo von Wishmaster ausprobieren wollen.
die hab ich entpackt, die winampcontrol.pas mit in das verzeichnis kopiert...


Zitat:

kLASSE twinampcontrol nicht gefunden. Fhler ignorieren und forfahren? ...
das umgeh ich ja indem ich in den uses-teil die winampcontrol mit einfüge!

gesagt getan - so weit, so gut!

wenn ich jetzt auf compilieren drücke meckert der

Zitat:

Fekd Form1.winampcontrol1 besitzt keine entsprechnede Komponente. SOll die Deklaration entfernt werden?
da habe ich erstmal auf nein geklickt und nun findet der in der winampcontrol.pas nen fehler

Delphi-Quellcode:
unit WinAmpControl;

interface

uses
  Windows, Messages, Classes, ShellApi, Registry;

{
  ** Record that obtains the Winamp EQ Data
}
type
  TEQData = packed record
    Enabled, Autoload,
    EQ_60  , EQ_170,
    EQ_310 , EQ_600,
    EQ_1k , EQ_3k,
    EQ_6k , EQ_12k,
    EQ_14k , EQ_16k,
    Preamp : Integer;
end;

type
  TWinAmpControl = class(TComponent)
  private
    const
      WM_WA_IPC            = WM_USER;
      WM_WA_CMD            = WM_COMMAND;
      IPC_DELETE           = 101;
      IPC_IS_PLAYING       = 104;
      IPC_GETOUTPUTTIME    = 105;
      IPC_JUMPTOTIME       = 106;
      IPC_WRITEPLAYLIST    = 120;
      IPC_SETLISTPOS       = 121;
      IPC_SETVOLUME        = 122;
      IPC_SETPANNING       = 123;
      IPC_GETLISTLENGTH    = 124;
      IPC_GETLISTPOS       = 125;
      IPC_GETINFO          = 126;
      IPC_GETEQDATA        = 127;
      IPC_RESTARTWINAMP    = 135;
      IPC_GETPLAYLISTFILE  = 211;
      IPC_GET_SHUFFLE      = 250;
      IPC_GET_REPEAT       = 251;
      IPC_SET_SHUFFLE      = 252;
      IPC_SET_REPEAT       = 253;
      CMD_CLOSE            = 40001;
      CMD_PREVIOUS         = 40044;
      CMD_PLAY             = 40045;
      CMD_PAUSE_RESUME     = 40046;
      CMD_STOP             = 40047;
      CMD_NEXT             = 40048;

    function GetHandle: HWND;
    function GetOutputTime: Integer;
    function GetOutputPos: LongInt;
    function GetPlaylistPos: Integer;
    function GetRepeatState: Integer;
    function GetShuffleState: Integer;
    procedure JumpToTime(pos: LongInt);
    procedure SetPlaylistPos(pos: LongInt);
    procedure SetRepeatState(state: Integer);
    procedure SetShuffleState(state: Integer);

  public
    function Execute(params: String): Integer;
    function GetBitRate: Integer;
    function GetEQData: TEQData;
    function GetFileNameByPlaylistPos(pos: Integer): String;
    function GetPlaybackState: Integer;
    function GetRootFolder: String;
    function GetPlaylistCount: Integer;
    function GetSampleRate: Integer;
    function GetWindowText: String;
    function IsRunning: Boolean;
    function IsStreaming: Boolean;
    procedure ClearPlayList;
    procedure Close;
    procedure Pause_Resume;
    procedure RestartWinamp;
    procedure SavePlaylist;
    procedure SetBalance(pos: Byte);
    procedure SetVolume(vol: Byte);
    procedure StartPlayback;
    procedure StopPlayback;
    procedure SwapRepeatState;
    procedure SwapShuffleState;
    procedure SwitchTrack(direction: Integer);
    procedure Terminate;
    property Handle: HWND read GetHandle;
    property PlaylistPos: Integer read GetPlaylistPos write SetPlaylistPos;
    property RepeatState: Integer read GetRepeatState write SetRepeatState;
    property ShuffleState: Integer read GetShuffleState write SetShuffleState;
    property TrackLength: Integer read GetOutputTime;
    property TrackPos: LongInt read GetOutputPos write JumpToTime;
end;
direkt nach dem "privat" tut der mir die zeile mit dem "const" markieren und sagt dazu "winampcontrol.pas 'end' erwartet, aber 'CONST' gefunden.

aber es kann doch nicht sein, das die nicht funktioniert?

oder bin ich hier total auf dem holzweg?
:cry:


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:48 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz