Скажем, у меня есть программа, которая читает файл .WAV или .AIFF, а аудиофайлы файла кодируются как значения выборки с плавающей запятой. Правильно ли для моей программы предположить, что любой хорошо сформированный файл с плавающей запятой .WAV или .AIFF будет содержать выборочные значения только в диапазоне [-1.0f, + 1.0f]? Я не мог найти ничего в спецификациях WAV или AIFF, которые затрагивают этот момент.
И если это неверное предположение, как можно узнать, какой должен быть полный динамический диапазон звука в файле? (Я мог прочитать весь файл и узнать, какие файлы являются фактическими минимальными и максимальными значениями выборки, но есть две проблемы с этим: (1) это будет медленная/дорогая операция, если файл очень большой, и (2), это потеряло бы информацию, поскольку если создатель файла предполагал, что файл имеет некоторый "запас высоты", чтобы не играть в dbFS в самой громкой точке, моя программа не сможет обнаружить это)