Whenever I've come across this problem it has actually been related to the id3 tags. (It was one of the first things I noticed when I first tried playing music on it)
I've discovered two causes of it which are:
- The "Total Tracks" field in the id3v2 section contains information (yes that's right any figure). Depending what media player you use you can find this out quite easily. (e.g. in winamp, I think it says "3/12" for the third track on a twelve track album. I presume that certain tag editors will allow you to just clear the field on all tracks on a given album. Personally, I use foobar2000 and it allows me to do that. )
- The id3v1 tag is empty or not activated.
I'm not sure if this is always true but I've certainly never come across an instance where checking the above didn't solve the problem.