Delphi-PRAXiS
Seite 4 von 7   « Erste     234 56     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   wie kann ich viele kurze töne schnell hintereinander spielen (https://www.delphipraxis.net/76369-wie-kann-ich-viele-kurze-toene-schnell-hintereinander-spielen.html)

dino 10. Sep 2006 21:00

Re: wie kann ich viele kurze töne schnell hintereinander spi
 
also den Vorgeschlagenen Quelcode werd ich mir noch paarmal ansehen, der rest war ziehmlich unnötig, weil ich schrieb, dass ich meine WAV-Dateien in GoldWave geladen hab und diese dann als Text gespeichert habe. Und: ich möchte mein mir selbst auferlegtes Problem möglichst selbst lösen (indem ich z.B. die samples in Frequenzen umrechne(welche ich für mein eigentliches Problem gut gebrauchen kann) und diese dann z.B. per Beep abspiele

3_of_8 10. Sep 2006 21:06

Re: wie kann ich viele kurze töne schnell hintereinander spi
 
ARGH

Du kannst Samples nicht ohne weiteres in Frequenzen umrechnen.

dizzy 11. Sep 2006 00:19

Re: wie kann ich viele kurze töne schnell hintereinander spi
 
Um das weiter zu führen: Die Werte die du dort siehst, sind halt, wie oben schon mal beschrieben wurde, keine Frequenzangaben, sondern stellen sie die auszuführende Auslenkung der wiedergebenden Membran zum Zeitpunkt t relativ zum Nullpunkt dar. WIE schnell diese Werte hintereinander gesetzt werden, vermagst du dir evtl. grad nicht auszumalen. Bei einer Wave-Datei mit 44.1 kHz Sampleauflösung immerhin 44100 Werte pro Sekunde.
Die Frequenzen ergeben sich erst aus dem Hintereinanderabspielen eben dieser Werte (namentlich: Samples). Eine Frequenz ist ein Zeitphänomen, und kann nieeemals als Momentaufnahme betrachtet werden.
Du könntest allerhöchstens eine Menge an Samples nehmen, und mit Hilfe einer FFT diesen Abschnitt in seinen Frequenz- und Phasenraum überführen. Dann wirst du feststellen, dass da ganz erheblich mehr als nur eine Frequenz im Spiel ist, und zudem wichtig ist, wie phasenverschoben sie vorkommt. Das lässt sich im Leben nicht mittels "Beep" auch nur ansatzweise nachbilden. Vergiss es ganz einfach.

Was bei dir derzeit fehlt, ist die Unterscheidung von "Sample" und "Frequenz", bzw. deren Zusammenhang. Das sind 2 völlig verschiedene paar Schuhe. Analysen im Frequenzraum sind zudem meist nicht wirklich trivial, je nach dem, was man rausbekommen möchte. Aber mit ein bissi Textfile hier, und Beep da kommst du dahingehend vermutlich nicht allzuweit.

Grüß den Bäcker von mir :)

dino 11. Sep 2006 08:01

Re: wie kann ich viele kurze töne schnell hintereinander spi
 
ausser das die Frequenzen ja auch verschiedene wellenlängen haben und somit nicht per beep wiedergegeben werden können, wusste ich alles schon.
aber ich glaube, dass sich in Punkto Wellenlänge und Ausschlag(Amplitude glaub ich) von Welle zu Welle nicht viel ändert, dann müsste man schon mit der kleinen Anzahl an Samples ungefähr den Frequenzverlauf errechnen lassen.(GoldWave kann dies schließlich auch)
ich weiß, es ist nicht leicht, aber es ist genau das, was ich tatsächlich brauche

dizzy 11. Sep 2006 14:23

Re: wie kann ich viele kurze töne schnell hintereinander spi
 
Ich würde echt gerne wissen, was du mit "Frequenzverlauf" meinst. Wenn du die Frequenzanteile über das gesamte Wave meinst, dann ist eine FFT das einzige was du brauchst. Und zwar nicht über ein Textfile, sondern du lädsts dein .wav-File, und hast alles was du brauchst, in einem effizienten Format. Hier in der DP hab ich irgendwo auch schon mal einen Loader für Wave Files geposted. Zur FFT findest du auch viel.
Falls nun wiedererwarten die FFT nicht ist was du suchst, würde ich mir wünschen, dass du dir zunächst über die Begrifflichkeiten im Klaren wirst, und dein Problem (bzw. Ziel(!)) nochmal in Ruhe komplett beschreibst, weil ich glaube, dass hier noch keiner so ganz verstanden hat wo du hin willst ;)

dino 16. Sep 2006 16:49

Re: wie kann ich viele kurze töne schnell hintereinander spi
 
soweit ich weiss, ist die Frequenz für den ottonormalbürger die tonhöhe also die Wellenlänge (hast du die sinuskurve vor augen?) die amplitude(ausschlag nach oben und unten) ist die Lautstärcke(bei den Boxen sieht man, dass die noch stärcker vibrieren) nun habe ich meine samples und möchte mir eine Art sinuskurve achen, die aber wie gezwitscher nunmal aussieht keinerlei reelmässigkeiten hat sondern ganz chaotisch auf und ab geht.
wenn ich nun den graphen f(x)=tonhöhe zum zeitpunkt x kriegen könnte, wäre ich am Ziel.

Noch fragen?

3_of_8 16. Sep 2006 16:51

Re: wie kann ich viele kurze töne schnell hintereinander spi
 
*seufz*

Ein Geräusch besteht nunmal nicht aus Sinustönen. Ein Geräusch hat an einer Position x nicht unbedingt eine spezifische Tonhöhe.

DGL-luke 16. Sep 2006 16:53

Re: wie kann ich viele kurze töne schnell hintereinander spi
 
FFT, wie bereits gesagt. damit bekommst du genau das. Du kannst dir auch vom "BassPlayer" (such mal hier in der DP) die Visualisierungen ansehen, da sollte genau das gemacht werden, die Anzeige des aktuellen Frequenzspektrums.

Eine Tonhöhe abhängig von der Zeit gibt es übrigens äußerst selten, meist sind das viele Frequenzen. Kommt ganz drauf an, wie viele Kanäle/Instrumente im Stück sind. Wie genau das in der WAv abgespeichert ist, kann ich dir aber nicht sagen.

dino 16. Sep 2006 17:41

Re: wie kann ich viele kurze töne schnell hintereinander spi
 
Liste der Anhänge anzeigen (Anzahl: 1)
zum ersten mal konnte ich immernochnicht herrausfinden, was fft sein soll und 2. müsste man anhand einiger Merckmale Fixpunkte der Kurve festmachen können(z.B. Wendepunkte) wenn man nun die einzelnen abstände berechnet und alle Abstände hintereinander als neuen graphen zeichnet, erhällt man dann nicht eine tonhöhenkurve?

(am besten würde es wahrscheinlich sein, wenn wir die möglichkeit hätten diese fagen anhand eines tones zu besprechen)

beiliegend eine visuallisierung eines tones

ok jetzt wo ich den ton gesehen habe, weiss ich, dass es nicht so einfach geht, nur irgendwie glaube ich, müsste es irgendwie Möglcih sein ganz grob eine durschnittliche Lautstärcken- und eine Tonhöhenkurve zu ersellen

DGL-luke 16. Sep 2006 18:11

Re: wie kann ich viele kurze töne schnell hintereinander spi
 
"Fast Fourier transformation", kann man sicher auch unter dem Kürzel FFT an vielen orten nachschlagen...

Mit der bass.dll kannst du dir afaik ein Array aus Fourier-Tabellen aus einer Sounddatei erstellen lassen. Diese repräsentieren das Frequenzspektrum der Datei und lassen sich zur Analyse oder zur Visualisierung des Sounds benutzen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:54 Uhr.
Seite 4 von 7   « Erste     234 56     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