On the subject of lossyWAV, I wrote up a batch file for use with foobar2000 to convert stuff to lossyWAV+WavPack. With the assumption that you're going to be sticking the files into a portable player, bruteforcing a -1dB peak isn't really *that* destructive for the sake of compressability. *prepares to be crucified*
REM usage in foobar2000:
REM extension = .wv
REM addl params = %s %d
REM program = whatever you name this batch file
@echo off
REM reduce the volume of full range clips to -1dB at highest,
REM to prevent lossywav from complaining about clipping, etc
REM i had sox in PATH, so you may have to specify a full path
sox -v 0.88 "%~f1" "%~dpn1.vol.wav"
REM tested with lossywav 0.60
REM i had lossywav in PATH, so you may have to specify a full path
lossywav "%~dpn1.vol.wav" -3
REM the -x is for a bit extra compression, not really necessary
REM requires wavpack 4.42 alpha 2 to work
REM i had wavpack in PATH, so you may have to specify a full path
wavpack442a2 -x --merge-blocks --blocksize=512 "%~dpn1.vol.lossy.wav" "%~dp1%~2"
REM removes the intermediate files that sox and lossywav create
REM foobar removes the original temp wav, but not the others
del "%~dpn1*"
I used sox to apply a 0.88 volume scaling, but that's just an approximation of -1dB. If anyone knows any other method that doesn't feel like so much brute force, do feel free to tell me.
EDIT: Hmm... it looks like I might have posted too soon - it seems to choke on filenames with spaces in them despite quotes being used properly in all of the command lines...
EDIT2: Fixed the issue