How to correctly fixup unpacked PCM samples? 2017-08-25 21:13:26 Hi, I'm very new to the topic of audio de-/compression, so probably the answer to my question may be very obvious. My aim is to write a very simple wavpack unpacker/decoder in C++ to compute AccurateRip checksums directly on wavpack'ed CD rips. It's currently a fun project on my own. I started by creating a losslessly encoded .wv file from a 16 bit stereo interleaved low endian PCM RIFF/WAV file (created from a CD with EAC) to have test input. My decoder so far reads this wavpack file, verifies it is lossless + 16bit stereo with 44100 samples/sec and then processes the sequence of unpacked samples one by one. Now, my problem: From the .wv file, I need to reconstruct the original sample sequence with each unpacked, decoded 16bit stereo PCM sample pair (for left and right channel) represented as a uint32_t that contains one 16bit sample in its upper and the corresponding other sample in its lower bytes. This is the representation my checksum calculator expects. (It works already for RIFF/WAV-PCM, so I have the checksums of the original file as a reference.) I'm afraid I'm stuck with how to proceed with the unpacked int32_t samples in the buffer after having successfully called WavpackUnpackSamples(). Any help is appreciated. I will be happy to provide any further information necessary.