Hi,
I am interested to test the VocalFusion Speaker evaluation kit with linear array.
I would like to use your beam forming algorithm, but also integrate my code into your xCORE processor, if this is possible.
1) I am new on xCORE processor, so could you suggest me the evaluation kit to buy to start with xCORE?
Is the VocalFusion Speaker kit the right one?
2) Taking into account the algorithm already implemented into the XVF3100 for the beamforming, echo cancellation ... could you tell me how much computational power is available on the XVF3100 to implement other algorithms?
3) Are your built-in algorithms (AEC, BF...) available as source code or binary libs in order to be integrated into a project where there is also my code?
Thanks in advance
Fabrizio
how to add my own code on the VocalFusion Speaker evaluation kit
-
- Member
- Posts: 15
- Joined: Fri Mar 02, 2018 6:05 pm
-
Verified
- XCore Legend
- Posts: 1149
- Joined: Thu May 27, 2010 10:08 am
YEs you can - but it all depends how much code and what device..I would like to use your beam forming algorithm, but also integrate my code into your xCORE processor, if this is possible.
YEs, if you want to use our beamformer, AEC, Noise suppression blocks (branded vocalfusion) then this is fine. It depends whether you want linear mic array (for edge of room) or circular (for middle of room) which kit. Speaker is for middle of room.1) I am new on xCORE processor, so could you suggest me the evaluation kit to buy to start with xCORE?
Is the VocalFusion Speaker kit the right one?
It depends on which config you want. If you use I2S connection to host you have a lot more space for your own stuff.2) Taking into account the algorithm already implemented into the XVF3100 for the beamforming, echo cancellation ... could you tell me how much computational power is available on the XVF3100 to implement other algorithms?
Worst case is about 72MIPS but you could have up to 300MIPS free if you use I2S and don't need keyword (hotword)
You could go up to the XVF3500 and have 1000+ MIPS free if needed.
No - they are provided as linkable libraries. Everything else (audio framework, pdm->pcm decimators, interfaces, control) is supplied as source.3) Are your built-in algorithms (AEC, BF...) available as source code or binary libs in order to be integrated into a project where there is also my code?
Engineer at XMOS
-
- Member
- Posts: 15
- Joined: Fri Mar 02, 2018 6:05 pm
Thank you for the reply.
I am interested on linear mic array, mounted on top of a TV.
We will use I2S connection to the host and I2C for the device control, no keyword.
So with this setup we could have 300 MIPS free ... good
How many are the total MIPS available on the XVF3100 and XVF3500 devices?
Another question.
From the xMOS documentation I read that the pdm mic are downsampled to 16 kHz.
In our videocommunication systems the audio sampling frequency if 48 kHz, to have an excellent sound quality.
A 48 kHz full-band implementation is thinkable?
Does the XVF3100 device have enough computing power to do this?
Are the AEC and BF libraries also available at 48 kHz sampling rate?
Many thanks
Fabrizio
I am interested on linear mic array, mounted on top of a TV.
We will use I2S connection to the host and I2C for the device control, no keyword.
So with this setup we could have 300 MIPS free ... good
How many are the total MIPS available on the XVF3100 and XVF3500 devices?
Another question.
From the xMOS documentation I read that the pdm mic are downsampled to 16 kHz.
In our videocommunication systems the audio sampling frequency if 48 kHz, to have an excellent sound quality.
A 48 kHz full-band implementation is thinkable?
Does the XVF3100 device have enough computing power to do this?
Are the AEC and BF libraries also available at 48 kHz sampling rate?
Many thanks
Fabrizio
-
Verified
- XCore Legend
- Posts: 1149
- Joined: Thu May 27, 2010 10:08 am
Yes - note that the processing would be available in 2 blocks of 120MIPS and 1 block of 60MIPS or 5 blocks of 60MIPS. About 75kB total is available..So with this setup we could have 300 MIPS free ... good
XVF3000/3100 have 1200MIPS and XVF3500 has 2000MIPS. If I was in marketing I would double those figures because we can dual issue instructions.How many are the total MIPS available on the XVF3100 and XVF3500 devices?
It would more or less mean a tripling of the MIPS needed and some modification of the constants. However in reality you'd also need to heavily rearchitect to fit into the available threads. I'd categorise that as "non trivial". There's no plan to do this in the short term - most users require a stream for ASR apps hence the focus on wideband (8kHz nyquist)Another question.
A 48 kHz full-band implementation is thinkable?
Does the XVF3100 device have enough computing power to do this?
Are the AEC and BF libraries also available at 48 kHz sampling rate?
I wonder if it is feasible to mix a delayed portion of the spectrum above 8kHz to give the perception of higher quality???... It would be possible to have a 48kHz intermediate stage for the raw mic signals without a crazy amount of work.
Engineer at XMOS
-
- Member
- Posts: 15
- Joined: Fri Mar 02, 2018 6:05 pm
Hi,
I have a XVF3100-LIN33 evaluation board.
I built app_vf_spk_base_1i2o2_lin33_usbctl and the host control application vfctrl_usb for Win32.
I followed "xCORE VocalFusion Control Users Guide" to install the Windows USB driver (Win10).
But when I call vfctrl_usb.exe I have this error:
libusb_control_transfer returned libusb0-dll:err [control_msg] sending control message failed, win error: A device attached to the system is not functioning.
Error: Control query version failed
What am I doing wrong?
Thanks,
Fabrizio
I have a XVF3100-LIN33 evaluation board.
I built app_vf_spk_base_1i2o2_lin33_usbctl and the host control application vfctrl_usb for Win32.
I followed "xCORE VocalFusion Control Users Guide" to install the Windows USB driver (Win10).
But when I call vfctrl_usb.exe I have this error:
libusb_control_transfer returned libusb0-dll:err [control_msg] sending control message failed, win error: A device attached to the system is not functioning.
Error: Control query version failed
What am I doing wrong?
Thanks,
Fabrizio