Sound Processing and X-Meridian
• Reaper (with Rearoute Virtual Asio Driver). Rearoute is an alternative to VAC, but using ASIO instead of WDM virtual driver. It’s a commercial product, but trial never expires, so you can try it for as long as you want, and when you feel satisfied you can purchase it.
• VSTHost (For applying chains of VST plugins) - This is an alternative to console but it’s free!
• Winamp or Foobar Asio Output Plugins (Free)
• VST Plugins (Many of them listed on this site). For the sake of reference, I used Rubber Filter (for crossover)
In your X-Meridian control panel, enable all 8 speakers (Don’t need SPDIF Enabled). All the rest of the features should be disabled.
Download and install Reaper. Make sure Asio Driver is installed.
Open Reaper and create a new empty project.
Create a new stereo track.
Once inserted, press the R button for enabling recording and also speaker next to the track until it becomes white (monitoring enabled).
Make this track stereo, and assign it to rearoute channels 1+2 by Left or Right clicking over the “green area”
Press the” io” icon on the track and add a new hardware output to Rearoute 3 + 4
By now, an application can place data onto Rearoute 1-2 channels and Reaper Application can propagate those data to Rearoute 3-4 Channels.
Now, it’s time to set our player to output a song to Rearoute. Download Winamp ASIO Output plugin, and put it in Winamp’s plugins’ folder (Usually “C:\Program Files\Winamp\Plugins”). If you’re using Foobar, place the appropriate Asio output plugin, into its “Components” folder (Usually “C:\Program Files\foobar2000\components”)
Now, open Winamp, goto Preferences (Ctrl+P->Plug-ins->Output), and select Asio output plugin to output to Rearoute Asio Driver.
Pressing the “Configure” button, will present you with a setup window, in which you select Rearoute as your output device. For the rest of the settings, I didn’t find something affecting it, so you can just use the default ones, or copy mine from the screenshot.
Now, try to play a song in Winamp and you should see that signal is present in your reaper project, on the track you created before.
So, until now, we managed to configure our media player (Winamp-Foobar it’s similar) to send it’s audio output to our Rearoute Asio Driver. Don’t forget that we configured Rearoute channels 1+2 to send their output to Rearoute channels 3+4.
Now, proceed to put VSTHost (Probably Console can work also but I’ve never tried it) to work. Download it and extract it to a folder (I preferred “C:\Program Files\vsthost”). Launch the application (“vsthost.exe”) and goto Devices->Wave. On the output port, select Asio: ReaRoute Asio.
Find and install some VST plugins. For the purpose of this tutorial, I’m going to use Rubber Filter (crossover). I also prefer to install all my plugins into 1 folder (“C:\Program Files\VSTPlugIns”), but I guess this shouldn’t really matter.
Now, still in VSTHost app goto File->Set PlugIn Path. Indicate the folders you have VST Plugins, for easier access inside VSTHost. You can browse to a folder, or simply type in your VST PlugIns’ folders (One folder per line).
Now, you can simply add a plugin, by selecting one through File->PlugIns.
In the example, I use 4 rubber filters (crossovers).
In order to select the input for a PlugIn, press the button shown below
In the window that opens, assign the input channels.
Rearoute channels 3-4 should be the inputs on your first plugin(s) in the chain. Rearoute 5-12 should be your outputs for the last plugins (if you are going to use all 8 outputs of your card).
In order to select the outputs for your VST plugins (in case of course of the last plugins in the chain), press the button shown below.
On the setup window, select your output channels (for the first rubber filter, it’s Rearoute 5+6)
To conclude, I select Rearoute3/4 as the input for all Rubber Filter Plugins, and rearoute 5/6, rearoute 7/8, rearoute 9/10, rearoute 11/12 as the output of each plugin.
Now, having opened first your reaper project, play something in Winamp and you’ll see animations inside vsthost plugins, indicating reception of signal.
Back to reaper, goto Options->Preferences->Audio->Device. Select ASIO as the Project’s Audio System. Your Asio Driver should be C-Media Oxygen Asio. You don’t need to enable inputs. In Output Range, first should be 1:L and last should be 8:Rb. This means that all X-Meridian’s analog outs are included in the output range of the Reaper Project.
In the same setup window, press Asio Configuration, and change Latency to 30ms (you need to try it, since 20ms to 150ms also work for me)
Now, add 4 more stereo tracks in reaper, with “Record Armed” (click on R button and it becomes Red) and Record Monitoring: ON (click on speaker next to the track and it becomes white). Now, set them stereo, by left or right clicking in the green area of each track and selecting stereo input-Rearoute 5/ Rearoute 6 until Rearoute e 11/Rearoute12 for each of them. To conclude, those are the tracks that are output by VSTHost and are placed inside reaper project. Last step, is to output to soundcard. Pressing the “io” button on each track, allows you to “add New hardware output”. Probably, you’ll need to use outputs 1:L/R, 3:Ls/Rs, 5:C/Sub and 7:Lb/Rb, since they physically correspond to the stereo outputs of you soundcard.
I’m not including screenshots for this phase, since you should be familiar with this as it has been explained in the beginning of this tutorial.
By default, reaper’s Master track, outputs to X-Meridian’s out 1:L/R and you’ll probably hear much distorted sound on this channel (every sound seems that is mixed in master). Either mute this track, or remover 1:L/R from the hardware outputs (Press “io” button in MASTER track and then delete 1:L/R output).
Now, you should be able to play something in Winamp/Foobar and be able to hear it through your speakers (Well, I guess you will try it at home first). Most of the rest of the work needed in order to achieve your desired result is inside VSTHost. It’s pretty intuitive and I don’t think you should have any major problem with that. It obviously offers you a way to chain several VST Plugins. It didn’t take me more than 10 minutes to get to learn it.
List of Problems that I hope I’ll solve.
1st Problem: If Reaper’s Window has focus, sound becomes interrupted. Well, maybe this is not a serious problem, since normally we don’t need Reaper on front of other windows.
2nd Problem: Winamp gets slow on responding (Foobar with Asio output plugin seems OK-Maybe a bug with Winamp Asio Output plugin?). Personally, I have no problem using Foobar, but I’ll try to seek for possible reason/fixes.
3rd Problem: In Winamp, volume control doesn’t work along with Asio Output Plugin. In Frontend Application then, probably we should use Windows volume control? This I guess we need to avoid, since I think it uses 16 bit calculations and results to lower quality. Foobar it’s ok, and if Frontend allows, we can put windows volume control to 100% and control Foobar’s volume.
4th This method does not capture WDM sounds. It works through Asio Virtual driver (Rearoute), so windows sounds will get to your speakers, the normal way… Maybe, disable those sounds and use only Applications outputting to Asio? In fact, I’m thinking if VAC provides with a way to capture WDM sounds and send them to any other ASIO Driver (In this case Rearoute’s channels 1+2). I’ll have to try it, since I honestly never tried VAC and I’m not very sure if it functions this way.
5th VSTHost , doesn’t seem to remember the settings for each plugin. Probably need to search in their forums, because I might have a wrong setting somewhere?
I think I found it! In VSTHost, goto File->Autosave PlugIn Banks
6th Reaper has to be started before rest of the applications using it. Maybe we can find a utility doing it, or I can create a small app that can handle it (I don’t think it should be too hard). To be on the safe site, we would need to have Reaper completely launched, before VSTHost and Winamp/Foobar are launched.
7th Problem : on the C/Sub output, Sub channel (right) seems like it has some sort of low pass filter applied, and I cannot find a setting in X-Meridian control panel to bypass it. Maybe it’s hardcoded (in the chipset itself)? Does the idea of mixing low pass (left +right) into 1 channel sounds reasonable? Thinking of using only the C Channel and mix both Sub channels on it.
Hope that above information are useful for other people. Looking forward for suggestions on problem solving!