From d912d53979c96d315a5bf15683198bdf01549419 Mon Sep 17 00:00:00 2001 From: evgeny Date: Wed, 14 Oct 2026 17:21:10 +0200 Subject: [PATCH] Record SM audio playback validation and native snapshot test flake --- doc/tasks.md | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/doc/tasks.md b/doc/tasks.md index 3a0ab745..a2b29e33 100644 --- a/doc/tasks.md +++ b/doc/tasks.md @@ -4,6 +4,24 @@ ## Текущие задачи +[ ] **Тесты: диагностировать нестабильную проверку TX snapshot в test_android_stream** — 14.10.2026: + В полном прогоне один раз упала строка 177: snapshot успешен и 0 < video_bytes < 500000 после test_clock_run_for(ua, 1000). + Сам publisher обновляет snapshot таймером 1000; текущий CHECK не выводит result/sample_us/video_bytes. + Отдельный повтор и следующий полный прогон прошли. Добавить значения и проверить ожидание конкретного снимка; + причина не установлена, Kotlin-аудиовывод этот C-тест не вызывает. + Логи прогонов: /tmp/stream-audio-check-host.log, /tmp/stream-audio-native-retry.log, /tmp/stream-audio-check-final.log. + +[+] **Android live: убрать остановку просмотра SM при запуске AudioTrack** — 14.10.2026: + StreamAudioOutput владеет устройством и одним остатком PCM; WRITE_NON_BLOCKING вызывается один раз за проход worker. + Видео и control продолжают обслуживаться при частичной/нулевой записи; 100ms ожидание внутри write удалено. + Аппаратные часы берутся из playbackHeadPosition без экстраполяции; пауза сохраняет PCM, GAP сбрасывает весь timeline. + Запас PCM соответствует фактическому bufferSizeInFrames, короткий EOF получает ограниченную тишину без сдвига media PTS. + Проверены 13 регрессий аудиовывода; все 70 Kotlin-тестов и assembleDebug прошли. + APK установлен только на SM. Первый просмотр: 1203 показанных кадра за 43s, discarded=0 и underruns=0; + повторное открытие также работает, аппаратный старт занял 206ms и 185ms вместо прежнего ошибочного лимита 100ms. + Повтор полного прогона ядра: 151/151; отдельный нестабильный CHECK статистики вынесен выше. + Контракт: doc/stream.txt. Логи: /tmp/stream-audio-sm-final.log, /tmp/stream-audio-android-build.log. + [+] **Live: согласовать выдачу cursor с проверкой revision/KEY в media store** — 14.10.2026: Каждый cursor хранит revision последнего выданного полного видео и пропускает новую только с полным KEY. Неполный кадр прежней revision удаляется; аудио и чтение старой истории другими readers сохраняются.