Vibrato / Frequenzänderung

OP #4419741
Lesenswert?
• ▲
▼
Hallo,
ich muss für einen DSP ein Vibrato / Tonhöhenänderung eines Signals in C 
erstellen.. hab nur leider im Moment gar keinen Plan wie und wo ich 
anfange, stehe voll auf m Schlauch.. hab irgendetwas von Modulation mit 
nem LFO gelesen, aber wie ich das zsm bringe, will mir einfach nicht in 
den Kopf.
Wäre froh wenn mir jemand n bisl auf die Sprünge helfen könnte, danke!
Gast #4419811
Lesenswert?
• ▲
▼
> Du erzeugst einen niederfrequenten Sinus und multiplizierst den
> Datenstrom mit diesem Signal.

Das nennt sich Tremolo und ist kein Vibrato.

Vibrato:
Eingangssignal aeqidistant in einen Speicher schreiben.
Den Auslesepunkt aus diesem Speicher mit einem LFO modulieren.
Fertig ist das Vibrato.
Persönliche Seite #4421522
Lesenswert?
• ▲
▼
Das ist aber ein wenig arg grob, weil man dann das Vibrato mit der 
Samplefrequenz faltet. Das reicht normalerweise nicht aus.

Man muss das Signal entsprechend über-abtasten und interpolieren / 
filtern. Dann wie beschrieben mit einem Adresszähler schwingend 
auslesen. Wenn es um kleine Änderungen geht, kann man das auf 
Hardwareebene machen, in dem man den Takt des Wandlers verzieht.

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.