I used the foobar "file verify" option to check about 40,000 files (took about 24 hours, but it worked nicely). It gives you a report you can save and sort, etc. Be careful though. It may identify certain files as having noncritical errors (I forget the exact language used in the output). You do NOT want to delete all these files. In my case, these were all related to the time of the files being a fraction of a second off from reported time. The files work and play just fine (in foobar, itunes, winamp, etc.--eveb gapless in itunes). And if fact, every file it noted this minor error on came from being encoded with an older MusicMatch 7.5 fgh based encoder.
By the way, I also used replaygain function on all these files in one batch using the "scan selection as albums (by tags). Obviously, make sure your tags are right first. The only issue I had in 40,000 files was dealing with compliation CDs. These weren't treated right (each artist ended up as a separate album from a replaygain point of view). I simply redid these replaygain settings a single album at a time (only had about 150 of these).
All in all, this all worked perfectly. And when I backup all these files to additional harddrives, I often run the file verify on the resulting files just to confirm things are ok.
QUOTE(mwalimu @ Mar 13 2007, 20:03)

I'm a new user of foobar2000, in large part to get the ReplayGain function (at least initially; I may be drawn to some of its other features once I start playing around with it). At the moment, however, I'm still recovering from a software problem that caused about 1-5% of the files on the drive to be corrupted, so now I'm looking for a way to identify which of mp3 files got trashed. Is there a function in foobar I can use to scan mp3 files and let me know which ones are valid and which are corrupted?
Does the ReplayGain feature itself work for this purpose? In other words, if I ReplayGain a file and it produces a good result, is it safe to assume it was able to read the file all the way through and didn't encounter any data corruption?
Edit: In case it matters, the files that were corrupted were quite possibly overwritten by portions of other mp3 files, which suggests that any "fault tolerant" scan (e.g. searching sequentially for a frame header when it doesn't find one where it expects, and continuing from there if it finds one) might fail to detect a corrupted file.
Thanks!
mwalimu
"Who is General Failure and why is he reading my hard drive?"