![]() |
Eigene MediaPlayer Komponente mit bass.dll
Huhu ihr,
ich habe ein großes Problem. Ich möchte mir für ein Programm eine eigene MediaPlayer Komponente schreiben. Da die bass.dll hier immer gelobt wird, will ich diese nun benutzen. Nur will die nich wie ich will ;)
Delphi-Quellcode:
So, nun mag die Initialisierung der Bass.dll nich klappen, weil das Handle unbekannt ist.
unit DCTPlayer;
interface uses Windows, SysUtils, Bass; type TDCTPlayer = class private FFilename: String; FFile: HStream; public constructor Create(); end; implementation constructor TDCTPlayer.Create(); begin BASS_GetVersion() <> DWORD(MAKELONG(2,1)); BASS_Init(1, 44100, 0, Handle, nil); end; end. Leider weiß ich auch nich so genau, was das eigentlich ist. Bitte helft mir ;) Danke schonmal im Vorraus Manu |
Re: Eigene MediaPlayer Komponente mit bass.dll
Versuchs mal mit Self.Handle
|
Re: Eigene MediaPlayer Komponente mit bass.dll
Self.Handle gibt es da nicht weil ein TObject kein Handle hat. Wir hatten aber vor kurzem das Thema wie man einem TImage ein Handle verpassen kann. Auf die gleiche Art und weiße kannst du auch dem TObject ein Handle verpassen und dieses Handle dann übergeben. Ich nehme mal an das Handle wird bei der Bass.dll für Callbacks benötigt.
|
Re: Eigene MediaPlayer Komponente mit bass.dll
Handle ist das Handle vom Hauptfenster.
Nochwas: BASS_GetVersion() <> DWORD(MAKELONG(2,1)); Ist etwas witzlos. |
Re: Eigene MediaPlayer Komponente mit bass.dll
Delphi-Quellcode:
// Check of a Bass.DLL Version 2.1
if Bass_GetVersion() <> DWORD(MAKELONG(2, 1)) then begin ShowMessage('BASS.DLL 2.1 nicht geladen bzw. vorhanden!'); Halt; // oder... end; // Set Config - Pass 32-bit floating-point sample data to all DSP functions BASS_SetConfig(BASS_CONFIG_FLOATDSP, 1); // Init Bass if not BASS_Init(1, 44100, 0, 0, nil) then ...Error... Siehe auch: ![]() ![]() ![]() :gruebel: ![]() |
Re: Eigene MediaPlayer Komponente mit bass.dll
Hm, das hat ja nun prima geklappt;)
Danke Aber wie kann ich denn mit der bass.dll die aktuelle Position in einem Track herausfinden? Ich mag eigentlich keinen Timer mitlaufen lassen. ;) Manu |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:18 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