AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

FFT + Bassdllplayer

Offene Frage von "Masteric"
Ein Thema von Masteric · begonnen am 22. Mai 2008 · letzter Beitrag vom 23. Mai 2008
Antwort Antwort
Seite 2 von 2     12   
Masteric

Registriert seit: 1. Aug 2007
Ort: Melsungen
155 Beiträge
 
Delphi 7 Professional
 
#11

Re: FFT + Bassdllplayer

  Alt 22. Mai 2008, 23:35
es ist die zeile:
 Data[i] := Data[i] * ln(i + 1) * (Image1.Height)*2;
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#12

Re: FFT + Bassdllplayer

  Alt 23. Mai 2008, 00:28
Entferne mal bitte dieses unsinnige exit.

Delphi-Quellcode:
function TBassPlayer.getfftdata: TFFTData;
begin
  if status = sndPLAYING then begin
    if not (BASS_ChannelGetData(Channel, @Result, BASS_DATA_FFT4096) = 2048) then
      ZeroMemory(@Result, SizeOf(Result));
  end
  else ZeroMemory(@Result, SizeOf(Result));
end;
  Mit Zitat antworten Zitat
Masteric

Registriert seit: 1. Aug 2007
Ort: Melsungen
155 Beiträge
 
Delphi 7 Professional
 
#13

Re: FFT + Bassdllplayer

  Alt 23. Mai 2008, 00:45
funktionieren tut es leider immer noch nicht
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#14

Re: FFT + Bassdllplayer

  Alt 23. Mai 2008, 00:56
Was heisst funktioniert nicht? Kommt immer noch eine Access Violation oder bekommst du keine Ausgabe?
  Mit Zitat antworten Zitat
Masteric

Registriert seit: 1. Aug 2007
Ort: Melsungen
155 Beiträge
 
Delphi 7 Professional
 
#15

Re: FFT + Bassdllplayer

  Alt 23. Mai 2008, 01:29
ich bekomme das CPU Fenster mit dem Fehler den ich oben schon gepostet habe.
"Programmieren ist eine der universellsten, allübergreifendsten und höchsten von Menschen erreichten Formen der Kreativität."
Nur weil Gott die Welt in 6 Tagen erschaffen hat, heisst das nicht, dass Informatiker alles in 6 Tagen programmieren können.
  Mit Zitat antworten Zitat
Medium

Registriert seit: 23. Jan 2008
3.686 Beiträge
 
Delphi 2007 Enterprise
 
#16

Re: FFT + Bassdllplayer

  Alt 23. Mai 2008, 02:55
Welchen Wert hat i zu dem Zeitpunkt wo der Fehler auftritt?

Und am Rande: Dein Array ist 2049 Elemente groß. Eins zu viel.

Edit:
Die Funktion zum Zeichnen ist im Übrigen auch nicht das gelbe vom Ei. Sie macht 2 Schleifen, wo nur eine nötig wäre, in der man einiges gut zusammenfassen kann.

Delphi-Quellcode:
var
  temp: Integer;
begin
  data := BassdllPlayer1.GetFFTData;
  Image1.Canvas.Pen.Width:=1;
  temp := Image1.Height-5;

  for i := 0 to 255 do
  begin
    Image1.Canvas.pen.color := RGB(255- i, i, i);
    Image1.Canvas.MoveTo(i+25, temp);
    Image1.Canvas.LineTo(i+25, temp - round(Data[i] * ln(i+1) * (temp+5) * 2));
  end;
end;
Achte darauf, dass dein i nacher nicht nur bis 255 geht. Ohne anpassen der Zeichenoperationen wird es ein sehr breites Bild, wenn nicht schon RGB() zerbröselt.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:36 Uhr.
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