Delphi-PRAXiS
Seite 7 von 34   « Erste     567 8917     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   [Komponente] Bass Player Komponente: TBassDLLPlayer (+Demos) (https://www.delphipraxis.net/46916-%5Bkomponente%5D-bass-player-komponente-tbassdllplayer-demos.html)

kurtm1 17. Nov 2005 19:31

Re: Bass Player Komponente: TBassDLLPlayer (+ Demos)
 
naja Kritiker gibt es immer, egal was man macht...

Wobei: runger hat ja auch was gutes geschrieben
Zitat:

das was du geleistest hast ist excellent
Also kanns nicht so schlimm sein ;)

omata 20. Nov 2005 17:41

Re: Bass Player Komponente: TBassDLLPlayer (+ Demos)
 
So, leider habe ich eine schlechte Nachricht zu verkünden.

Ich war dieses Wochenende mal wieder zu hause und dort konnte ich endlich den besagten Test durchführen.
Welcher Test? Na ganz einfach: was passiert, wenn man mehr als eine Soundkarte hat?

In meinem Musikstudio habe ich eine Maschine mit zwei Soundkarten. Wozu? na ganz einfach, um einen Monitor (zum Vorhören) zu haben.

Naja, wie dem auch sei. Leider muss ich euch mitteilen, dass die neue Komponente (v2.1) nicht mehr mehr als eine Soundkarte unterstützen kann. Dieses Problem ergibt sich leider bei der Benutzung von bass_fx.dll diese möchte nämlich auf Funktionen der Bass.dll zugreifen. Deshalb sucht bass_fx.dll auch nach der bass.dll. Da aber leider die Bass-Funktionen nicht als Objekt zur Verfügung stehen, überschreibt die Bass_init-Prozedur die globalen Einstellungen in der bass.dll. Deshalb gewinnt immer die letzte Initialisierung. Schade.

Also, wer mehr Funktionen braucht, kann leider nur eine Soundkarte ansprechen. Ich finde das ziemlich be******** aber kann es leider zur Zeit nicht ändern.

/*
Warum ging es vorher?: Weil die bass.dll für jede Soundkarte extra in den Speicher geladen wurde. Da gab es dann zwei globale, abgeschlossene Bass-Systeme (für jede Soundkarte eine) Und genau dieses geniale Prinzip kann nicht mehr angewendet werden, wenn man die bass_fx.dll benutzen möchte.
*/

Bin also für Vorschläge offen.
MfG
Thorsten

kurtm1 20. Nov 2005 17:51

Re: Bass Player Komponente: TBassDLLPlayer (+ Demos)
 
hmm also mir ist es im prinzip egal, ob es für mehrere Soundkarten geht, da ich sowieso immer nur für eine code..

Trotzdem hätte ich eine Bitte, und zwar ob du vielleicht kurz (wie wir es schon einmal hatten) schreiben kannst, welche CodeZeilen man jetzt braucht um die dlls einzubinden, und dann um Channels anzulegen, etc.
Würde denk ich vielen helfen! (inklusive mir :D)

thx

omata 20. Nov 2005 18:54

Re: Bass Player Komponente: TBassDLLPlayer (+ Demos)
 
Da brauch ich eigentlich nicht viel zu schreiben...

Das geht wie gehabt. Die Zusatzfunktionen der bass_fx.dll stehen sofort zur Verfügung.

Delphi-Quellcode:
BassChannel.Tempo:= -30..30;               // Tempo verändern
BassChannel.Samplerate:= z.B.: 30870..57330 // Samplerate verändern
BassChannel.Pitch:=-30..30;                // Pitch verändern
Hoffe das hilft weiter.

MfG
Thorsten

kurtm1 20. Nov 2005 19:30

Re: Bass Player Komponente: TBassDLLPlayer (+ Demos)
 
aha thx.

Und die bass.dll / bass_fx.dll sollte wahrscheinlich im Programm - Verzeichnis liegen

omata 20. Nov 2005 19:33

Re: Bass Player Komponente: TBassDLLPlayer (+ Demos)
 
Um die Dll-Dateien brauchst du dir keine Gedanken machen. Wenn sie nicht vorhanden sind, werden sie automatisch erzeugt.

MfG
Thorsten

kurtm1 20. Nov 2005 20:18

Re: Bass Player Komponente: TBassDLLPlayer (+ Demos)
 
Zitat:

Zitat von omata
Wenn sie nicht vorhanden sind, werden sie automatisch erzeugt.

Genau das ist ja die Tatsache die ich höchst interessant finde :D und deswegen damit zuerst wenig anfangen konnte!

turboPASCAL 27. Nov 2005 12:07

Re: Bass Player Komponente: TBassDLLPlayer (+ Demos)
 
Update der TBassDLLPlayer - Komponente von Version 1.23 (bzw. 1.24) auf 1.25 . (erster Post)

Änderung:
Laden aus einer Resource hinzugefügt. Ein Demo ist in den "SimplePayer Demos" enthalten.


Delphi-Quellcode:
function LoadFromResourceName(ResourceName: PChar; ResTyp: TRC_ResourceTyp): Boolean;
Code:
[b]ResTyp[/b] kann vom Wert RC_MUSIC oder RC_STREAM sein.
 - [i][b]RC_MUSIC[/b][/i] gibt an das es sich bei der Resource um eine Musicdatei (*.mod, *.it, *.xm ...) handelt.
- [i][b]RC_STREAM[/b][/i] gibt an das es sich bei der Resource um eine Sampledatei (*.wav, *.mp3, ...) handelt.

Der Rückgabewert der Funktion [i]LoadFromResourceName[/i] ist bei Erfolg [i][b]True[/b][/i] anderenfalls [i][b]False[/b][/i].
Die Resourcen müssen vom Ressourcentyp [i]RCDATA[/i] sein.
Beispiel:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  // Load Music from Resource
  if not BassdllPlayer1.LoadFromResourceName('MeineModMusicDaten', RC_MUSIC) then
    Windows.Beep(880,150);

  // Start playing
  BassdllPlayer1.Play;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  // Load Stream from Resource
  if not BassdllPlayer1.LoadFromResourceName('MeineWavStreamDaten', RC_STREAM) then
    Windows.Beep(880,150);

  // Start playing
  BassdllPlayer1.Play;
end;

Die Resourcedatei (.rc) sieht dann zB. so aus:
Code:
;Resourcename | Resource Typ | Resourcefile
;
MeineModMusicDaten RCDATA "Moddatei.XM"
MeineWavStreamDaten RCDATA "Wavedatei.WAV"

kurtm1 19. Dez 2005 12:57

Re: Bass Player Komponente: TBassDLLPlayer (+ Demos)
 
mal eine Frage:

Gibts zu der Komponente schon irgendwo sowas wie eine Dokumentation, zu dem Einbau, Verwendung der Funktionen etc?
Ansonsten würd ich mich eventuell bereit erklären, sowas anzugehen :D

Mister X 19. Dez 2005 14:03

Mir ist was anderes aufgefallen (kann sein dass es in zwischen behoben ist):

Bei

BassDllPlayer1.GetSongLengthAsString

bekommt man nicht die Länge, sondern die aktuelle Trackposition als String. Es müsste also

BassDllPlayer1.GetSongPosAsString

oder so heissen, oder nicht?

Gruß
Mister X


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:55 Uhr.
Seite 7 von 34   « Erste     567 8917     Letzte »    

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