double soundReadSample24L_L(FileIO& soundfile) { unsigned char temp[3]; int32_t sample; soundfile.readLittleEndian(temp[2]); soundfile.readLittleEndian(temp[1]); soundfile.readLittleEndian(temp[0]); sample = temp[0]; sample = (sample << 8) | temp[1]; sample = (sample << 8) | temp[2]; if (temp[0] & 0x80) { sample = sample | 0xff000000; } return (double)sample / (int32_t)0x800000; }
double soundReadSample64F_L(FileIO& soundfile) { double sample; soundfile.readLittleEndian(sample); return sample; }
double soundReadSample32F_L(FileIO& soundfile) { float sample; soundfile.readLittleEndian(sample); return (double)sample; }
double soundReadSample32L_L(FileIO& soundfile) { int32_t sample; soundfile.readLittleEndian(sample); return (double)sample / (uint32_t)0x80000000; }
double soundReadSample8M_L(FileIO& soundfile) { uint8_t sample; soundfile.readLittleEndian(sample); return mulaw8ToLinear16(sample) / (int32_t)0x8000; }
double soundReadSample32L_L(FileIO& soundfile) { long sample; soundfile.readLittleEndian(sample); return (double)sample / (ulong)0x80000000; }
double soundReadSample16L_L(FileIO& soundfile) { short sample; soundfile.readLittleEndian(sample); return (double)sample / (long)0x8000; }
double soundReadSample8L_L(FileIO& soundfile) { char sample; soundfile.readLittleEndian(sample); return (double)sample / (long)0x80; }
double soundReadSample8M_L(FileIO& soundfile) { uchar sample; soundfile.readLittleEndian(sample); return mulaw8ToLinear16(sample) / (long)0x8000; }