[AudioI] Octo Sound Card

Marc Lavallée marc at hacklava.net
Fri Apr 22 14:59:50 UTC 2022


Hi,

There's many tools available for DSP (using ALSA) on Linux;
I did not know about gtkiostream, but here's the ones I use:

FAUST is a functionnal language that compiles for many targets:
https://github.com/grame-cncm/faust
(but there's no FFT, apparently because processing happens at sample level)

I plan to to try:
https://github.com/bmc0/dsp
It looks like a fun hobby tool, aggregating many things (including FFT 
and convolution).
And it works directly with ALSA (no sound server required).

For high-level pythonesque DSP, I started using:
https://kokkinizita.linuxaudio.org/linuxaudio/downloads/zita-jacktools-1.6.0.tar.bz2
It's flexible and very good, but targeted at audio engineering (more 
than DSP).
And Jack is required, maybe it adds a bit of latency (and complexity).

On the RPI4, I use a realtime kernel, it helps... :
https://github.com/kdoren/linux/wiki

Marc

Le 2022-04-22 à 00 h 38, Samuel Taylor via People a écrit :
> Yes! We’re trying to use the maximum independent channels available. So yes we’re using multichannel input and output and we will be using speakers for the ANC. We have some grad students working on the algorithm for the ANC but essentially we are using a 3d array of speakers to converge on the users head. They’re going to be in the cab of an excavator with the goal being to cancel the droning noise of the excavators engine for the operator.
>
> So we will have an array of microphones collecting the data from the engine and an array of speakers sending out the modified data to the user.
>
> I have the sound card properly installed I just don’t understand the syntax for communicating with the sound card. It’s something I don’t have a lot of experience with and would love some guidance!
>
> I’ll check out the link you sent me and see if I can come to any conclusions.
>
> Thank you for your timely response!
>
> Sam Taylor
>
>> On Apr 21, 2022, at 6:46 PM, Matt Flax<matt at audioinjector.net>  wrote:
>>
>> Hi Sam,
>>
>> Are you using multichannel inputs for estimating ANC ? How are you
>> measuring and designing your ANC filters ? What is your current approach
>> for C++ and audio ?
>>
>> We can chat about your current approach for C++ and audio  if you like.
>>
>> One approach I like to use is available in the gtkiostream software.
>> gtkiostream has some C++ abstractions of the ALSA libasound2 API :
>> https://github.com/flatmax/gtkiostream/tree/master/include/ALSA
>>
>> Specifically for the Octo, there is also some code on ensuring channel
>> alignment on the input, it also demonstrates how to use the ALSA C++
>> classes :
>> https://github.com/flatmax/gtkiostream/blob/master/test/ALSAFullDuplexMinScan.C#L49-L77
>>
>> gtkiostream also has FIR and IIR filters implemented :
>> https://github.com/flatmax/gtkiostream/tree/master/include/DSP
>>
>> They may be of interest to you. An example of using the FIR class is in
>> this test file :
>> https://github.com/flatmax/gtkiostream/blob/master/test/FIRTest.C
>>
>> An example of using the IIR class is in this file :
>> https://github.com/flatmax/gtkiostream/blob/master/test/IIRTest.C
>>
>> Matt
>>
>>> On 21/4/22 15:43, Samuel Taylor via People wrote:
>>> Hi Everyone,
>>>
>>> I’m currently working on a research team and we’re trying to utilize the octo sound card for active noise canceling hardware. I’m having difficulty with programming the hardware (accessing the hardware through high level code such as c++) the syntax and requirements are stumping me. If there is anyone willing to communicate more with me on the topic that has some expertise with this i would love to correspond and learn from you.
>>>
>>> Thanks in advance,
>>> Sam Taylor
>>>
>>> Samktaylor21 at gnail.com
>>>
>> -- 
>> Checkout the community email list :
>> https://lists.audioinjector.net/mailman/listinfo/people
>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.audioinjector.net/pipermail/people/attachments/20220422/5ec01248/attachment.htm>


More information about the People mailing list