AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Bass v 2.4 Wav Mehrfach abspielen
Thema durchsuchen
Ansicht
Themen-Optionen

Bass v 2.4 Wav Mehrfach abspielen

Ein Thema von Corpsman · begonnen am 14. Okt 2010 · letzter Beitrag vom 15. Okt 2010
 
Benutzerbild von Corpsman
Corpsman

Registriert seit: 8. Nov 2005
Ort: nähe Stuttgart
981 Beiträge
 
Delphi XE2 Professional
 
#1

Bass v 2.4 Wav Mehrfach abspielen

  Alt 14. Okt 2010, 12:58
Ich entwickle zwar unter Lazarus, aber das Problem dürfte auf Delphi übertragbar sein .

Mein Problem ist nun, dass ich mit der neuen Bass.dll eine Wav mehrfach abspielen möchte.

Laden funktioniert ( Handle wird gespeichert )

Das Abspielen funktioniert genau 1 mal

Wenn ich danach wieder auf den Button Klicke passiert nichts mehr

Was ist beim neuen Bass.dll anders als beim Alten ?

Könnt ihr mir weiter helfen ?

Im Anhang der Lazarus source ( müsste recht einfach nach Delphi portierbar sein ..)

Edit :

Also hier noch mal die Relevanten Source Stellen :
Delphi-Quellcode:

Procedure TForm1.LoadSound(Value: String; index: integer);
Begin
  If fileexists(Value) Then
    Sounds[Index] := BASS_StreamCreateFile(False, PChar(value), 0, 0, BASS_SAMPLE_FX)
  Else
    showmessage('Soundmanager : Could not find :' + Value);
End;

Procedure TForm1.FormCreate(Sender: TObject);
Begin
  Soundpath := IncludeTrailingPathDelimiter(ExtractFilePath(paramstr(0)));
  setlength(sounds, 1);
  // Check if the Library Version is, correkt.
  If (BASS_GetVersion() Shr 16) <> Bassversion Then Begin
    Showmessage('Unable to init the Bass Library ver. :' + BASSVERSIONTEXT);
    halt;
  End;
  // Bass.dll initialisieren
  // Finitialized := BASS_Init(-1, 44100, 0, h_Wnd, Nil);
  If Not Bass_init(-1, 44100, BASS_DEVIDE_DMIX, 0, Nil) Then Begin
    Showmessage('Unable to init the device.');
    halt;
  End;
  LoadSound(Soundpath + 'Menu_click.wav', 0);
End;


Procedure TForm1.Button1Click(Sender: TObject);
Begin
  // BASS_ChannelStop(Sounds[0]);
  If Not BASS_ChannelPlay(Sounds[0], true) Then Begin
    showmessage('Unable to play.');
  End;
End;
Die MessageBox kommt nie, d.h. Bass Ansich hat wohl kein Problem mit dem Mehrfachen abspielen, auch wenn man nichts hört
Angehängte Dateien
Dateityp: zip bassproblem.zip (15,1 KB, 12x aufgerufen)
Uwe
My Sitewww.Corpsman.de

My marble madness clone Balanced ( ca. 70,0 mb ) aktuell ver 2.01

Geändert von Corpsman (14. Okt 2010 um 16:59 Uhr) Grund: Erweiterung um Source
  Mit Zitat antworten Zitat
 


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 00:14 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz