Now that I think about it, the beamforming was computed offline in MATLAB. but my point is that for this type of thing, you're just pitting your audio hardware against your rig's ability to do the Fourier Transform
On Sat, Feb 6, 2021 at 10:15 PM Zhiguang Zhang <[email protected]> wrote: > for what it's worth i was working on something similar at a previous > position, and what we used was a older-gen Presonus board with 16 or 24 XLR > inputs, and just using Portaudio, a simple beamforming algorithm with a mic > array sounded excellent. not sure exactly what application would require > sub-sample precision, but barring anything inherent in the hardware itself, > you're essentially comparing acoustical air propagation against realtime > DSP - which might actually be your bottleneck because a lot of realtime > acoustics algorithms require the FFT > > On Sat, Feb 6, 2021 at 7:54 PM Andrew Simper <[email protected]> wrote: > >> Brian has covered a lot of ground already, but I wanted to add a few more >> points since I've got a friend with direct experience with using ADC to >> capture mic arrays. >> >> On Sun, 7 Feb 2021 at 02:00, Brian Willoughby <[email protected]> >> wrote: >> >>> On Feb 6, 2021, at 02:10, Andy Farnell wrote: >>> >>> There is no intrinsic inter-channel skew for similar input types handled >>> by matching converters (or within the typical multi-channel converter). I >>> was pointing out that the delay internal to a 24-bit converter is hundreds >>> of samples. That's not saying that the delay is different for every >>> channel, unless there are different types of converters or no converter at >>> all. >>> >> >> If you want things to have the same latency then apart from matching >> converter chips with the same word clock and triggering recording with the >> same trigger you also have to match the settings of the converter chips. I >> know the modern AKM stuff used by RME in my Fireface UCX has different >> quality filtering available, shorter or longer FIR filters at both the >> input and output. Also note that there may be some anti-aliasing filtering >> going on in analog, the output of my RME Fireface UCX uses the lowest >> latency FIR output mode of the AKM, but they use a switch capacitor filter >> for further anti-aliasing, which will cause some non-linear group delay. >> This may also be happening at the input stages on some devices, so if >> you're using phase differences between measured signals of the mic array >> for positioning information you would have to also measure and correct for >> the phase shift of any analog anti-aliasing filters, and each channel won't >> have perfectly matched capacitors. >> >> For accurate position information from a mic array you would also need to >> calibrate the absolute frequency of your word clock crystal to a known very >> accurate timing reference, say an atomic clock or GPS clock, and also check >> that your crystal doesn't drift too much. >> >> >> Then you have the problem of linking more than one device when you need >>> more than 8 channels. There, you're likely to have inter-channel skew >>> unless you use exactly the same devices on all channels and synchronize >>> their clocks. >>> >> >> Sadly even this is not the case. A friend tried using two MOTU interfaces >> with locked word clock (either both external, or one following the clock of >> the other) and every time he recorded the delay between the two devices was >> different, and it wasn't even an integer of the sample rate different >> between the two, it kept on changing with no pattern. If you need > 8 >> channels and you want reliability for measurements of mic arrays I would >> stick with gear that has enough inputs to cover how many mics you have, and >> stick to known brands people use for such tasks. My friend that was using >> the MOTU gear ended up grabbing an RME MADIface Pro, and an M-32 AD or M-16 >> AD (can't remember how many channels he needed), and everything has been >> rock solid for him. >> >> >> Sorry for being pedantic. I just wanted to point out that inter-channel >>> skew is not intrinsic - just latency. >>> >>> Brian Willoughby >>> >> >> >> If you are using two devices and hoping for the best then it's also good >> to double check in your OS settings that on the fly resampling isn't being >> done to fake word clock sync, since it will just degrade your measurements. >> >> Cheers, >> >> Andy Simper >> >>
