![]() |
Re: LoopFunktion
Ni Nils_13,
was kommt denn bei dieser Abfrage raus?
Delphi-Quellcode:
du solltest mal ueberlegen anstatt immer nur Copy'n'Waste zu betreiben :roll:
if BASS_ChannelIsActive(Channel) = BASS_ACTIVE_PLAYING then
Greetz alcaeus [add]wieder schneller :tongue:[/add] |
Re: LoopFunktion
der linken Seite kann ja auch nichts zugewiesen werden. Das ist doch eine Funktion die dir ein bestimmten Wert zurück gibt, und mit diesem Wert kannst du herausfinden, ob Sound abgespielt wird,gestoppt wurde oder Pause ist...
|
Re: LoopFunktion
wenn ich noch then hinzufüge läufts auch nicht :gruebel:
Delphi-Quellcode:
if BASS_ChannelIsActive(Channel) then BASS_ACTIVE_PLAYING;
|
Re: LoopFunktion
Auszug aus Bass.pas (VERSION2.0):
Delphi-Quellcode:
Meine Überprüfung läuft so:
// BASS_ChannelIsActive return values
BASS_ACTIVE_STOPPED = 0; BASS_ACTIVE_PLAYING = 1; BASS_ACTIVE_STALLED = 2; BASS_ACTIVE_PAUSED = 3; function BASS_ChannelIsActive(handle: DWORD): DWORD; stdcall;external 'bass.dll' name 'BASS_ChannelIsActive';
Delphi-Quellcode:
MFG Alex
if BASS_ChannelIsActive(channel) = BASS_ACTIVE_STOPPED then
begin //MACH WAS Exit; end; PS: Falsche Bass.pas??? |
Re: LoopFunktion
:roll: :wall:
Sag mal, verstehst du wie eine if-Abfrage funktioniert? Deine Funktion heisst "BASS_ChannelIsActive(Channel)" Du willst pruefen ob das Ergebnis "BASS_ACTIVE_PLAYING" ist Also:
Delphi-Quellcode:
Greetz
if BASS_ChannelIsActive(Channel) = BASS_ACTIVE_PLAYING then
ShowMessage('Playing'); alcaeus |
Re: LoopFunktion
Hi Nils
Ein interessanter Ansatz für deine Probleme findet sich hier: ![]() MfG GM |
Re: LoopFunktion
Hier habt ihr den Code:
Delphi-Quellcode:
procedure TFormPlayer.Image1Click(Sender: TObject);
const BASS_ACTIVE_STOPPED = 0; BASS_ACTIVE_PLAYING = 1; BASS_ACTIVE_STALLED = 2; BASS_ACTIVE_PAUSED = 3; begin if BASS_ChannelIsActive(Channel) = BASS_ACTIVE_PLAYING then BASS_Start(); BASS_Start(); BASS_ChannelPause(channel); position := 0; op1.Title := 'Open Files'; if not op1.Execute then exit; Channel := BASS_StreamCreateFile(FALSE, PChar(op1.FileName), 0, 0, 0); BASS_StreamPlay(Channel, False, 0); Image1.Enabled:= true; p1.Visible:= false; end; |
Re: LoopFunktion
Also...dieser Code
Delphi-Quellcode:
sagt dir ob gerade was abgespielt wird.
if BASS_ChannelIsActive(Channel) = BASS_ACTIVE_PLAYING then
Du musst den Code in einer Schleife durchprobieren bzw. in einem Timer-Event. Sobalt die Bedingung nicht mehr zutrifft, musst du das Lied nochmals starten. Ueberleg doch einfach mal wie du was programmieren musst, anstatt dir von uns den Code vorkauen zu lassen... Greetz alcaeus |
Re: LoopFunktion
:| :gruebel: Ich hab einen Timer mit dem Interval '1', in dem Timer steht:
Delphi-Quellcode:
Es läuft nicht :pale:
if BASS_ChannelIsActive(Channel) = BASS_ACTIVE_PLAYING then BASS_StreamPlay(Channel, False, 0);
|
Re: LoopFunktion
In dem RenderTimer hab ichs eingebaut:
Delphi-Quellcode:
Wieso kam vorher ein doppelpost :gruebel:
procedure TFormPlayer.TimerRenderTimer(Sender: TObject);
var FFTFata : TFFTData; WaveData : TWaveData; begin if BASS_ChannelIsActive(Channel) = BASS_ACTIVE_PLAYING then BASS_StreamPlay(Channel, False, 0); TimerRender.Interval:= Spin.Value; ... end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:17 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