AGB  ·  Datenschutz  ·  Impressum  







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

FFT Grid Vis

Ein Thema von Aphton · begonnen am 25. Dez 2013 · letzter Beitrag vom 30. Dez 2013
Antwort Antwort
Benutzerbild von Aphton
Aphton

Registriert seit: 31. Mai 2009
1.198 Beiträge
 
Turbo Delphi für Win32
 
#1

FFT Grid Vis

  Alt 25. Dez 2013, 21:23
Da ich unter chronischer Langeweile leide und öfters einfach so vor mich dahinprogrammiere... ist diesmal komischerweise etwas -zumindest für mich- interessanteres dabei rausgekommen.

Es handelt sich hier um eine Musik-Visualisierung.
Ich greife per BASS Bibliothek FFT Daten vom ausgewählten & abgespielten Stück ab und visualisiere sie per OpenGL als Cubes in 2D-Gitteranordnung.
Es ist ne hübsche kleine technische Spielerei. Nichts seriöses oder etwas, woran ich weiterentwicklen werde!
Miniaturansicht angehängter Grafiken
1.png   2.jpg  
Angehängte Dateien
Dateityp: zip fftgridvis.zip (513,3 KB, 17x aufgerufen)
Dateityp: zip FFT Grid Vis + Src.zip (1,89 MB, 21x aufgerufen)
das Erkennen beginnt, wenn der Erkennende vom zu Erkennenden Abstand nimmt
MfG

Geändert von Aphton (26. Dez 2013 um 13:18 Uhr)
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#2

AW: FFT Grid Vis

  Alt 26. Dez 2013, 08:41
Da ich unter chronischer Langeweile leide und öfters einfach so vor mich dahinprogrammiere... ist diesmal komischerweise etwas -zumindest für mich- interessanteres dabei rausgekommen.

Es handelt sich hier um eine Musik-Visualisierung.
Ich greife per BASS Bibliothek FFT Daten vom ausgewählten & abgespielten Stück ab und visualisiere sie per OpenGL als Cubes in 2D-Gitteranordnung.
Es ist ne hübsche kleine technische Spielerei. Nichts seriöses oder etwas, woran ich weiterentwicklen werde!
Das gibt es doch auf Sullaco
Sieht aber gut aus

Was sind das alles für Weiße Streifen an den Desktop rändern mit man mit dem teil über diese Hinausfährt?

Zitat:
Nichts seriöses oder etwas, woran ich weiterentwicklen werde!
Dann mach doch Open Source wenn es dir beliebt.
Könnte es dann wenn ich mal zeit übrig habe oder Langeweile so wie du ein Winamp Plugin daraus erstellen.

gruss

