www.mikrocontroller.net

Forum: Digitale Signalverarbeitung / DSP Echo programmieren


Autor: sandro (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich möchte ein Echo mit mehreren Reflektionen berechnen und damit ein 
WaveSignal anreichern. Wie macht man das am Besten?

Brauche ich für jede Reflexion ein eigenes Ram oder werden die irgendwie 
ineinander geschachtelt oder gar endlos rückgeführt?

Ich habe mir gedacht einen Ringpuffer zu bauen, in dem das Wavesignal 
eingespeist wird. Nach einer Zeit hole ich dann den Wert wieder heraus 
und werfe ihn vorne wieder hinein - nur z.B. mit der halben Amplitude. 
Dann bekomme ich ein zyklisches Echo. Wie macht man das mit einer 
anderen Reflexion, die länger braucht?

Wenn man die aus demselben Ram entnimmt, dann mischen sich mit der Zeit 
die Reflexionen, oder?

Autor: Strubi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Sandro,

der Ansatz klingt schon richtig, du brauchst fuer die verschiedenen 
Reflexionen nur mehrere Pointer zu verschiedenen Delay-Zeiten, deren 
Sample-Werte du unterschiedlich zusammenmischst. Operieren wuerden diese 
aber nur auf einem ausreichend langen Delay-FIFO.
Oder lies dich mal kurz in FIR-Filter ein, im Prinzip sind deine Echos 
nur diskretisierte gewichtete Delta-Peaks, die sich durch Vereinfachung 
der Berechnung in eine entsprechende Anzahl Pointer uebersetzen.
Wenn du das Ergebnis allerdings wieder in den FIFO reinsteckst (das 
waere dann eher Typ IIR-Filter), kriegst du entsprechend ein (fast) 
unendliches Echo, ueberdies musst du sicherstellen, dass die 
Energiebilanz deiner Delays stimmt (Summe aller Gewichtungsfaktoren 
nicht > 1), sonst clippt dir die Geschichte irgendwann.
Fragt sich, was genau du simulieren willst.

Gruesse,

- Strubi

Autor: Jürgen Schuhmacher (engineer) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Man muss bei der Echogeschichte zwischen Kurzreflexionen und Hall 
unterscheiden. Die kurzen kommen nur einmal passend zu der Raumgeometrie 
und liegen im Bereich <60ms, die langen ist unendliches "geloope" :-)

Ich mache es mit 6 einzelnen Rams /-anschlüssen für 6 Wände. Jedes delay 
passt zur Raumdistanz. Dann gibt es noch ein RAM für den Reverb in das 
immer wieder reingeschrieben wird.

Autor: sandro (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
bei liegt das problem einfach darin, daß ich sehr schnelle echos brauche 
und eigentlich nur einen takte zeit habe um auf ein ram zuzugreifen.

dann brauche ich wohl für jedes echo EIN eigenes delay

Autor: Einwanderheber (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kann man die Echos nicht zusammenfassen und überlagern bei einem RAM?

Autor: Roadrunner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
möchte ähnlich wie Sandro ein WaveSignal auf Bitebene manipulieren in 
Hinsicht auf Hall, Echo, etc.
Gibt es hierzu gute weblinks oder habt ihr nen Buchtipp?! Bin mit 
googeln noch nicht viel weiter gekommen (vlt. auch schlechte 
Suchbegriffe verwendet) ?!
Danke im Voraus.

Gruß Roadrunner

Autor: Christoph Kessler (db1uq) (christoph_kessler)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Bergvagabund (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es gibt eine sehr umfangreiche Website zu dem Thema:
http://www.musicdsp.org/

Das entsprechende Forum dazu ist hier:
http://www.kvraudio.com/forum/viewforum.php?f=33

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.