My mistake was (seemingly) that I didn't look further than Adobe Audition. I used it for all the transcoding/converting, believing it wouldn't matter since I figured it would use an external encoder and decoder. Obviously, I am far from an expert on this, as written in the initial post. I appreciate the quick responses though and I've at least learned something from this. I'm leaving the rest intact for future reference or whatever.
This experiment of mine started on OiNK, but I have been told to post here too. I must say that I am no expert in this field, but I find my results pretty convincing. Here is what I originally posted, though slightly edited for BBCode-differences. Am I doing something terribly wrong?
Introduction.
I have come to the conclusion that WMA Lossless isn't lossless. It's lossy. My suspicions first began when I read about the format on Wikipedia and found this:It compresses an audio CD to a range of 206 to 411MB, at bit rates of 470 to 940 kbit/s.
I think that most of you that read this know that CDs have a bitrate of 1411kbit and any truly lossless format should be able to reach that bitrate if need be. I could not verify the data on Wikipedia anywhere, so I decided to do some tests of my own. Below is a table with my results. (After I posted this, it was shown that WMA Lossless can and does go above 940kbit.)
How to interpret the table?
I have tested four songs. I first ripped them to WAV using EAC (which I have set up according to jiGGafellz' guide). When the ripping was complete, I wrote down the CRC that EAC reported for the track. After this, I encoded the WAV-file with "Windows Media Lossless 9.1 Lossless - VBR Quality 100, 44 kHz, 16 bit, stereo" (henceforth referred to as "WMA Lossless"). When this was complete, I converted the WMA-file to a raw PCM-file and used Hex Workshop to generate the PCM-file's CRC-32 and MD5 checksums (same as I've done with all files here). When this was done, I went back to the WAV-file and converted it to FLAC and then converted the FLAC-file to a raw PCM-file. With the last track, I also did APE, MP3 V0 and Ogg Q8.
If the process has been been lossless, the CRC reported in EAC should be identical to the CRC generated from the PCM-file.
WMA lossless CRC-32 MD5
01 - Lumsk - Nidvisa (EAC) 7BBEBB40 N/A
01 - Lumsk - Nidvisa.wav 3D6B77FE DF665856613CFA4204DC024C8EC9491F
01 - Lumsk - Nidvisa.wma 8C2A185E 8333B77D49974CDC9C2C1E9432D4EE4F
01 - Lumsk - Nidvisa.pcm F0ACCD50 A8FEF7BCF2D420300774A52A453A7678
FLAC CRC-32 MD5
01 - Lumsk - Nidvisa (EAC) 7BBEBB40 N/A
01 - Lumsk - Nidvisa.wav 3D6B77FE DF665856613CFA4204DC024C8EC9491F
01 - Lumsk - Nidvisa.flac 4180B1FE 02E3CBAC0D9D35640D45FD22A9177D09
01 - Lumsk - Nidvisa.flac.pcm 7BBEBB40 E44DFAFA1DF53E9047C71D345D2171C1
----------------------------------------------------------------------------------------
WMA lossless CRC-32 MD5
02 - Lumsk - Allvis (EAC) 0A220997 N/A
02 - Lumsk - Allvis.wav D63C2651 B81BE246617B1F12A0EDB7C87640E322
02 - Lumsk - Allvis.wma 9A42BAFF DE35F3EDF18D86E2814004EE82167853
02 - Lumsk - Allvis.pcm 1562B26D 0B1B8491F3E0DEBCC43953F6B67C0E5F
FLAC CRC-32 MD5
02 - Lumsk - Allvis (EAC) 0A220997 N/A
02 - Lumsk - Allvis.wav D63C2651 B81BE246617B1F12A0EDB7C87640E322
02 - Lumsk - Allvis.flac C09B0FF1 D281E08C0269843A9D2A61926B91D0AE
02 - Lumsk - Allvis.flac.pcm 0A220997 0B813B94E00BB32AD24B32255C00569E
----------------------------------------------------------------------------------------
WMA lossless CRC-32 MD5
02 - Hypocrite - In Blood We End (EAC) F7595B16 N/A
02 - Hypocrite - In Blood We End.wav B4F2FD50 10A7F2A19D3C02C5F0B6E73B90333800
02 - Hypocrite - In Blood We End.wma 863899E0 A43FCEC7104A1BDC72D1DC26E0745C21
02 - Hypocrite - In Blood We End.pcm A9640374 4CC0EA67F2C778885575E3AEB37C517B
FLAC CRC-32 MD5
02 - Hypocrite - In Blood We End (EAC) F7595B16 N/A
02 - Hypocrite - In Blood We End.wav B4F2FD50 10A7F2A19D3C02C5F0B6E73B90333800
02 - Hypocrite - In Blood We End.flac 09F4901F 532F8E6D31B6CEB12F269E369A0E51F4
02 - Hypocrite - In Blood We End.flac.pcm F7595B16 46B554F6B31FA8F1A0211A74E6856303
----------------------------------------------------------------------------------------
WMA lossless CRC-32 MD5
07 - Danzig - Kiss The Skull (EAC) DC2B7760 N/A
07 - Danzig - Kiss The Skull.wav 4306A0A9 3C7CE3A8FD9275A5E48C9EDC17A9912A
07 - Danzig - Kiss The Skull.wma E487DCF1 B413ABCE51071D0A654F4613E2EE9EAC
07 - Danzig - Kiss The Skull.pcm 37056516 CE11778B500D5CE9630FD5CBE40A3611
FLAC CRC-32 MD5
07 - Danzig - Kiss The Skull (EAC) DC2B7760 N/A
07 - Danzig - Kiss The Skull.wav 4306A0A9 3C7CE3A8FD9275A5E48C9EDC17A9912A
07 - Danzig - Kiss The Skull.flac 7FE77755 CD057C8F125293C0284C8432FFED20BC
07 - Danzig - Kiss The Skull.flac.pcm DC2B7760 2C67B54837C14C40D12663156ED03E1E
APE CRC-32 MD5
07 - Danzig - Kiss The Skull (EAC) DC2B7760 N/A
07 - Danzig - Kiss The Skull.wav 4306A0A9 3C7CE3A8FD9275A5E48C9EDC17A9912A
07 - Danzig - Kiss The Skull.ape DC2B0794 8939306BD7755CD4FB9BB9817C8D8299
07 - Danzig - Kiss The Skull.ape.pcm DC2B7760 2C67B54837C14C40D12663156ED03E1E
MP3 V0 CRC-32 MD5
07 - Danzig - Kiss The Skull (EAC) DC2B7760 N/A
07 - Danzig - Kiss The Skull.wav 4306A0A9 3C7CE3A8FD9275A5E48C9EDC17A9912A
07 - Danzig - Kiss The Skull.mp3 A3FE6C2F 19228F57322CCDB240EC5C46AF6382C1
07 - Danzig - Kiss The Skull.mp3.pcm A99DCBD4 D488A72983EE02384BBE9183F1273DB3
Ogg Q8 CRC-32 MD5
07 - Danzig - Kiss The Skull (EAC) DC2B7760 N/A
07 - Danzig - Kiss The Skull.wav 4306A0A9 3C7CE3A8FD9275A5E48C9EDC17A9912A
07 - Danzig - Kiss The Skull.ogg 61AA2B4E B717A0A44CABB1B6AB9C60E6F7E91EBD
07 - Danzig - Kiss The Skull.ogg.pcm E6496C23 3C799FD14B035607E38F4981BF724E0B
Conclusion.
As is blatantly obvious, WMA Lossless is not lossless. In no case do the two CRCs match, while it matches in all cases with FLAC (and APE). WMA Lossless does, just like MP3 V0 and Ogg Q8 (or any other lossy format), damage the audio and should as such under no circumstances be used as a lossless format. Simply put: WMA Lossless is lossy.
To the current best of my knowledge, if the two CRCs don't match, the raw audio has been damaged and it is as such lossy. But the results did surprise me, since I would've thought someone else had figured this out sooner.
I don't know how reliable you find Adobe Audition to be, but I compared the tracks in a spectral analysis. I could see differences, but I decided to take extra precautions, so I took screenshots and made sure that everything was identical (except the spectral analysis, which was left intact). Then, I compared the PNG-files' checksums (CRC-32 and MD5 again). The FLAC and WAV match each other, whereas the WMA is different. APE matches, whereas MP3 V0 and Ogg Q8 failed. (The filenames are hyperlinks that lead the pictures. I did not use the same picture for WAV and FLAC, nor did I distort the WMA-picture myself.)
01 - Lumsk - Nidvisa CRC-32 MD5
spectral_wav.png 70BF8138 DC9D73A7D9459EC324454B50ACCE0CEB
spectral_wma.png 7A25554A D256CEBFA8FB911982B8B48B2FC579C0
spectral_flac.png 70BF8138 DC9D73A7D9459EC324454B50ACCE0CEB
- Spectral difference and other files can be found here: http://www.lykanthropos.com/hosted/01%20-%20Lumsk%20-%20Nidvisa/
----------------------------------------------------------------------------------------
02 - Hypocrite - In Blood We End CRC-32 MD5
spectral_wav.png 91A67A05 3A3E8777B0AD5754F1477CF66D505C08
spectral_wma.png 34DA3FEA 2C24C2D268F7CB4E69258664882AB8A4
]spectral_flac.png 91A67A05 3A3E8777B0AD5754F1477CF66D505C08
- Spectral difference and other files can be found here: http://www.lykanthropos.com/hosted/02%20-%20Hypocrite%20-%20In%20Blood%20We%20End/
----------------------------------------------------------------------------------------
02 - Lumsk - Allvis CRC-32 MD5
spectral_wav.png BD45E09F E9A6487E94CF36C148FAC09A6EBC4733
spectral_wma.png 3CE9547E D903E5D815A67C6BE972EFF8F06FAA59
spectral_flac.png BD45E09F E9A6487E94CF36C148FAC09A6EBC4733
- Spectral difference and other files can be found here: http://www.lykanthropos.com/hosted/02%20-%20Lumsk%20-%20Allvis/
----------------------------------------------------------------------------------------
07 - Danzig - Kiss The Skull CRC-32 MD5
spectral_wav.png 95CEE2F1 9849208C6649DDF45BB54740473C12E3
spectral_wma.png A974FF73 000D99409C015050E388232DA3E9D78E
spectral_flac.png 95CEE2F1 9849208C6649DDF45BB54740473C12E3
- Spectral difference and other files can be found here: http://www.lykanthropos.com/hosted/07%20-%20Danzig%20-%20Kiss%20The%20Skull/
spectral_ape.png 95CEE2F1 9849208C6649DDF45BB54740473C12E3
spectral_mp3v0.png AD8853E8 980F8C178BA0E40D3B117680128C9C65
spectral_oggq8.png D7039852 C6E5B4988419508A55E66C7F72DA5105
I decided to try flacinhell's nowadays classical EXE-->FLAC-->EXE experiment, as described here. The results were somewhat strange. I include SHA1 here, because flacinhell does so in his experiment.
EXE-->FLAC-->EXE CRC-32 MD5 SHA1
Firefox Setup 1.5.0.1.exe 09B143EA 8E1E0AEBFB24B09066BD70301C957D93 88C940D9EA5A3BC0496B5EDA66428E564B88EBD9
Firefox Setup 1.5.0.1.raw 09B143EA 8E1E0AEBFB24B09066BD70301C957D93 88C940D9EA5A3BC0496B5EDA66428E564B88EBD9
Firefox Setup 1.5.0.1.wav 383BEAB8 2253A80E6AA0AC70A4814D4A28B4E1C4 9EDD63772A94E037579C08F94DC7DE2C168C7E1D
Firefox Setup 1.5.0.1.flac 68022AF7 9B7E145EF22112C96265681E52C27C95 EDB1AB6E7B1418CE883AE20A512A31C3DD31634B
Firefox Setup 1.5.0.1.flac.raw 09B143EA 8E1E0AEBFB24B09066BD70301C957D93 88C940D9EA5A3BC0496B5EDA66428E564B88EBD9
Firefox Setup 1.5.0.1.flac.raw.exe 09B143EA 8E1E0AEBFB24B09066BD70301C957D93 88C940D9EA5A3BC0496B5EDA66428E564B88EBD9
EXE-->WMA Lossless-->EXE CRC-32 MD5 SHA1
Firefox Setup 1.5.0.1.exe 09B143EA 8E1E0AEBFB24B09066BD70301C957D93 88C940D9EA5A3BC0496B5EDA66428E564B88EBD9
Firefox Setup 1.5.0.1.raw 09B143EA 8E1E0AEBFB24B09066BD70301C957D93 88C940D9EA5A3BC0496B5EDA66428E564B88EBD9
Firefox Setup 1.5.0.1.wav 383BEAB8 2253A80E6AA0AC70A4814D4A28B4E1C4 9EDD63772A94E037579C08F94DC7DE2C168C7E1D
Firefox Setup 1.5.0.1.wma C8B76543 7C14E2D28D2BB79260179667D1D4953C DAD4EFC978B9DCE404327534C9313C16E5B141F4
Firefox Setup 1.5.0.1.wma.raw E9BAFC54 970851A0660C45905213DB4377A1E556 94E72BA4C2E640AFC6E38157B2D4ACB4E044869E
Firefox Setup 1.5.0.1.wma.raw.exe E9BAFC54 970851A0660C45905213DB4377A1E556 94E72BA4C2E640AFC6E38157B2D4ACB4E044869E
As you can see, the final EXE-file matches the original one when compressed to and decompressed from FLAC. It does however not match when compressed to and decompressed from WMA Lossless. Both *.raw.exe-files do, however, run perfectly.
Still suspicious, I decided to try again with the Google logo. All files available here.
PNG-->FLAC-->PNG CRC-32 MD5 SHA1
logo_plain.png 02E17AED FC4B16804ABF8B4BD06AA27FDD722F1C 128D68FDE914D534FA1008D5E942A7D944069739
logo_plain.raw 02E17AED FC4B16804ABF8B4BD06AA27FDD722F1C 128D68FDE914D534FA1008D5E942A7D944069739
logo_plain.wav 8F3E9E20 9E6761E529BC911D0D1EBC4CC612859E 5DCFEFF9E88826C43ACECBCF2CF434C67D3599EB
logo_plain.flac F95B9FE7 DE00EDCE398168584DA5BD994C803CF1 29CD865D4FA00A296CB57FD7484BCC492EF5F06A
logo_plain.flac.raw 02E17AED FC4B16804ABF8B4BD06AA27FDD722F1C 128D68FDE914D534FA1008D5E942A7D944069739
logo_plain.flac.raw.png 02E17AED FC4B16804ABF8B4BD06AA27FDD722F1C 128D68FDE914D534FA1008D5E942A7D944069739
PNG-->WMA Lossless-->PNG CRC-32 MD5 SHA1
logo_plain.png 02E17AED FC4B16804ABF8B4BD06AA27FDD722F1C 128D68FDE914D534FA1008D5E942A7D944069739
logo_plain.raw 02E17AED FC4B16804ABF8B4BD06AA27FDD722F1C 128D68FDE914D534FA1008D5E942A7D944069739
logo_plain.wav 8F3E9E20 9E6761E529BC911D0D1EBC4CC612859E 5DCFEFF9E88826C43ACECBCF2CF434C67D3599EB
logo_plain.wma AECAE70B 5BE68DA29E7B4491A0B6E717693A318E 1A640EACE5B55DAF06CBFD2E826F765C241C5DC6
logo_plain.wma.raw 7198D517 321945D80022E645FEDF8145E42721E6 EDC649D276E533F406104CC014379EC35345C4DA
logo_plain.wma.raw.png 7198D517 321945D80022E645FEDF8145E42721E6 EDC649D276E533F406104CC014379EC35345C4DA
logo_plain.flac.raw.png is and looks identical to logo_plain.png, where as logo_plain.wma.raw.png is distorted.
I decided to try this again with my a picture of a fox. All files available here.
PNG-->FLAC-->PNG CRC-32 MD5 SHA1
fox.png 9F5CDEFD CBD4DB4891DDBB0652E541F33C420C03 9080278B927C0FAD9CB71FF8145AA0307D512BAE
fox.raw 9F5CDEFD CBD4DB4891DDBB0652E541F33C420C03 9080278B927C0FAD9CB71FF8145AA0307D512BAE
fox.wav 5A407D4B CA1AE7B2F839997D95B2FCDB1B54539F 528CE82153D5BE9A9E7DF2464482F75207FE98A7
fox.flac BC70B7EA 0B0C95DDA0E62C62ED9A5FEC2355A013 E1F5289A57C248E3CB0523D10309A702D53D4D03
fox.flac.raw 9F5CDEFD CBD4DB4891DDBB0652E541F33C420C03 9080278B927C0FAD9CB71FF8145AA0307D512BAE
fox.flac.raw.png 9F5CDEFD CBD4DB4891DDBB0652E541F33C420C03 9080278B927C0FAD9CB71FF8145AA0307D512BAE
PNG-->WMA Lossless-->PNG CRC-32 MD5 SHA1
fox.png 9F5CDEFD CBD4DB4891DDBB0652E541F33C420C03 9080278B927C0FAD9CB71FF8145AA0307D512BAE
fox.raw 9F5CDEFD CBD4DB4891DDBB0652E541F33C420C03 9080278B927C0FAD9CB71FF8145AA0307D512BAE
fox.wav 5A407D4B CA1AE7B2F839997D95B2FCDB1B54539F 528CE82153D5BE9A9E7DF2464482F75207FE98A7
fox.wma 20F3DCFF 671D2DC6C99540DE753F7890C5A6AE48 5ADE58E55FE2B6F8DFEC20E06E38626CC68C5405
fox.wma.raw DD9FF7DF 521A01E027B2B4521095C62C3CF5AB69 44BA3729250FF9A988E8B9EA1E15D84FD91EE25E
fox.wma.raw.png DD9FF7DF 521A01E027B2B4521095C62C3CF5AB69 44BA3729250FF9A988E8B9EA1E15D84FD91EE25E
WMA Lossless (again) fails to match the original checksums and it removes data at the end of the file, causing a lossy step. When I compare fox.png to fox.wma.raw.png in Hex Workshop, it spits out:60 (0x0000003C) additional byte(s) in fox.png.
This means that WMA Lossless has stripped 60 bytes from the original file. (Same results when comparing fox.flac.raw.png to fox.wma.raw.png.)
Realizing this, I ran the same comparison on logo_plain.png and logo_plain.wma.raw.png. This time, Hex Workshop told me this:132 (0x00000084) additional byte(s) in logo_plain.png.
That means 132 bytes removed by WMA Lossless, which would explain the graphical distortion.
There is, by the way, 120 (0x0x00000078) additional bytes in Firefox Setup 1.5.0.1.exe and Firefox Setup 1.5.0.1.flac.raw.exe compared to Firefox Setup 1.5.0.1.wma.raw.exe.
I argue that WMA Lossless isn't lossless. It's defect.