AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi wie gibt man mit bassdllplayer-Kompo ein lied frei?

wie gibt man mit bassdllplayer-Kompo ein lied frei?

Ein Thema von padavan · begonnen am 28. Nov 2005 · letzter Beitrag vom 7. Dez 2005
Antwort Antwort
padavan

Registriert seit: 12. Jan 2005
271 Beiträge
 
Delphi 7 Enterprise
 
#1

wie gibt man mit bassdllplayer-Kompo ein lied frei?

  Alt 28. Nov 2005, 15:25
Hallo Leute,
ich mal wieder mit der Bassdllplayer - Komponente.

so spiele ich ein Lied mit Bassdllplayer ab:

Delphi-Quellcode:
bassdllplayer1.loadfromfile(irgendein Song);
bassdllplayer1.play;
wenn ich nach Liedende einen neuen Titel in den Bassdllplayer lade mach ich das nochmal genauso.

Delphi-Quellcode:
bassdllplayer1.loadfromfile(nächster Song);
bassdllplayer1.play;
Allerdings fehlt mir da scheinbar noch ein Schritt, denn Lieder, welche schon einmal gespielt wurden (in dem Fall 'irgendein Song' und 'nächster Song'), werden auf Betriebssystemebene erst wieder freigegeben (z.B. Löschen) wenn das Programm ganz beendet wird.
Was mach ich da falsch?

Danke schonmal
  Mit Zitat antworten Zitat
Benutzerbild von JWeis
JWeis

Registriert seit: 23. Aug 2005
Ort: Homburg
274 Beiträge
 
Delphi 7 Professional
 
#2

Re: wie gibt man mit bassdllplayer-Kompo ein lied frei?

  Alt 28. Nov 2005, 15:39
spontane idee: bassdllplayer1.stop ich weiß es aber nicht.
Johannes
Der Pfad der Gerechten ist zu beiden Seiten gesäumt mit Freveleien der Selbstsüchtigen und der Tyrannei böser Männer. Gesegnet sei der, der im Namen der Barmherzigkeit und des guten Willens die Schwachen durch das Tal der Dunkelheit geleitet.
  Mit Zitat antworten Zitat
padavan

Registriert seit: 12. Jan 2005
271 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: wie gibt man mit bassdllplayer-Kompo ein lied frei?

  Alt 28. Nov 2005, 16:28
ne, leider nicht.
Das hatte ich schon versucht.
Trotzdem danke

Dieses führt zwar zum gewünschten Erfolg, danach funzt aber gar nicht´s mehr, oder besser, ich weiß nicht wie.
Delphi-Quellcode:
Bassdllplayer1.free;
bassdllplayer1.destroy;
ach so: ich mein das gleiche was man vergleichsweise hiermit erreicht:
Mediaplayer1.close;
  Mit Zitat antworten Zitat
Benutzerbild von turboPASCAL
turboPASCAL

Registriert seit: 8. Mai 2005
Ort: Sondershausen
4.274 Beiträge
 
Delphi 6 Personal
 
#4

Re: wie gibt man mit bassdllplayer-Kompo ein lied frei?

  Alt 29. Nov 2005, 16:15
Hm, ja stimmt. Ich schaue mal nach.

// Edit:

Das ist ein Problem der Bass.dll, auch in der Version 2.2. Die Resourcen also zB. die geladene Datei wird erst nach dem Aufruf von Bass_Free; freigegeben.
Da kann ich an dem TBassDLLPlayer nichts ändern.
Matti
Meine Software-Projekte - Homepage - Grüße vom Rüsselmops -Mops Mopser
  Mit Zitat antworten Zitat
padavan

Registriert seit: 12. Jan 2005
271 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: wie gibt man mit bassdllplayer-Kompo ein lied frei?

  Alt 1. Dez 2005, 12:05
könnte man das Problem irgenwie umgehen?
Dazu weiß ich zu wenig über diese Thema, aber so in der Art

1. Spiele Lied mit Bass ab

2. BassDllplayer1.free oder Bassdllplayer1.destroy

3. Jetzt irgendwie createn oder sonst wie - da fehlt mir das Wissen

4. nächstes Lied mit Bass spielen


Soviel hab ich schon ausprobiert, Bassdllplayer1.free und Bassdllplayer1.destroy lösen die Verbindung zur gespielten Datei.

Padavan
  Mit Zitat antworten Zitat
Benutzerbild von turboPASCAL
turboPASCAL

Registriert seit: 8. Mai 2005
Ort: Sondershausen
4.274 Beiträge
 
Delphi 6 Personal
 
#6

Re: wie gibt man mit bassdllplayer-Kompo ein lied frei?

  Alt 1. Dez 2005, 15:32
Delphi-Quellcode:
var MyPlayer: TBassDLLPlayer;
...

MyPlayer := TBassDLLPlayer.Create(Self);
MyPlayer.LoadFromFile(...);
MyPlayer.Play;
...
MyPlayer.Free;
So kannst du den BassDLLPlayer dyn. erstellen, nat. ohne die Komponente auf der Form, sonst gibts n'en Fehler.

Das müsstest du aber bei jedem Song so machen. Empfehlen würde ich das aber nicht, da ich k.A. habe wie sich das auf die Speicher-u.Cpuauslastung auswirkt.
Matti
Meine Software-Projekte - Homepage - Grüße vom Rüsselmops -Mops Mopser
  Mit Zitat antworten Zitat
padavan

Registriert seit: 12. Jan 2005
271 Beiträge
 
Delphi 7 Enterprise
 
#7

Re: wie gibt man mit bassdllplayer-Kompo ein lied frei?

  Alt 2. Dez 2005, 06:25
Moin turboPascal,

was hälst du davon?
Ich habe mit einem 933MHz - Rechner im Taskmanager nichts auffälliges entdeckt....

Gruß
Padavan
Angehängte Dateien
Dateityp: zip basstest_217.zip (320,6 KB, 15x aufgerufen)
  Mit Zitat antworten Zitat
padavan

Registriert seit: 12. Jan 2005
271 Beiträge
 
Delphi 7 Enterprise
 
#8

Re: wie gibt man mit bassdllplayer-Kompo ein lied frei?

  Alt 7. Dez 2005, 13:43
Also ich hab mich tatsächlich mal dran gemacht und mein Programm diespezüglich modifiziert.
Soweit klappt auch das meiste recht gut, aber es gibt Zustände im meinem Programm, bei denen (aufgrund nicht gradliniger Programmierung )
nicht einfandfrei klar ist, ob die Komponente Bassplayer nun gerade "free" oder "created" ist.
Wenn man die doppelt "create n" oder "free en" will krachts - is klar.

Meine Frage nun, wie bekomme ich das ordentlich raus?

if Bassplayer = "free"
//oder
if Bassplayer = "created"

Na so in der Art halt.


Danke schonmal
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:14 Uhr.
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