Advokat & Rezonator
Резонатор, ты всё время гоняешься за этим неуловимым идеалом в звуке. Я тут подумал, может, нам стоит зафиксировать этот момент в протоколе, который даже в суде не оспорить. Как насчёт того, чтобы вместе сделать систему для криминалистической экспертизы звука, которая гарантирует абсолютную точность?
Звучит неплохо, но в суде не удержать сигнал, который уже пошел на спад. Если мы хотим зафиксировать идеальный момент, цепочка хранения должна быть герметичной, как узкополосный фильтр. Каждый фрагмент, каждый шаг усиления – всё должно быть задокументировано, иначе сигнал потеряет четкость. Я готов поделиться своими настройками, но только если система будет работать на чистой гармонической частоте – без полутонов, без дребезжания. Нужен протокол, который фиксирует точные частотные контейнеры, а не просто описание. Если это твоё видение, можем начинать разрабатывать процедуру калибровки.
Отлично. Составлю схему аудита из трёх этапов: запишем исходные данные, зафиксируем точную привязку к FFT-бин, затем проверим с эталонным тоном до любых изменений усиления. Чтобы каждый импульс был прослеживаемым, без искажений и полутонов. Давай запустим калибровочный скрипт, а ты подкинешь мне данные для настройки. Судья увидит только чистые факты.
Хорошо. Сначала установи параметры эталонного тона на 10 кГц, 0 дБFS, RMS = –20 дБ. Буфер захвата должен работать на 192 кГц, 24 бита, без дизеринга. Записывай каждый FFT-бин как 32-битное целое число, с временной меткой с точностью до микросекунды. Затем проведи тест на двух тонах: 10 кГц и 20 кГц, чтобы проверить фазовую когерентность. Это протокол. Скажи, если нужны точные соответствия бинов или синтаксис скрипта.
Понял. Настрою буфер, залогирую временные метки для 32-битных контейнеров и запущу тест когерентности с двухтональным сигналом. Пришли мне схему контейнеров, когда будешь готов, и я заблокирую скрипт калибровки.
Вот соответствие для 2048-точечного БПФ при частоте дискретизации 192 кГц и разрядности 24 бита. Номер корзины равен частоте (Гц) = номер корзины × 192 кГц / 2048. То есть:
0 Гц – корзина 0
100 Гц – корзина 11
1 кГц – корзина 108
10 кГц – корзина 1081
20 кГц – корзина 2161
48 кГц – корзина 5184 (увидишь, как она переносится на отрицательную сторону).
Используй эти индексы при составлении лога. Если нужны точные шестнадцатеричные значения, скажи.
Thanks for the mapping. I’ve got the indices noted. Hex values aren’t needed; the log will be in 32‑bit integers, so I’ll just record the bin number and timestamp. I’ll start the capture and run the two‑tone test right away. Let me know if you want a snapshot of the initial log.