Thursday, April 17, 2014

How to setup Jamulus with Anvil studio on windows 7

Jamulus is some cool software that enables you to jam in a band over the Internet in real time.  The free Jamulus software is available at http://llcon.sourceforge.net/   As I was hoping to get some of my local friends to try it with me I found it wasn't as easy for them to setup as it was for me on Linux.   I had it working fine in Linux mint 16 but I wanted my friends to have fun with me but they all use window systems.  I don't know much about windows since I haven't been using it since 2003 so I had a hell of a problem helping them setup things on windows.   After all the trouble of relearning windows just for this to work I thought it best I write about what I had to do to get this to work to make it easy for others.  First problem I had was that I didn't  find any documentation about anybody who had already done it when I did a google search.   So this is what I ended up learning.  First thing I did was install Jumulus on the windows 7 box and set it up to connect to my local jumulus server I had running on my local network on another system.  It all seemed to connect ok and I was also able to connect another system to the server from a 3rd computer that was running another client on a linux box and I was able to hear the sounds generated on the other linux client on this new windows 7 Jamulus client with no problems seen as long as Jamulus was the first to capture the sound card as audio output.  Now the next step was to see if I could also send sound from the windows 7 box to be heard on the other clients.  This is were I had the first big problem.  I couldn't find any method to pipe audio from any media player or any other sound generating application in windows that was already installed.  Windows media player would return a message when I ran it after jamulus was running , and that it couldn't play with no real reason I could understand in the error message it displayed.  if I shutdown the Jamulus client and restarted the media player it would play normaly.  So it seems the Jamulus would take away the only method of play back  from the media player or something like that if it captured the audio card first.  So with more research to find out how you rought audio in window 7 the only method I was able to find was to use jackd just as I do in linux.  I didn't even know there was a jackd that ran in windows until now.  I saw a good video of someone that used jackd and jamulus in a similar application here that was very helpful http://www.youtube.com/watch?v=h883l3PUJ50&list=UUmog53DvX6gikyDO_5jls3w.  So the next step was to download and install jackd for window and set that up.  The site I got jackd from is here:      http://jackaudio.org/download .  Make sure you select the correct version for your system as I made the error of downloading the 64/32bit windows version and installed it to find that it would not run on my 32 bit windows 7 computer.   I had to uninstall the 64bit version and download the correct windows xp.... 32bit version for my 32bit window 7 to work with it.  After I installed jackd I still needed an application that would use an ASIO driver.  oh so I also needed an ASIO driver as it seems this is also needed in this system I had didn't have one with the standard sound card install, so for this I need to install  asio4all software that is also free and got it at this location http://www.asio4all.com/ .   So now I was ready for some kind of music software that could drive asio for that I was able to find a free copy of Anvil Studio that can be downloaded from here: http://www.anvilstudio.com/.  After they were all installed I setup and configured each as needed as seen from the screen shots you will later see bellow.  And the short version of the above to install in a better order:

Quick Version
1. Install asio4all  found here:  http://www.asio4all.com/
2. Install Jamulus found here:  http://llcon.sourceforge.net/
3. Install jackd found here:  http://jackaudio.org/download
4. Install Anvil Studio found here:  http://www.anvilstudio.com/

Setup each application as seen bellow in screen shots:

This is the audio settings as seen from within Anvil studio to use the ASIO driver and the Jackrouter
This is the modified link target in jackd port short cut, note I had to add -d "ASIO-ASIO4ALL v2" -r 48000.   This sets the sample rate to 48000 needed in Jaumulus and sets the jackd to use the ASIO4ALL driver software

This is the configuration page as seen from Jamulus when using jackd in windows 7


I note I have a problem each time I playback from anvil I have to reset the conections to Jamulus from Anvil.  I hope we can find a better way that this won't happen in the future.