Does that mean there was bitrot ready in the original file? Something else? How is the checksum even generated successfully if it’s corrupted or undreadable in the first place.
Any way to fix?
It is important that you check to see if the file really is pristine after you take the first checksum. That you can read and use the file. Otherwise you may take a checksum of a file that is already corrupt. That is not very useful.
Most likely it is not actually spontaneous bitrot. It is much more likely that somebody made the file corrupt. Usually it is some form of user error.
Its an audio file. I can play it but cant tell easily without playing through it to see if it is corrupted at certain parts.
Then you have to assume that the file already is at least a little corrupt. What you need to determine is if the level of corruption is so bad that it is a problem. If it crash an audioplayer or the file sounds bad. Ideally you have a backup copy that is better or you can download or create a new file that works OK. Possibly you can re-encode the file to fix problems. It will degrade audio quality if the encoding is lossy. But perhaps not enough to be noticeable.
Some audio file formats have embedded checksums. FLAC or WavPack. Perhaps more? You should be able to find utilites that can compare the embedded checksum with the current stored data.
In the future use a checksummed format or store separate checksums. Or zip the files. The zip format has embedded checksums. (Same with all(?) other compressed formats.)
Are you saying it fails to make a checksum at all? What program? Try this one: https://github.com/gurnec/HashCheck/releases/tag/v2.4.0
I am on using hashcheck lol. It works. But when checking, it comes out as unreadable.
What? The hash is just a number in a text file. Open the md5 with notepad?
You aren’t very clear… Are you saying it creates the hash, but then verifying fails? I don’t know what you mean by unreadable
What does that mean?
I can create the .md5 file but upon opening it to test, it comes up as “unreadable” status.
Why are you using third party tools for this?
An “unreadable” result sounds like a failure from HashCheck - What does your OS Native tools give you?