Here's
WallpaperVolume, a quick hack, untested, XP only.
Just fill in the first few lines with wallpaper names and volumes, and see if it works.
Skrommel
;WallpaperVolume.ahk
; Change the volume when the wallpaper changes in XP
;Skrommel @ 2009
wallpaper1=Waves.jpg
volume1=10
wallpaper2=Sunlight.jpg
volume2=50
wallpaper3=Golf.jpg
volume3=100
#NoEnv
#SingleInstance,Force
Loop
{
Sleep,1000
oldwallpaper:=wallpaper
RegRead,wallpaper,HKEY_CURRENT_USER,Control Panel\Desktop,wallpaper
If (wallpaper=oldwallpaper)
Continue
Loop
{
currentwallpaper:=wallpaper%A_Index%
If currentwallpaper=
Break
IfInString,wallpaper,%currentwallpaper%
{
currentvolume:=volume%A_Index%
SoundSet,%currentvolume%
TrayTip,%applicationname%,Volume: %currentvolume%
}
}
}