При контролируемом underrun удалённого audio destination в выход попадает повтор старых samples вместо нулей. Разбор Safari TP 251: самостоятельный диагностический артефакт, прямые источники, опровержимый контроль, обратимый canary, stop-line и privacy-safe handoff.
Ответ на запрос: При audio underrun слышен старый буфер вместо тишины в Safari TP 251
Не ищите причину по одному внешнему эффекту. Единственная пользовательская боль: при контролируемом underrun удалённого audio destination в выход попадает повтор старых samples вместо нулей. Нормализованный intent этой страницы — «как проверить stale audio при ring buffer underrun в Safari Technology Preview 251». Критерий, который можно опровергнуть: в underrun-окне энергия равна тишине в пределах заранее заданного численного допуска и нет повторного fingerprint. Возможная ложная причина сформулирована отдельно: хвост фильтра или intentional loop, ошибочно принятый за повтор stale samples. До запуска выбирается такая развилка: повтор window hash только в underrun — reproduced; энергия в zero-control — graph-invalid; нет управляемого underrun — blocked. Если нужная поверхность отсутствует, ставится `unsupported`; если нет обязательного наблюдения, ставится `unknown`; оба статуса отличаются от `not-reproduced`. Проверка выполняется на изолированном fixture, поэтому не затрагивает production, VPN, маршрутизацию, рабочий профиль, реальные аккаунты или личные данные. Вывод нельзя переносить на stable Safari, другой браузер либо чужой сайт без отдельного опыта.
Доказательная граница 317968@main@main
Технический тезис не расширяется дальше записи разработчиков. WebKit датирует Safari Technology Preview 251 26 августа 2026 года и перечисляет изменение: исправлен вывод stale buffer contents вместо silence при underrun кольцевого буфера RemoteAudioDestination. Связанная primary-страница 317968@main@main была открыта 29 августа: identifier совпадает, commit title описывает тот же узкий механизм. Для темы «при контролируемом underrun удалённого audio destination в выход попадает повтор старых samples вместо нулей» этого достаточно только чтобы подтвердить наличие change item и его инженерную границу. Release Notes и 317968@main@main не измеряют количество затронутых пользователей, не доказывают поисковый спрос, не сообщают результат для произвольного приложения и не гарантируют попадание в стабильную версию. Google News, Reddit и Apple search results были лидами к перепроверке даты; их заголовки и комментарии не использованы как техническое evidence.
Артефакт опыта: оконный анализ `phase → expected energy → RMS/peak/repetition fingerprint`
Форма данных здесь важнее свободного пересказа. Здесь это оконный анализ `phase → expected energy → RMS/peak/repetition fingerprint`. Локальный стенд: офлайн или тестовый аудиограф с импульсом и запланированным пустым интервалом; без микрофона и пользовательского медиа. Схема записи специфична для задачи: `phase` — наблюдаемое значение или пусто с причиной; `frameStart` — наблюдаемое значение или пусто с причиной; `frameEnd` — наблюдаемое значение или пусто с причиной; `rms` — наблюдаемое значение или пусто с причиной; `peak` — наблюдаемое значение или пусто с причиной; `zeroRatio` — наблюдаемое значение или пусто с причиной; `repeatedWindowHash` — наблюдаемое значение или пусто с причиной; `callbackState` — наблюдаемое значение или пусто с причиной. В строке 317968@main добавляются `expected`, `observed`, build, timestamp и единица, если она применима. Формула или источник каждого вычисленного значения указывается рядом; пропуск не превращается в ноль. IP, cookie, Authorization, токены, device labels, внешние URL, пути, сырые media и содержимое файлов исключаются до записи. Test-only идентификаторы разрешены в виде краткого hash внутри запуска и удаляются после cleanup. Именно набор «phase, frameStart, frameEnd, rms, peak, zeroRatio, repeatedWindowHash, callbackState» делает материал самостоятельным: он отвечает на боль «при контролируемом underrun удалённого audio destination в выход попадает повтор старых samples вместо нулей», а не подставляет другое название в универсальный браузерный чек-лист.
Control и решение для 317968@main
Control проходит тот же путь сбора, что и основная ветка. Для 317968@main используется: нулевой источник после того же импульса и граф без эффекта/feedback при одинаковом окне. Он получает тот же build, порядок событий и поля «phase, frameStart, frameEnd, rms, peak, zeroRatio, repeatedWindowHash, callbackState». Проверяемый confounder — хвост фильтра или intentional loop, ошибочно принятый за повтор stale samples. Если основная ветка отклоняется, а control остаётся спокойным, применяется развилка «повтор window hash только в underrun — reproduced; энергия в zero-control — graph-invalid; нет управляемого underrun — blocked». Если отклоняется control, итог `invalid`; если control технически недоступен, итог `environment-blocked`; если значения неполны, итог `inconclusive`. Нельзя объявлять дефект только потому, что фраза «при контролируемом underrun удалённого audio destination в выход попадает повтор старых samples вместо нулей» похожа на сообщение форума. Сначала должны совпасть fixture, измеряемая поверхность и ожидаемый ответ «в underrun-окне энергия равна тишине в пределах заранее заданного численного допуска и нет повторного fingerprint». Этот порядок запрещает объяснение задним числом и сохраняет различие между соседними API, layout и media change items.
Обратимый canary и критерий PASS
Сравнимость важнее количества повторов. Для этой статьи действие сформулировано так: создать один ограниченный пустой интервал, записать только агрегаты, восстановить непрерывный тестовый источник. Сначала заполняется baseline по полям «phase, frameStart, frameEnd, rms, peak, zeroRatio, repeatedWindowHash, callbackState», затем выполняется только указанная операция. После заранее выбранного settle-event те же поля читаются повторно без округления и подмены отсутствующих значений. PASS допустим лишь при условии: в underrun-окне энергия равна тишине в пределах заранее заданного численного допуска и нет повторного fingerprint. Затем действие полностью откатывается, и baseline для артефакта «оконный анализ `phase → expected energy → RMS/peak/repetition fingerprint`» должен восстановиться. Несовпадение rollback переводит запись в `invalid`, даже если основная ветка выглядела убедительно. Canary не расширяют на production, пользовательский media, рабочие разрешения, продолжительный стресс-тест или внешние страницы. Один run сохраняет свою строку; повтор не перезаписывает редкое отклонение.
Stop-line и privacy-safe handoff
Финальная запись отделяет факт, измерение и вывод. Немедленная остановка: подключён реальный выход на высокой громкости, есть feedback/loop или сохраняется raw audio. Для повторения оставляют build, hash fixture, поля «phase, frameStart, frameEnd, rms, peak, zeroRatio, repeatedWindowHash, callbackState», expected/observed, control status, cleanup status и primary link 317968@main@main. Статус выбирается из `reproduced`, `not-reproduced`, `unsupported`, `environment-blocked`, `invalid`, `inconclusive`, `unknown`; отдельной строкой приводится развилка «повтор window hash только в underrun — reproduced; энергия в zero-control — graph-invalid; нет управляемого underrun — blocked». Перед передачей удаляются пути, имена, адреса, labels и любые значения, способные идентифицировать пользователя либо инфраструктуру. Даже успешный handoff подтверждает только условие «в underrun-окне энергия равна тишине в пределах заранее заданного численного допуска и нет повторного fingerprint» в этом fixture. Он не обещает автоматическое исправление, стабильную поддержку, индексацию, позицию, цитирование ИИ или доказанный спрос.
Материал подготовлен редакцией VOne с помощью ИИ; дата Release 251, primary 317968@main, техническая граница, самостоятельный артефакт, control, обратимость, privacy-stop и роль community lead постатейно проверены 29 августа 2026 года.
Источники и проверка
- WebKit — Release Notes for Safari Technology Preview 251 проверено 2026-08-29
- WebKit commit 317968@main проверено 2026-08-29
Информация актуальна на дату публикации. Правила сервисов, приложений и сетей могут меняться.