Kontinuierliches Abspielen in Matlab

Gast #2060723
hi ...

Ich bin gerade dabei einen ein wenig mit Labview herumzuspielen ...

Und zwar möchte ich gerne eine Impulsanwort online auf den 
Mikrofoneingang rechnen. Die Berechnung etc. macht mir dabei keine 
Probleme nur kann ich den Ausgangspuffer der Soundkarte nur "Blockweise" 
ansteuern. D.h ma hört immer wieder ein "Knacksen" beim Übergang auf 
einen Block ... was ja irgendiwe dadurch entsteht weil ein Block 
abgespielt wird, ein neuer abgeholt und wieder abgespielt wird ...

In Matlab gibts mit wavplay natürlich das selbe Problem ... die Lösung 
wäre ein Ringbuffer nur wie sage ich das dem Audiotreiber der Soundkarte 
das kontinuierlich abgespielt werden soll ?


lg Peter
Persönliche Seite #2062823
Bei normalen Soundkarten ist der Datenaustausch immer blockweise. Die 
Blockgröße kann man normal in einigen Stufen einstellen. Normal ist es 
auch so, dass eine Karte einen gemeinsamen Wordclock hat, die Pakete 
werden daher zum Aufnehmen und Abspeilen zeitgleich übergeben. Damit 
muss man das Einlesen und Ausgeben nahezu zeitgleich handhaben können. 
Damit man noch Rechenzeit übrig hat, sollte man mit einer 
Mehrfachpufferung arbeiten, also drei Puffer einrichten:

* Einlesepuffer
* Puffer in Bearbeitung
* Ausgabepuffer

Jeder Puffer muss genau die Blockgröße haben, die die Soundkarte 
erwartet.

Wie man das in Labview macht, kann ich dir aber nicht sagen, ich 
programmiere Audioanwendungen immer in C++.

Grüße,

Peter

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 15 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.