- Edited
Hi,
Long time listener, first time caller here
I am using the Bela in a 2xCTAG FACE (aka BEAST) + Bela cape combination (while waiting for the Audio Expansion capelet to arrive) in order to be able to access 16 audio inputs on a single Bela. The idea is to connect 16 microphones to the Bela and pass the audio through a Filter-and-add beam former, mixing it all down to two channels at the output. Once the capelet arrives, I will need to figure out if the difference in latency and sample rate between the CTAG and the Audio Expansion inputs will cause extra headaches, but for now this is the plan.
My issue is as follows:
Ideally, I would use a block size of 4 audio frames to keep the latency low. However, whenever I enable the analog inputs, I get spurious drops (and noticeable audio pops). The CPU usage is only at 48-50%, which is unexpected to me. I see these kinds of messages in the console:
McASP unexpected transmit frame sync occurred
audio frame 408848, errorCode: 3
McASP unexpected transmit frame sync occurred
Underrun detected: 1 blocks dropped
audio frame 518076, errorCode: 3
Sometimes these happen every 100k frames, sometimes they come in groups that are closer together. If I increase the block size to 8, the issue seems to disappear even with the analog inputs enabled. If I disable the analog inputs, I have no drops with block size of 4 (with 16x64 tap filters, 2x audio summing and 2x normalization at the outputs).
If I go to the other extreme and remove all the processing, and simply enable a passthrough of one of the CTAG inputs to one of the outputs, the problem still manifests itself with the 8 analog inputs enabled.
Thank you in advance for any tips on what could be wrong!
My version info:
Image:
v0.3.8h, 5 January 2023
Core code:
Last updated on '15 Sep 2024 18:59:59 '
from file 'Bela'
via 'update_board'
Update was successful
Git desc: '4e8133ca'