![]() |
Re: BassPlayerEx mit erweiterten Soundeffekten...
der letzte Post ist schon etwas länger her.
Ich nutze den BassPlayerEx mit 2 Soundkarten. Beim durchteten von meinem Programm ist mir aufgefallen, dass wenn ich den EQ munter ein und ausschalte (eq.Start; eq.Stop) die CPU-Anzeige jedes mal um ca. 0,9-1,1 % steigt. Was mir noch aufgefallen ist, ist dass sich die verschiedenen EQs überlagern. Heißt soviel: -> 1. EQ an -> 2. EQ einstellen -> 3. EQ aus -> Schritte 1 bis 3 mehrmals wiederholen -> Beobachtung: Die EQs müssen sich überlagern, da dann die Lautsprecher bei dunklen Tönen stark kratzen, wass sie ohne EQ/ nur 1 mal angeschaltetem EQ nicht tun rollstuhlfahrer PS: mein Code sieht so aus:
Delphi-Quellcode:
Und Fehler konnte ich in BassEquiliserU noch nicht finden
if CheckBoxEQ.Checked then
begin Channel1.Equiliser.Start; Channel2.Equiliser.Start; EQChange(Sender); end else begin Channel1.Equiliser.Stop; Channel2.Equiliser.Stop; end; EDIT: Mal nen Screen zur veranschaulischung |
Re: BassPlayerEx mit erweiterten Soundeffekten...
Hallo rollstuhlfahrer,
danke für den Hinweis. Ich habe die Archive schon korrigiert. Da kannst das Problem auch schnell selber lösen, indem du in der Datei BassEquiliserU.pas folgende Methode veränderst...
Delphi-Quellcode:
Gruss
procedure TBassEquiliser.Stop;
var i:integer; Band:TBassEquiliserBand; begin for i:=1 to length(_Band) do begin Band:=_Band[i-1]; Band.par.fGain:=0; Update(Band); end; _Enabled:=false; ClearAllBand; // <-- diese Zeile hinzufügen end; Thorsten |
Re: BassPlayerEx - EQ
noch was wichtiges zum ändern:
wenn man 2 Mal (auch aus versehen) Channelx.Equisiler.Start aufruft, wird dieser auch tatsächlich 2 mal gestartet. Das hat zur folge, dass die Töne kratzen, obwohl der Rechner und die Festplatte schnell genug sind. Folgende Code-Änderunges kann man dann durchführen:
Delphi-Quellcode:
rollstuhlfahrer
procedure TBassEquiliser.Start;
begin if not _Enabled then // <-- begin // <-- _Enabled:=true; Init; end; // <-- end; procedure TBassEquiliser.Stop; var i:integer; Band:TBassEquiliserBand; begin if _Enabled then // <-- begin // <-- for i:=1 to length(_Band) do begin Band:=_Band[i-1]; Band.par.fGain:=0; Update(Band); end; _Enabled:=false; ClearAllBand; end; // <-- end; |
Re: BassPlayerEx mit erweiterten Soundeffekten...
hallo,
wollte jetzt bei einem neuen projekt die bassplayer-komponente verwenden. nun blick ich da aber irgendwie voll nicht durch... also einen Track abspielen ist kein problem, das hab ich shcon hingekriegt. habe leider beim letzten programm mit dieser komponente auch ein bisschen "gebastelt"^^ dieses mal will ichs aber ein wenig"professioneller" machen, und möglicht viel die internen funktioonen von der komponente nutzen usw. eine kleine hilfedatei oder sowas hast du nicht oder? wäre eben gut zu wissen was z.B. jede einzelne unit und/oder klassen machen, ich weiss z.B. nicht was mir die "FrameSoundKarteU" bringt. ausserdem mach ichs jetzt so, dass ich eifach ein TBassPlayer erzeuge und zwei Channels hinzufüge, und dann führe ich jede eintzelne funktion immer direkt vom Channel aus und den TBassPlayer brauch ich für rein gar nix mehr. Jetzt weiss ich nicht ob das normal ist, oder ob man den TBassPlayer auch verwenden sollte um z.B. irgendwelche werte zu setzen oder auszulesen. sorry ist irgendwie voll kompliziert geschrieben aber ist halb so schlimm wenn dus nicht verstehst :mrgreen: also zu meinem programm: es wird eine art jukebox, mit musikarchiv und verschiedene abspiellisten die geladen und gespeichert werden können. ausserdem will ich die fade-funktion nutzen, somit brauche ich wohl 2 channels. cd abspielen, Internet-Streams, ID3-informationen auslesen usw. sollen auch möglich sein über die komponente. eine visualisation brauch ich auch, und zwar eine die ausgewählt werden kann, also mit den DLL-Plugins. hättest du vielleicht vorschläge wie ich da vorgehen soll? z.B. soll ich die interne playlist von der komponente nutzen (gibt doch eine oder?), und soll ich lieder mit channel.loadfromlied oder mit loadfromfile abspielen? was bringt das loadfromlied für vorteile? und brauch ich eine TFrameSoundkarte? sorry für die vielen fragen, aber ich hab keine lust nochmal einfach was zusammenzubasteln, ich wills dieses mal wirklich möglichst effizient machen. wäre sehr dankbar für eine antwort! EDIT: jetzt kommst du bestimmt mit "schau in die demo". hab ich shcon gemacht -> ich finde sie ist sehr kompliziert aufgebaut mit den vielen frames und so...ausserdem wird da verdammt viel code gebraucht, geht das nicht mit viel weniger?? ja ich hab einfach den überblick nicht bei der demo, und das ganze in ein anderes projekt zu übertragen gibt erstens viel zu viel arbeit und zweitens lern ich dann nix ausser Ctrl+C und Ctrl+V EDIT2: eifach gesagt, ich versteh einfach den internen aufbau der komponente nicht! Gruss urbanbruhin |
Re: BassPlayerEx mit erweiterten Soundeffekten...
HI urbanbruhin,
hoffe, ich konnte dir helfen rollstuhlfahrer |
Re: BassPlayerEx mit erweiterten Soundeffekten...
Hallo rollstuhlfahrer,
Danke für deine Antwort, war sehr hilfreich! was mich nun noch intressieren würde, warum es beim TBassPlayer eine globale lautstärke gibt, und bei jedem einzelnen channel ebenfalls eine volume? soll ich am besten die eigenschaft volume bei den einzelnen channels gar nie setzen, sondern immer nur bei BassPlayer.volume? wird dann die volume der einzelnen channels ebenfalls geändert oder wie muss ich das ganze verstehen? EDIT: mit channel.lied bekommt man nur den Titel, den Interpret und die länge des tracks raus oder? und was ist channel.lied.bezeichnung? ich glaub, die informationen lese ich besser direkt über die MPEGAudio aus das geht warscheinlich schneller, und es sind dann auch informationen wie z.B. Album vorhanden. Gruss urbanbruhin |
Re: BassPlayerEx mit erweiterten Soundeffekten...
Liste der Anhänge anzeigen (Anzahl: 1)
ich setze die Channel-lautstärke so gut wie nie (für was gibts normalisieren!!)
die globale Lautstärke könnte man mit WMP-Lautstärkeregler vergleichen. somit hast du insgesammt 4 Regler pro Channel :gruebel: (ja und?) rollstuhlfahrer PS: im anhang ein Screen (norm. heißt normalisieren) |
Re: BassPlayerEx mit erweiterten Soundeffekten...
okay, das ist jetzt glaub mehr oder weniger alles klar.
jetzt muss ich nur noch rausfinden wie ich die ID3-Tags am besten ermittle. mit den Jedi-Komponenten werden z.T. einige Tracks nicht erkanns, also es kommen keine Informationen raus, wo jedoch bei Channel.Lied.xx war rauskommt wenn ich mich nicht täusche. Jeder einzelne Track beim hinzufügen ins Archiv noch in den Channel laden dauert jedoch bestimmt sehr lange, darum würde ich dies lieber umgehen..naja mal schauen wie ich das mache. Also dann mal danke für deine Hilfe! mfg |
Re: BassPlayerEx mit erweiterten Soundeffekten...
nimm doch die Id3Lib von Muetze1
Link: ![]() rollstuhlfahrer EDIT: das mit dem laden geht auch einfacher
Delphi-Quellcode:
with TLied.Create(filename) do
begin showmessage(Interpret + ' - ' + Titel); Free; end; |
Re: BassPlayerEx mit erweiterten Soundeffekten...
HI,
ich meld mich mal wieder hier zu Wort. Zum Thema Erweiterungen ist zu sagen, dass ich überhaupt nicht weiß, wie ich den BassPlayerEx dazu bring, WMA Dateien zu lesen. An der BassWMA.dll soll es nicht liegen. Welches Stückchen Code muss jetzt geändert werden, dass der Player auch WMA abspielt? rollstuhlfahrer |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:33 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