Geändert von EWeiss (26. Dez 2013 um 10:41 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Aphton
Aphton

Registriert seit: 31. Mai 2009
1.198 Beiträge
 
Turbo Delphi für Win32
 
#3

AW: FFT Grid Vis

  Alt 26. Dez 2013, 11:31
Ich wusste nicht, dass es das auf Sulaco gibt ^^
Danke fürs Kompliment.

Die weißen Streifen sind mir auch aufgefallen - die sieht man beim Draggen an den Desktoprändern. Bin mir nicht sicher, hat aber evt. etwas damit zu tun, dass ich das ganze Zeugs auf eine Bitmap rendere und dann von der Bitmap aufs Formular blitte, damit das mit der Transparenz hinhaut!

OpenSource.. hmm.. Der Code ist eig. gar nicht reif dafür - wenn du nur wüsstest, wie hässlich der ist =/
das Erkennen beginnt, wenn der Erkennende vom zu Erkennenden Abstand nimmt
MfG

Geändert von Aphton (26. Dez 2013 um 13:17 Uhr)
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#4

AW: FFT Grid Vis

  Alt 26. Dez 2013, 12:45
Ich wusste nicht, dass es das auf Sulaco gibt ^^
Danke fürs Kompliment.

Die weißen Streifen sind mir auch aufgefallen - die sieht man beim Draggen an den Desktoprändern. Bin mir nicht sicher, hat aber evt. etwas damit zu tun, dass ich das ganze Zeugs auf eine Bitmap rendere und dann von der Bitmap aufs Formular blitte, damit das mit der Transparenz hinhaut!

OpenSource.. hmm.. Der Code ist eig. gar nicht reif dafür - wenn du nur wüsstest, wie hässlich der ist =/ Ich überlegs mir, wenn die Nachfrage größer wird, säubere ich und lads hoch!
Warum tust du das ?
Du könntest ja einfach den window style des Fenster auf WS_EX_LAYERED setzen
dann wäre die Vis (Window)auch Transparent oder ?
Das extra rendern auf das Bitmap könntest du dir dann sparen.

Du kannst aber auch die Transparenz emulieren
in dem du glOrtho verwendest und den Hintergrund in eine Texture kopierst.
Das mache ich in meinem KaraGL Projekt so

Delphi-Quellcode:
procedure renderBackground();
begin
  // Farben auf Default werte setzen
  glColor3f(1.0, 1.0, 1.0);
  // BackTexture aktivieren
  glEnable(GL_TEXTURE_2D);
  glMatrixMode(GL_PROJECTION);
  glLoadIdentity;
  //Matrix zeichnen
  gluOrtho2D(0.0, panOpenGL.Width, panOpenGL.Height, 0.0);
  //Matrix anzeigen
  glMatrixMode(GL_MODELVIEW);
  glLoadIdentity;
  //Aktuelle Transformation speichern
  glPushMatrix;
    // Backtexture einbinden
    glBindTexture(gl_Texture_2D, BackTexture);
    // Hintergrund Quadrat zeichnen
    glBegin(GL_QUADS);
      glTexCoord2d(0.0, 0.0); glVertex2f( 0.0, 0.0);
      glTexCoord2d(0.0, 1.0); glVertex2f( 0.0, panOpenGL.Height);
      glTexCoord2d(1.0, 1.0); glVertex2f(panOpenGL.Width, panOpenGL.Height);
      glTexCoord2d(1.0, 0.0); glVertex2f(panOpenGL.Width, 0.0);
    glEnd();
  //Matrix zurücksetzen
  glPopMatrix;
  // Texture Deaktivieren
  glDisable(GL_TEXTURE_2D);
  //Projection zurücksetzen
  glMatrixMode(GL_PROJECTION);
  glLoadIdentity;
  glMatrixMode(GL_MODELVIEW);
  glLoadIdentity;

end;
gruss

Geändert von EWeiss (26. Dez 2013 um 13:09 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Aphton
Aphton

Registriert seit: 31. Mai 2009
1.198 Beiträge
 
Turbo Delphi für Win32
 
#5

AW: FFT Grid Vis

  Alt 26. Dez 2013, 13:17
Zitat:
Warum tust du das ?
Du könntest ja einfach den window style des Fenster auf WS_EX_LAYERED setzen
dann wäre die Vis (Window)auch Transparent oder ?
Das extra rendern auf das Bitmap könntest du dir dann sparen.
So hatte ich das auch ursprünglich - ging aber leider nicht. OpenGL zeichnet dann einfach drüber, die Kontrolle muss aber Windows erhalten. Laut Recherche soll man in ein offscr Bitmap rendern, welches man dann per BitBlt (-> Windows) aufs Fenster zeichnen lässt; dann klappt das mit der Transparenz auch.

Zu deiner Methode: Jo, viele Wege führen zum Ziel. Ich habs halt so gemacht ^^

Zu den weißen Streifen - war ein Fehler meinerseits. Habs ausgbessert und weil ich schon dabei war, ein bisschen aufgeräumt. Ich stell den Quellcode mal online.
das Erkennen beginnt, wenn der Erkennende vom zu Erkennenden Abstand nimmt
MfG

Geändert von Aphton (26. Dez 2013 um 13:22 Uhr)
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#6

AW: FFT Grid Vis

  Alt 26. Dez 2013, 13:18
Jo, viele Wege führen zum Ziel. Ich habs halt so gemacht ^^

Zu den weißen Streifen - war ein Fehler meinerseits. Habs ausgbessert und weil ich schon dabei war, ein bisschen aufgeräumt. Ich stell den Quellcode mal online.
Da ist nett von dir
Wenn ich das portieren sollte kommt er postwendend zurück als Winamp Plugin
Funktioniert jetzt sehr gut bis auf das doubleclick Event das hast wohl zerschossen (ops.. middle button nun)

Antialias wäre nicht schlecht
Beim drehen ist das ganze an den Rändern sehr stufig.


gruss

Geändert von EWeiss (26. Dez 2013 um 14:27 Uhr)
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#7

AW: FFT Grid Vis

  Alt 30. Dez 2013, 12:43
Hab mir das jetzt nochmal in ruhe angesehen..
Nach dem ärger mit meinem Surface wirklich feine Sache ohne viel Geschnörkel drum herum
verstehe nicht das sonst niemand dazu auch nur eine Zeile geschrieben hat.

gruss
  Mit Zitat antworten Zitat
Antwort Antwort


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 11:34 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