Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi bass.dll und fadeout Problem (https://www.delphipraxis.net/74914-bass-dll-und-fadeout-problem.html)

Mazel 10. Aug 2006 19:05


bass.dll und fadeout Problem
 
Hallo,

ich arbeite mit der Bass.dll und möchte, dass jeder Titel ein bzw. ausgeblendet wird. Das einblenden stellt nicht das Problem dar, da ich das immer bei einem neuen Titel setzte:
Delphi-Quellcode:
Channel:=BASS_StreamCreateFile(False, PCharFileName, 0, 0, BASS_STREAM_DECODE or floatable);
BASS_ChannelSetAttributes(Channel, -1, 0, -101);
BASS_ChannelSlideAttributes(Channel, -1, Volume, -101, Interval);
Wie und wo muss ich das für das Ausblenden machen? Es wird der Titel immer sofort gestoppt. Ich weis nicht so richtig wie ich das machen soll den auch wenn ich beispielsweise auf Pause klicke soll dies funktionieren, nur durch BASS_PAUSE() geht das auch nicht, auch dort wird der Titel sofort gestoppt.

Gruß
Mazel

omata 10. Aug 2006 19:15

Re: bass.dll und fadeout Problem
 
Schau dir doch mal mein Beispiel an.

Gruss
Thorsten

Gausi 10. Aug 2006 19:16

Re: bass.dll und fadeout Problem
 
Wie ich kürzlich bereits sagte, geht das einfach mit
Delphi-Quellcode:
// Flag setzen, damit das Handle beim Beenden automatisch freigegeben wird
BASS_ChannelSetFlags(channel, BASS_STREAM_AUTOFREE);
//Aktuellen Stream ausblenden.
// -2 steht dabei für Lautstärke auf 0 und stoppen
// -1 und -101 lassen Balance und Samplerate (glaube ich) unverändert
BASS_ChannelSlideAttributes(channel,-1,-2,-101,FadingInterval)
Wenn man das im Stop- oder Pause-Button reinsetzt, dann hat man das Fade-Out. Bei Pause solltest du aber das AutoFree nicht setzen, damit der Channel nicht freigegeben wird. Dann kann man bei erneutem Klick den Channel an der Stelle wieder einfaden.

Was mich bei dir allerdings etwas stutzig macht, ist der BASS_STREAM_DECODE-Flag.

Mazel 10. Aug 2006 19:36

Re: bass.dll und fadeout Problem
 
Danke,

das funktioniert schon recht gut. Muss es jetzt nur noch komfortabler machen.

Gruß
Mazel


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:40 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-2025 by Thomas Breitkreuz