Hey, guys.
Some codecs like ADPCM use 12 Bit PCM as the source and then code it with 4 or 8 bit in a difficult-to-describe way.
I developed a little codec for .wav, it's very simple: You take your 16 Bit .wav files, turn them down by 24 db, make them into MS-Stereo and store it with flac.
This method give compression rates of 2.6-2.8, far better than ordinary flac.
But i now wonder if you people can hear the difference between 12 Bit MS-.wav and 16 Bit LR-.wav.
So I developed this little program here:
file.s = OpenFileRequester("Please enter a 16 Bit 44100Hz Stereo PCM .wav file", "", "Wave files (*.wav)|*.wav|All files (*.*)|*.*", 0)
If file
If ReadFile(0, file)
Lof = Lof(0)
*MemorySource = AllocateMemory(Lof)
ReadData(0, *MemorySource, Lof)
CloseFile(0)
*MemoryTarget = AllocateMemory(Lof)
For Offset = 0 To 47
PokeB(*MemoryTarget + Offset, PeekB(*MemorySource + Offset))
Next
For Offset = 48 To Lof Step 4
wordL.w = PeekW(*MemorySource + Offset)
wordR.w = PeekW(*MemorySource + Offset + 2)
wordM.w = (wordL + wordR) / 2
wordS.w = wordM - wordL
wordM / 16
wordS / 16
PokeW(*MemoryTarget + Offset, (wordM - wordS) * 16)
PokeW(*MemoryTarget + Offset + 2, (wordM + wordS) * 16)
Next
Storefile.s = SaveFileRequester("Where to store your 12-Bit-MS-edited .wav file?", file, "Wave files (*.wav)|*.wav|All files (*.*)|*.*", 0)
If CreateFile(0, Storefile)
WriteData(0, *MemoryTarget, Lof)
MessageRequester("Okay!", "Job well done. Check your newly created .wav file and do a double-blind-test! Thanks!")
Else
MessageRequester("", "Can not write into selected file.")
EndIf
Else
MessageRequester("", "Can not read from file.")
EndIf
EndIf
It's a encoder/decoder within the RAM-memory of your PC. If you want to know how exactly it works, take a look at the code or send me a PM, I'll tell you everything.
Now I would like you to first download the demo of PureBasic (Website) and install it. Then copy and paste my code and run it. Find an original .wav file, wait a few seconds and then store the edited file. It is neither a virus, nor a trojan, but i can not guarantee that it will work properly. Maybe you will get an error message, if so please tell me!
When everything works fine, please do a double blind test with the 12 bit-MS Stereo-.wav files and the original files. Then post your results.
Thanks in advance!
PS: Please also tell me wheter you compared the louder parts of your music file or the beginning/ending/less loud parts. Thanks.