Witam,
Mam za zadanie oprogramować macierz składającą się z 48 mikrofonów. Podłączone są one do zewnętrznych kart dźwiękowych (MOTU 24 I/O) i LabVIEW jak i system normalnie je widzą.
Wszystkie 48 kanałów musi być ze sobą synchronizowanych.
Przy pomocy zmodyfikowanego VI-a Sound Input Read (dodany reentrant) potrafię obsłużyć maksymalnie 8 kanałów (4 równoległe instancje VI-a po 2 kanały). Dodanie 5 odczytu powoduje prawie natychmiastowe (odczyta jedna porcja danych, może dwie) wywalenie błędu o nieuruchomionym tasku nagrywania dźwięku i nic nie da się odczytać.
Zna może ktoś jakąś metodę równoległego odczytu danych z dość sporej ilości wejść mikrofonowych?
Jest sterownik ASIO, nawet jest jego wrapper do .NET-a, ale jeżeli była by jakaś natywna funkcja w LabVIEW do obsługi wielu mikrofonów, to bym ją preferował, bo mniej pisania i kod sprawdzony.
Odczyt danych z macierzy mikrofonów
Odczyt danych z macierzy mikrofonów
Jeśli jest ASIO i wraper do .NET-a to jednak to rozwiązanie. W sterownikach (VI'jach) karty dzwiękowej nic sie nie zmieniło na poziomie LV2012: obsługa kart dźwiękowych nie wygląda na priorytet w środowisku LabVIEW ;).