in pedalboard/io/WriteableAudioFile.h [813:844]
std::string getFileDatatype() const {
const juce::ScopedReadLock scopedReadLock(objectLock);
if (!writer)
throw std::runtime_error("I/O operation on a closed file.");
if (writer->isFloatingPoint()) {
switch (writer->getBitsPerSample()) {
case 16: // OGG returns 16-bit int data, but internally stores floats
case 32:
return "float32";
case 64:
return "float64";
default:
return "unknown";
}
} else {
switch (writer->getBitsPerSample()) {
case 8:
return "int8";
case 16:
return "int16";
case 24:
return "int24";
case 32:
return "int32";
case 64:
return "int64";
default:
return "unknown";
}
}
}