Что это
Библиотека Python для вычислений над большими массивами чисел: то, что обычный код считал бы минутами, numpy делает за доли секунды.
Как используем
В ToshaMusic numpy раскладывает фрагмент трека по частотам (БПФ) и находит срез спектра. Так бот ловит FLAC, пересобранный из MP3, и CD-мастер, растянутый до 24 бит / 192 кГц.
Где это нужно бизнесу
Когда нужно не просто хранить данные, а считать по ним много и быстро: анализ сигнала, статистика по большим массивам, проверка качества файлов.
Как мы это используем
В ToshaMusic бот проверяет, что скачанный FLAC действительно Hi-Res. Фрагмент из середины трека раскодируется в несжатый звук, а numpy раскладывает его по частотам (усреднённое БПФ) и находит частоту, выше которой спектр пуст. Обрыв в диапазоне 14–20,6 кГц выдаёт файл, пересобранный из MP3, а пустота выше 24 кГц у релиза «96/192 кГц» — растянутый CD-мастер.
Типичные проблемы
- Ложная тревога. Срез 19–20,6 кГц бывает и у честных тёмных мастерингов, поэтому такое предупреждение мягкое, а однозначный вердикт — только при обрыве ниже 19,5 кГц.
- Проверка — не истина. Анализ эвристический и отключается в настройках.
Когда это не нужно
Для обычного учёта, заказов и отчётов хватает базы данных и её запросов: numpy нужен, когда расчётов много и они тяжёлые.