Ahh crap, I thought it was a video problem. One thing you could try is re-encoding the video and audio streams. Make sure you have full processing mode activated for both A/V. Select your compressor in Video -> Compression and Audio -> Compression, then go to File -> Save as... and choose a new filename. That way Virtualdub will re-write both streams in your chosen format. Hopefully VD can read the audio stream in the first place.
I find it quite odd that you're getting an unknown codec error in the video, I've never really had any major problems with uknown codecs
Ahh crap, I just had an idea i should've suggested ages ago. Try
DivFix
If it can't read the .avi at the first attempt, try re-encoding the video as i described, then run DivFix on it