Page 1 of 2
#1
For one of my school projects (I'm a computer science major) I decided to write a virtual guitar amplifier to serve as a practice amp and free recording solution for myself. It turned out pretty reasonable, so I've decided to open source it and release it for free for everyone:

Website:

http://nemesis.thewavelength.net/index.php?p=51

About:

virtuAMP is an open source real time virtual guitar amplifier for your home computer. virtuAMP provides an intuitive interface for customizing your sound through a virtual pedalboard, which behaves as your existing guitar rig does, allowing you to place effect pedals, connect them using cables and control their sound using their controls. Your guitar connects directly to virtuAMP through your sound card's line in, making virtuAMP a good substitute for a practice amplifier.

Screenshot:



Big: http://nemesis.thewavelength.net/images/images/vabig1.png

Audio Samples:

Each of these audio samples were captured by virtuAMP from my guitar (a Fender Stratocaster) connected directly to my sound card. No post processing was added, only Audacity was used to convert the .wav file to .mp3.



Features:

  • Real-time 32 bit audio processing.
  • Intuitive virtual pedalboard interface.
  • Simulate several effect pedals, including:

  • Automatic Wah
  • Boost
  • Chorus
  • Compressor
  • Delay
  • Distortion
  • Envelope Filter
  • Equalizer
  • Fader
  • Feedback Loop
  • Flanger
  • FFT Specturm
  • Fuzz
  • Loop Station
  • Metronome
  • Noise Gate
  • Octave
  • Oscilloscope
  • Overdrive
  • Parallel Feedback Loop
  • Phase Shifter
  • Player
  • Recorder
  • Reverb
  • Ring Modulator
  • Tremolo
  • Vibrato
  • Record and playback riffs for real-time mixing.
  • Toggle effects using your keyboard as a foot pedal.
  • No extra hardware needed; connects directly to your sound card.
  • Free software.


Important Notes:

  • To use this program, you will need some way to connect your guitar to your computer. I recommend buying a 1/4" to 3.5mm adapter such as this one (6$) or using a microphone/headphone combination.
  • If you experience any problems with the software, please first check the ReadMe.txt file.
  • This software comes with absolutely no warranty; connecting your guitar directly to your sound card may damage some old/cheap sound cards.
  • I plan to add more effect pedals in the future.


System Requirements:
  • 2.0 Ghz Pentium 4 Class CPU or equivalent
  • 256 MB RAM
  • 3D Video Adaptor
  • Audio Adaptor


System Recommendations:
  • 3.0 Ghz Pentium 4 Class CPU or equivalent.
  • 512 MB RAM
  • 3D Video Adaptor with latest drivers (GeForce, ATI, Matrox etc.)
  • High Quality Audio Adaptor


Download:

http://nemesis.thewavelength.net/index.php?p=52
Last edited by Nem at May 25, 2008,
#2
Looks pretty cool.

You should release a linux build, compatible with JACK (Jack Audio Connection Kit). I mean, open-source windows software? No thanks.

Good job though, I'd love to try it out, but... y'know, I don't support microsoft
Quote by Godzilla1969
I love you, Muphin. You have great taste in music.

Quote by Pacifica112J
Muphin > You

The Cooperation
#4
Quote by Muphin
You should release a linux build, compatible with JACK (Jack Audio Connection Kit). I mean, open-source windows software? No thanks.

A Linux port would take a bit of work. The audio is done through an abstract interface (so that would port over easy), and most of the graphics are OpenGL, but the windowing API in Windows would require a fair bit of work to port over. I don't see any reason why it shouldn't run under Wine.

Perhaps in the future, but right now I'd like to get Fast Fourier implemented so I can do frequency domain effects easier (Wah/Octave/etc.).

Quote by System4321
Can I use my Toneport UX2? I'll have a look see if its any good if it does

Can't say for sure, but I suspect not. virtuAMP is designed to be a standalone application for those of use without other solutions.
#5
Quote by System4321
Can I use my Toneport UX2? I'll have a look see if its any good if it does


you can, but you have to have gearbox open
fght ff yr dmns. wrt sngs n yr slp. fight yr dmns your DEMONS. w lv y. w mss y. i lv y s mch tht t hrts m hd.
#6
I've released v1.1.0 of virtuAMP (same link as above), which mostly focuses on better audio quality and Vista support. The complete change log is as follows:
  • Added Feedback Loop effect.
  • Added Flanger effect.
  • Added audio options to main menu.
  • Added full duplex DirectSound driver.
  • Improved Windows Multimedia driver.
  • Fixed Windows Vista audio.
  • Fixed Windows Vista graphics.

Enjoy!
#7
Downloading it now. If its good, you are my saviour.

edit- bit of a bug, if i maximise it it freezes,,,
Private guitar lessons available in West London, UK with an experienced and qualified tutor. Most subjects/styles covered. PM me for more information.
#9
I have to buy one of those adaptors to try this out...I checked online and it looks like they have a few of these adaptors in stock at the source near me...only 3 left though...might pick one up tonight.

I downloaded the program for now...have to test it out later...

I like the look of the VirtuAMP program with the pedals
Go to this page to hear my original song recordings

Click Here
Last edited by D_Vincent at Sep 6, 2007,
#11
thanks for sharing.

could please post a tab of what you were playing in the overdrive clip. it sounded nice and id like to replicate.
#12
I'm always interested in these sorts of things. I'm looking forward to it.
Agile AL-3100 (highly recommended)
SX SST57 strat copy
OE30 Hollowbody
SX fretless bass
Epiphone PR-200 acoustic
Yamaha G-40 classical
Epiphone Valve Junior head
1x12 custom cab
4x12 Behringer Half-stack

My Solo Stuff

My Band

#13
Quote by g1asseye
edit- bit of a bug, if i maximise it it freezes,,,
Can't seem to duplicate this problem. Can you give me more specific steps and let me know what Operating System you are using? There also may be useful information in the log.txt file virtuAMP generates (in the folder you installed it to).

Quote by theWallofYAWN
thanks for sharing.

could please post a tab of what you were playing in the overdrive clip. it sounded nice and id like to replicate.
One of my favorite songs: Kiss Me Deadly by Generation X. Tab's on UG.
#15
Quote by man_po_po
i find it really hard to turn the knobs can someone help?
Just move your mouse left and right, not up and down.
#16
I'm trying to use my Firepod as an input/output device, but it doesn't seem to be supported?

My onboard soundcard is no good, the latency is on the order of about 10 milliseconds.
I wouldn't use my onboard soundcard anyway.

I like the look and functionality, though
Agile AL-3100 (highly recommended)
SX SST57 strat copy
OE30 Hollowbody
SX fretless bass
Epiphone PR-200 acoustic
Yamaha G-40 classical
Epiphone Valve Junior head
1x12 custom cab
4x12 Behringer Half-stack

My Solo Stuff

My Band

#17
i might buy a jack tonight but what should i tell the salesman at the store?
im looking for something to plug my guitar into my pc?
or does it have a more specific name?

edit: btw before i go out and buy the jack, is this sound card good enought to stand the guitar?
Conexant Cx20549 @ nVIDIA nForce 430 (MCP51) - High Definition Audio Controller


thanks man
Last edited by Spitz13 at Sep 9, 2007,
#18
Quote by weirdjohn87
I'm trying to use my Firepod as an input/output device, but it doesn't seem to be supported?

My onboard soundcard is no good, the latency is on the order of about 10 milliseconds.
I wouldn't use my onboard soundcard anyway.

I like the look and functionality, though
The fastest setting in virtuAMP has a latency of about 33ms. There is no particular reason for this limit (none of the cheap sound cards I have can best it) but I'll increase it in the next release. virtuAMP uses the default input device to record, I'll also look at adding an interface to select the input device in the case of additional devices.
Quote by Spitz13
i might buy a jack tonight but what should i tell the salesman at the store?
im looking for something to plug my guitar into my pc?
or does it have a more specific name?

edit: btw before i go out and buy the jack, is this sound card good enought to stand the guitar?
Conexant Cx20549 @ nVIDIA nForce 430 (MCP51) - High Definition Audio Controller


thanks man
Tell him you want a 1/4" to 1/8" mono adapter, like the one linked to in my first post (there's a picture so you know what you're looking for). I can't comment on how well a certain sound card will work, but I've tried it on several cheap on-board sound cards at home and they all seem fine.
Last edited by Nem at Sep 9, 2007,
#19
I've released v1.2.0 of virtuAMP (same link as above), which mostly focuses on new and improved effect pedals. The complete change log is as follows:
  • Added Automatic Wah effect.
  • Added Boost effect.
  • Added Chorus effect.
  • Added Envelope Filter effect.
  • Added FFT Spectrum.
  • Added Fader effect.
  • Added Loop Station effect.
  • Added Octave effect.
  • Added Parallel Feedback Loop effect.
  • Added Ring Modulator effect.
  • Added Vibrato effect.
  • Added Reverse and Long option to Delay.
  • Added Additive mode to Feedback Loop.
  • Added Center DC option to Preamp.
  • Rewrote Equalizer effect.
  • Rewrote Flanger effect.
  • Rewrote Reverb effect.

Enjoy!
#20
This looks cool, downloading. One question, will it work with a stealthplug?

Edit:Meh. Guess not. Looks cool though.
Last edited by Lucky#Slevin at Mar 20, 2008,
#21
Holy Crap....

I totally missed this thread before.

Much respect from a fellow programmer. This looks awesome.

/friend request sent

EDIT: I just noticed your the guy who wrote the terrain generator I used to use back when I was map macking. Small world...
Irrelevant quote from obscure person
Obnoxious statement regarding size of e-ween
Italicized text indicating bandwagoning masquerading as deep thought
ASCII graphic that will take over the world if you put one in your signature
Made up statistic
Last edited by Death-Speak at Mar 20, 2008,
#24
omg this is soooo sick man considering im looking into buying some effects pedals but i wasnt sure exactly what i wanted (or how to even use em lol) even tho im just using a crappy mic to record to my comp with it still sounds fine for my purposes lol so thx man
#27
Damn, this looks awesome. I'll try it out later today Good job.
#28
Quote by Ziggums
So I plug my guitar into the Mic input?

You plug it into whichever device you have selected as your default input device. To determine (or set) which device this is:
  • Open up the Windows Volume Control (Start -> All Programs -> Accessories -> Entertainment -> Volume Control).
  • In the Options menu, select Properties.
  • Select the Recording radio button, then press OK.
  • Adjust the Volume of the recording device you wish to use and check its corresponding Select check box.
#29
This looks awesome. Thanks.

Edit: There's a very noticeable lag between when I play a note and when I hear it. Is there a way to fix this? I'm using my mic jack, if that matters.
Last edited by werty22 at Mar 21, 2008,
#30
Judging by the sounclips - the modulation effects were nice but I think the dist/OD type things left a lot to be desired. Not that I'm in much of a position to complain, I just thought that you might appreciate some contructive criticism.

Thanks for sharing this wih us
#31
sweet!

after extensive meddling, i came up with this:



Voodoo Child (with a Les Paul)

one comment: all of the distortions sound really dark, but that could just be my guitar. overall, its pretty great. i got minimal delay after messing with a lot of settings.
Quote by lespaul#1
Indie stands for Industrial I think, like Marilyn Manson.

Ibanez RG2EX2 (Dimarzio Breed in bridge)
Epiphone Les Paul 100
Laney LV300T
Line 6 Toneport GX

The Falling Object Model
#32
Quote by werty22
This looks awesome. Thanks.

Edit: There's a very noticeable lag between when I play a note and when I hear it. Is there a way to fix this? I'm using my mic jack, if that matters.

The lag you hear can be caused by one or more of the following:
  • There is a necessary delay caused by the process of recording a small amount of audio data, processing it, then playing it back. If the audio buffers are too small, then anytime your computer is momentarily busy doing something else, it may not have sufficient time to process the buffer before those buffers cued for playback are used up. This produces an audible pop. This problem is magnified by the fact that virtuAMP uses your sound card for both recording and playing (most sound cards can only do one thing at a time).
  • Certain effects require future audio information. Since it is impossible to get audio information that hasn't yet been recorded by the sound card (or indeed played), these effects impose a delay. The filter effects, for example, all make use of Fourier transforms, which trade off filter accuracy for lag. If you have multiple filter effects in parallel (e.g. an EQ followed by a envelope filter) the delay is magnified. Other effects such as chorus, flanger and vibrato are achieved by modulating a delayed signal with the dry signal, however, this delay should be inaudible.

While cause #2 cannot be helped, cause #1 can be mitigated by decreasing the size of your audio buffers. To do this, select a larger Buffer Denominator from the Audio menu in virtuAMP. If poping results, you will have to select a smaller Buffer Denominator. What settings you are able to achieve very quite a bit depending on your computer's speed and the audio card you have.

You may also try changing your Audio Driver from the Audio menu. Certain drivers perform better on certain operating systems and computers.


For those commenting on the distortion in virtuAMP, distortion, along with amp simulation, are two areas that virtuAMP desperately needs work on. I've found a few papers on simulating 12ax7 tubes which I'll hopefully be able to use to produce a warmer amp and overdrive tone, but I'm really lacking sufficient information on how distortion is achieved to write something better. My hope is to improve those two areas for the next release.

Lastly, I've added a envelope filter sample.

Ryan
#34
Thanks. The delay is just a subtle slapback now. This is cool. You can probably make a lot of money with software like this someday.
#35
i dont get it. what does it do?how do i make effects from my computer to my guitar?
MY GEAR!
Amp
-Peavey Classic 30
Guitars
-Silverburst Epiphone Les Paul Custom
-Squier Stratocaster
Pedals
-Ibanez TS9DX Turbo Tube Screamer
-Fender PT-100
-MXR Phase 90
-Fuzz Face Clone
-MXR Carbon Copy
#36
Quote by Telecaster7
so would you just use a microphone to get the sound then plug that into the line in bit, or do i have to get a jack thingy?

oh and software great! Thanks!
A microphone is fine, but the quality of the recording will depend a lot on the microphone and your recording environment. I also recommend using headphones in this situation to prevent feedback.

Quote by fender4482
i dont get it. what does it do?how do i make effects from my computer to my guitar?
The program allows you to play your guitar through your computer's speakers in real time whilst applying various types of effects.

It's not designed for use with your amp, though I suppose you could use an adapter to plug your computer's line out into your amp (I haven't tried this).
#38
Quote by Telecaster7
thanks and one last thing will i need any special stuff to open the file?
(sorry i know nothing about computers )

I'm not really clear on what you're asking. You don't need any special programs to use virtuAMP. virtuAMP records to .wav format which you can play in just about anything. You can later edit these files using Audacity.
Page 1 of 2