How Does Lossless Work?


Does anyone know of any printed material that describes how ALAC & FLAC operate? These are lossless formats however, they are using compression. Is this format removing something or is it compressing then uncompressing on playback? Looking for hard evidence that these formats are in fact bit-for-bit equals, or not, to master quality AIFF's & WAV's.
3memike
The hard evidence can be demonstrated by anyone with the right tools by comparing the MD-5 signatures, CRC Frame data based on the structure of the Red Book Audio CD at the encoding level and/or doing a differential compare of the decompressed lossless file with the original file. Lossless file formats like FLAC and APE can be shown to be identical to the original bits with these tools.

Unless you have these tools lying around and think that Watkinson's or Pohlmann's books on Digital Audio are just basic introductory texts you probably will want to take someones word for it. However, even with semi pro-tools like dbpoweramp you could set up the experiment for yourself.

There are many little things that can go wrong with Digital Audio Extraction from CD that could prevent you from having a bit perfect copy and the best tools include these Checksum techniques to insure quality. However, a loss-less format conversion (with proper quality checks) can be objectively demonstrated as loss-less.

The FLAC spec link is below:
http://flac.sourceforge.net/format.html
Lossless compression is pretty simple. Say a string of 0s and 1s is like this:
00001111000011110000111100001111

FLAC says:
"Dictionary":
0000 = 2
1111 = 3
Content:
223232323

And now you see how it really is lossless, it just replaces the 2's and 3's with the 0000 and 1111 when you play it!

Dave the computer programmer.
Exact Audio Copy (EAC) has a "Compare WAVs" tool which does a bit-by-bit comparison of 2 WAV files and will show you that WAVs compressed with FLAC, APE or whatever are identical to the original after they've been uncompressed back to a WAV file.
Dave_rosenblum...My computer doesn't do "2" or "3".

2 = 1 0

3 = 1 1

and

4 = 100

5 = 101

etc.
.

I think you have oversimplified it.