Delphi-PRAXiS
Seite 1 von 6  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Sound graphisch darstellen (https://www.delphipraxis.net/26226-sound-graphisch-darstellen.html)

Meflin 20. Jul 2004 15:24


Sound graphisch darstellen
 
Hi,
ich suche eine komponente mit der man eine sounddatei graphisch darstellen kann, ka wie sich das nennt, wie z.b. die anzeige im nero waveeditor falls den einer kennt, also wo die höhen und tiefen in einer art diagramm angezeigt werden. *leiderkeineahnunghabwiedasheisst*

*MFG*

Matze 20. Jul 2004 15:26

Re: Sound graphisch darstellen
 
Das hab ich irgendwie mal mit der bass.dll hinbekommen, frag mich aber bitte nicht wie. ;)

Meflin 20. Jul 2004 15:41

Re: Sound graphisch darstellen
 
mir würds ja schon helfen wenn jemand wüsst wie sich das nennt, dann könnt ich nämlich bei torry googeln ( ;-) )

shmia 20. Jul 2004 16:08

Re: Sound graphisch darstellen
 
Zitat:

Zitat von Meflin
mir würds ja schon helfen wenn jemand wüsst wie sich das nennt, dann könnt ich nämlich bei torry googeln ( ;-) )

Also die Sache läuft so:
Zuerst wie aus den Sounddaten eine Stichprobe mit 256, 512 oder 1024 Samples entnommen.
Mit diesen Samples wird eine FFT (Fast Fourier Transformation) durchgeführt.
Als Ergebnis erhält man die Amplitude und Phase des Signals für 256, 512 oder 1024 Frequenzen.
Die Phase kann man wegschmeisen; es interessiert nur die Amplitude.
(Eigentlich erhält man der Real- & Imaginärteil der Frequenzen, aber man kann diese Werte in
Amplitude und Phase umrechnen.)
Diese Amplitudenwerte kann man nun als Balkendiagramm visualisieren, wie dies Spektrumanalyser tun.
Ein Problem an der Sache ist, dass man oben eine Stichprobe von Samples anstatt einem periodischen
Signal verwendet hat. (Stichwort: Faltung mit Rechtecksignal)
Dies führt zu einer Verzerrung der Amplituden im Frequenzbereich. Um dies auszugleichen gibt
es diverse Vorfilter (z.B. Hamming-Filter)
Wenn man mal soweit ist, kann man auch über eine "schönere" Visualisierung nachdenken:
Die X-Achse entspricht der Zeit, der Y-Achse entspricht der Frequenz und die Amplitude
im Frequenzbereich wird durch versch. Farben dargestellt.

Stichwörter:
FFT & Delphi
Hammingfilter
digitale Signalverarbeitung

Meflin 20. Jul 2004 16:30

Re: Sound graphisch darstellen
 
thx

sCrAPt 20. Jul 2004 16:34

Re: Sound graphisch darstellen
 
das nennt man doch eine logarithmische darstellung, oder?

http://og4all.de/meindphase, sCrAPt

dizzy 20. Jul 2004 17:10

Re: Sound graphisch darstellen
 
Ich glaube er will einfach nur die Waveform darstellen, oder? Noch keine Frequenzanalyse via FFT und Histogramme und den ganzen Kram. Einfach nur X-Achse = Zeit, Y-Achse = Amplitude -> fertig ;)

\\edit: Und die Skala für die Amplitude kann man wenn man will auch logarithmisch anlegen. Üblicher ist hier glaube ich linear. Log. sind idR. VU-Meter in Balkenform (zumindest ist's bei Steinberg WaveLab so).

Meflin 20. Jul 2004 19:57

Re: Sound graphisch darstellen
 
gut möglich letzendlich weis ich ja net so genau wie sich des nennt. und wie ginge das dann?

Meflin 21. Jul 2004 17:13

Re: Sound graphisch darstellen
 
nochmal push: kennt jemand ne kompo für dizzys beschreibung? das hört sich gut an. für fft hab ich nur eine für bcb gefunden :-(

dizzy 21. Jul 2004 17:52

Re: Sound graphisch darstellen
 
Eine Kompo kenne ich leider auch nicht. Aber gibt es evtl. eine Möglichkeit sich die reinen Audiodaten in einen Stream ausgeben zu lassen? Mit bass.dll oder fmod oder wie auch immer?
Dann könntest du diesen Stream byteweise (oder wortweise bei 16 Bit-Waves) durchgehen, und einfach zeichnen. Interessanter wird's bei stereo - da müsste man herausfinden, ob die ungeraden oder die geraden Bytes/Worte den linken Kanal darstellen. Komfortabler wäre es natürlich gleich 2 getrennte Streams zu haben ;)

Ich kann mangels Erfahrung aber absolut nicht sagen mit welcher Methode du an den reinen Audiostream kommst. Bei unkomprimierten .wav's ists noch recht einfach: Den Header weglassen und der Rest sind die Audiodaten (genaueres dürfte sich auf www.wotsit.org finden). Bei komprimierten Files müsste man einen Decoder dazu veranlassen die Ausgabe nicht an die Soundkarte zu machen, sondern in ein Stream/File.

gruss,
dizzy


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:40 Uhr.
Seite 1 von 6  1 23     Letzte »    

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