I also did try to make my own audio compression algorithm just for fun, and it was a great experience for me because any audio compression algorithm is in a matter of fact a true art combination of great mathematics and programming.
The purpose of this project is to create modern transform-based audio processing software for audio compression and decompression. Instead of use of some psychoacoustic model and perceptual coding, DWA has advanced compression algorithms to store the original waveform in the smallest possible amount of bits. Despite it is not a true lossless codec, it acts really close to it but with higher compression rate. Later, I'll include an optional completely lossless mode for errorless audio archiving.
Today, audio compression algorithms are not so popular anymore. We have high speed internet and many terabyte hard discs. But it is a kind of sweet memories for me about good old times. So I have made a decision to take my old DWA audio data compression program and rewrite it from C++ to C#. I’ll try to make my source code clean and as simple as possible, in hope that it helps to other people to make their first steps into the very interesting world of audio data compression.
P.S. Please note that this project implements some patented algorithms. Although I wrote them completely by myself, it is kind of a derivative work anyway. So it may fall under some kind of software restrictions.
P.S.S. As I understand, all these laws - if I wrote myself an audio codec, I can freely distribute songs with it over Internet. As soon as, it is lossy and doesn't represent the original audio track bit by bit.