Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Bass Klasse -> Kleiner Fehler (https://www.delphipraxis.net/68535-bass-klasse-kleiner-fehler.html)

kurtm1 1. Mai 2006 09:49


Bass Klasse -> Kleiner Fehler
 
Liste der Anhänge anzeigen (Anzahl: 1)
Also ich bin derzeit gerade dabei basierend auf die Komponenten von omata und turbopascal eine eigene Klasse für die Bass.dll zu schreiben.

Soweit funktioniert eigentlich eh alles, nur der Crossfader macht derzeit große Probleme. Ich hab schon alles debuggt, bin aber auf keinen Fehler gekommen, und bitte daher um Hilfe. Und zwar kann ich den Crossfader bei der ersten Änderung wie gewünscht einstellen, bei allen drauffolgenden werden jedoch völlig falsche Werte geschrieben...


In der zip Datei sind alle benötigten Dateien (inkl. der bass.dll und bass_fx.dll), würde mich freuen, falls sich das ma wer ansehen würde :lol:

kurtm1 2. Mai 2006 16:53

Re: Bass Klasse -> Kleiner Fehler
 
^^push

keiner eine idee?

kurtm1 4. Mai 2006 15:55

Re: Bass Klasse -> Kleiner Fehler
 
Letzter Aufruf dann bin offiziell verzweifelt :cry:

turboPASCAL 4. Mai 2006 19:43

Re: Bass Klasse -> Kleiner Fehler
 
Delphi-Quellcode:
procedure TMyBass.SetCrossfader(const Value: Byte);
var Left1,Right1:Integer;
begin
        left1  := 100 - value ;                       // <-
        Right1 := 100 - left1 ;                       // <-

        A.volume := round( (Left1  * A.volume) / 100); // <-
        B.volume := round( (Right1 * B.volume) / 100); // <-

        _Crossfader := Value;
end;
Schon mal durchgerechnet und dabei die Values der beiden Lautstärkeregler angeguckt ?

kurtm1 4. Mai 2006 20:09

Re: Bass Klasse -> Kleiner Fehler
 
Also ich hab mir den Corssfader Code ca. 20 mal mit dem Debugger angesehen, und da es beim ersten mal umstellen richtig funktioniert, kann in der Funktion eigentlich kein Fehler sein.

Was mir jedoch aufgefallen ist, dass der Aufruf, der Volume auslesen Funktion (A.Volume, B.Volume) (beim Lesen) in diesen Statements anscheinend Probleme macht:

Delphi-Quellcode:
A.volume := round( (Left1  * A.volume) / 100); // <-
B.volume := round( (Right1 * B.volume) / 100); // <-
Aber wie schon gesagt, ich weiß inzwischen nichts mehr, was da falsch sein kann..

turboPASCAL 4. Mai 2006 20:21

Re: Bass Klasse -> Kleiner Fehler
 
zB. GetVolume und SetVolume hast du als Byte aber
Delphi-Quellcode:
function TMyBass.GetWaveVolume: Byte;
begin
        Result:= BASS_GetVolume; // BASS_GetVolume aus der Bass ist
                                 //  Cardinal oder Integer oder so...
end;

kurtm1 5. Mai 2006 21:53

Re: Bass Klasse -> Kleiner Fehler
 
Zitat:

Zitat von turboPASCAL
zB. GetVolume und SetVolume hast du als Byte aber

Ich habe diese Stellen mal probehalber auf Cardinal geändert, gibt aber genau das selbe Verhalten..

kurtm1 9. Mai 2006 23:31

Re: Bass Klasse -> Kleiner Fehler
 
so letzter push, dann geb ich auf ;)

kurtm1 21. Sep 2006 20:04

Re: Bass Klasse -> Kleiner Fehler
 
Hätte mal wieder eine Frage zum Thema Bass / Bass_fx.

Und zwar hab ich ein kleines Programm zum abspielen von Sounds mit DSP Effekten. Wenn ich die Bass dll's in der Version 2.2 verwende funktioniert eigentlich alles (soweit ich gesehen habe).

Bei der Version 2.3 bekomme ich allerdings wenn ich eine bestimmte Datei abspiele und mit dem Effekt "Reverb" versehe ständig eine Fehlermeldung bis das Programm abstürzt. Alle anderen Effekte gehen auch mit Version 2.3?!?

Tipps?

Wishmaster 21. Sep 2006 20:14

Re: Bass Klasse -> Kleiner Fehler
 
Hi

Was für ein feiler?


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:53 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz