Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Ton vom Micro in Echtzeit verzerren (https://www.delphipraxis.net/37678-ton-vom-micro-echtzeit-verzerren.html)

benniwm 8. Jan 2005 17:18


Ton vom Micro in Echtzeit verzerren
 
huhu,
die überschrift will ich realisieren bevor ich damit anfange wollte ich fragen ob das geht.
es gibt ja ein tutorial um den ton vom micro aufzunehmen.
aber dass mit dem verzerren(transponieren) weiß ich nicht ob es geht.

thx

dizzy 8. Jan 2005 17:48

Re: Ton vom Micro in Echtzeit verzerren
 
100% Echtzeit kannst du von vorne herein vergessen. Auch wenn deine Verzerrung/Filterung prinzipiell auf einzelnen Samples operieren könnte (bei Veränderungen in der Frequenzdomäne schonmal nicht möglich: Cutoff usw.), brauchst du bzw. der PC immer einen Buffer in dem gearbeitet wird. Ein Buffer von einem Sample länge führt prinzipbedingt (vom OS) zu "zerstückeltem" Sound.
Mit ASIO kann man diese sog. Latzenz zwar recht gering halten, jedoch ist das nicht so einfach damit zu arbeiten (hab's mal versucht...).

Du wirst also immer mit mehr oder minder hörbaren bis störenden Verzögerungen rechnen müssen.


Gruss,
Fabian

benniwm 8. Jan 2005 20:49

Re: Ton vom Micro in Echtzeit verzerren
 
Zitat:

Du wirst also immer mit mehr oder minder hörbaren bis störenden Verzögerungen rechnen müssen.
Schade.
Wie groß müsste dann die Verzögerung sein damit der Rechner nicht vollends ausgelastet ist.
Ich denke mal er müsste viel rechnen und demnach langsam reagieren oder?
thx

dizzy 9. Jan 2005 05:48

Re: Ton vom Micro in Echtzeit verzerren
 
Das kann man absolut nicht pauschal sagen, da es von a) der Geschwindigkeit des Rechners, und b) der Menge/Effizienz der Berechnungen abhängt. Die meisten Programme bieten einen Regler um die Latenz anzupassen. (FruityLoops läuft bei mir (AMD 2500+) z.B. mit 46ms Latenz (Primärer Audiotreiber - also kein ASIO) bei mittlerem Aufwand flüssig. Aber: Das Teil ist wirklich effizient programmiert!)

Ich schätze mal so ~50-200ms muss man mindestens hinnehmen, ohne MMX und Gedöns auch gerne mehr... Aber das hängt wie gesagt von zu vielen Faktoren ab als dass man da eine pauschale Spanne nennen könnte ohne rot zu werden ;). Probieren über Studieren :D

Gruss,
Fabian

supermuckl 9. Jan 2005 09:12

Re: Ton vom Micro in Echtzeit verzerren
 
und es kommt auf den effekt an, den du berechnen willst. wenn der,wie dizzy schon sagte, mehr als ein sample für die berechnung braucht, kannst das auch nur mit einem buffer machen ( ganz von der geschwindigkeit mal abgesehen ), der dir eine gewisse sampleanzahl für deine berechnung zur verfügung stellen würde und somit auch wieder latenzzeit beansprucht.

chkdsk 12. Jan 2005 22:14

Re: Ton vom Micro in Echtzeit verzerren
 
Wie gebe ich den einzelne Samples hintereinander - jetzt egal woher die kommen - wieder?

dizzy 13. Jan 2005 01:18

Re: Ton vom Micro in Echtzeit verzerren
 
Zitat:

Zitat von chkdsk
Wie gebe ich den einzelne Samples hintereinander - jetzt egal woher die kommen - wieder?

Frisch gepostet ;)
(Das ist nur eine von sehr vielen Möglichkeiten (eine die ohne zusätzlichen Krams auskommt, und einigermaßen kurz ist))


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:40 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