Forum: Multimedia
Delphi
by Marco Steinebach,
17. Jun 2007
Huhu Emil,
Jaaa, ..., da hast du völlig recht.
Hm, ;-), nu kann sich jeder, der mitgelesen hat, überlegen, wie nu, jedenfalls läuf beides, wie es soll!
Viele herzliche Grüße
Marco
Forum: Multimedia
Delphi
by Marco Steinebach,
17. Jun 2007
Hallo Emil,
Ich dachte,es macht einen Unterschied, ob Messages an die Application selbst, oder an das Hauptformular übergeben werden. Deshalb dachte ich es wäre sinniger, bei der Init Application.Handle anstatt Form1.Handle zu übergeben, sprich die Message auf Applications-Ebene abzufangen.
Sonst gibt's keinen Unterschied. ;-)
Code-Vereinfachung: wenn die BASS.DLL schon selbstständig...
Forum: Multimedia
Delphi
by Marco Steinebach,
17. Jun 2007
Hallo Listers,
Ersteinmal vielen herzlichen Dank für die vielen Tips und Hinweise.
Hier jetzt nochmal, als Zusammenfassung, das setzen eines SyncPoints via Message, für alle, die's gebrauchen können.
1. Das Init der BASS.DLL kann so bleiben, wie man es kennt:
if (not BASS_Init(1, 44100, 0, Application.handle, nil)) then
Hat den Vorteil das auf jedenfall alle Messages, die die...
Forum: Multimedia
Delphi
by Marco Steinebach,
17. Jun 2007
Huhu Arnold und Liste,
Doch tut sie! ;-)
Vielen Dank für den Tip. Der Typecast war der Hinweis. Wenn man nämlich schlicht und einfach anstatt der Procedureadresse die Message als TypeCast übergibt, dann klappts.
Also:
* * hs := BASS_ChannelSetSync(sh, BASS_SYNC_END or BASS_SYNC_MESSAGE, 0, SYNCPROC(WM_BASS_EOF), 0);
Man muß nur darauf achten, beim init der bass.dll nicht...
Forum: Multimedia
Delphi
by Marco Steinebach,
16. Jun 2007
Huhu Arnold,
nix sendMessage, das macht die BASS.DLL.
Aber die WNDPROC kanns'de sehen: ;-)
procedure THauptFormular.WndProc(var Msg: TMessage);
begin
*If Message.Msg = WM_BASS_EOF then
begin
Playlist.Selected := Items;
Forum: Multimedia
Delphi
by Marco Steinebach,
16. Jun 2007
Hallo Listers,
ich möchte mittels BASS_ChannelSetSync am Ende enes Titels eine Message versenden. Ich kriegs blos nicht kompiliert. Was mache ich falsch? Hiiiilfe! ;-)
Hier mein Code:
// die Message-Deklaration
const
WM_BASS_EOF = WM_User + 1;
// die Message wird in der WNDPROC der Application abgefangen.
// der Einbau:
// (sh ist mein Channel, und hs der hsync):