Wizualizacja dźwięku w C#

0

Witam,

chciałbym stworzyć program, który w stałych odstępach czasu (50Hz) będzie pobierał próbkę dźwięku (bezpośrednio "z wyjścia np: głośnikowego") oraz ową próbkę widma przetwarzał pod kątem występowania danych (od 8 do np: 64) częstotliwości, a następnie wysyłał daną o wartości mocy tej próbki na port COM w PC. Z tym ostatnim nie będę miał problemów, lecz kompletnie nie wiem jak zabrać się do pierwszej i najważniejszej części programu, czyli pobierania danych oraz analizie.

Czy C# jest dobrym i właściwym pomysłem na zrealizowanie zadania? Jeśli tak to z czym warto się zaznajomić/ jaką bibliotekę wykorzystać?

Pozdrawiam!

0

Przechwytywanie dźwięku: http://stackoverflow.com/a/18812248 nie wiem czy to dokładnie to co potrzebujesz ale może uda Ci sie jakoś dostosować do swoich wymagań ;) Kod działa.
Mechanizm nazywa się loopback recording i Twoja karta dźwiękowa musi mieć taką funkcję.

0

Bez względu na wybraną technologię programowania, najprawdopodobniej będziesz musiał uruchomić nagrywanie w sposób ciągły z buforowaniem lub ewentualnie bardzo krótkie odcinki rzędu 10-15ms, krótszy niż okres odczytu (dla 50Hz będzie 20ms).

Przy nagrywaniu w sposób ciągły będzie bufor, z którego wydobywasz próbki i jeżeli będziesz nagrywać z częstotliwością 8000Hz, to będziesz wykorzystywać co 160 próbkę (ewentualnie możesz uśrednić wartość kilku kolejnych próbek).

0
Wielki Szczur napisał(a):

Przechwytywanie dźwięku: http://stackoverflow.com/a/18812248 nie wiem czy to dokładnie to co potrzebujesz ale może uda Ci sie jakoś dostosować do swoich wymagań ;) Kod działa.
Mechanizm nazywa się loopback recording i Twoja karta dźwiękowa musi mieć taką funkcję.

Zaproponowana biblioteka (CSCore) praktycznie wyczerpuje temat :) Dziękuję za pomoc !

1 użytkowników online, w tym zalogowanych: 0, gości: 1