Update ADPCM encoder
Update ADPCM encoder

The official implementation does some weird things with floating point types. This will cause slight rounding differences in very rare cases. I found three ADPCM frames that trigger this behavior out of over 5 billion total ADPCM frames.

Thealexbarney/LibDspAdpcm,Thealexbarney/LibDspAdpcm,Thealexbarney/VGAudio,Thealexbarney/VGAudio