Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   BassPlayerEx bzw. Winamp Visualisierungsplugins (https://www.delphipraxis.net/67251-bassplayerex-bzw-winamp-visualisierungsplugins.html)

omata 11. Apr 2006 21:35


BassPlayerEx bzw. Winamp Visualisierungsplugins
 
Liste der Anhänge anzeigen (Anzahl: 5)
So, es gibt neue Versionen vom BassPlayerEx...

mit erweiterten Soundeffekten (eine Soundkarte)
für mehrere Soundkarten (keine Spezielfunk.)

Der BassPlayerEx kann jetzt auch Winamp-Plugins einbinden. Dazu müssen die Dlls in einem Verzeichnis (Plugins) liegen, dass im selben Verzeichnis liegt, wie die Bassplayeranwendung.

Die Visualisierungen, die vorher in der EXE einkombiliert waren sind jetzt hier auch als Plugins zubekommen.

Diese Plugins funktionieren auch im Winamp.

Viele Grüsse
Thorsten

100nF 16. Apr 2006 09:11

Re: BassPlayerEx bzw. Winamp Visualisierungsplugins
 
hallo omata,

ist denn das einbinden jetzt genau gleich wie vorher?
also etwa so:
Delphi-Quellcode:
var
  vis: TFrameVisTurboPascal;

//...

Vis := TFrameVisTurboPascal.create(self);

//...

vis.Paint(ActiveChannel, image321);

//...

vis.free;
oder geht das jetzt anders?

gruss
urbanbruhin

omata 17. Apr 2006 18:47

Re: BassPlayerEx bzw. Winamp Visualisierungsplugins
 
Hallo urbanbruhin,

das Einbinden erfolgt, indem man eine Dll in das Plugin-Verzeichnis kopiert und diese dann im Player auswählt. Das ist also so wie z.B. bei Winamp.
Wie die Dll aufgebaut sein muss, dafür habe ich die Beispiele gemacht. Alle Visnualisierungen, die vorher in der EXE waren sind jetzt in Pluginform als Dll + Source hier zu finden.

Also schau dir einfach mal die Beispiele an.

MfG
Thorsten

100nF 20. Aug 2006 08:04

Re: BassPlayerEx bzw. Winamp Visualisierungsplugins
 
hallo omata,

also ich habe jetzt sehr lange herumprobiert, doch ich kriege es einfach nicht hin, die plugins einzubinden. :wall:
ich habe jetzt ein Programm, das den TBassPlayerEx verwendet.
nun muss ich ja eine combobox reinsetzen, damit man ein plugin wählen kann.
aber was muss ich im code verändern, damit das funktioniert?

könntest du vielleicht alle code-teile mal einzeln posten, also was z.B. ins FormCreate rein kommt, oder ins FormClose usw.

Gruss
urbanbruhin

omata 20. Aug 2006 19:11

Re: BassPlayerEx bzw. Winamp Visualisierungsplugins
 
Hallo urbanbruhin,

das geht (mit deiner jetzigen Version) minimal so...
Delphi-Quellcode:
uses ... BassPlayerExU, BassChannelU ...
:
  private
    FBassPlayerEx:TBassPlayerEx;
:
procedure TForm.FormCreate(Sender: TObject);
var BassChannel:TBassChannel;
begin
  FBassPlayerEx:=TBassPlayerEx.Create(1, Self);
  BassChannel:=FBassPlayerEx.addChannel(100);
  BassChannel.LoadFromFile('Lied.mp3');
  BassChannel.Play;
end;

procedure TForm.FormDestroy(Sender: TObject);
begin
  FBassPlayerEx.free;
end;

procedure TForm.ButtonClick(Sender: TObject);
begin
  FBassPlayerEx.ShowVisControlForm;
end;
Mit ShowVisControlForm wird das Kontrollfenster für die Visualisierungen geöffnet. Die Plugins müssen in einem Ordner Plugins der im Programmverzeichnis liegen muss, liegen.

Ich habe gerade eine neue Version hochgeladen, jetzt kannst du auch ohne VisControlForm Plugins laden...
Delphi-Quellcode:
procedure TForm.ButtonRunClick(Sender: TObject);
begin
  FBassPlayerEx.RunVisPlugin('vis_dizzy.dll', 0);
end;

procedure TForm.ButtonQuitClick(Sender: TObject);
begin
  FBassPlayerEx.QuitVisPlugin;
end;
Gruss
Thorsten

100nF 20. Aug 2006 21:14

Re: BassPlayerEx bzw. Winamp Visualisierungsplugins
 
Hallo omata,

Vielen Dank!! :bounce1:

aber zwei fragen habe ich noch:
wenn ich mit RunVisPlugin ein Plugin lade, und später ein anderes laden will, muss ich dann zuerst QuitVisPlugin und dann RunVisPlugin aufrufen, oder genügt es, immer RunVisPlugin zu verwenden und beim beenden des programmes QuitVisPlugin aufzurufen?

und die zweite frage:
wie kann ich jetzt auf die einstellungen der visualisierungen zugreifen (verändern), ohne das einstellungs-fenster aufzurufen?

Gruss
urbanbruhin

omata 20. Aug 2006 22:11

Re: BassPlayerEx bzw. Winamp Visualisierungsplugins
 
Hallo urbanbruhin,

RunVisPlugin schliesst eine geöffnete Visualisierung bevor eine neue geöffnet wird. Es geht also durchaus einfach nur RunVisPlugin zu benutzen.
QuitVisPlugin schliesst und entlädt die aktuelle Visualisierung. Wenn man eine Visualisierung nur wegklickt und sie nicht mehr sieht, läuft sie einfach weiter und verbraucht CPU-Zeit.
Beim Beenden des Programms wird eine geöffnete Visualisierung geschlossen. Du kannst aber brauchst nicht an das Schliessen zu denken, das übernimmt alles der BassPlayerEx.

Das ganze ist also sehr flexible. Trotzdem kann es zu Problemen kommen und das Programm mit einer Fehlermeldung abstürzen. Es scheint an den Visualisierungen zu liegen. Wie sauber die programmiert wurden.

Auf die Einstellungen der Plugins kann zur Zeit nur über das Kontrollfenster zu gegriffen werden. Da muss ich noch ein bißchen drüber nachdenken, wie da eine geeignete Struktur aussehen kann.

Gruss
Thorsten

100nF 21. Aug 2006 17:00

Re: BassPlayerEx bzw. Winamp Visualisierungsplugins
 
Hi,

ein kleines problem habe ich jetzt noch...

ich will für die visualisierung mein eigenes TImage32 verwenden.
aber wo muss ich den namen des TImage32 angeben, in dem die visualisierung erscheinen soll?

gruss
urbanbruhin

omata 21. Aug 2006 17:13

Re: BassPlayerEx bzw. Winamp Visualisierungsplugins
 
Hallo urbanbruhin,

ich verstehe deine Frage nicht so ganz. In den beiden Beispielen VisDizzy und VisCappellozza benutze ich doch auch TImage32. Hast du dir das mal angesehen?

Gruss
Thorsten

100nF 21. Aug 2006 17:20

Re: BassPlayerEx bzw. Winamp Visualisierungsplugins
 
Hi,

also wenn ich jetzt RunVisPlugin() ausführe, erscheint die visualisierung entweder in einem neuen fenster, oder einfach vollbild.

ich will aber die visualisierung auf dem formular meines programmes haben. wie mache ich das?

irgendwie blick ich da nicht so ganz durch... :shock:

EDIT: und übrigens ist ja bei den beiden Beispielen VisDizzy und VisCappellozza gar keine DLL vorhanden :gruebel:

gruss
urbanbruhin


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:05 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