What is "cooking"?
When a server sends binary information as text, the resulting data is referred to here as "cooked". The
problem is caused by the insertion of linefeeds at semi-regular intervals.
Here are some example sound files of what you will hear when an audio file is cooked:
wav ra mp3
What causes "cooking"?
"Cooking" occurs because the server that you are retrieving data from is not properly configured to
be aware that a particular binary file type is indeed binary. Most servers default to a text mode when
type is unknown.
What is Uncook95?
Uncook95 is the first windows based software for correcting the problem caused by improperly set
servers. It is freeware and far easier to use than other similar programs. It is also
the only software that allows uncooking of multiple files at once.
How Does it work?
Uncook95 uses a special algorithm to remove the carriage returns that were inserted by the server providing the binary file as a text file.
What are the proper MIME type settings?
audio/x-mpeg with extensions .mp3 and .m3u
audio/x-mpegurl with extension .mp3url
Make sure you know what you're doing when setting MIME Types
How Can I tell if a file is "cooked"?
When you click on the file link, it will appear as a bunch of gibberish looking text. Rather than clicking on the link, it is necessary to go back and click save as.
When listening to the file:
A cooked audio file sounds simply like squeaky noise. If the song sounds somewhat normal
except for a few bleeps, etc., it is most likely not cooked. You should not run uncook95 on
files that are not cooked or they will be damaged. The upcoming version will warn you when you
have selected files that are not cooked.
Examples of cooked Sound Files: wav ra mp3
Should I just run uncook on all my files, just in case?
NO NO NO NO!!!!!!!!!!! Only use Uncook95 on sound files that ARE cooked!!
Will uncook95 work on files other than mp3s?
Most people download uncook95 for fixing mp3 files, but there have been confirmed uses of uncook95
to uncook vivo movies, rar files, and other binary file types that were messed up.
What is the current version and where can I get it?
Version 1.0 is the latest version. A new version should be available shortly, with many new
features including auto-detecting files that aren't cooked. You can always get the latest version here.
Can I see the source code?
Currently, the source code is NOT being distributed. So, for now the answer is no!
Here's psuedocode explaining how it works:
Code is written by John Tesoriero and if you use this
pseudocode, please give credit. Thanks.
CR = Carriage Return character (ASCII value 13)
LF = Linefeed character (ASCII value 10)
while (not EOF)
{
get a character;
is character a LF?
if yes: {
is previous character a CR?
if yes: {
remove CR, but leave LF;
}
}
}
Source code is available for the UNIX/LINUX version called uxcook.