Hola de nuevo,
Investigando un poco (no tengo mucha experiencia trabajando con audio) he visto que hay dos conceptos distintos: el audio del dispositivo (device level) y el audio del archivo (sample level).
Como estás usando WaveOut para reproducir distintos archivos .wav, todos están usando el mismo dispositivo (a no ser que le indicases que usasen otros, en caso de haberlos) y al cambiar el volumen de uno de los objetos en realidad está afectando al volumen del dispositivo.
Una forma que he visto de solucionarlo (hay más creo) es usar AudioFileReader en vez de WaveFileReader, puesto que el primero tiene la propiedad Volume que permite cambiar el volumen de reproducción de sólo ese archivo.
Ejemplo:
Código vb:
Ver originalDim Noise As WaveOut
Dim NoiseReader As AudioFileReader
NoiseReader = New AudioFileReader(Application.StartupPath & "\media\2010\Noise.wav")
Dim looping As New LoopStream(NoiseReader) '
Noise = New WaveOut()
Noise.Init(looping)
Noise.Play()
Ahora en todos los sitios donde quieras cambiar el volumen tendrás que usar el NoiseReader
He estado probandolo y funciona, pero hay que mirar un poco sobre como funciona el valor del volumen, puesto que creo que depende del volumen del dispositivo y del volumen del sample.
Espero que te sirva y estamos aquí para cualquier cosa.
Un saludo.