AVX based FIR VST, crossover / EQ / DRC and delay

Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.
Hi Boris
Hosting FIR processing into ASIO driver / Output Port to Processing Routing
These are solved by Reaper.
https://sites.google.com/site/koonaudioprojects/exau2i-FFT-crossover
Reaper has ASIO virtual driver(ReaRoute, input from player software) and Asio client output.
from foobar or other Player software, Reaper looks like ASIO sound card.
your thought, 2 sound card, has big problem for underrun/overrun. by using Reaper and ASIO, I can process all signals in single clock domain.

'Virtual Audio Driver' Still If you want to try whole processor by yourself..
I posted simple ASIO driver source code.
https://sites.google.com/site/koonaudioprojects/usb-to-multi-channel-usb2-0
(1) get ASIO SDK from steinberg, build sample driver by yourself
(2) get koonasio01_20111128.cpp and include in your project, then struggle
(3) change output from FTDI(mine) to ASIO client.
Then you have ASIO in - ASIO out virtual driver.
(4) hook FIR processing in virtual driver. (ASIO driver has buffer copy, like VST)
 
Hi koon,

When I try to load your vst plugins into Reaper, I get an error saying that the plugin executed an invalid operation during scanning.

My setup:
Windows 7 x64
Reaper x32
foobar with asio_out plugin
Auzentech x-meridian sound card.

Thanks,
Corey

The plugin will crash if your computer can't support it. These FIR plugins don't do regular CPU processing. You need special processor to run them. There are currently 3 versions using 3 different technologies. Make sure your hardware meets one of these requirements and run the appropriate version.

SSE - the oldest and most available technology. Most current Intel and AMD CPUs support it.
AVX - it's new, only supported on the Intel Sandy Bridge and AMD Buldozer series.
CUDA - this is a technology that allows code to be executed in parallel on the graphic card's GPU thus freeing the CPU. You need a CUDA capable nVidia video card.
 
I am running the sandy bridge core i3. It happens with the SSE and the AVX plugin.

When I install the microsoft C++ redistributal, it gives me the error. When its uninstalled it can't find the dll file that comes with the installation of it. I would really like to try these plugins.
 
Hi Koon

I tried to follow your site to setup my first PC based FFT channel divider, Reaper; but i used Asus sound card instead of ExaU2I. Player is JRiver and wav file 44.1khz.

When setup Rearoute, i found it couldn't play the wav file at 44.1khz and needed to resample it to 48khz. But it couldn't accept sampling more than 48khz. Is that limitation of Rearoute? Any benefit to use higher sampling such as 192khz? Does other routing cable software like VAC can solve the problem? Or other setting changes?

Regards,
Gary
 
Hi Poon,

I have replaced my sound card with miniDsp USBStreamer. Player is using Foobar and thru Rearoute to Reaper and then to USBStreamer. I tried to play HD file using 24/192khz but Foobar reported it couldn't play 192000 file. Any reason? But i could play the HD file when connecting Foobar output directly to UBSStreamer.

Regards,
Gary

Hi, 48kHz issue should be Asus sound card. the way foobar(ASIO)-rearoute-reaper-ASIO device interface, is limited by ASIO device driver.

The ASUS sound card (7.1?) should be designed for Movies?
Then it's possible that sound card only accepts 48/96 signals.
 
Hi KOON3876,
There's also another alternative that involves 2 sound cards and a standalone application doing the processing. Card1 will be designated as the default sound on the system. The physical output on Card1 will be looped back to the input on Card1 with a patch cable (preferably on the digital path to avoid unnecessary conversion to analog). Then a standalone program running on the PC will read the input from Card1, do the FIR processing and output the filtered signals on Card2's outputs. This way unprocessed data never reaches Card2's outputs.

Have you considered a simpler alternative using a single sound card?

1. Set up the sound card as the default audio destination in Control Panel->Audio. This way, all media player programs etc. will direct their output to it.
2. Select the same sound card as the source in your standalone program, then select Wave as the input for media players, or SPDIF, line in etc. for external sources. Or maybe you only have one choice which is 'Mixer'.
3. In your standalone program, select the sound card's outputs as the destination for your program's output.

I can't see the flaw in this. Except for the fact that consumer type sound cards often automatically route the inputs to the output, but even this may not be too serious because only two of your eight outputs (or whatever) are wasted. However, 'professional' cards allow you to turn off this preset routing in the supplied driver 'applet', and by 'professional' I mean Creative X-Fi and upwards.

Has the two card/virtual sound card 'meme' arisen because of this preset routing problem with consumer sound cards? It certainly threw me for a while, and I did consider the more complex alternatives until I bought one of the better sound cards and realised that everything was as it should be.
 
There are surely many ways to do this. All of them involve buying a better sound card.

It would be very nice to know which sound cards can do this, and which can't. In another thread, someone confirmed that their 'better' sound card (about £600 better) could certainly do it - but I can't remember what sort it was. It may turn out to be something that all modern cards can do, bar the ones built into PCs.
 
In Reaper if you click the FX bypass button, it could be quite bad for a tweeter. So Ive worked out how to eliminate the button all together from a theme. (because i know i'll miss and click it by accident if its there)

Its just a matter of editing the rtconfig.txt file in the theme package.
 
Last edited:
Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.